From 53de4644d35e057fd1d975c91cee2697bdfa38c4 Mon Sep 17 00:00:00 2001 From: Rolf Erik Lekang Date: Wed, 14 Jan 2015 15:27:23 +0100 Subject: [PATCH 1/6] Add django-dev-dashboard as an app It uses the code from the django/django-dev-dashboard with some design changes, new tests, translation marks and new migrations. It is added under the host dashboard.djangoproject.com. --- .gitignore | 1 + Makefile | 8 + README.rst | 10 +- bower.json | 3 +- dashboard/__init__.py | 0 dashboard/admin.py | 27 + ...pulls_state=closed_per_page=100_page=1.txt | 2 + ...pulls_state=closed_per_page=100_page=2.txt | 2 + ...angeset=on_max=0_daysback=7_format=rss.txt | 2627 +++++ .../fixtures/dashboard_example_data.json.gz | Bin 0 -> 2076765 bytes dashboard/fixtures/dashboard_test_data.json | 246 + dashboard/management/__init__.py | 0 dashboard/management/commands/__init__.py | 0 .../management/commands/update_metrics.py | 17 + dashboard/migrations/0001_initial.py | 129 + dashboard/migrations/__init__.py | 0 dashboard/models.py | 245 + dashboard/tests.py | 101 + dashboard/urls.py | 8 + dashboard/views.py | 53 + djangoproject/hosts.py | 1 + djangoproject/settings/common.py | 7 + djangoproject/settings/dev.py | 1 + djangoproject/settings/prod.py | 1 + djangoproject/static/css/output-ie.css | 2 +- djangoproject/static/css/output.css | 2 +- djangoproject/static/js/dashboard/dddash.js | 27 + djangoproject/static/js/dashboard/detail.js | 76 + djangoproject/static/js/dashboard/index.js | 43 + .../static/js/lib/jquery-flot/.bower.json | 18 + .../static/js/lib/jquery-flot/.gitignore | 3 + .../static/js/lib/jquery-flot/.travis.yml | 3 + .../static/js/lib/jquery-flot/API.md | 1498 +++ .../static/js/lib/jquery-flot/CONTRIBUTING.md | 98 + .../static/js/lib/jquery-flot/FAQ.md | 75 + .../static/js/lib/jquery-flot/LICENSE.txt | 22 + .../static/js/lib/jquery-flot/Makefile | 12 + .../static/js/lib/jquery-flot/NEWS.md | 1026 ++ .../static/js/lib/jquery-flot/PLUGINS.md | 143 + .../static/js/lib/jquery-flot/README.md | 110 + .../static/js/lib/jquery-flot/component.json | 8 + .../static/js/lib/jquery-flot/excanvas.js | 1428 +++ .../static/js/lib/jquery-flot/excanvas.min.js | 1 + .../js/lib/jquery-flot/flot.jquery.json | 27 + .../js/lib/jquery-flot/jquery.colorhelpers.js | 180 + .../js/lib/jquery-flot/jquery.flot.canvas.js | 345 + .../lib/jquery-flot/jquery.flot.categories.js | 190 + .../js/lib/jquery-flot/jquery.flot.concat.js | 3600 +++++++ .../lib/jquery-flot/jquery.flot.crosshair.js | 176 + .../lib/jquery-flot/jquery.flot.errorbars.js | 353 + .../jquery-flot/jquery.flot.fillbetween.js | 226 + .../js/lib/jquery-flot/jquery.flot.image.js | 241 + .../static/js/lib/jquery-flot/jquery.flot.js | 3168 ++++++ .../js/lib/jquery-flot/jquery.flot.min.js | 1 + .../lib/jquery-flot/jquery.flot.navigate.js | 346 + .../js/lib/jquery-flot/jquery.flot.pie.js | 820 ++ .../js/lib/jquery-flot/jquery.flot.resize.js | 59 + .../lib/jquery-flot/jquery.flot.selection.js | 360 + .../js/lib/jquery-flot/jquery.flot.stack.js | 188 + .../js/lib/jquery-flot/jquery.flot.symbol.js | 71 + .../lib/jquery-flot/jquery.flot.threshold.js | 142 + .../js/lib/jquery-flot/jquery.flot.time.js | 432 + .../static/js/lib/jquery-flot/jquery.js | 9472 +++++++++++++++++ .../static/js/lib/jquery-flot/package.json | 11 + djangoproject/static/js/main.js | 7 + djangoproject/static/scss/_dashboard.scss | 73 + djangoproject/static/scss/output.scss | 1 + djangoproject/templates/base.html | 2 + djangoproject/templates/base_dashboard.html | 8 + djangoproject/templates/dashboard/detail.html | 10 + djangoproject/templates/dashboard/index.html | 23 + requirements/dev.txt | 1 + 72 files changed, 28612 insertions(+), 5 deletions(-) create mode 100644 dashboard/__init__.py create mode 100644 dashboard/admin.py create mode 100644 dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=1.txt create mode 100644 dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=2.txt create mode 100644 dashboard/fixtures/code.djangoproject.com_timeline_changeset=on_max=0_daysback=7_format=rss.txt create mode 100644 dashboard/fixtures/dashboard_example_data.json.gz create mode 100644 dashboard/fixtures/dashboard_test_data.json create mode 100644 dashboard/management/__init__.py create mode 100644 dashboard/management/commands/__init__.py create mode 100644 dashboard/management/commands/update_metrics.py create mode 100644 dashboard/migrations/0001_initial.py create mode 100644 dashboard/migrations/__init__.py create mode 100644 dashboard/models.py create mode 100644 dashboard/tests.py create mode 100644 dashboard/urls.py create mode 100644 dashboard/views.py create mode 100644 djangoproject/static/js/dashboard/dddash.js create mode 100644 djangoproject/static/js/dashboard/detail.js create mode 100644 djangoproject/static/js/dashboard/index.js create mode 100644 djangoproject/static/js/lib/jquery-flot/.bower.json create mode 100644 djangoproject/static/js/lib/jquery-flot/.gitignore create mode 100644 djangoproject/static/js/lib/jquery-flot/.travis.yml create mode 100644 djangoproject/static/js/lib/jquery-flot/API.md create mode 100644 djangoproject/static/js/lib/jquery-flot/CONTRIBUTING.md create mode 100644 djangoproject/static/js/lib/jquery-flot/FAQ.md create mode 100644 djangoproject/static/js/lib/jquery-flot/LICENSE.txt create mode 100644 djangoproject/static/js/lib/jquery-flot/Makefile create mode 100644 djangoproject/static/js/lib/jquery-flot/NEWS.md create mode 100644 djangoproject/static/js/lib/jquery-flot/PLUGINS.md create mode 100644 djangoproject/static/js/lib/jquery-flot/README.md create mode 100644 djangoproject/static/js/lib/jquery-flot/component.json create mode 100644 djangoproject/static/js/lib/jquery-flot/excanvas.js create mode 100644 djangoproject/static/js/lib/jquery-flot/excanvas.min.js create mode 100644 djangoproject/static/js/lib/jquery-flot/flot.jquery.json create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.colorhelpers.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.canvas.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.categories.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.concat.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.crosshair.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.errorbars.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.fillbetween.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.image.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.min.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.navigate.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.pie.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.resize.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.selection.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.stack.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.symbol.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.threshold.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.flot.time.js create mode 100644 djangoproject/static/js/lib/jquery-flot/jquery.js create mode 100644 djangoproject/static/js/lib/jquery-flot/package.json create mode 100644 djangoproject/static/scss/_dashboard.scss create mode 100644 djangoproject/templates/base_dashboard.html create mode 100644 djangoproject/templates/dashboard/detail.html create mode 100644 djangoproject/templates/dashboard/index.html diff --git a/.gitignore b/.gitignore index ac451899a..a7b6ed7d1 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ secrets.json .sass-cache/ .coverage .tox +djangoproject/static/js/lib/jquery-flot/examples diff --git a/Makefile b/Makefile index 4e0d10c83..1dce4a6ba 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,5 @@ STATIC = djangoproject/static +JQUERY_FLOT=djangoproject/static/js/lib/jquery-flot .PHONY: collectstatics compile-scss compile-scss-debug watch-scss run install test ci @@ -25,3 +26,10 @@ test: ci: test @coverage report + +$(JQUERY_FLOT)/jquery.flot.min.js: $(JQUERY_FLOT) + cat $(JQUERY_FLOT)/jquery.flot.js $(JQUERY_FLOT)/jquery.flot.time.js > $(JQUERY_FLOT)/jquery.flot.concat.js + yuicompressor $(JQUERY_FLOT)/jquery.flot.concat.js -o $(JQUERY_FLOT)/jquery.flot.min.js + +$(JQUERY_FLOT)/: + bower install diff --git a/README.rst b/README.rst index 40f37632b..a78d558ce 100644 --- a/README.rst +++ b/README.rst @@ -48,14 +48,20 @@ To run locally, do the usual: #. For docs:: + export TRAC_CREDS= # Your djangoproject.com creds. ./manage.py loaddata doc_releases ./manage.py update_docs -#. Point the ``www.djangoproject.dev`` and ``docs.djangoproject.dev`` +#. For dashboard:: + + ./manage.py loaddata dashboard_example_data + ./manage.py update_metrics + +#. Point the ``www.djangoproject.dev``, ``docs.djangoproject.dev`` and ``dashboard.djangoproject.dev`` hostnames with your ``/etc/hosts`` file to ``localhost``/``127.0.0.1``. Here's how it could look like:: - 127.0.0.1 docs.djangoproject.dev, www.djangoproject.dev + 127.0.0.1 docs.djangoproject.dev, www.djangoproject.dev, dashboard.djangoproject.dev If you're on Mac OS and don't feel like editing the ``/etc/hosts`` file manually, there is a great preference pane called `Hosts.prefpane`_. On diff --git a/bower.json b/bower.json index be3e488a8..bfaf7e040 100644 --- a/bower.json +++ b/bower.json @@ -6,6 +6,7 @@ "jquery.inview": "1.0.0", "webfontloader": "~1.5.10", "jquery.payment": "~1.1.4", - "modernizr-retina-test": "~1.0.0" + "modernizr-retina-test": "~1.0.0", + "jquery-flot": "~0.8.3" } } diff --git a/dashboard/__init__.py b/dashboard/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/dashboard/admin.py b/dashboard/admin.py new file mode 100644 index 000000000..52ef89c79 --- /dev/null +++ b/dashboard/admin.py @@ -0,0 +1,27 @@ +from __future__ import absolute_import + +from django.contrib import admin +from .models import Category, Metric, Datum + + +@admin.register(Category) +class CategoryAdmin(admin.ModelAdmin): + list_display = ('name', 'position') + list_editable = ('position',) + ordering = ('position',) + + +class MetricAdmin(admin.ModelAdmin): + list_display = ('name', 'category', 'position', 'show_on_dashboard', 'show_sparkline', 'period') + list_editable = ('show_on_dashboard', 'category', 'position', 'show_sparkline', 'period') + ordering = ('category__position', 'position') + prepopulated_fields = {'slug': ['name']} + + +for MC in Metric.__subclasses__(): + admin.site.register(MC, MetricAdmin) + + +@admin.register(Datum) +class DatumAdmin(admin.ModelAdmin): + list_display = ('timestamp', 'metric', 'measurement') diff --git a/dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=1.txt b/dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=1.txt new file mode 100644 index 000000000..9bb913caa --- /dev/null +++ b/dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=1.txt @@ -0,0 +1,2 @@ +application/json; charset=utf-8 +[{"url":"https://api.github.com/repos/django/django/pulls/3936","id":27549738,"html_url":"https://github.com/django/django/pull/3936","diff_url":"https://github.com/django/django/pull/3936.diff","patch_url":"https://github.com/django/django/pull/3936.patch","issue_url":"https://api.github.com/repos/django/django/issues/3936","number":3936,"state":"closed","locked":false,"title":"Fixed typo in 'Django Template Language'","user":{"login":"davidrobles","id":164460,"avatar_url":"https://avatars.githubusercontent.com/u/164460?v=3","gravatar_id":"","url":"https://api.github.com/users/davidrobles","html_url":"https://github.com/davidrobles","followers_url":"https://api.github.com/users/davidrobles/followers","following_url":"https://api.github.com/users/davidrobles/following{/other_user}","gists_url":"https://api.github.com/users/davidrobles/gists{/gist_id}","starred_url":"https://api.github.com/users/davidrobles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidrobles/subscriptions","organizations_url":"https://api.github.com/users/davidrobles/orgs","repos_url":"https://api.github.com/users/davidrobles/repos","events_url":"https://api.github.com/users/davidrobles/events{/privacy}","received_events_url":"https://api.github.com/users/davidrobles/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-17T01:48:23Z","updated_at":"2015-01-17T02:06:21Z","closed_at":"2015-01-17T02:06:21Z","merged_at":null,"merge_commit_sha":"145dfcba8f156f760a6ffa010cb875586b35e94e","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3936/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3936/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3936/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/fe6e643909ce398aae6f346b5b5a0495e075f3b1","head":{"label":"davidrobles:master","ref":"master","sha":"fe6e643909ce398aae6f346b5b5a0495e075f3b1","user":{"login":"davidrobles","id":164460,"avatar_url":"https://avatars.githubusercontent.com/u/164460?v=3","gravatar_id":"","url":"https://api.github.com/users/davidrobles","html_url":"https://github.com/davidrobles","followers_url":"https://api.github.com/users/davidrobles/followers","following_url":"https://api.github.com/users/davidrobles/following{/other_user}","gists_url":"https://api.github.com/users/davidrobles/gists{/gist_id}","starred_url":"https://api.github.com/users/davidrobles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidrobles/subscriptions","organizations_url":"https://api.github.com/users/davidrobles/orgs","repos_url":"https://api.github.com/users/davidrobles/repos","events_url":"https://api.github.com/users/davidrobles/events{/privacy}","received_events_url":"https://api.github.com/users/davidrobles/received_events","type":"User","site_admin":false},"repo":{"id":29375696,"name":"django","full_name":"davidrobles/django","owner":{"login":"davidrobles","id":164460,"avatar_url":"https://avatars.githubusercontent.com/u/164460?v=3","gravatar_id":"","url":"https://api.github.com/users/davidrobles","html_url":"https://github.com/davidrobles","followers_url":"https://api.github.com/users/davidrobles/followers","following_url":"https://api.github.com/users/davidrobles/following{/other_user}","gists_url":"https://api.github.com/users/davidrobles/gists{/gist_id}","starred_url":"https://api.github.com/users/davidrobles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidrobles/subscriptions","organizations_url":"https://api.github.com/users/davidrobles/orgs","repos_url":"https://api.github.com/users/davidrobles/repos","events_url":"https://api.github.com/users/davidrobles/events{/privacy}","received_events_url":"https://api.github.com/users/davidrobles/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/davidrobles/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/davidrobles/django","forks_url":"https://api.github.com/repos/davidrobles/django/forks","keys_url":"https://api.github.com/repos/davidrobles/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/davidrobles/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/davidrobles/django/teams","hooks_url":"https://api.github.com/repos/davidrobles/django/hooks","issue_events_url":"https://api.github.com/repos/davidrobles/django/issues/events{/number}","events_url":"https://api.github.com/repos/davidrobles/django/events","assignees_url":"https://api.github.com/repos/davidrobles/django/assignees{/user}","branches_url":"https://api.github.com/repos/davidrobles/django/branches{/branch}","tags_url":"https://api.github.com/repos/davidrobles/django/tags","blobs_url":"https://api.github.com/repos/davidrobles/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/davidrobles/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/davidrobles/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/davidrobles/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/davidrobles/django/statuses/{sha}","languages_url":"https://api.github.com/repos/davidrobles/django/languages","stargazers_url":"https://api.github.com/repos/davidrobles/django/stargazers","contributors_url":"https://api.github.com/repos/davidrobles/django/contributors","subscribers_url":"https://api.github.com/repos/davidrobles/django/subscribers","subscription_url":"https://api.github.com/repos/davidrobles/django/subscription","commits_url":"https://api.github.com/repos/davidrobles/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/davidrobles/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/davidrobles/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/davidrobles/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/davidrobles/django/contents/{+path}","compare_url":"https://api.github.com/repos/davidrobles/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/davidrobles/django/merges","archive_url":"https://api.github.com/repos/davidrobles/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/davidrobles/django/downloads","issues_url":"https://api.github.com/repos/davidrobles/django/issues{/number}","pulls_url":"https://api.github.com/repos/davidrobles/django/pulls{/number}","milestones_url":"https://api.github.com/repos/davidrobles/django/milestones{/number}","notifications_url":"https://api.github.com/repos/davidrobles/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/davidrobles/django/labels{/name}","releases_url":"https://api.github.com/repos/davidrobles/django/releases{/id}","created_at":"2015-01-17T01:28:53Z","updated_at":"2015-01-17T01:47:34Z","pushed_at":"2015-01-17T01:47:34Z","git_url":"git://github.com/davidrobles/django.git","ssh_url":"git@github.com:davidrobles/django.git","clone_url":"https://github.com/davidrobles/django.git","svn_url":"https://github.com/davidrobles/django","homepage":"https://www.djangoproject.com/","size":118910,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"c51258882bbf388f5c4cfc379340097ebe9beda9","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3936"},"html":{"href":"https://github.com/django/django/pull/3936"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3936"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3936/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3936/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3936/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/fe6e643909ce398aae6f346b5b5a0495e075f3b1"}}},{"url":"https://api.github.com/repos/django/django/pulls/3935","id":27546736,"html_url":"https://github.com/django/django/pull/3935","diff_url":"https://github.com/django/django/pull/3935.diff","patch_url":"https://github.com/django/django/pull/3935.patch","issue_url":"https://api.github.com/repos/django/django/issues/3935","number":3935,"state":"closed","locked":false,"title":"Cleaned up migration writer tests","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-17T00:08:48Z","updated_at":"2015-01-17T19:30:54Z","closed_at":"2015-01-17T19:30:53Z","merged_at":null,"merge_commit_sha":"1a2eba1821beed67560011fe3e71e03e96a65d72","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3935/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3935/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3935/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/7437648a3d10157ad5921db8b324d07e872b4e4a","head":{"label":"MarkusH:cleanup-migration-writer","ref":"cleanup-migration-writer","sha":"7437648a3d10157ad5921db8b324d07e872b4e4a","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"53e1423eda369acb1882d6939a7f9e11617e5591","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3935"},"html":{"href":"https://github.com/django/django/pull/3935"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3935"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3935/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3935/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3935/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/7437648a3d10157ad5921db8b324d07e872b4e4a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3934","id":27545983,"html_url":"https://github.com/django/django/pull/3934","diff_url":"https://github.com/django/django/pull/3934.diff","patch_url":"https://github.com/django/django/pull/3934.patch","issue_url":"https://api.github.com/repos/django/django/issues/3934","number":3934,"state":"closed","locked":false,"title":"Removed some compatibility bits for Python 3.2.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-16T23:50:14Z","updated_at":"2015-01-17T14:02:26Z","closed_at":"2015-01-17T14:02:24Z","merged_at":"2015-01-17T14:02:24Z","merge_commit_sha":"1bed988eaec55817ade9f88aacf26abc52a24258","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3934/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3934/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3934/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/fed25f1105ff0d5fe46cd217b29371ee7f1907f2","head":{"label":"timgraham:drop-py32","ref":"drop-py32","sha":"fed25f1105ff0d5fe46cd217b29371ee7f1907f2","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4e65f195e1b10d83bb7edc38c908747c4fd537b8","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3934"},"html":{"href":"https://github.com/django/django/pull/3934"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3934"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3934/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3934/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3934/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/fed25f1105ff0d5fe46cd217b29371ee7f1907f2"}}},{"url":"https://api.github.com/repos/django/django/pulls/3933","id":27543021,"html_url":"https://github.com/django/django/pull/3933","diff_url":"https://github.com/django/django/pull/3933.diff","patch_url":"https://github.com/django/django/pull/3933.patch","issue_url":"https://api.github.com/repos/django/django/issues/3933","number":3933,"state":"closed","locked":false,"title":"Fix typo in Response object description.","user":{"login":"rickhutcheson","id":689515,"avatar_url":"https://avatars.githubusercontent.com/u/689515?v=3","gravatar_id":"","url":"https://api.github.com/users/rickhutcheson","html_url":"https://github.com/rickhutcheson","followers_url":"https://api.github.com/users/rickhutcheson/followers","following_url":"https://api.github.com/users/rickhutcheson/following{/other_user}","gists_url":"https://api.github.com/users/rickhutcheson/gists{/gist_id}","starred_url":"https://api.github.com/users/rickhutcheson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rickhutcheson/subscriptions","organizations_url":"https://api.github.com/users/rickhutcheson/orgs","repos_url":"https://api.github.com/users/rickhutcheson/repos","events_url":"https://api.github.com/users/rickhutcheson/events{/privacy}","received_events_url":"https://api.github.com/users/rickhutcheson/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-16T22:51:03Z","updated_at":"2015-01-16T23:18:36Z","closed_at":"2015-01-16T23:18:36Z","merged_at":null,"merge_commit_sha":"1bf6b40763e10581bb13b6f6f015db5cc81cbd0e","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3933/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3933/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3933/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/456cc77a109f4071e90f5b6305a3beb34d73e877","head":{"label":"rickhutcheson:patch-1","ref":"patch-1","sha":"456cc77a109f4071e90f5b6305a3beb34d73e877","user":{"login":"rickhutcheson","id":689515,"avatar_url":"https://avatars.githubusercontent.com/u/689515?v=3","gravatar_id":"","url":"https://api.github.com/users/rickhutcheson","html_url":"https://github.com/rickhutcheson","followers_url":"https://api.github.com/users/rickhutcheson/followers","following_url":"https://api.github.com/users/rickhutcheson/following{/other_user}","gists_url":"https://api.github.com/users/rickhutcheson/gists{/gist_id}","starred_url":"https://api.github.com/users/rickhutcheson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rickhutcheson/subscriptions","organizations_url":"https://api.github.com/users/rickhutcheson/orgs","repos_url":"https://api.github.com/users/rickhutcheson/repos","events_url":"https://api.github.com/users/rickhutcheson/events{/privacy}","received_events_url":"https://api.github.com/users/rickhutcheson/received_events","type":"User","site_admin":false},"repo":null},"base":{"label":"django:master","ref":"master","sha":"3f23f1cfb472e77bb1f9260a71b40f895438658d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3933"},"html":{"href":"https://github.com/django/django/pull/3933"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3933"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3933/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3933/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3933/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/456cc77a109f4071e90f5b6305a3beb34d73e877"}}},{"url":"https://api.github.com/repos/django/django/pulls/3931","id":27532275,"html_url":"https://github.com/django/django/pull/3931","diff_url":"https://github.com/django/django/pull/3931.diff","patch_url":"https://github.com/django/django/pull/3931.patch","issue_url":"https://api.github.com/repos/django/django/issues/3931","number":3931,"state":"closed","locked":false,"title":"Fixed #24092 -- Widened base field support for ArrayField.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"rebased from https://github.com/django/django/pull/3878","created_at":"2015-01-16T20:02:56Z","updated_at":"2015-01-16T21:16:41Z","closed_at":"2015-01-16T21:16:21Z","merged_at":"2015-01-16T21:16:20Z","merge_commit_sha":"6ba67893c4a497590b220d06215b8d30df6293de","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3931/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3931/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3931/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/39d95fb6ada99c59d47fa0eae6d3128abafe2d58","head":{"label":"timgraham:24092","ref":"24092","sha":"39d95fb6ada99c59d47fa0eae6d3128abafe2d58","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"a17724b791275578334bcdc66b3a8113eb86605e","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3931"},"html":{"href":"https://github.com/django/django/pull/3931"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3931"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3931/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3931/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3931/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/39d95fb6ada99c59d47fa0eae6d3128abafe2d58"}}},{"url":"https://api.github.com/repos/django/django/pulls/3930","id":27518406,"html_url":"https://github.com/django/django/pull/3930","diff_url":"https://github.com/django/django/pull/3930.diff","patch_url":"https://github.com/django/django/pull/3930.patch","issue_url":"https://api.github.com/repos/django/django/issues/3930","number":3930,"state":"closed","locked":false,"title":"Fixed #24160 -- Fixed test suite error on Windows","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24160","created_at":"2015-01-16T16:43:09Z","updated_at":"2015-01-16T17:04:08Z","closed_at":"2015-01-16T17:04:08Z","merged_at":null,"merge_commit_sha":"475d8cd79614f32ba647f95aacc38e96b0bb479d","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3930/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3930/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3930/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/16142e26bbcaa51242c5dda15fabe3d694b53002","head":{"label":"collinanderson:24160","ref":"24160","sha":"16142e26bbcaa51242c5dda15fabe3d694b53002","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"726a9550db5129badc1c44809b0bed728fa1ad90","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3930"},"html":{"href":"https://github.com/django/django/pull/3930"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3930"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3930/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3930/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3930/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/16142e26bbcaa51242c5dda15fabe3d694b53002"}}},{"url":"https://api.github.com/repos/django/django/pulls/3928","id":27466863,"html_url":"https://github.com/django/django/pull/3928","diff_url":"https://github.com/django/django/pull/3928.diff","patch_url":"https://github.com/django/django/pull/3928.patch","issue_url":"https://api.github.com/repos/django/django/issues/3928","number":3928,"state":"closed","locked":false,"title":"Fix typo in template caching doc","user":{"login":"merwok","id":635179,"avatar_url":"https://avatars.githubusercontent.com/u/635179?v=3","gravatar_id":"","url":"https://api.github.com/users/merwok","html_url":"https://github.com/merwok","followers_url":"https://api.github.com/users/merwok/followers","following_url":"https://api.github.com/users/merwok/following{/other_user}","gists_url":"https://api.github.com/users/merwok/gists{/gist_id}","starred_url":"https://api.github.com/users/merwok/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/merwok/subscriptions","organizations_url":"https://api.github.com/users/merwok/orgs","repos_url":"https://api.github.com/users/merwok/repos","events_url":"https://api.github.com/users/merwok/events{/privacy}","received_events_url":"https://api.github.com/users/merwok/received_events","type":"User","site_admin":false},"body":"Noticed this while reading the docs for django.core.cache.utils.make_template_fragment_key. I did not check the code, but it makes sense for the objects in the *vary_on* arguments to be strings.","created_at":"2015-01-15T22:09:13Z","updated_at":"2015-01-16T01:10:06Z","closed_at":"2015-01-16T01:10:06Z","merged_at":null,"merge_commit_sha":"7f1fb4402d3e9a673778ccf97863d6051e30e2b3","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3928/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3928/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3928/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/1cb75582a9a5ec52eb730ec3bbbbac8349bc5f01","head":{"label":"merwok:patch-1","ref":"patch-1","sha":"1cb75582a9a5ec52eb730ec3bbbbac8349bc5f01","user":{"login":"merwok","id":635179,"avatar_url":"https://avatars.githubusercontent.com/u/635179?v=3","gravatar_id":"","url":"https://api.github.com/users/merwok","html_url":"https://github.com/merwok","followers_url":"https://api.github.com/users/merwok/followers","following_url":"https://api.github.com/users/merwok/following{/other_user}","gists_url":"https://api.github.com/users/merwok/gists{/gist_id}","starred_url":"https://api.github.com/users/merwok/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/merwok/subscriptions","organizations_url":"https://api.github.com/users/merwok/orgs","repos_url":"https://api.github.com/users/merwok/repos","events_url":"https://api.github.com/users/merwok/events{/privacy}","received_events_url":"https://api.github.com/users/merwok/received_events","type":"User","site_admin":false},"repo":{"id":19798455,"name":"django","full_name":"merwok/django","owner":{"login":"merwok","id":635179,"avatar_url":"https://avatars.githubusercontent.com/u/635179?v=3","gravatar_id":"","url":"https://api.github.com/users/merwok","html_url":"https://github.com/merwok","followers_url":"https://api.github.com/users/merwok/followers","following_url":"https://api.github.com/users/merwok/following{/other_user}","gists_url":"https://api.github.com/users/merwok/gists{/gist_id}","starred_url":"https://api.github.com/users/merwok/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/merwok/subscriptions","organizations_url":"https://api.github.com/users/merwok/orgs","repos_url":"https://api.github.com/users/merwok/repos","events_url":"https://api.github.com/users/merwok/events{/privacy}","received_events_url":"https://api.github.com/users/merwok/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/merwok/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/merwok/django","forks_url":"https://api.github.com/repos/merwok/django/forks","keys_url":"https://api.github.com/repos/merwok/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/merwok/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/merwok/django/teams","hooks_url":"https://api.github.com/repos/merwok/django/hooks","issue_events_url":"https://api.github.com/repos/merwok/django/issues/events{/number}","events_url":"https://api.github.com/repos/merwok/django/events","assignees_url":"https://api.github.com/repos/merwok/django/assignees{/user}","branches_url":"https://api.github.com/repos/merwok/django/branches{/branch}","tags_url":"https://api.github.com/repos/merwok/django/tags","blobs_url":"https://api.github.com/repos/merwok/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/merwok/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/merwok/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/merwok/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/merwok/django/statuses/{sha}","languages_url":"https://api.github.com/repos/merwok/django/languages","stargazers_url":"https://api.github.com/repos/merwok/django/stargazers","contributors_url":"https://api.github.com/repos/merwok/django/contributors","subscribers_url":"https://api.github.com/repos/merwok/django/subscribers","subscription_url":"https://api.github.com/repos/merwok/django/subscription","commits_url":"https://api.github.com/repos/merwok/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/merwok/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/merwok/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/merwok/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/merwok/django/contents/{+path}","compare_url":"https://api.github.com/repos/merwok/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/merwok/django/merges","archive_url":"https://api.github.com/repos/merwok/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/merwok/django/downloads","issues_url":"https://api.github.com/repos/merwok/django/issues{/number}","pulls_url":"https://api.github.com/repos/merwok/django/pulls{/number}","milestones_url":"https://api.github.com/repos/merwok/django/milestones{/number}","notifications_url":"https://api.github.com/repos/merwok/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/merwok/django/labels{/name}","releases_url":"https://api.github.com/repos/merwok/django/releases{/id}","created_at":"2014-05-14T22:32:43Z","updated_at":"2014-07-01T18:20:54Z","pushed_at":"2015-01-15T22:07:21Z","git_url":"git://github.com/merwok/django.git","ssh_url":"git@github.com:merwok/django.git","clone_url":"https://github.com/merwok/django.git","svn_url":"https://github.com/merwok/django","homepage":"http://www.djangoproject.com/","size":118634,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"51dc617b21e67636d96cf645905797a4d6ff4bf0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3928"},"html":{"href":"https://github.com/django/django/pull/3928"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3928"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3928/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3928/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3928/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/1cb75582a9a5ec52eb730ec3bbbbac8349bc5f01"}}},{"url":"https://api.github.com/repos/django/django/pulls/3926","id":27465222,"html_url":"https://github.com/django/django/pull/3926","diff_url":"https://github.com/django/django/pull/3926.diff","patch_url":"https://github.com/django/django/pull/3926.patch","issue_url":"https://api.github.com/repos/django/django/issues/3926","number":3926,"state":"closed","locked":false,"title":"Refs #24148 -- Documented the bug with case expressions in SQLite < 3.7....","user":{"login":"michalmo","id":9825131,"avatar_url":"https://avatars.githubusercontent.com/u/9825131?v=3","gravatar_id":"","url":"https://api.github.com/users/michalmo","html_url":"https://github.com/michalmo","followers_url":"https://api.github.com/users/michalmo/followers","following_url":"https://api.github.com/users/michalmo/following{/other_user}","gists_url":"https://api.github.com/users/michalmo/gists{/gist_id}","starred_url":"https://api.github.com/users/michalmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalmo/subscriptions","organizations_url":"https://api.github.com/users/michalmo/orgs","repos_url":"https://api.github.com/users/michalmo/repos","events_url":"https://api.github.com/users/michalmo/events{/privacy}","received_events_url":"https://api.github.com/users/michalmo/received_events","type":"User","site_admin":false},"body":"...0\r\n\r\nI've done some testing, and SQLite 3.7.0 is the first version where the failing test case passes.","created_at":"2015-01-15T21:48:16Z","updated_at":"2015-01-16T00:43:19Z","closed_at":"2015-01-16T00:43:19Z","merged_at":null,"merge_commit_sha":"84e6665c5b2868a879de37ce92a4dbedcdd691aa","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3926/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3926/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3926/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/e6a4ccdf393c65ac0f519a4ef69763eed70a3768","head":{"label":"michalmo:ticket_24148","ref":"ticket_24148","sha":"e6a4ccdf393c65ac0f519a4ef69763eed70a3768","user":{"login":"michalmo","id":9825131,"avatar_url":"https://avatars.githubusercontent.com/u/9825131?v=3","gravatar_id":"","url":"https://api.github.com/users/michalmo","html_url":"https://github.com/michalmo","followers_url":"https://api.github.com/users/michalmo/followers","following_url":"https://api.github.com/users/michalmo/following{/other_user}","gists_url":"https://api.github.com/users/michalmo/gists{/gist_id}","starred_url":"https://api.github.com/users/michalmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalmo/subscriptions","organizations_url":"https://api.github.com/users/michalmo/orgs","repos_url":"https://api.github.com/users/michalmo/repos","events_url":"https://api.github.com/users/michalmo/events{/privacy}","received_events_url":"https://api.github.com/users/michalmo/received_events","type":"User","site_admin":false},"repo":{"id":28709403,"name":"django","full_name":"michalmo/django","owner":{"login":"michalmo","id":9825131,"avatar_url":"https://avatars.githubusercontent.com/u/9825131?v=3","gravatar_id":"","url":"https://api.github.com/users/michalmo","html_url":"https://github.com/michalmo","followers_url":"https://api.github.com/users/michalmo/followers","following_url":"https://api.github.com/users/michalmo/following{/other_user}","gists_url":"https://api.github.com/users/michalmo/gists{/gist_id}","starred_url":"https://api.github.com/users/michalmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalmo/subscriptions","organizations_url":"https://api.github.com/users/michalmo/orgs","repos_url":"https://api.github.com/users/michalmo/repos","events_url":"https://api.github.com/users/michalmo/events{/privacy}","received_events_url":"https://api.github.com/users/michalmo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/michalmo/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/michalmo/django","forks_url":"https://api.github.com/repos/michalmo/django/forks","keys_url":"https://api.github.com/repos/michalmo/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/michalmo/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/michalmo/django/teams","hooks_url":"https://api.github.com/repos/michalmo/django/hooks","issue_events_url":"https://api.github.com/repos/michalmo/django/issues/events{/number}","events_url":"https://api.github.com/repos/michalmo/django/events","assignees_url":"https://api.github.com/repos/michalmo/django/assignees{/user}","branches_url":"https://api.github.com/repos/michalmo/django/branches{/branch}","tags_url":"https://api.github.com/repos/michalmo/django/tags","blobs_url":"https://api.github.com/repos/michalmo/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/michalmo/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/michalmo/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/michalmo/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/michalmo/django/statuses/{sha}","languages_url":"https://api.github.com/repos/michalmo/django/languages","stargazers_url":"https://api.github.com/repos/michalmo/django/stargazers","contributors_url":"https://api.github.com/repos/michalmo/django/contributors","subscribers_url":"https://api.github.com/repos/michalmo/django/subscribers","subscription_url":"https://api.github.com/repos/michalmo/django/subscription","commits_url":"https://api.github.com/repos/michalmo/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/michalmo/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/michalmo/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/michalmo/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/michalmo/django/contents/{+path}","compare_url":"https://api.github.com/repos/michalmo/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/michalmo/django/merges","archive_url":"https://api.github.com/repos/michalmo/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/michalmo/django/downloads","issues_url":"https://api.github.com/repos/michalmo/django/issues{/number}","pulls_url":"https://api.github.com/repos/michalmo/django/pulls{/number}","milestones_url":"https://api.github.com/repos/michalmo/django/milestones{/number}","notifications_url":"https://api.github.com/repos/michalmo/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/michalmo/django/labels{/name}","releases_url":"https://api.github.com/repos/michalmo/django/releases{/id}","created_at":"2015-01-02T09:47:52Z","updated_at":"2015-01-02T09:48:09Z","pushed_at":"2015-01-15T21:47:01Z","git_url":"git://github.com/michalmo/django.git","ssh_url":"git@github.com:michalmo/django.git","clone_url":"https://github.com/michalmo/django.git","svn_url":"https://github.com/michalmo/django","homepage":"https://www.djangoproject.com/","size":118464,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"51dc617b21e67636d96cf645905797a4d6ff4bf0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3926"},"html":{"href":"https://github.com/django/django/pull/3926"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3926"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3926/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3926/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3926/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/e6a4ccdf393c65ac0f519a4ef69763eed70a3768"}}},{"url":"https://api.github.com/repos/django/django/pulls/3925","id":27447127,"html_url":"https://github.com/django/django/pull/3925","diff_url":"https://github.com/django/django/pull/3925.diff","patch_url":"https://github.com/django/django/pull/3925.patch","issue_url":"https://api.github.com/repos/django/django/issues/3925","number":3925,"state":"closed","locked":false,"title":"Make expresison tests work without Pillow","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-15T17:41:50Z","updated_at":"2015-01-15T19:03:56Z","closed_at":"2015-01-15T19:03:56Z","merged_at":null,"merge_commit_sha":"8e0f744c186d8641546f79df240fe1a61e896c55","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3925/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3925/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3925/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/0b5d79332a673dd04bb98c96fba5a9b0c0bdd710","head":{"label":"collinanderson:expressiontests","ref":"expressiontests","sha":"0b5d79332a673dd04bb98c96fba5a9b0c0bdd710","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4832c004e88a68b98b976b4f68a1c9fdb4ea3530","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3925"},"html":{"href":"https://github.com/django/django/pull/3925"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3925"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3925/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3925/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3925/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/0b5d79332a673dd04bb98c96fba5a9b0c0bdd710"}}},{"url":"https://api.github.com/repos/django/django/pulls/3924","id":27439320,"html_url":"https://github.com/django/django/pull/3924","diff_url":"https://github.com/django/django/pull/3924.diff","patch_url":"https://github.com/django/django/pull/3924.patch","issue_url":"https://api.github.com/repos/django/django/issues/3924","number":3924,"state":"closed","locked":false,"title":"Fixed #23850 -- Fixed a migrations test failure on Mac OSX & Python 3","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/23850","created_at":"2015-01-15T16:05:52Z","updated_at":"2015-01-16T00:47:39Z","closed_at":"2015-01-16T00:47:39Z","merged_at":null,"merge_commit_sha":"1f01f5836eb061377676d8982db41635ae5bd5ef","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3924/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3924/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3924/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/58b0ea7417cb52b6acf6e7f806fa6afe46b20d25","head":{"label":"collinanderson:23850","ref":"23850","sha":"58b0ea7417cb52b6acf6e7f806fa6afe46b20d25","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4832c004e88a68b98b976b4f68a1c9fdb4ea3530","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3924"},"html":{"href":"https://github.com/django/django/pull/3924"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3924"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3924/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3924/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3924/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/58b0ea7417cb52b6acf6e7f806fa6afe46b20d25"}}},{"url":"https://api.github.com/repos/django/django/pulls/3923","id":27433732,"html_url":"https://github.com/django/django/pull/3923","diff_url":"https://github.com/django/django/pull/3923.diff","patch_url":"https://github.com/django/django/pull/3923.patch","issue_url":"https://api.github.com/repos/django/django/issues/3923","number":3923,"state":"closed","locked":false,"title":"Fixed #24135 -- Made RenameModel rename many-to-many tables.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24135","created_at":"2015-01-15T14:57:12Z","updated_at":"2015-01-16T01:40:21Z","closed_at":"2015-01-16T01:36:50Z","merged_at":"2015-01-16T01:36:50Z","merge_commit_sha":"bb5d203ad1cf9fb41f566d91d45d45478da2c14e","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3923/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3923/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3923/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/28db4af80a319485c0da724d692e2f8396aa57e3","head":{"label":"timgraham:24135","ref":"24135","sha":"28db4af80a319485c0da724d692e2f8396aa57e3","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"3f9ec12d9c9eff9a3b1a205d87c7e66587cf9967","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3923"},"html":{"href":"https://github.com/django/django/pull/3923"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3923"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3923/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3923/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3923/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/28db4af80a319485c0da724d692e2f8396aa57e3"}}},{"url":"https://api.github.com/repos/django/django/pulls/3922","id":27424775,"html_url":"https://github.com/django/django/pull/3922","diff_url":"https://github.com/django/django/pull/3922.diff","patch_url":"https://github.com/django/django/pull/3922.patch","issue_url":"https://api.github.com/repos/django/django/issues/3922","number":3922,"state":"closed","locked":false,"title":"Simplified a bit GeoAggregate classes","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-15T12:26:44Z","updated_at":"2015-01-16T09:43:50Z","closed_at":"2015-01-16T09:43:27Z","merged_at":null,"merge_commit_sha":"78eae1f1fd2bbd8a7c6adb7412dc4a59e3db0440","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3922/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3922/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3922/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/c9cec2d057a07c2575291bed5113d7845b07538a","head":{"label":"claudep:gis_aggregate_simplify","ref":"gis_aggregate_simplify","sha":"c9cec2d057a07c2575291bed5113d7845b07538a","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4832c004e88a68b98b976b4f68a1c9fdb4ea3530","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3922"},"html":{"href":"https://github.com/django/django/pull/3922"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3922"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3922/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3922/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3922/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/c9cec2d057a07c2575291bed5113d7845b07538a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3921","id":27401154,"html_url":"https://github.com/django/django/pull/3921","diff_url":"https://github.com/django/django/pull/3921.diff","patch_url":"https://github.com/django/django/pull/3921.patch","issue_url":"https://api.github.com/repos/django/django/issues/3921","number":3921,"state":"closed","locked":false,"title":"Fixed #23935 -- Example Failing test case.","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/23935","created_at":"2015-01-15T02:08:55Z","updated_at":"2015-01-15T20:06:39Z","closed_at":"2015-01-15T20:06:39Z","merged_at":null,"merge_commit_sha":"a871a17226ceefd749df38e8c064f16a59fe4fa4","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3921/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3921/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3921/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/6ffc08f8c56c1b0be1679444ef323078be18f25c","head":{"label":"collinanderson:23935","ref":"23935","sha":"6ffc08f8c56c1b0be1679444ef323078be18f25c","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"67dbc56ec8657e02247c97ec06f7cde8d4808f0d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3921"},"html":{"href":"https://github.com/django/django/pull/3921"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3921"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3921/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3921/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3921/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/6ffc08f8c56c1b0be1679444ef323078be18f25c"}}},{"url":"https://api.github.com/repos/django/django/pulls/3920","id":27385851,"html_url":"https://github.com/django/django/pull/3920","diff_url":"https://github.com/django/django/pull/3920.diff","patch_url":"https://github.com/django/django/pull/3920.patch","issue_url":"https://api.github.com/repos/django/django/issues/3920","number":3920,"state":"closed","locked":false,"title":"Fixed #24152 -- Deprecated GeoQuerySet aggregate methods","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-14T21:40:36Z","updated_at":"2015-01-16T18:55:00Z","closed_at":"2015-01-16T18:53:48Z","merged_at":"2015-01-16T18:54:01Z","merge_commit_sha":"be4fcc08912270fb3417555e3d7da9c36512562f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3920/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3920/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3920/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a79e6b67175f532049967268c10609af6d31d140","head":{"label":"claudep:gis_deprecate_aggregate","ref":"gis_deprecate_aggregate","sha":"a79e6b67175f532049967268c10609af6d31d140","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"5338ff4808c822a8b00e90154b884b7be3011e60","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3920"},"html":{"href":"https://github.com/django/django/pull/3920"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3920"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3920/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3920/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3920/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a79e6b67175f532049967268c10609af6d31d140"}}},{"url":"https://api.github.com/repos/django/django/pulls/3919","id":27372618,"html_url":"https://github.com/django/django/pull/3919","diff_url":"https://github.com/django/django/pull/3919.diff","patch_url":"https://github.com/django/django/pull/3919.patch","issue_url":"https://api.github.com/repos/django/django/issues/3919","number":3919,"state":"closed","locked":false,"title":"Fixed incorrect error message","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"(sorry about the double pull request here. replaces #3916)","created_at":"2015-01-14T18:43:33Z","updated_at":"2015-01-14T19:51:26Z","closed_at":"2015-01-14T19:51:26Z","merged_at":null,"merge_commit_sha":"5d67c815cb5b8564e360af4e07502dbe6b3feade","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3919/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3919/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3919/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/0d9b9a109b477f07a54d3b336bb91c2b53413d70","head":{"label":"collinanderson:patch-10","ref":"patch-10","sha":"0d9b9a109b477f07a54d3b336bb91c2b53413d70","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"88786afbffc5c095f6491e080afea394f63bb44a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3919"},"html":{"href":"https://github.com/django/django/pull/3919"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3919"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3919/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3919/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3919/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/0d9b9a109b477f07a54d3b336bb91c2b53413d70"}}},{"url":"https://api.github.com/repos/django/django/pulls/3918","id":27371775,"html_url":"https://github.com/django/django/pull/3918","diff_url":"https://github.com/django/django/pull/3918.diff","patch_url":"https://github.com/django/django/pull/3918.patch","issue_url":"https://api.github.com/repos/django/django/issues/3918","number":3918,"state":"closed","locked":false,"title":"Fixed #24146 -- Allow using get_field() early in the process","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24146","created_at":"2015-01-14T18:32:04Z","updated_at":"2015-01-17T10:00:45Z","closed_at":"2015-01-16T19:47:53Z","merged_at":null,"merge_commit_sha":"3c1af5e03f3666bc92c0750a190aca9f761c5d56","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3918/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3918/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3918/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/0eac88ecf66042039e6427a2c4b777ea9fae3bb0","head":{"label":"collinanderson:24146","ref":"24146","sha":"0eac88ecf66042039e6427a2c4b777ea9fae3bb0","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"a79e6b67175f532049967268c10609af6d31d140","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3918"},"html":{"href":"https://github.com/django/django/pull/3918"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3918"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3918/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3918/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3918/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/0eac88ecf66042039e6427a2c4b777ea9fae3bb0"}}},{"url":"https://api.github.com/repos/django/django/pulls/3917","id":27371240,"html_url":"https://github.com/django/django/pull/3917","diff_url":"https://github.com/django/django/pull/3917.diff","patch_url":"https://github.com/django/django/pull/3917.patch","issue_url":"https://api.github.com/repos/django/django/issues/3917","number":3917,"state":"closed","locked":false,"title":"Moved check_aggregate_support to BaseSpatialOperations","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-14T18:24:48Z","updated_at":"2015-01-14T21:40:14Z","closed_at":"2015-01-14T21:37:05Z","merged_at":null,"merge_commit_sha":"d7ff972306a4957cf4185965dc5a91fbbf5447fd","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3917/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3917/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3917/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/9bb682d6397f54826def3d981e720a97daf0d3ab","head":{"label":"claudep:gis_check_aggregate","ref":"gis_check_aggregate","sha":"9bb682d6397f54826def3d981e720a97daf0d3ab","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"737d24923ac69bb8b89af1bb2f3f4c4c744349e8","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3917"},"html":{"href":"https://github.com/django/django/pull/3917"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3917"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3917/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3917/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3917/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/9bb682d6397f54826def3d981e720a97daf0d3ab"}}},{"url":"https://api.github.com/repos/django/django/pulls/3916","id":27370637,"html_url":"https://github.com/django/django/pull/3916","diff_url":"https://github.com/django/django/pull/3916.diff","patch_url":"https://github.com/django/django/pull/3916.patch","issue_url":"https://api.github.com/repos/django/django/issues/3916","number":3916,"state":"closed","locked":false,"title":"Fixed incorrect error message in get_fields().","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-14T18:15:14Z","updated_at":"2015-01-14T18:44:16Z","closed_at":"2015-01-14T18:39:48Z","merged_at":null,"merge_commit_sha":"e461c13344cf14f17b7929b3439878bda15248c4","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3916/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3916/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3916/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/88786afbffc5c095f6491e080afea394f63bb44a","head":{"label":"collinanderson:patch-10","ref":"patch-10","sha":"88786afbffc5c095f6491e080afea394f63bb44a","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"88786afbffc5c095f6491e080afea394f63bb44a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3916"},"html":{"href":"https://github.com/django/django/pull/3916"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3916"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3916/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3916/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3916/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/88786afbffc5c095f6491e080afea394f63bb44a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3914","id":27332903,"html_url":"https://github.com/django/django/pull/3914","diff_url":"https://github.com/django/django/pull/3914.diff","patch_url":"https://github.com/django/django/pull/3914.patch","issue_url":"https://api.github.com/repos/django/django/issues/3914","number":3914,"state":"closed","locked":false,"title":"Removed unused import","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-14T08:15:10Z","updated_at":"2015-01-14T08:32:12Z","closed_at":"2015-01-14T08:32:12Z","merged_at":null,"merge_commit_sha":"ff42d51eeb6d4bd4bac1fc3a334274e2fae99a94","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3914/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3914/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3914/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/78b9a34a9c9c66bbd555f948f7ecd7d97583a97d","head":{"label":"claudep:removed_import","ref":"removed_import","sha":"78b9a34a9c9c66bbd555f948f7ecd7d97583a97d","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"1913c1ac2190cdc31de9dcd81687f5dad057e2f0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3914"},"html":{"href":"https://github.com/django/django/pull/3914"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3914"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3914/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3914/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3914/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/78b9a34a9c9c66bbd555f948f7ecd7d97583a97d"}}},{"url":"https://api.github.com/repos/django/django/pulls/3913","id":27288107,"html_url":"https://github.com/django/django/pull/3913","diff_url":"https://github.com/django/django/pull/3913.diff","patch_url":"https://github.com/django/django/pull/3913.patch","issue_url":"https://api.github.com/repos/django/django/issues/3913","number":3913,"state":"closed","locked":false,"title":"Fixed #24147 -- Prevented managers leaking model during migrations","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24147","created_at":"2015-01-13T17:22:26Z","updated_at":"2015-01-14T15:14:09Z","closed_at":"2015-01-14T15:14:06Z","merged_at":null,"merge_commit_sha":"b3b8bea3e0681d99f99068478618c25a105ce5a5","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3913/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3913/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3913/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/c08a2865dc0e53de16000f01c61cd1d3bfee0824","head":{"label":"MarkusH:ticket24147","ref":"ticket24147","sha":"c08a2865dc0e53de16000f01c61cd1d3bfee0824","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"dc90bf2ac823ed9841cc8ca4035fe0b62a18c958","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3913"},"html":{"href":"https://github.com/django/django/pull/3913"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3913"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3913/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3913/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3913/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/c08a2865dc0e53de16000f01c61cd1d3bfee0824"}}},{"url":"https://api.github.com/repos/django/django/pulls/3912","id":27287754,"html_url":"https://github.com/django/django/pull/3912","diff_url":"https://github.com/django/django/pull/3912.diff","patch_url":"https://github.com/django/django/pull/3912.patch","issue_url":"https://api.github.com/repos/django/django/issues/3912","number":3912,"state":"closed","locked":false,"title":"Fixed #24146 -- Allow using get_field() early in the process","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24146\r\n\r\nThis would modify the API (maybe there's a better way to do this).\r\n\r\nI also don't know a good way to test this. There's a good `books_contributed` example model, but the admin checks need to run on it.","created_at":"2015-01-13T17:18:01Z","updated_at":"2015-01-14T18:34:22Z","closed_at":"2015-01-14T18:29:36Z","merged_at":null,"merge_commit_sha":"b7091fa76175aa10305c7ddb0da5bc7e4f7fb24f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3912/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3912/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3912/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/88786afbffc5c095f6491e080afea394f63bb44a","head":{"label":"collinanderson:24146","ref":"24146","sha":"88786afbffc5c095f6491e080afea394f63bb44a","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"88786afbffc5c095f6491e080afea394f63bb44a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3912"},"html":{"href":"https://github.com/django/django/pull/3912"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3912"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3912/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3912/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3912/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/88786afbffc5c095f6491e080afea394f63bb44a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3911","id":27283808,"html_url":"https://github.com/django/django/pull/3911","diff_url":"https://github.com/django/django/pull/3911.diff","patch_url":"https://github.com/django/django/pull/3911.patch","issue_url":"https://api.github.com/repos/django/django/issues/3911","number":3911,"state":"closed","locked":false,"title":"tweaked a bad model example","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-13T16:28:56Z","updated_at":"2015-01-13T16:54:26Z","closed_at":"2015-01-13T16:54:26Z","merged_at":null,"merge_commit_sha":"25199eb9844eb1e4a28a688b79ab47bff37da869","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3911/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3911/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3911/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a0a6aa2b3cdc7875f04810b231e5e22cfc344d81","head":{"label":"collinanderson:patch-9","ref":"patch-9","sha":"a0a6aa2b3cdc7875f04810b231e5e22cfc344d81","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"e084ff01f27a28717eef471ff8e86b074d452f44","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3911"},"html":{"href":"https://github.com/django/django/pull/3911"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3911"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3911/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3911/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3911/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a0a6aa2b3cdc7875f04810b231e5e22cfc344d81"}}},{"url":"https://api.github.com/repos/django/django/pulls/3910","id":27281914,"html_url":"https://github.com/django/django/pull/3910","diff_url":"https://github.com/django/django/pull/3910.diff","patch_url":"https://github.com/django/django/pull/3910.patch","issue_url":"https://api.github.com/repos/django/django/issues/3910","number":3910,"state":"closed","locked":false,"title":"Fixed #24136 -- Prevented crash when convert_extent input is None","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Thanks Max Demars for the report.","created_at":"2015-01-13T16:06:37Z","updated_at":"2015-01-13T16:45:51Z","closed_at":"2015-01-13T16:28:22Z","merged_at":"2015-01-13T16:28:22Z","merge_commit_sha":"2301c0aa54ea00629eaa95adabb31cd8079bf386","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3910/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3910/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3910/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/e084ff01f27a28717eef471ff8e86b074d452f44","head":{"label":"claudep:24136","ref":"24136","sha":"e084ff01f27a28717eef471ff8e86b074d452f44","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"65246de7b1d70d25831ab394c4f4a75813f629fe","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3910"},"html":{"href":"https://github.com/django/django/pull/3910"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3910"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3910/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3910/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3910/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/e084ff01f27a28717eef471ff8e86b074d452f44"}}},{"url":"https://api.github.com/repos/django/django/pulls/3907","id":27254396,"html_url":"https://github.com/django/django/pull/3907","diff_url":"https://github.com/django/django/pull/3907.diff","patch_url":"https://github.com/django/django/pull/3907.patch","issue_url":"https://api.github.com/repos/django/django/issues/3907","number":3907,"state":"closed","locked":false,"title":"Fixed #24143 - Changed Http404 usages in docs to use instantiated versions","user":{"login":"kezabelle","id":118377,"avatar_url":"https://avatars.githubusercontent.com/u/118377?v=3","gravatar_id":"","url":"https://api.github.com/users/kezabelle","html_url":"https://github.com/kezabelle","followers_url":"https://api.github.com/users/kezabelle/followers","following_url":"https://api.github.com/users/kezabelle/following{/other_user}","gists_url":"https://api.github.com/users/kezabelle/gists{/gist_id}","starred_url":"https://api.github.com/users/kezabelle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kezabelle/subscriptions","organizations_url":"https://api.github.com/users/kezabelle/orgs","repos_url":"https://api.github.com/users/kezabelle/repos","events_url":"https://api.github.com/users/kezabelle/events{/privacy}","received_events_url":"https://api.github.com/users/kezabelle/received_events","type":"User","site_admin":false},"body":"Preferring `raise Http404(\"message\")` over `raise Http404`","created_at":"2015-01-13T08:22:06Z","updated_at":"2015-01-16T14:42:14Z","closed_at":"2015-01-16T14:42:14Z","merged_at":null,"merge_commit_sha":"f595633b8a4737977af2a5a1393d5c1b0a865d06","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3907/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3907/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3907/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/11626eae15444c8fedae6856999ea3bfc6f80fe2","head":{"label":"kezabelle:docs/http404","ref":"docs/http404","sha":"11626eae15444c8fedae6856999ea3bfc6f80fe2","user":{"login":"kezabelle","id":118377,"avatar_url":"https://avatars.githubusercontent.com/u/118377?v=3","gravatar_id":"","url":"https://api.github.com/users/kezabelle","html_url":"https://github.com/kezabelle","followers_url":"https://api.github.com/users/kezabelle/followers","following_url":"https://api.github.com/users/kezabelle/following{/other_user}","gists_url":"https://api.github.com/users/kezabelle/gists{/gist_id}","starred_url":"https://api.github.com/users/kezabelle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kezabelle/subscriptions","organizations_url":"https://api.github.com/users/kezabelle/orgs","repos_url":"https://api.github.com/users/kezabelle/repos","events_url":"https://api.github.com/users/kezabelle/events{/privacy}","received_events_url":"https://api.github.com/users/kezabelle/received_events","type":"User","site_admin":false},"repo":{"id":8197083,"name":"django","full_name":"kezabelle/django","owner":{"login":"kezabelle","id":118377,"avatar_url":"https://avatars.githubusercontent.com/u/118377?v=3","gravatar_id":"","url":"https://api.github.com/users/kezabelle","html_url":"https://github.com/kezabelle","followers_url":"https://api.github.com/users/kezabelle/followers","following_url":"https://api.github.com/users/kezabelle/following{/other_user}","gists_url":"https://api.github.com/users/kezabelle/gists{/gist_id}","starred_url":"https://api.github.com/users/kezabelle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kezabelle/subscriptions","organizations_url":"https://api.github.com/users/kezabelle/orgs","repos_url":"https://api.github.com/users/kezabelle/repos","events_url":"https://api.github.com/users/kezabelle/events{/privacy}","received_events_url":"https://api.github.com/users/kezabelle/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/kezabelle/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/kezabelle/django","forks_url":"https://api.github.com/repos/kezabelle/django/forks","keys_url":"https://api.github.com/repos/kezabelle/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/kezabelle/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/kezabelle/django/teams","hooks_url":"https://api.github.com/repos/kezabelle/django/hooks","issue_events_url":"https://api.github.com/repos/kezabelle/django/issues/events{/number}","events_url":"https://api.github.com/repos/kezabelle/django/events","assignees_url":"https://api.github.com/repos/kezabelle/django/assignees{/user}","branches_url":"https://api.github.com/repos/kezabelle/django/branches{/branch}","tags_url":"https://api.github.com/repos/kezabelle/django/tags","blobs_url":"https://api.github.com/repos/kezabelle/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/kezabelle/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/kezabelle/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/kezabelle/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/kezabelle/django/statuses/{sha}","languages_url":"https://api.github.com/repos/kezabelle/django/languages","stargazers_url":"https://api.github.com/repos/kezabelle/django/stargazers","contributors_url":"https://api.github.com/repos/kezabelle/django/contributors","subscribers_url":"https://api.github.com/repos/kezabelle/django/subscribers","subscription_url":"https://api.github.com/repos/kezabelle/django/subscription","commits_url":"https://api.github.com/repos/kezabelle/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/kezabelle/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/kezabelle/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/kezabelle/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/kezabelle/django/contents/{+path}","compare_url":"https://api.github.com/repos/kezabelle/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/kezabelle/django/merges","archive_url":"https://api.github.com/repos/kezabelle/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/kezabelle/django/downloads","issues_url":"https://api.github.com/repos/kezabelle/django/issues{/number}","pulls_url":"https://api.github.com/repos/kezabelle/django/pulls{/number}","milestones_url":"https://api.github.com/repos/kezabelle/django/milestones{/number}","notifications_url":"https://api.github.com/repos/kezabelle/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/kezabelle/django/labels{/name}","releases_url":"https://api.github.com/repos/kezabelle/django/releases{/id}","created_at":"2013-02-14T09:58:44Z","updated_at":"2014-01-21T18:39:16Z","pushed_at":"2015-01-16T08:38:50Z","git_url":"git://github.com/kezabelle/django.git","ssh_url":"git@github.com:kezabelle/django.git","clone_url":"https://github.com/kezabelle/django.git","svn_url":"https://github.com/kezabelle/django","homepage":"http://www.djangoproject.com/","size":105613,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"28db4af80a319485c0da724d692e2f8396aa57e3","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3907"},"html":{"href":"https://github.com/django/django/pull/3907"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3907"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3907/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3907/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3907/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/11626eae15444c8fedae6856999ea3bfc6f80fe2"}}},{"url":"https://api.github.com/repos/django/django/pulls/3906","id":27250531,"html_url":"https://github.com/django/django/pull/3906","diff_url":"https://github.com/django/django/pull/3906.diff","patch_url":"https://github.com/django/django/pull/3906.patch","issue_url":"https://api.github.com/repos/django/django/issues/3906","number":3906,"state":"closed","locked":false,"title":"Efficient QuerySet.__contains__","user":{"login":"gormster","id":152158,"avatar_url":"https://avatars.githubusercontent.com/u/152158?v=3","gravatar_id":"","url":"https://api.github.com/users/gormster","html_url":"https://github.com/gormster","followers_url":"https://api.github.com/users/gormster/followers","following_url":"https://api.github.com/users/gormster/following{/other_user}","gists_url":"https://api.github.com/users/gormster/gists{/gist_id}","starred_url":"https://api.github.com/users/gormster/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gormster/subscriptions","organizations_url":"https://api.github.com/users/gormster/orgs","repos_url":"https://api.github.com/users/gormster/repos","events_url":"https://api.github.com/users/gormster/events{/privacy}","received_events_url":"https://api.github.com/users/gormster/received_events","type":"User","site_admin":false},"body":"Doing `x in qs` current involves iterating over every single row in the\r\ndatabase. This allows the search to be done in the database with the\r\nindexed primary key.","created_at":"2015-01-13T06:27:03Z","updated_at":"2015-01-13T07:16:44Z","closed_at":"2015-01-13T06:39:52Z","merged_at":null,"merge_commit_sha":"8b8de05ea87379f027e3792363cc97f798d1d6c2","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3906/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3906/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3906/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/9786a6db1cc672f17551c0ae44ea8aec37dabecc","head":{"label":"gormster:master","ref":"master","sha":"9786a6db1cc672f17551c0ae44ea8aec37dabecc","user":{"login":"gormster","id":152158,"avatar_url":"https://avatars.githubusercontent.com/u/152158?v=3","gravatar_id":"","url":"https://api.github.com/users/gormster","html_url":"https://github.com/gormster","followers_url":"https://api.github.com/users/gormster/followers","following_url":"https://api.github.com/users/gormster/following{/other_user}","gists_url":"https://api.github.com/users/gormster/gists{/gist_id}","starred_url":"https://api.github.com/users/gormster/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gormster/subscriptions","organizations_url":"https://api.github.com/users/gormster/orgs","repos_url":"https://api.github.com/users/gormster/repos","events_url":"https://api.github.com/users/gormster/events{/privacy}","received_events_url":"https://api.github.com/users/gormster/received_events","type":"User","site_admin":false},"repo":{"id":29175784,"name":"django","full_name":"gormster/django","owner":{"login":"gormster","id":152158,"avatar_url":"https://avatars.githubusercontent.com/u/152158?v=3","gravatar_id":"","url":"https://api.github.com/users/gormster","html_url":"https://github.com/gormster","followers_url":"https://api.github.com/users/gormster/followers","following_url":"https://api.github.com/users/gormster/following{/other_user}","gists_url":"https://api.github.com/users/gormster/gists{/gist_id}","starred_url":"https://api.github.com/users/gormster/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gormster/subscriptions","organizations_url":"https://api.github.com/users/gormster/orgs","repos_url":"https://api.github.com/users/gormster/repos","events_url":"https://api.github.com/users/gormster/events{/privacy}","received_events_url":"https://api.github.com/users/gormster/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/gormster/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/gormster/django","forks_url":"https://api.github.com/repos/gormster/django/forks","keys_url":"https://api.github.com/repos/gormster/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gormster/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gormster/django/teams","hooks_url":"https://api.github.com/repos/gormster/django/hooks","issue_events_url":"https://api.github.com/repos/gormster/django/issues/events{/number}","events_url":"https://api.github.com/repos/gormster/django/events","assignees_url":"https://api.github.com/repos/gormster/django/assignees{/user}","branches_url":"https://api.github.com/repos/gormster/django/branches{/branch}","tags_url":"https://api.github.com/repos/gormster/django/tags","blobs_url":"https://api.github.com/repos/gormster/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gormster/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gormster/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/gormster/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gormster/django/statuses/{sha}","languages_url":"https://api.github.com/repos/gormster/django/languages","stargazers_url":"https://api.github.com/repos/gormster/django/stargazers","contributors_url":"https://api.github.com/repos/gormster/django/contributors","subscribers_url":"https://api.github.com/repos/gormster/django/subscribers","subscription_url":"https://api.github.com/repos/gormster/django/subscription","commits_url":"https://api.github.com/repos/gormster/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/gormster/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/gormster/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/gormster/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/gormster/django/contents/{+path}","compare_url":"https://api.github.com/repos/gormster/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gormster/django/merges","archive_url":"https://api.github.com/repos/gormster/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gormster/django/downloads","issues_url":"https://api.github.com/repos/gormster/django/issues{/number}","pulls_url":"https://api.github.com/repos/gormster/django/pulls{/number}","milestones_url":"https://api.github.com/repos/gormster/django/milestones{/number}","notifications_url":"https://api.github.com/repos/gormster/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gormster/django/labels{/name}","releases_url":"https://api.github.com/repos/gormster/django/releases{/id}","created_at":"2015-01-13T06:17:57Z","updated_at":"2015-01-13T07:02:04Z","pushed_at":"2015-01-13T07:02:03Z","git_url":"git://github.com/gormster/django.git","ssh_url":"git@github.com:gormster/django.git","clone_url":"https://github.com/gormster/django.git","svn_url":"https://github.com/gormster/django","homepage":"https://www.djangoproject.com/","size":117920,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"65246de7b1d70d25831ab394c4f4a75813f629fe","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3906"},"html":{"href":"https://github.com/django/django/pull/3906"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3906"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3906/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3906/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3906/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/9786a6db1cc672f17551c0ae44ea8aec37dabecc"}}},{"url":"https://api.github.com/repos/django/django/pulls/3905","id":27240342,"html_url":"https://github.com/django/django/pull/3905","diff_url":"https://github.com/django/django/pull/3905.diff","patch_url":"https://github.com/django/django/pull/3905.patch","issue_url":"https://api.github.com/repos/django/django/issues/3905","number":3905,"state":"closed","locked":false,"title":"Replaced inner functions by class methods.","user":{"login":"charettes","id":9293,"avatar_url":"https://avatars.githubusercontent.com/u/9293?v=3","gravatar_id":"","url":"https://api.github.com/users/charettes","html_url":"https://github.com/charettes","followers_url":"https://api.github.com/users/charettes/followers","following_url":"https://api.github.com/users/charettes/following{/other_user}","gists_url":"https://api.github.com/users/charettes/gists{/gist_id}","starred_url":"https://api.github.com/users/charettes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/charettes/subscriptions","organizations_url":"https://api.github.com/users/charettes/orgs","repos_url":"https://api.github.com/users/charettes/repos","events_url":"https://api.github.com/users/charettes/events{/privacy}","received_events_url":"https://api.github.com/users/charettes/received_events","type":"User","site_admin":false},"body":"refs #24031","created_at":"2015-01-13T00:57:37Z","updated_at":"2015-01-15T18:07:56Z","closed_at":"2015-01-15T18:05:52Z","merged_at":"2015-01-15T18:05:52Z","merge_commit_sha":"60112bb1c229b77770e2a5bfd9d164ff85dd9bdc","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3905/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3905/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3905/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/47bdad4e6b3bf70aec0d19d65eeb6a7319ad045a","head":{"label":"charettes:ticket-24031-avoid-func-creation","ref":"ticket-24031-avoid-func-creation","sha":"47bdad4e6b3bf70aec0d19d65eeb6a7319ad045a","user":{"login":"charettes","id":9293,"avatar_url":"https://avatars.githubusercontent.com/u/9293?v=3","gravatar_id":"","url":"https://api.github.com/users/charettes","html_url":"https://github.com/charettes","followers_url":"https://api.github.com/users/charettes/followers","following_url":"https://api.github.com/users/charettes/following{/other_user}","gists_url":"https://api.github.com/users/charettes/gists{/gist_id}","starred_url":"https://api.github.com/users/charettes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/charettes/subscriptions","organizations_url":"https://api.github.com/users/charettes/orgs","repos_url":"https://api.github.com/users/charettes/repos","events_url":"https://api.github.com/users/charettes/events{/privacy}","received_events_url":"https://api.github.com/users/charettes/received_events","type":"User","site_admin":false},"repo":{"id":4164938,"name":"django","full_name":"charettes/django","owner":{"login":"charettes","id":9293,"avatar_url":"https://avatars.githubusercontent.com/u/9293?v=3","gravatar_id":"","url":"https://api.github.com/users/charettes","html_url":"https://github.com/charettes","followers_url":"https://api.github.com/users/charettes/followers","following_url":"https://api.github.com/users/charettes/following{/other_user}","gists_url":"https://api.github.com/users/charettes/gists{/gist_id}","starred_url":"https://api.github.com/users/charettes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/charettes/subscriptions","organizations_url":"https://api.github.com/users/charettes/orgs","repos_url":"https://api.github.com/users/charettes/repos","events_url":"https://api.github.com/users/charettes/events{/privacy}","received_events_url":"https://api.github.com/users/charettes/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/charettes/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/charettes/django","forks_url":"https://api.github.com/repos/charettes/django/forks","keys_url":"https://api.github.com/repos/charettes/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/charettes/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/charettes/django/teams","hooks_url":"https://api.github.com/repos/charettes/django/hooks","issue_events_url":"https://api.github.com/repos/charettes/django/issues/events{/number}","events_url":"https://api.github.com/repos/charettes/django/events","assignees_url":"https://api.github.com/repos/charettes/django/assignees{/user}","branches_url":"https://api.github.com/repos/charettes/django/branches{/branch}","tags_url":"https://api.github.com/repos/charettes/django/tags","blobs_url":"https://api.github.com/repos/charettes/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/charettes/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/charettes/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/charettes/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/charettes/django/statuses/{sha}","languages_url":"https://api.github.com/repos/charettes/django/languages","stargazers_url":"https://api.github.com/repos/charettes/django/stargazers","contributors_url":"https://api.github.com/repos/charettes/django/contributors","subscribers_url":"https://api.github.com/repos/charettes/django/subscribers","subscription_url":"https://api.github.com/repos/charettes/django/subscription","commits_url":"https://api.github.com/repos/charettes/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/charettes/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/charettes/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/charettes/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/charettes/django/contents/{+path}","compare_url":"https://api.github.com/repos/charettes/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/charettes/django/merges","archive_url":"https://api.github.com/repos/charettes/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/charettes/django/downloads","issues_url":"https://api.github.com/repos/charettes/django/issues{/number}","pulls_url":"https://api.github.com/repos/charettes/django/pulls{/number}","milestones_url":"https://api.github.com/repos/charettes/django/milestones{/number}","notifications_url":"https://api.github.com/repos/charettes/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/charettes/django/labels{/name}","releases_url":"https://api.github.com/repos/charettes/django/releases{/id}","created_at":"2012-04-28T04:23:16Z","updated_at":"2014-06-01T14:49:26Z","pushed_at":"2015-01-16T21:30:40Z","git_url":"git://github.com/charettes/django.git","ssh_url":"git@github.com:charettes/django.git","clone_url":"https://github.com/charettes/django.git","svn_url":"https://github.com/charettes/django","homepage":"http://www.djangoproject.com/","size":90951,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4832c004e88a68b98b976b4f68a1c9fdb4ea3530","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3905"},"html":{"href":"https://github.com/django/django/pull/3905"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3905"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3905/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3905/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3905/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/47bdad4e6b3bf70aec0d19d65eeb6a7319ad045a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3904","id":27239934,"html_url":"https://github.com/django/django/pull/3904","diff_url":"https://github.com/django/django/pull/3904.diff","patch_url":"https://github.com/django/django/pull/3904.patch","issue_url":"https://api.github.com/repos/django/django/issues/3904","number":3904,"state":"closed","locked":false,"title":"Fixed #24099 -- Removed contenttype.name deprecated field","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"Ticket: https://code.djangoproject.com/ticket/24099\r\nSupersedes: https://github.com/django/django/pull/3858","created_at":"2015-01-13T00:48:25Z","updated_at":"2015-01-16T19:26:07Z","closed_at":"2015-01-16T19:26:03Z","merged_at":null,"merge_commit_sha":"71f1045259949fd287b698b8ee19e194e1508207","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3904/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3904/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3904/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/db95e51320a89bb82e35768d5d4fdc1f25bf3fd1","head":{"label":"MarkusH:ticket24099","ref":"ticket24099","sha":"db95e51320a89bb82e35768d5d4fdc1f25bf3fd1","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"faf0d66a80e09be3656a337c33a8e70c7fbab7e3","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3904"},"html":{"href":"https://github.com/django/django/pull/3904"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3904"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3904/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3904/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3904/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/db95e51320a89bb82e35768d5d4fdc1f25bf3fd1"}}},{"url":"https://api.github.com/repos/django/django/pulls/3901","id":27229359,"html_url":"https://github.com/django/django/pull/3901","diff_url":"https://github.com/django/django/pull/3901.diff","patch_url":"https://github.com/django/django/pull/3901.patch","issue_url":"https://api.github.com/repos/django/django/issues/3901","number":3901,"state":"closed","locked":false,"title":"Fixes #24138 - make modelform_factory public","user":{"login":"jschneier","id":2245080,"avatar_url":"https://avatars.githubusercontent.com/u/2245080?v=3","gravatar_id":"","url":"https://api.github.com/users/jschneier","html_url":"https://github.com/jschneier","followers_url":"https://api.github.com/users/jschneier/followers","following_url":"https://api.github.com/users/jschneier/following{/other_user}","gists_url":"https://api.github.com/users/jschneier/gists{/gist_id}","starred_url":"https://api.github.com/users/jschneier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jschneier/subscriptions","organizations_url":"https://api.github.com/users/jschneier/orgs","repos_url":"https://api.github.com/users/jschneier/repos","events_url":"https://api.github.com/users/jschneier/events{/privacy}","received_events_url":"https://api.github.com/users/jschneier/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-12T21:52:49Z","updated_at":"2015-01-12T22:45:07Z","closed_at":"2015-01-12T22:45:07Z","merged_at":null,"merge_commit_sha":"89171e93fbf8cb207876187cd96bdd42edd7a3e7","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3901/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3901/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3901/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/41e642e3ea11564821396c4eb532d4d2d84eb255","head":{"label":"jschneier:patch-1","ref":"patch-1","sha":"41e642e3ea11564821396c4eb532d4d2d84eb255","user":{"login":"jschneier","id":2245080,"avatar_url":"https://avatars.githubusercontent.com/u/2245080?v=3","gravatar_id":"","url":"https://api.github.com/users/jschneier","html_url":"https://github.com/jschneier","followers_url":"https://api.github.com/users/jschneier/followers","following_url":"https://api.github.com/users/jschneier/following{/other_user}","gists_url":"https://api.github.com/users/jschneier/gists{/gist_id}","starred_url":"https://api.github.com/users/jschneier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jschneier/subscriptions","organizations_url":"https://api.github.com/users/jschneier/orgs","repos_url":"https://api.github.com/users/jschneier/repos","events_url":"https://api.github.com/users/jschneier/events{/privacy}","received_events_url":"https://api.github.com/users/jschneier/received_events","type":"User","site_admin":false},"repo":{"id":28159097,"name":"django","full_name":"jschneier/django","owner":{"login":"jschneier","id":2245080,"avatar_url":"https://avatars.githubusercontent.com/u/2245080?v=3","gravatar_id":"","url":"https://api.github.com/users/jschneier","html_url":"https://github.com/jschneier","followers_url":"https://api.github.com/users/jschneier/followers","following_url":"https://api.github.com/users/jschneier/following{/other_user}","gists_url":"https://api.github.com/users/jschneier/gists{/gist_id}","starred_url":"https://api.github.com/users/jschneier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jschneier/subscriptions","organizations_url":"https://api.github.com/users/jschneier/orgs","repos_url":"https://api.github.com/users/jschneier/repos","events_url":"https://api.github.com/users/jschneier/events{/privacy}","received_events_url":"https://api.github.com/users/jschneier/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jschneier/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/jschneier/django","forks_url":"https://api.github.com/repos/jschneier/django/forks","keys_url":"https://api.github.com/repos/jschneier/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jschneier/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jschneier/django/teams","hooks_url":"https://api.github.com/repos/jschneier/django/hooks","issue_events_url":"https://api.github.com/repos/jschneier/django/issues/events{/number}","events_url":"https://api.github.com/repos/jschneier/django/events","assignees_url":"https://api.github.com/repos/jschneier/django/assignees{/user}","branches_url":"https://api.github.com/repos/jschneier/django/branches{/branch}","tags_url":"https://api.github.com/repos/jschneier/django/tags","blobs_url":"https://api.github.com/repos/jschneier/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jschneier/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jschneier/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jschneier/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jschneier/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jschneier/django/languages","stargazers_url":"https://api.github.com/repos/jschneier/django/stargazers","contributors_url":"https://api.github.com/repos/jschneier/django/contributors","subscribers_url":"https://api.github.com/repos/jschneier/django/subscribers","subscription_url":"https://api.github.com/repos/jschneier/django/subscription","commits_url":"https://api.github.com/repos/jschneier/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jschneier/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jschneier/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jschneier/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jschneier/django/contents/{+path}","compare_url":"https://api.github.com/repos/jschneier/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jschneier/django/merges","archive_url":"https://api.github.com/repos/jschneier/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jschneier/django/downloads","issues_url":"https://api.github.com/repos/jschneier/django/issues{/number}","pulls_url":"https://api.github.com/repos/jschneier/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jschneier/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jschneier/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jschneier/django/labels{/name}","releases_url":"https://api.github.com/repos/jschneier/django/releases{/id}","created_at":"2014-12-17T22:52:03Z","updated_at":"2014-12-17T22:52:20Z","pushed_at":"2015-01-12T21:52:37Z","git_url":"git://github.com/jschneier/django.git","ssh_url":"git@github.com:jschneier/django.git","clone_url":"https://github.com/jschneier/django.git","svn_url":"https://github.com/jschneier/django","homepage":"https://www.djangoproject.com/","size":118140,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"f48e2258a96a08dcec843921206bcf7656e3ae45","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3901"},"html":{"href":"https://github.com/django/django/pull/3901"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3901"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3901/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3901/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3901/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/41e642e3ea11564821396c4eb532d4d2d84eb255"}}},{"url":"https://api.github.com/repos/django/django/pulls/3900","id":27227574,"html_url":"https://github.com/django/django/pull/3900","diff_url":"https://github.com/django/django/pull/3900.diff","patch_url":"https://github.com/django/django/pull/3900.patch","issue_url":"https://api.github.com/repos/django/django/issues/3900","number":3900,"state":"closed","locked":false,"title":"Fixed #24124 -- Used default context_processors in tests.","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"Patch from Aymeric\r\n\r\nhttps://code.djangoproject.com/ticket/24124","created_at":"2015-01-12T21:27:31Z","updated_at":"2015-01-12T21:37:59Z","closed_at":"2015-01-12T21:37:59Z","merged_at":null,"merge_commit_sha":"f05112e4e22cae7022e0a1e95324dcc4b6286967","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3900/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3900/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3900/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d17189d5478fabe6aba940f9647f1ebd57ffb25b","head":{"label":"collinanderson:24124-complement","ref":"24124-complement","sha":"d17189d5478fabe6aba940f9647f1ebd57ffb25b","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"511a53b3142551a1bc3093ed1b6655f57634f510","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3900"},"html":{"href":"https://github.com/django/django/pull/3900"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3900"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3900/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3900/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3900/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d17189d5478fabe6aba940f9647f1ebd57ffb25b"}}},{"url":"https://api.github.com/repos/django/django/pulls/3899","id":27223175,"html_url":"https://github.com/django/django/pull/3899","diff_url":"https://github.com/django/django/pull/3899.diff","patch_url":"https://github.com/django/django/pull/3899.patch","issue_url":"https://api.github.com/repos/django/django/issues/3899","number":3899,"state":"closed","locked":false,"title":"Fixed #22603 -- Organized django.db.backends classes","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"Not sure if `DatabaseWrapper` classes should remain in `base.py` or if it's more clear to have them in a new `wrapper.py` file as I've done. Some `base.py`'s have version checking logic so it seemed a bit cleaner to have the wrapper separated from that, and also every other `DatabaseFoo` class is in `foo.py`.","created_at":"2015-01-12T20:23:44Z","updated_at":"2015-01-14T19:19:01Z","closed_at":"2015-01-14T19:18:32Z","merged_at":"2015-01-14T19:18:32Z","merge_commit_sha":"e4ad23bb8edcba036f7e5da9c5cd358b1aa9a001","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3899/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3899/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3899/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/28308078f397d1de36fd0da417ac7da2544ba12d","head":{"label":"timgraham:22603","ref":"22603","sha":"28308078f397d1de36fd0da417ac7da2544ba12d","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"737d24923ac69bb8b89af1bb2f3f4c4c744349e8","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3899"},"html":{"href":"https://github.com/django/django/pull/3899"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3899"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3899/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3899/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3899/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/28308078f397d1de36fd0da417ac7da2544ba12d"}}},{"url":"https://api.github.com/repos/django/django/pulls/3897","id":27203153,"html_url":"https://github.com/django/django/pull/3897","diff_url":"https://github.com/django/django/pull/3897.diff","patch_url":"https://github.com/django/django/pull/3897.patch","issue_url":"https://api.github.com/repos/django/django/issues/3897","number":3897,"state":"closed","locked":false,"title":"Fixed #24124 -- Changed context_processors in the default settings.py","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24124\r\nhttps://groups.google.com/d/topic/django-developers/WlK_7OoThaQ/discussion","created_at":"2015-01-12T15:50:14Z","updated_at":"2015-01-12T18:22:46Z","closed_at":"2015-01-12T18:20:54Z","merged_at":"2015-01-12T18:20:54Z","merge_commit_sha":"9f7ae3e98413a5e747ac9c683f6abec437eee05e","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3897/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3897/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3897/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/26a92619f62aeb6f60e15c62e8322c96744eff26","head":{"label":"collinanderson:3897","ref":"3897","sha":"26a92619f62aeb6f60e15c62e8322c96744eff26","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"bbbed99f6260a8b3e65cb990e49721b1ce4a441b","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3897"},"html":{"href":"https://github.com/django/django/pull/3897"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3897"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3897/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3897/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3897/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/26a92619f62aeb6f60e15c62e8322c96744eff26"}}},{"url":"https://api.github.com/repos/django/django/pulls/3896","id":27193799,"html_url":"https://github.com/django/django/pull/3896","diff_url":"https://github.com/django/django/pull/3896.diff","patch_url":"https://github.com/django/django/pull/3896.patch","issue_url":"https://api.github.com/repos/django/django/issues/3896","number":3896,"state":"closed","locked":false,"title":"Made Django's templates get their own language variables.","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"Refs #24117\r\n\r\nThis is the minimum change needed for the current context_processors proposal.\r\n\r\nhttps://code.djangoproject.com/ticket/24117","created_at":"2015-01-12T13:30:48Z","updated_at":"2015-01-12T15:56:57Z","closed_at":"2015-01-12T15:56:46Z","merged_at":null,"merge_commit_sha":"63b57053db86add9ab6254ab6154cb60f6356191","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3896/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3896/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3896/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/80d1504bfc70f54a47356580f5a175cc770ca475","head":{"label":"collinanderson:24117lang","ref":"24117lang","sha":"80d1504bfc70f54a47356580f5a175cc770ca475","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"a7c256cb5491bf2a77abdff01638239db5bfd9d5","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3896"},"html":{"href":"https://github.com/django/django/pull/3896"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3896"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3896/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3896/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3896/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/80d1504bfc70f54a47356580f5a175cc770ca475"}}},{"url":"https://api.github.com/repos/django/django/pulls/3895","id":27186606,"html_url":"https://github.com/django/django/pull/3895","diff_url":"https://github.com/django/django/pull/3895.diff","patch_url":"https://github.com/django/django/pull/3895.patch","issue_url":"https://api.github.com/repos/django/django/issues/3895","number":3895,"state":"closed","locked":false,"title":"Fixed #24133 -- Replaced formatting syntax in success_url placeholders","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Thanks Laurent Payot for the report.","created_at":"2015-01-12T11:04:05Z","updated_at":"2015-01-12T21:52:19Z","closed_at":"2015-01-12T21:52:18Z","merged_at":"2015-01-12T21:52:18Z","merge_commit_sha":"12cc5767cb609b3a2b0b4a56a4f5d9ba4448dcb2","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3895/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3895/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3895/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/f48e2258a96a08dcec843921206bcf7656e3ae45","head":{"label":"claudep:24133","ref":"24133","sha":"f48e2258a96a08dcec843921206bcf7656e3ae45","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"5f7230e12f0d237cdc19d8930006b0fc7d9dbaa6","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3895"},"html":{"href":"https://github.com/django/django/pull/3895"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3895"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3895/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3895/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3895/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/f48e2258a96a08dcec843921206bcf7656e3ae45"}}},{"url":"https://api.github.com/repos/django/django/pulls/3894","id":27172025,"html_url":"https://github.com/django/django/pull/3894","diff_url":"https://github.com/django/django/pull/3894.diff","patch_url":"https://github.com/django/django/pull/3894.patch","issue_url":"https://api.github.com/repos/django/django/issues/3894","number":3894,"state":"closed","locked":false,"title":"Fixed #24075 -- Prevented running post_migrate signals when unapplying initial migrations of contenttypes and auth","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24075","created_at":"2015-01-12T01:55:57Z","updated_at":"2015-01-14T20:12:57Z","closed_at":"2015-01-14T19:38:37Z","merged_at":null,"merge_commit_sha":"8ac90cf950795550ce234c57ca8f63ec7ecc0250","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3894/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3894/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3894/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/284ad4060b1bd09bd1f55ad2aeb018eb6c8dd8a3","head":{"label":"MarkusH:ticket24075","ref":"ticket24075","sha":"284ad4060b1bd09bd1f55ad2aeb018eb6c8dd8a3","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"88786afbffc5c095f6491e080afea394f63bb44a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3894"},"html":{"href":"https://github.com/django/django/pull/3894"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3894"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3894/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3894/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3894/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/284ad4060b1bd09bd1f55ad2aeb018eb6c8dd8a3"}}},{"url":"https://api.github.com/repos/django/django/pulls/3893","id":27167623,"html_url":"https://github.com/django/django/pull/3893","diff_url":"https://github.com/django/django/pull/3893.diff","patch_url":"https://github.com/django/django/pull/3893.patch","issue_url":"https://api.github.com/repos/django/django/issues/3893","number":3893,"state":"closed","locked":false,"title":"Mention flup6 for deploying on FastCGI + Python 3.x.","user":{"login":"davidfstr","id":764688,"avatar_url":"https://avatars.githubusercontent.com/u/764688?v=3","gravatar_id":"","url":"https://api.github.com/users/davidfstr","html_url":"https://github.com/davidfstr","followers_url":"https://api.github.com/users/davidfstr/followers","following_url":"https://api.github.com/users/davidfstr/following{/other_user}","gists_url":"https://api.github.com/users/davidfstr/gists{/gist_id}","starred_url":"https://api.github.com/users/davidfstr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidfstr/subscriptions","organizations_url":"https://api.github.com/users/davidfstr/orgs","repos_url":"https://api.github.com/users/davidfstr/repos","events_url":"https://api.github.com/users/davidfstr/events{/privacy}","received_events_url":"https://api.github.com/users/davidfstr/received_events","type":"User","site_admin":false},"body":"See ticket: https://code.djangoproject.com/ticket/24130","created_at":"2015-01-11T20:22:41Z","updated_at":"2015-01-11T20:36:50Z","closed_at":"2015-01-11T20:36:50Z","merged_at":null,"merge_commit_sha":"60cb4d590aeaa5aa189ec51b86edc8db4470af9b","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3893/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3893/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3893/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/32a96f5edcbadd465e1dc0810bfe6b3332feb539","head":{"label":"davidfstr:doc_flup6","ref":"doc_flup6","sha":"32a96f5edcbadd465e1dc0810bfe6b3332feb539","user":{"login":"davidfstr","id":764688,"avatar_url":"https://avatars.githubusercontent.com/u/764688?v=3","gravatar_id":"","url":"https://api.github.com/users/davidfstr","html_url":"https://github.com/davidfstr","followers_url":"https://api.github.com/users/davidfstr/followers","following_url":"https://api.github.com/users/davidfstr/following{/other_user}","gists_url":"https://api.github.com/users/davidfstr/gists{/gist_id}","starred_url":"https://api.github.com/users/davidfstr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidfstr/subscriptions","organizations_url":"https://api.github.com/users/davidfstr/orgs","repos_url":"https://api.github.com/users/davidfstr/repos","events_url":"https://api.github.com/users/davidfstr/events{/privacy}","received_events_url":"https://api.github.com/users/davidfstr/received_events","type":"User","site_admin":false},"repo":{"id":29104309,"name":"django","full_name":"davidfstr/django","owner":{"login":"davidfstr","id":764688,"avatar_url":"https://avatars.githubusercontent.com/u/764688?v=3","gravatar_id":"","url":"https://api.github.com/users/davidfstr","html_url":"https://github.com/davidfstr","followers_url":"https://api.github.com/users/davidfstr/followers","following_url":"https://api.github.com/users/davidfstr/following{/other_user}","gists_url":"https://api.github.com/users/davidfstr/gists{/gist_id}","starred_url":"https://api.github.com/users/davidfstr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidfstr/subscriptions","organizations_url":"https://api.github.com/users/davidfstr/orgs","repos_url":"https://api.github.com/users/davidfstr/repos","events_url":"https://api.github.com/users/davidfstr/events{/privacy}","received_events_url":"https://api.github.com/users/davidfstr/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/davidfstr/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/davidfstr/django","forks_url":"https://api.github.com/repos/davidfstr/django/forks","keys_url":"https://api.github.com/repos/davidfstr/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/davidfstr/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/davidfstr/django/teams","hooks_url":"https://api.github.com/repos/davidfstr/django/hooks","issue_events_url":"https://api.github.com/repos/davidfstr/django/issues/events{/number}","events_url":"https://api.github.com/repos/davidfstr/django/events","assignees_url":"https://api.github.com/repos/davidfstr/django/assignees{/user}","branches_url":"https://api.github.com/repos/davidfstr/django/branches{/branch}","tags_url":"https://api.github.com/repos/davidfstr/django/tags","blobs_url":"https://api.github.com/repos/davidfstr/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/davidfstr/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/davidfstr/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/davidfstr/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/davidfstr/django/statuses/{sha}","languages_url":"https://api.github.com/repos/davidfstr/django/languages","stargazers_url":"https://api.github.com/repos/davidfstr/django/stargazers","contributors_url":"https://api.github.com/repos/davidfstr/django/contributors","subscribers_url":"https://api.github.com/repos/davidfstr/django/subscribers","subscription_url":"https://api.github.com/repos/davidfstr/django/subscription","commits_url":"https://api.github.com/repos/davidfstr/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/davidfstr/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/davidfstr/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/davidfstr/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/davidfstr/django/contents/{+path}","compare_url":"https://api.github.com/repos/davidfstr/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/davidfstr/django/merges","archive_url":"https://api.github.com/repos/davidfstr/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/davidfstr/django/downloads","issues_url":"https://api.github.com/repos/davidfstr/django/issues{/number}","pulls_url":"https://api.github.com/repos/davidfstr/django/pulls{/number}","milestones_url":"https://api.github.com/repos/davidfstr/django/milestones{/number}","notifications_url":"https://api.github.com/repos/davidfstr/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/davidfstr/django/labels{/name}","releases_url":"https://api.github.com/repos/davidfstr/django/releases{/id}","created_at":"2015-01-11T20:11:21Z","updated_at":"2015-01-11T20:11:34Z","pushed_at":"2015-01-11T20:13:25Z","git_url":"git://github.com/davidfstr/django.git","ssh_url":"git@github.com:davidfstr/django.git","clone_url":"https://github.com/davidfstr/django.git","svn_url":"https://github.com/davidfstr/django","homepage":"https://www.djangoproject.com/","size":117704,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"412066e71e81e899bca63523f239e56138ec9e9d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3893"},"html":{"href":"https://github.com/django/django/pull/3893"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3893"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3893/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3893/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3893/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/32a96f5edcbadd465e1dc0810bfe6b3332feb539"}}},{"url":"https://api.github.com/repos/django/django/pulls/3892","id":27167604,"html_url":"https://github.com/django/django/pull/3892","diff_url":"https://github.com/django/django/pull/3892.diff","patch_url":"https://github.com/django/django/pull/3892.patch","issue_url":"https://api.github.com/repos/django/django/issues/3892","number":3892,"state":"closed","locked":false,"title":"Updated supports_binary_field flag for MySQL-Python3","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"The current recommended MySQL driver for Python 3 (mysqlclient)\r\ndoes support binary fields. Refs #20377.","created_at":"2015-01-11T20:21:44Z","updated_at":"2015-01-11T22:35:55Z","closed_at":"2015-01-11T22:35:55Z","merged_at":null,"merge_commit_sha":"9d3841b9ebeff3cc3f43baa0860099e95ecc1c42","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3892/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3892/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3892/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/925a65b487111c82687d8a173480b5e8faf4f094","head":{"label":"claudep:20377","ref":"20377","sha":"925a65b487111c82687d8a173480b5e8faf4f094","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"412066e71e81e899bca63523f239e56138ec9e9d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3892"},"html":{"href":"https://github.com/django/django/pull/3892"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3892"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3892/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3892/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3892/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/925a65b487111c82687d8a173480b5e8faf4f094"}}},{"url":"https://api.github.com/repos/django/django/pulls/3891","id":27167589,"html_url":"https://github.com/django/django/pull/3891","diff_url":"https://github.com/django/django/pull/3891.diff","patch_url":"https://github.com/django/django/pull/3891.patch","issue_url":"https://api.github.com/repos/django/django/issues/3891","number":3891,"state":"closed","locked":false,"title":"Fixed #24129 -- Added indicator that migrations are rendering the initial state","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24129\r\n\r\nThe first commit is part of #3890 ","created_at":"2015-01-11T20:20:39Z","updated_at":"2015-01-12T18:25:51Z","closed_at":"2015-01-12T18:25:47Z","merged_at":null,"merge_commit_sha":"d8e94e4c252f5cd8c4b995c4d7d0dbf861f73844","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3891/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3891/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3891/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a41571ae11951bf0c9b6962c6b17688eed711787","head":{"label":"MarkusH:ticket24129","ref":"ticket24129","sha":"a41571ae11951bf0c9b6962c6b17688eed711787","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"bbbed99f6260a8b3e65cb990e49721b1ce4a441b","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3891"},"html":{"href":"https://github.com/django/django/pull/3891"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3891"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3891/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3891/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3891/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a41571ae11951bf0c9b6962c6b17688eed711787"}}},{"url":"https://api.github.com/repos/django/django/pulls/3890","id":27167501,"html_url":"https://github.com/django/django/pull/3890","diff_url":"https://github.com/django/django/pull/3890.diff","patch_url":"https://github.com/django/django/pull/3890.patch","issue_url":"https://api.github.com/repos/django/django/issues/3890","number":3890,"state":"closed","locked":false,"title":"Fixed #24123 -- Used all available migrations to generate the initial migration state","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"Thanks Collin Anderson for asking me the right questions\r\n\r\nhttps://code.djangoproject.com/ticket/24123","created_at":"2015-01-11T20:13:52Z","updated_at":"2015-01-12T17:43:43Z","closed_at":"2015-01-12T17:43:14Z","merged_at":null,"merge_commit_sha":"faf793ee2218b3272a8d56116a2ea389b2b9ca82","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3890/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3890/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3890/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/e337e85225858556c411cf78d573cb36c69cc6ea","head":{"label":"MarkusH:ticket24123","ref":"ticket24123","sha":"e337e85225858556c411cf78d573cb36c69cc6ea","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"8f5d6c77b6bbe0390b683cea649de6ad24d80fef","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3890"},"html":{"href":"https://github.com/django/django/pull/3890"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3890"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3890/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3890/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3890/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/e337e85225858556c411cf78d573cb36c69cc6ea"}}},{"url":"https://api.github.com/repos/django/django/pulls/3889","id":27167413,"html_url":"https://github.com/django/django/pull/3889","diff_url":"https://github.com/django/django/pull/3889.diff","patch_url":"https://github.com/django/django/pull/3889.patch","issue_url":"https://api.github.com/repos/django/django/issues/3889","number":3889,"state":"closed","locked":false,"title":"Fixed #23878 -- Move Query and Prefetch documentation","user":{"login":"ngzhian","id":1749303,"avatar_url":"https://avatars.githubusercontent.com/u/1749303?v=3","gravatar_id":"","url":"https://api.github.com/users/ngzhian","html_url":"https://github.com/ngzhian","followers_url":"https://api.github.com/users/ngzhian/followers","following_url":"https://api.github.com/users/ngzhian/following{/other_user}","gists_url":"https://api.github.com/users/ngzhian/gists{/gist_id}","starred_url":"https://api.github.com/users/ngzhian/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ngzhian/subscriptions","organizations_url":"https://api.github.com/users/ngzhian/orgs","repos_url":"https://api.github.com/users/ngzhian/repos","events_url":"https://api.github.com/users/ngzhian/events{/privacy}","received_events_url":"https://api.github.com/users/ngzhian/received_events","type":"User","site_admin":false},"body":"Previously they were in queries.txt, as per discussion on the ticket, they have been moved to the bottom of querysets.txt, with relevant links added into the same page.\r\n","created_at":"2015-01-11T20:07:39Z","updated_at":"2015-01-12T16:38:49Z","closed_at":"2015-01-12T16:38:49Z","merged_at":null,"merge_commit_sha":"3bb7ee4cedc3c2d087fff4902071a8421e90bfda","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3889/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3889/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3889/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/25c2b7ac99df7e873655eb422a359a76d86ce5bd","head":{"label":"ngzhian:ticket_23878","ref":"ticket_23878","sha":"25c2b7ac99df7e873655eb422a359a76d86ce5bd","user":{"login":"ngzhian","id":1749303,"avatar_url":"https://avatars.githubusercontent.com/u/1749303?v=3","gravatar_id":"","url":"https://api.github.com/users/ngzhian","html_url":"https://github.com/ngzhian","followers_url":"https://api.github.com/users/ngzhian/followers","following_url":"https://api.github.com/users/ngzhian/following{/other_user}","gists_url":"https://api.github.com/users/ngzhian/gists{/gist_id}","starred_url":"https://api.github.com/users/ngzhian/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ngzhian/subscriptions","organizations_url":"https://api.github.com/users/ngzhian/orgs","repos_url":"https://api.github.com/users/ngzhian/repos","events_url":"https://api.github.com/users/ngzhian/events{/privacy}","received_events_url":"https://api.github.com/users/ngzhian/received_events","type":"User","site_admin":false},"repo":{"id":29103921,"name":"django","full_name":"ngzhian/django","owner":{"login":"ngzhian","id":1749303,"avatar_url":"https://avatars.githubusercontent.com/u/1749303?v=3","gravatar_id":"","url":"https://api.github.com/users/ngzhian","html_url":"https://github.com/ngzhian","followers_url":"https://api.github.com/users/ngzhian/followers","following_url":"https://api.github.com/users/ngzhian/following{/other_user}","gists_url":"https://api.github.com/users/ngzhian/gists{/gist_id}","starred_url":"https://api.github.com/users/ngzhian/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ngzhian/subscriptions","organizations_url":"https://api.github.com/users/ngzhian/orgs","repos_url":"https://api.github.com/users/ngzhian/repos","events_url":"https://api.github.com/users/ngzhian/events{/privacy}","received_events_url":"https://api.github.com/users/ngzhian/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ngzhian/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/ngzhian/django","forks_url":"https://api.github.com/repos/ngzhian/django/forks","keys_url":"https://api.github.com/repos/ngzhian/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ngzhian/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ngzhian/django/teams","hooks_url":"https://api.github.com/repos/ngzhian/django/hooks","issue_events_url":"https://api.github.com/repos/ngzhian/django/issues/events{/number}","events_url":"https://api.github.com/repos/ngzhian/django/events","assignees_url":"https://api.github.com/repos/ngzhian/django/assignees{/user}","branches_url":"https://api.github.com/repos/ngzhian/django/branches{/branch}","tags_url":"https://api.github.com/repos/ngzhian/django/tags","blobs_url":"https://api.github.com/repos/ngzhian/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ngzhian/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ngzhian/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/ngzhian/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ngzhian/django/statuses/{sha}","languages_url":"https://api.github.com/repos/ngzhian/django/languages","stargazers_url":"https://api.github.com/repos/ngzhian/django/stargazers","contributors_url":"https://api.github.com/repos/ngzhian/django/contributors","subscribers_url":"https://api.github.com/repos/ngzhian/django/subscribers","subscription_url":"https://api.github.com/repos/ngzhian/django/subscription","commits_url":"https://api.github.com/repos/ngzhian/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/ngzhian/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/ngzhian/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/ngzhian/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/ngzhian/django/contents/{+path}","compare_url":"https://api.github.com/repos/ngzhian/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ngzhian/django/merges","archive_url":"https://api.github.com/repos/ngzhian/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ngzhian/django/downloads","issues_url":"https://api.github.com/repos/ngzhian/django/issues{/number}","pulls_url":"https://api.github.com/repos/ngzhian/django/pulls{/number}","milestones_url":"https://api.github.com/repos/ngzhian/django/milestones{/number}","notifications_url":"https://api.github.com/repos/ngzhian/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ngzhian/django/labels{/name}","releases_url":"https://api.github.com/repos/ngzhian/django/releases{/id}","created_at":"2015-01-11T19:59:40Z","updated_at":"2015-01-17T23:03:29Z","pushed_at":"2015-01-18T02:22:20Z","git_url":"git://github.com/ngzhian/django.git","ssh_url":"git@github.com:ngzhian/django.git","clone_url":"https://github.com/ngzhian/django.git","svn_url":"https://github.com/ngzhian/django","homepage":"https://www.djangoproject.com/","size":117691,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"412066e71e81e899bca63523f239e56138ec9e9d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3889"},"html":{"href":"https://github.com/django/django/pull/3889"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3889"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3889/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3889/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3889/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/25c2b7ac99df7e873655eb422a359a76d86ce5bd"}}},{"url":"https://api.github.com/repos/django/django/pulls/3887","id":27167069,"html_url":"https://github.com/django/django/pull/3887","diff_url":"https://github.com/django/django/pull/3887.diff","patch_url":"https://github.com/django/django/pull/3887.patch","issue_url":"https://api.github.com/repos/django/django/issues/3887","number":3887,"state":"closed","locked":false,"title":"Fixed #23913 -- Deprecated the `=` comparison in `if` template tag.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-11T19:39:47Z","updated_at":"2015-01-11T20:23:48Z","closed_at":"2015-01-11T20:23:36Z","merged_at":"2015-01-11T20:23:36Z","merge_commit_sha":"3442b0d30ec93d3e78d3ab9951e6adc43c94313a","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3887/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3887/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3887/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d563e3be68369694a3bac1efd7779d8e03bb6a51","head":{"label":"timgraham:23913","ref":"23913","sha":"d563e3be68369694a3bac1efd7779d8e03bb6a51","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"412066e71e81e899bca63523f239e56138ec9e9d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3887"},"html":{"href":"https://github.com/django/django/pull/3887"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3887"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3887/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3887/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3887/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d563e3be68369694a3bac1efd7779d8e03bb6a51"}}},{"url":"https://api.github.com/repos/django/django/pulls/3886","id":27163050,"html_url":"https://github.com/django/django/pull/3886","diff_url":"https://github.com/django/django/pull/3886.diff","patch_url":"https://github.com/django/django/pull/3886.patch","issue_url":"https://api.github.com/repos/django/django/issues/3886","number":3886,"state":"closed","locked":false,"title":"Docs - Auth example - Password not hashed","user":{"login":"torre76","id":3954720,"avatar_url":"https://avatars.githubusercontent.com/u/3954720?v=3","gravatar_id":"","url":"https://api.github.com/users/torre76","html_url":"https://github.com/torre76","followers_url":"https://api.github.com/users/torre76/followers","following_url":"https://api.github.com/users/torre76/following{/other_user}","gists_url":"https://api.github.com/users/torre76/gists{/gist_id}","starred_url":"https://api.github.com/users/torre76/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/torre76/subscriptions","organizations_url":"https://api.github.com/users/torre76/orgs","repos_url":"https://api.github.com/users/torre76/repos","events_url":"https://api.github.com/users/torre76/events{/privacy}","received_events_url":"https://api.github.com/users/torre76/received_events","type":"User","site_admin":false},"body":"I have followed the \"Full Example of Custom User Authentication\" in docs and, when I tested all worked fine except for the password field that was saved on clear form on database when I was syncing the database.\r\n\r\nThis is happened because doc states that the password field should be directly saved into the model, avoiding the password hashing.\r\nCalling method *set_password* solved the problem for me, so I updated the example in this commit.","created_at":"2015-01-11T14:03:01Z","updated_at":"2015-01-11T17:50:40Z","closed_at":"2015-01-11T17:46:07Z","merged_at":null,"merge_commit_sha":"58a9b651457511b10fd7b050caadb75a29e2facc","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3886/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3886/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3886/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/8f8671af75c9c3f3455ae8aa4789817077dddad4","head":{"label":"torre76:master","ref":"master","sha":"8f8671af75c9c3f3455ae8aa4789817077dddad4","user":{"login":"torre76","id":3954720,"avatar_url":"https://avatars.githubusercontent.com/u/3954720?v=3","gravatar_id":"","url":"https://api.github.com/users/torre76","html_url":"https://github.com/torre76","followers_url":"https://api.github.com/users/torre76/followers","following_url":"https://api.github.com/users/torre76/following{/other_user}","gists_url":"https://api.github.com/users/torre76/gists{/gist_id}","starred_url":"https://api.github.com/users/torre76/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/torre76/subscriptions","organizations_url":"https://api.github.com/users/torre76/orgs","repos_url":"https://api.github.com/users/torre76/repos","events_url":"https://api.github.com/users/torre76/events{/privacy}","received_events_url":"https://api.github.com/users/torre76/received_events","type":"User","site_admin":false},"repo":null},"base":{"label":"django:master","ref":"master","sha":"be158e36251df0b07556657da47cdaf10913c57a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3886"},"html":{"href":"https://github.com/django/django/pull/3886"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3886"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3886/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3886/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3886/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/8f8671af75c9c3f3455ae8aa4789817077dddad4"}}},{"url":"https://api.github.com/repos/django/django/pulls/3885","id":27155923,"html_url":"https://github.com/django/django/pull/3885","diff_url":"https://github.com/django/django/pull/3885.diff","patch_url":"https://github.com/django/django/pull/3885.patch","issue_url":"https://api.github.com/repos/django/django/issues/3885","number":3885,"state":"closed","locked":false,"title":"Fixed #24118 -- Added --debug-sql option for tests.","user":{"login":"mjtamlyn","id":389581,"avatar_url":"https://avatars.githubusercontent.com/u/389581?v=3","gravatar_id":"","url":"https://api.github.com/users/mjtamlyn","html_url":"https://github.com/mjtamlyn","followers_url":"https://api.github.com/users/mjtamlyn/followers","following_url":"https://api.github.com/users/mjtamlyn/following{/other_user}","gists_url":"https://api.github.com/users/mjtamlyn/gists{/gist_id}","starred_url":"https://api.github.com/users/mjtamlyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjtamlyn/subscriptions","organizations_url":"https://api.github.com/users/mjtamlyn/orgs","repos_url":"https://api.github.com/users/mjtamlyn/repos","events_url":"https://api.github.com/users/mjtamlyn/events{/privacy}","received_events_url":"https://api.github.com/users/mjtamlyn/received_events","type":"User","site_admin":false},"body":"This will need documentation and preferably some tests if we decide it's a feature we like.\r\n\r\nFrom the ticket:\r\n\r\n> It's a common problem (*especially* when working on ORM code) to want to print the complete sql queries run during a failing test, especially when parts of the run sql are in the traceback...\r\n\r\nExample output:\r\n\r\n```\r\n> ./runtests.py expressions --debug-sql\r\nTesting against Django installed in '/Users/marc/code/django/django'\r\nCreating test database for alias 'default'...\r\nCreating test database for alias 'other'...\r\n.........s...............................s...F.Es...\r\n======================================================================\r\nERROR: test_invalid_operator (expressions.tests.FTimeDeltaTests)\r\n----------------------------------------------------------------------\r\nTraceback (most recent call last):\r\n File \"/Users/marc/code/django/tests/expressions/tests.py\", line 779, in test_invalid_operator\r\n 1/0\r\nZeroDivisionError: integer division or modulo by zero\r\n\r\n----------------------------------------------------------------------\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e0', u'2010-06-25', u'2010-06-25', 0.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:15:30.747000'); args=[u'e0', u'2010-06-25', u'2010-06-25', 0.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:15:30.747000']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e1', u'2010-06-25', u'2010-06-26', 253000.0, u'2010-06-26 12:15:30.747000', u'2010-06-26 12:15:31'); args=[u'e1', u'2010-06-25', u'2010-06-26', 253000.0, u'2010-06-26 12:15:30.747000', u'2010-06-26 12:15:31']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e2', u'2010-06-22', u'2010-06-25', 3600000000.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:16:14.747000'); args=[u'e2', u'2010-06-22', u'2010-06-25', 3600000000.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:16:14.747000']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e3', u'2010-06-25', u'2010-06-30', 76080000000.0, u'2010-06-29 12:15:30.747000', u'2010-06-30 09:23:30.747000'); args=[u'e3', u'2010-06-25', u'2010-06-30', 76080000000.0, u'2010-06-29 12:15:30.747000', u'2010-06-30 09:23:30.747000']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e4', u'2010-06-15', u'2010-07-05', 777600000000.0, u'2010-06-25 12:15:30.747000', u'2010-07-05 12:15:30.747000'); args=[u'e4', u'2010-06-15', u'2010-07-05', 777600000000.0, u'2010-06-25 12:15:30.747000', u'2010-07-05 12:15:30.747000']\r\n(0.000) QUERY = u'SELECT \"expressions_experiment\".\"id\", \"expressions_experiment\".\"name\", \"expressions_experiment\".\"assigned\", \"expressions_experiment\".\"completed\", \"expressions_experiment\".\"estimated_time\", \"expressions_experiment\".\"start\", \"expressions_experiment\".\"end\" FROM \"expressions_experiment\" ORDER BY \"expressions_experiment\".\"name\" ASC' - PARAMS = (); args=()\r\n\r\n======================================================================\r\nFAIL: test_durationfield_add (expressions.tests.FTimeDeltaTests)\r\n----------------------------------------------------------------------\r\nTraceback (most recent call last):\r\n File \"/Users/marc/code/django/tests/expressions/tests.py\", line 793, in test_durationfield_add\r\n self.fail()\r\nAssertionError: None\r\n\r\n----------------------------------------------------------------------\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e0', u'2010-06-25', u'2010-06-25', 0.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:15:30.747000'); args=[u'e0', u'2010-06-25', u'2010-06-25', 0.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:15:30.747000']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e1', u'2010-06-25', u'2010-06-26', 253000.0, u'2010-06-26 12:15:30.747000', u'2010-06-26 12:15:31'); args=[u'e1', u'2010-06-25', u'2010-06-26', 253000.0, u'2010-06-26 12:15:30.747000', u'2010-06-26 12:15:31']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e2', u'2010-06-22', u'2010-06-25', 3600000000.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:16:14.747000'); args=[u'e2', u'2010-06-22', u'2010-06-25', 3600000000.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:16:14.747000']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e3', u'2010-06-25', u'2010-06-30', 76080000000.0, u'2010-06-29 12:15:30.747000', u'2010-06-30 09:23:30.747000'); args=[u'e3', u'2010-06-25', u'2010-06-30', 76080000000.0, u'2010-06-29 12:15:30.747000', u'2010-06-30 09:23:30.747000']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e4', u'2010-06-15', u'2010-07-05', 777600000000.0, u'2010-06-25 12:15:30.747000', u'2010-07-05 12:15:30.747000'); args=[u'e4', u'2010-06-15', u'2010-07-05', 777600000000.0, u'2010-06-25 12:15:30.747000', u'2010-07-05 12:15:30.747000']\r\n(0.000) QUERY = u'SELECT \"expressions_experiment\".\"id\", \"expressions_experiment\".\"name\", \"expressions_experiment\".\"assigned\", \"expressions_experiment\".\"completed\", \"expressions_experiment\".\"estimated_time\", \"expressions_experiment\".\"start\", \"expressions_experiment\".\"end\" FROM \"expressions_experiment\" ORDER BY \"expressions_experiment\".\"name\" ASC' - PARAMS = (); args=()\r\n(0.001) QUERY = u'SELECT \"expressions_experiment\".\"id\", \"expressions_experiment\".\"name\", \"expressions_experiment\".\"assigned\", \"expressions_experiment\".\"completed\", \"expressions_experiment\".\"estimated_time\", \"expressions_experiment\".\"start\", \"expressions_experiment\".\"end\" FROM \"expressions_experiment\" WHERE \"expressions_experiment\".\"start\" = ((django_format_dtdelta(\\'+\\', \"expressions_experiment\".\"start\", \"expressions_experiment\".\"estimated_time\"))) ORDER BY \"expressions_experiment\".\"name\" ASC' - PARAMS = (); args=()\r\n(0.001) QUERY = u'SELECT \"expressions_experiment\".\"id\", \"expressions_experiment\".\"name\", \"expressions_experiment\".\"assigned\", \"expressions_experiment\".\"completed\", \"expressions_experiment\".\"estimated_time\", \"expressions_experiment\".\"start\", \"expressions_experiment\".\"end\" FROM \"expressions_experiment\" WHERE \"expressions_experiment\".\"end\" < ((django_format_dtdelta(\\'+\\', \"expressions_experiment\".\"start\", \"expressions_experiment\".\"estimated_time\"))) ORDER BY \"expressions_experiment\".\"name\" ASC' - PARAMS = (); args=()\r\n(0.001) QUERY = u'SELECT \"expressions_experiment\".\"id\", \"expressions_experiment\".\"name\", \"expressions_experiment\".\"assigned\", \"expressions_experiment\".\"completed\", \"expressions_experiment\".\"estimated_time\", \"expressions_experiment\".\"start\", \"expressions_experiment\".\"end\" FROM \"expressions_experiment\" WHERE \"expressions_experiment\".\"end\" >= ((django_format_dtdelta(\\'+\\', (django_format_dtdelta(\\'+\\', \"expressions_experiment\".\"start\", \"expressions_experiment\".\"estimated_time\")), \\'01:00:00\\'))) ORDER BY \"expressions_experiment\".\"name\" ASC' - PARAMS = (); args=()\r\n\r\n----------------------------------------------------------------------\r\nRan 52 tests in 0.315s\r\n\r\nFAILED (failures=1, errors=1, skipped=3)\r\nDestroying test database for alias 'default'...\r\nDestroying test database for alias 'other'...\r\n```","created_at":"2015-01-10T23:00:27Z","updated_at":"2015-01-12T08:19:47Z","closed_at":"2015-01-12T08:19:38Z","merged_at":"2015-01-12T08:19:38Z","merge_commit_sha":"09558d3793364fa86e6f6c67841a016f13562f29","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3885/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3885/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3885/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/b5c1a85b50c709770b8e98aeecfeb8e81ca29dcf","head":{"label":"mjtamlyn:debug-sql","ref":"debug-sql","sha":"b5c1a85b50c709770b8e98aeecfeb8e81ca29dcf","user":{"login":"mjtamlyn","id":389581,"avatar_url":"https://avatars.githubusercontent.com/u/389581?v=3","gravatar_id":"","url":"https://api.github.com/users/mjtamlyn","html_url":"https://github.com/mjtamlyn","followers_url":"https://api.github.com/users/mjtamlyn/followers","following_url":"https://api.github.com/users/mjtamlyn/following{/other_user}","gists_url":"https://api.github.com/users/mjtamlyn/gists{/gist_id}","starred_url":"https://api.github.com/users/mjtamlyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjtamlyn/subscriptions","organizations_url":"https://api.github.com/users/mjtamlyn/orgs","repos_url":"https://api.github.com/users/mjtamlyn/repos","events_url":"https://api.github.com/users/mjtamlyn/events{/privacy}","received_events_url":"https://api.github.com/users/mjtamlyn/received_events","type":"User","site_admin":false},"repo":{"id":4529204,"name":"django","full_name":"mjtamlyn/django","owner":{"login":"mjtamlyn","id":389581,"avatar_url":"https://avatars.githubusercontent.com/u/389581?v=3","gravatar_id":"","url":"https://api.github.com/users/mjtamlyn","html_url":"https://github.com/mjtamlyn","followers_url":"https://api.github.com/users/mjtamlyn/followers","following_url":"https://api.github.com/users/mjtamlyn/following{/other_user}","gists_url":"https://api.github.com/users/mjtamlyn/gists{/gist_id}","starred_url":"https://api.github.com/users/mjtamlyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjtamlyn/subscriptions","organizations_url":"https://api.github.com/users/mjtamlyn/orgs","repos_url":"https://api.github.com/users/mjtamlyn/repos","events_url":"https://api.github.com/users/mjtamlyn/events{/privacy}","received_events_url":"https://api.github.com/users/mjtamlyn/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mjtamlyn/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/mjtamlyn/django","forks_url":"https://api.github.com/repos/mjtamlyn/django/forks","keys_url":"https://api.github.com/repos/mjtamlyn/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mjtamlyn/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mjtamlyn/django/teams","hooks_url":"https://api.github.com/repos/mjtamlyn/django/hooks","issue_events_url":"https://api.github.com/repos/mjtamlyn/django/issues/events{/number}","events_url":"https://api.github.com/repos/mjtamlyn/django/events","assignees_url":"https://api.github.com/repos/mjtamlyn/django/assignees{/user}","branches_url":"https://api.github.com/repos/mjtamlyn/django/branches{/branch}","tags_url":"https://api.github.com/repos/mjtamlyn/django/tags","blobs_url":"https://api.github.com/repos/mjtamlyn/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mjtamlyn/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mjtamlyn/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/mjtamlyn/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mjtamlyn/django/statuses/{sha}","languages_url":"https://api.github.com/repos/mjtamlyn/django/languages","stargazers_url":"https://api.github.com/repos/mjtamlyn/django/stargazers","contributors_url":"https://api.github.com/repos/mjtamlyn/django/contributors","subscribers_url":"https://api.github.com/repos/mjtamlyn/django/subscribers","subscription_url":"https://api.github.com/repos/mjtamlyn/django/subscription","commits_url":"https://api.github.com/repos/mjtamlyn/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/mjtamlyn/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/mjtamlyn/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/mjtamlyn/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/mjtamlyn/django/contents/{+path}","compare_url":"https://api.github.com/repos/mjtamlyn/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mjtamlyn/django/merges","archive_url":"https://api.github.com/repos/mjtamlyn/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mjtamlyn/django/downloads","issues_url":"https://api.github.com/repos/mjtamlyn/django/issues{/number}","pulls_url":"https://api.github.com/repos/mjtamlyn/django/pulls{/number}","milestones_url":"https://api.github.com/repos/mjtamlyn/django/milestones{/number}","notifications_url":"https://api.github.com/repos/mjtamlyn/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mjtamlyn/django/labels{/name}","releases_url":"https://api.github.com/repos/mjtamlyn/django/releases{/id}","created_at":"2012-06-02T12:56:52Z","updated_at":"2015-01-10T16:19:13Z","pushed_at":"2015-01-17T09:29:31Z","git_url":"git://github.com/mjtamlyn/django.git","ssh_url":"git@github.com:mjtamlyn/django.git","clone_url":"https://github.com/mjtamlyn/django.git","svn_url":"https://github.com/mjtamlyn/django","homepage":"http://www.djangoproject.com/","size":101846,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"68a439a18da17a65555832eff0a7c2090655b583","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3885"},"html":{"href":"https://github.com/django/django/pull/3885"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3885"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3885/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3885/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3885/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/b5c1a85b50c709770b8e98aeecfeb8e81ca29dcf"}}},{"url":"https://api.github.com/repos/django/django/pulls/3884","id":27155424,"html_url":"https://github.com/django/django/pull/3884","diff_url":"https://github.com/django/django/pull/3884.diff","patch_url":"https://github.com/django/django/pull/3884.patch","issue_url":"https://api.github.com/repos/django/django/issues/3884","number":3884,"state":"closed","locked":false,"title":"Fixed #17785 -- Preferred column names in get_relations introspection","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Thanks Thomas Güttler for the report and the initial patch.","created_at":"2015-01-10T22:17:33Z","updated_at":"2015-01-12T19:01:21Z","closed_at":"2015-01-12T19:00:31Z","merged_at":"2015-01-12T19:00:31Z","merge_commit_sha":"f90c0c1efe9934d918e315256385d80084474be5","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3884/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3884/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3884/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/4c413e231cfe788de6e371567f395c8ccbd26103","head":{"label":"claudep:17785","ref":"17785","sha":"4c413e231cfe788de6e371567f395c8ccbd26103","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"b75c707943e159b80c179c538721406bbfb8b120","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3884"},"html":{"href":"https://github.com/django/django/pull/3884"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3884"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3884/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3884/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3884/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/4c413e231cfe788de6e371567f395c8ccbd26103"}}},{"url":"https://api.github.com/repos/django/django/pulls/3883","id":27155332,"html_url":"https://github.com/django/django/pull/3883","diff_url":"https://github.com/django/django/pull/3883.diff","patch_url":"https://github.com/django/django/pull/3883.patch","issue_url":"https://api.github.com/repos/django/django/issues/3883","number":3883,"state":"closed","locked":false,"title":"Multiple template engines - continued","user":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-10T22:11:26Z","updated_at":"2015-01-12T20:31:21Z","closed_at":"2015-01-12T20:31:15Z","merged_at":"2015-01-12T20:31:15Z","merge_commit_sha":"20b5d18d3ac388356f7e2bab2bfbd990bc244ebc","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3883/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3883/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3883/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/511a53b3142551a1bc3093ed1b6655f57634f510","head":{"label":"aaugustin:multiple-template-engines","ref":"multiple-template-engines","sha":"511a53b3142551a1bc3093ed1b6655f57634f510","user":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"repo":{"id":5128238,"name":"django","full_name":"aaugustin/django","owner":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/aaugustin/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/aaugustin/django","forks_url":"https://api.github.com/repos/aaugustin/django/forks","keys_url":"https://api.github.com/repos/aaugustin/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aaugustin/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aaugustin/django/teams","hooks_url":"https://api.github.com/repos/aaugustin/django/hooks","issue_events_url":"https://api.github.com/repos/aaugustin/django/issues/events{/number}","events_url":"https://api.github.com/repos/aaugustin/django/events","assignees_url":"https://api.github.com/repos/aaugustin/django/assignees{/user}","branches_url":"https://api.github.com/repos/aaugustin/django/branches{/branch}","tags_url":"https://api.github.com/repos/aaugustin/django/tags","blobs_url":"https://api.github.com/repos/aaugustin/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aaugustin/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aaugustin/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/aaugustin/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aaugustin/django/statuses/{sha}","languages_url":"https://api.github.com/repos/aaugustin/django/languages","stargazers_url":"https://api.github.com/repos/aaugustin/django/stargazers","contributors_url":"https://api.github.com/repos/aaugustin/django/contributors","subscribers_url":"https://api.github.com/repos/aaugustin/django/subscribers","subscription_url":"https://api.github.com/repos/aaugustin/django/subscription","commits_url":"https://api.github.com/repos/aaugustin/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/aaugustin/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/aaugustin/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/aaugustin/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/aaugustin/django/contents/{+path}","compare_url":"https://api.github.com/repos/aaugustin/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aaugustin/django/merges","archive_url":"https://api.github.com/repos/aaugustin/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aaugustin/django/downloads","issues_url":"https://api.github.com/repos/aaugustin/django/issues{/number}","pulls_url":"https://api.github.com/repos/aaugustin/django/pulls{/number}","milestones_url":"https://api.github.com/repos/aaugustin/django/milestones{/number}","notifications_url":"https://api.github.com/repos/aaugustin/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aaugustin/django/labels{/name}","releases_url":"https://api.github.com/repos/aaugustin/django/releases{/id}","created_at":"2012-07-20T20:52:27Z","updated_at":"2015-01-10T20:12:42Z","pushed_at":"2015-01-12T20:31:21Z","git_url":"git://github.com/aaugustin/django.git","ssh_url":"git@github.com:aaugustin/django.git","clone_url":"https://github.com/aaugustin/django.git","svn_url":"https://github.com/aaugustin/django","homepage":"http://www.djangoproject.com/","size":107483,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4c413e231cfe788de6e371567f395c8ccbd26103","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3883"},"html":{"href":"https://github.com/django/django/pull/3883"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3883"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3883/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3883/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3883/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/511a53b3142551a1bc3093ed1b6655f57634f510"}}},{"url":"https://api.github.com/repos/django/django/pulls/3882","id":27154815,"html_url":"https://github.com/django/django/pull/3882","diff_url":"https://github.com/django/django/pull/3882.diff","patch_url":"https://github.com/django/django/pull/3882.patch","issue_url":"https://api.github.com/repos/django/django/issues/3882","number":3882,"state":"closed","locked":false,"title":"Fixed #24117 -- Made admin not require context_processors","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24117","created_at":"2015-01-10T21:28:35Z","updated_at":"2015-01-12T18:24:48Z","closed_at":"2015-01-11T05:07:08Z","merged_at":null,"merge_commit_sha":"7aee8b4971c44cdbde4a918aa37c7ae66e07a1a3","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3882/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3882/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3882/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/efc0738c1ffdbd042245ee38f2f2ca6f830ffb33","head":{"label":"collinanderson:24117","ref":"24117","sha":"efc0738c1ffdbd042245ee38f2f2ca6f830ffb33","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"be158e36251df0b07556657da47cdaf10913c57a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3882"},"html":{"href":"https://github.com/django/django/pull/3882"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3882"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3882/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3882/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3882/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/efc0738c1ffdbd042245ee38f2f2ca6f830ffb33"}}},{"url":"https://api.github.com/repos/django/django/pulls/3881","id":27154174,"html_url":"https://github.com/django/django/pull/3881","diff_url":"https://github.com/django/django/pull/3881.diff","patch_url":"https://github.com/django/django/pull/3881.patch","issue_url":"https://api.github.com/repos/django/django/issues/3881","number":3881,"state":"closed","locked":false,"title":"Fixed #24110 -- Revised the backwards migration process","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24110","created_at":"2015-01-10T20:36:39Z","updated_at":"2015-01-11T00:11:02Z","closed_at":"2015-01-10T22:49:09Z","merged_at":"2015-01-10T22:49:09Z","merge_commit_sha":"23434e6ad115fc29e7c5773fd7d0bf8042766c3d","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3881/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3881/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3881/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/fdc2cc948725866212a9bcc97b9b7cf21bb49b90","head":{"label":"MarkusH:fix-migration-unapply","ref":"fix-migration-unapply","sha":"fdc2cc948725866212a9bcc97b9b7cf21bb49b90","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"d89019a84d2dd314d3764dbd06ba854640db9b80","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3881"},"html":{"href":"https://github.com/django/django/pull/3881"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3881"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3881/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3881/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3881/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/fdc2cc948725866212a9bcc97b9b7cf21bb49b90"}}},{"url":"https://api.github.com/repos/django/django/pulls/3880","id":27153901,"html_url":"https://github.com/django/django/pull/3880","diff_url":"https://github.com/django/django/pull/3880.diff","patch_url":"https://github.com/django/django/pull/3880.patch","issue_url":"https://api.github.com/repos/django/django/issues/3880","number":3880,"state":"closed","locked":false,"title":"Improved template ugrading docs.","user":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"body":"Recommending Template(template_code) was dumb. Described alternatives.","created_at":"2015-01-10T20:13:03Z","updated_at":"2015-01-10T20:20:08Z","closed_at":"2015-01-10T20:20:08Z","merged_at":"2015-01-10T20:20:08Z","merge_commit_sha":"ba92543c24fcc77b3baf323ea074573a3d2f0a66","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3880/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3880/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3880/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d89019a84d2dd314d3764dbd06ba854640db9b80","head":{"label":"aaugustin:master","ref":"master","sha":"d89019a84d2dd314d3764dbd06ba854640db9b80","user":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"repo":{"id":5128238,"name":"django","full_name":"aaugustin/django","owner":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/aaugustin/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/aaugustin/django","forks_url":"https://api.github.com/repos/aaugustin/django/forks","keys_url":"https://api.github.com/repos/aaugustin/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aaugustin/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aaugustin/django/teams","hooks_url":"https://api.github.com/repos/aaugustin/django/hooks","issue_events_url":"https://api.github.com/repos/aaugustin/django/issues/events{/number}","events_url":"https://api.github.com/repos/aaugustin/django/events","assignees_url":"https://api.github.com/repos/aaugustin/django/assignees{/user}","branches_url":"https://api.github.com/repos/aaugustin/django/branches{/branch}","tags_url":"https://api.github.com/repos/aaugustin/django/tags","blobs_url":"https://api.github.com/repos/aaugustin/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aaugustin/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aaugustin/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/aaugustin/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aaugustin/django/statuses/{sha}","languages_url":"https://api.github.com/repos/aaugustin/django/languages","stargazers_url":"https://api.github.com/repos/aaugustin/django/stargazers","contributors_url":"https://api.github.com/repos/aaugustin/django/contributors","subscribers_url":"https://api.github.com/repos/aaugustin/django/subscribers","subscription_url":"https://api.github.com/repos/aaugustin/django/subscription","commits_url":"https://api.github.com/repos/aaugustin/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/aaugustin/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/aaugustin/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/aaugustin/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/aaugustin/django/contents/{+path}","compare_url":"https://api.github.com/repos/aaugustin/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aaugustin/django/merges","archive_url":"https://api.github.com/repos/aaugustin/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aaugustin/django/downloads","issues_url":"https://api.github.com/repos/aaugustin/django/issues{/number}","pulls_url":"https://api.github.com/repos/aaugustin/django/pulls{/number}","milestones_url":"https://api.github.com/repos/aaugustin/django/milestones{/number}","notifications_url":"https://api.github.com/repos/aaugustin/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aaugustin/django/labels{/name}","releases_url":"https://api.github.com/repos/aaugustin/django/releases{/id}","created_at":"2012-07-20T20:52:27Z","updated_at":"2015-01-10T20:12:42Z","pushed_at":"2015-01-12T20:31:21Z","git_url":"git://github.com/aaugustin/django.git","ssh_url":"git@github.com:aaugustin/django.git","clone_url":"https://github.com/aaugustin/django.git","svn_url":"https://github.com/aaugustin/django","homepage":"http://www.djangoproject.com/","size":107483,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"f01306a6d81755bf93db6c8cab3529819e60e1fe","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3880"},"html":{"href":"https://github.com/django/django/pull/3880"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3880"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3880/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3880/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3880/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d89019a84d2dd314d3764dbd06ba854640db9b80"}}},{"url":"https://api.github.com/repos/django/django/pulls/3879","id":27153337,"html_url":"https://github.com/django/django/pull/3879","diff_url":"https://github.com/django/django/pull/3879.diff","patch_url":"https://github.com/django/django/pull/3879.patch","issue_url":"https://api.github.com/repos/django/django/issues/3879","number":3879,"state":"closed","locked":false,"title":"Fixed #9893 -- Allowed using a field's max_length in the Storage.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"Updated from https://github.com/django/django/pull/3369.","created_at":"2015-01-10T19:25:11Z","updated_at":"2015-01-16T01:59:30Z","closed_at":"2015-01-12T14:12:40Z","merged_at":"2015-01-12T14:12:40Z","merge_commit_sha":"086a5556df54553253b99cbde614c93eb4a3712b","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3879/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3879/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3879/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a7c256cb5491bf2a77abdff01638239db5bfd9d5","head":{"label":"timgraham:9893","ref":"9893","sha":"a7c256cb5491bf2a77abdff01638239db5bfd9d5","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"b5c1a85b50c709770b8e98aeecfeb8e81ca29dcf","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3879"},"html":{"href":"https://github.com/django/django/pull/3879"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3879"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3879/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3879/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3879/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a7c256cb5491bf2a77abdff01638239db5bfd9d5"}}},{"url":"https://api.github.com/repos/django/django/pulls/3878","id":27152607,"html_url":"https://github.com/django/django/pull/3878","diff_url":"https://github.com/django/django/pull/3878.diff","patch_url":"https://github.com/django/django/pull/3878.patch","issue_url":"https://api.github.com/repos/django/django/issues/3878","number":3878,"state":"closed","locked":false,"title":"Fixed #24092 -- Widened base field support for ArrayField.","user":{"login":"mjtamlyn","id":389581,"avatar_url":"https://avatars.githubusercontent.com/u/389581?v=3","gravatar_id":"","url":"https://api.github.com/users/mjtamlyn","html_url":"https://github.com/mjtamlyn","followers_url":"https://api.github.com/users/mjtamlyn/followers","following_url":"https://api.github.com/users/mjtamlyn/following{/other_user}","gists_url":"https://api.github.com/users/mjtamlyn/gists{/gist_id}","starred_url":"https://api.github.com/users/mjtamlyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjtamlyn/subscriptions","organizations_url":"https://api.github.com/users/mjtamlyn/orgs","repos_url":"https://api.github.com/users/mjtamlyn/repos","events_url":"https://api.github.com/users/mjtamlyn/events{/privacy}","received_events_url":"https://api.github.com/users/mjtamlyn/received_events","type":"User","site_admin":false},"body":"Several issues resolved here, following from a report that a `base_field` of `GenericIpAddressField` was failing.\r\n\r\nWe were using `get_prep_value` instead of `get_db_prep_value` in `ArrayField` which was bypassing any extra modifications to the value being made in the base field's `get_db_prep_value`. Changing this broke datetime support, so the postgres backend has gained the relevant operation methods to send dates/times/datetimes directly to the db backend instead of casting them to strings. Similarly, a new database feature has been added allowing the uuid to be passed directly to the backend, as we do with timedeltas.\r\n\r\nOn the other side, psycopg2 expects an `Inet()` instance for ip address fields, so we add a `value_to_db_ipaddress` method to wrap the strings on postgres. We also have to manually add a database adapter to psycopg2, as we do not wish to use the built in adapter which would turn everything into `Inet()` instances.\r\n\r\nMain question: Do I need to ensure that we properly support `ArrayField(IPAddressField())` given that `IPAddressField()` is deprecated, or can the answer to the inevitable bug report be \"don't use `IPAddressField()`?","created_at":"2015-01-10T18:23:44Z","updated_at":"2015-01-17T09:29:31Z","closed_at":"2015-01-16T20:03:25Z","merged_at":null,"merge_commit_sha":"1fd69a8b4a77c8c222eabcb3c07714b79f52c456","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3878/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3878/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3878/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/2f516087c669222eaa523a014faf2e49fbc3c13e","head":{"label":"mjtamlyn:dcp-arrayfield-fixes","ref":"dcp-arrayfield-fixes","sha":"2f516087c669222eaa523a014faf2e49fbc3c13e","user":{"login":"mjtamlyn","id":389581,"avatar_url":"https://avatars.githubusercontent.com/u/389581?v=3","gravatar_id":"","url":"https://api.github.com/users/mjtamlyn","html_url":"https://github.com/mjtamlyn","followers_url":"https://api.github.com/users/mjtamlyn/followers","following_url":"https://api.github.com/users/mjtamlyn/following{/other_user}","gists_url":"https://api.github.com/users/mjtamlyn/gists{/gist_id}","starred_url":"https://api.github.com/users/mjtamlyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjtamlyn/subscriptions","organizations_url":"https://api.github.com/users/mjtamlyn/orgs","repos_url":"https://api.github.com/users/mjtamlyn/repos","events_url":"https://api.github.com/users/mjtamlyn/events{/privacy}","received_events_url":"https://api.github.com/users/mjtamlyn/received_events","type":"User","site_admin":false},"repo":{"id":4529204,"name":"django","full_name":"mjtamlyn/django","owner":{"login":"mjtamlyn","id":389581,"avatar_url":"https://avatars.githubusercontent.com/u/389581?v=3","gravatar_id":"","url":"https://api.github.com/users/mjtamlyn","html_url":"https://github.com/mjtamlyn","followers_url":"https://api.github.com/users/mjtamlyn/followers","following_url":"https://api.github.com/users/mjtamlyn/following{/other_user}","gists_url":"https://api.github.com/users/mjtamlyn/gists{/gist_id}","starred_url":"https://api.github.com/users/mjtamlyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjtamlyn/subscriptions","organizations_url":"https://api.github.com/users/mjtamlyn/orgs","repos_url":"https://api.github.com/users/mjtamlyn/repos","events_url":"https://api.github.com/users/mjtamlyn/events{/privacy}","received_events_url":"https://api.github.com/users/mjtamlyn/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mjtamlyn/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/mjtamlyn/django","forks_url":"https://api.github.com/repos/mjtamlyn/django/forks","keys_url":"https://api.github.com/repos/mjtamlyn/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mjtamlyn/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mjtamlyn/django/teams","hooks_url":"https://api.github.com/repos/mjtamlyn/django/hooks","issue_events_url":"https://api.github.com/repos/mjtamlyn/django/issues/events{/number}","events_url":"https://api.github.com/repos/mjtamlyn/django/events","assignees_url":"https://api.github.com/repos/mjtamlyn/django/assignees{/user}","branches_url":"https://api.github.com/repos/mjtamlyn/django/branches{/branch}","tags_url":"https://api.github.com/repos/mjtamlyn/django/tags","blobs_url":"https://api.github.com/repos/mjtamlyn/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mjtamlyn/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mjtamlyn/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/mjtamlyn/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mjtamlyn/django/statuses/{sha}","languages_url":"https://api.github.com/repos/mjtamlyn/django/languages","stargazers_url":"https://api.github.com/repos/mjtamlyn/django/stargazers","contributors_url":"https://api.github.com/repos/mjtamlyn/django/contributors","subscribers_url":"https://api.github.com/repos/mjtamlyn/django/subscribers","subscription_url":"https://api.github.com/repos/mjtamlyn/django/subscription","commits_url":"https://api.github.com/repos/mjtamlyn/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/mjtamlyn/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/mjtamlyn/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/mjtamlyn/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/mjtamlyn/django/contents/{+path}","compare_url":"https://api.github.com/repos/mjtamlyn/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mjtamlyn/django/merges","archive_url":"https://api.github.com/repos/mjtamlyn/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mjtamlyn/django/downloads","issues_url":"https://api.github.com/repos/mjtamlyn/django/issues{/number}","pulls_url":"https://api.github.com/repos/mjtamlyn/django/pulls{/number}","milestones_url":"https://api.github.com/repos/mjtamlyn/django/milestones{/number}","notifications_url":"https://api.github.com/repos/mjtamlyn/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mjtamlyn/django/labels{/name}","releases_url":"https://api.github.com/repos/mjtamlyn/django/releases{/id}","created_at":"2012-06-02T12:56:52Z","updated_at":"2015-01-10T16:19:13Z","pushed_at":"2015-01-17T09:29:31Z","git_url":"git://github.com/mjtamlyn/django.git","ssh_url":"git@github.com:mjtamlyn/django.git","clone_url":"https://github.com/mjtamlyn/django.git","svn_url":"https://github.com/mjtamlyn/django","homepage":"http://www.djangoproject.com/","size":101846,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"b5c1a85b50c709770b8e98aeecfeb8e81ca29dcf","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3878"},"html":{"href":"https://github.com/django/django/pull/3878"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3878"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3878/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3878/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3878/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/2f516087c669222eaa523a014faf2e49fbc3c13e"}}},{"url":"https://api.github.com/repos/django/django/pulls/3877","id":27143185,"html_url":"https://github.com/django/django/pull/3877","diff_url":"https://github.com/django/django/pull/3877.diff","patch_url":"https://github.com/django/django/pull/3877.patch","issue_url":"https://api.github.com/repos/django/django/issues/3877","number":3877,"state":"closed","locked":false,"title":"Added Josh Smeaton bio to team","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-10T02:50:03Z","updated_at":"2015-01-10T03:07:39Z","closed_at":"2015-01-10T03:07:39Z","merged_at":"2015-01-10T03:07:39Z","merge_commit_sha":"55d66907fd4be3ff6adee037e62744289d5696fa","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3877/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3877/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3877/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/f5c3a8bff57add71b801c9c44442ea0f8fa35858","head":{"label":"jarshwah:joshbio","ref":"joshbio","sha":"f5c3a8bff57add71b801c9c44442ea0f8fa35858","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"repo":{"id":4635741,"name":"django","full_name":"jarshwah/django","owner":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarshwah/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/jarshwah/django","forks_url":"https://api.github.com/repos/jarshwah/django/forks","keys_url":"https://api.github.com/repos/jarshwah/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarshwah/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarshwah/django/teams","hooks_url":"https://api.github.com/repos/jarshwah/django/hooks","issue_events_url":"https://api.github.com/repos/jarshwah/django/issues/events{/number}","events_url":"https://api.github.com/repos/jarshwah/django/events","assignees_url":"https://api.github.com/repos/jarshwah/django/assignees{/user}","branches_url":"https://api.github.com/repos/jarshwah/django/branches{/branch}","tags_url":"https://api.github.com/repos/jarshwah/django/tags","blobs_url":"https://api.github.com/repos/jarshwah/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarshwah/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarshwah/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarshwah/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarshwah/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jarshwah/django/languages","stargazers_url":"https://api.github.com/repos/jarshwah/django/stargazers","contributors_url":"https://api.github.com/repos/jarshwah/django/contributors","subscribers_url":"https://api.github.com/repos/jarshwah/django/subscribers","subscription_url":"https://api.github.com/repos/jarshwah/django/subscription","commits_url":"https://api.github.com/repos/jarshwah/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarshwah/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarshwah/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarshwah/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jarshwah/django/contents/{+path}","compare_url":"https://api.github.com/repos/jarshwah/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarshwah/django/merges","archive_url":"https://api.github.com/repos/jarshwah/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarshwah/django/downloads","issues_url":"https://api.github.com/repos/jarshwah/django/issues{/number}","pulls_url":"https://api.github.com/repos/jarshwah/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jarshwah/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jarshwah/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarshwah/django/labels{/name}","releases_url":"https://api.github.com/repos/jarshwah/django/releases{/id}","created_at":"2012-06-12T09:53:04Z","updated_at":"2014-06-27T11:10:20Z","pushed_at":"2015-01-17T23:23:41Z","git_url":"git://github.com/jarshwah/django.git","ssh_url":"git@github.com:jarshwah/django.git","clone_url":"https://github.com/jarshwah/django.git","svn_url":"https://github.com/jarshwah/django","homepage":"http://www.djangoproject.com/","size":113452,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"e174cce9dc258ac4d19b44eff0070d0ad48ec3a8","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3877"},"html":{"href":"https://github.com/django/django/pull/3877"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3877"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3877/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3877/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3877/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/f5c3a8bff57add71b801c9c44442ea0f8fa35858"}}},{"url":"https://api.github.com/repos/django/django/pulls/3876","id":27140033,"html_url":"https://github.com/django/django/pull/3876","diff_url":"https://github.com/django/django/pull/3876.diff","patch_url":"https://github.com/django/django/pull/3876.patch","issue_url":"https://api.github.com/repos/django/django/issues/3876","number":3876,"state":"closed","locked":false,"title":"Fixed #24089 -- Added check for when ModelAdmin.fieldsets[1]['fields'] isn't a tuple.","user":{"login":"arcturusannamalai","id":3316245,"avatar_url":"https://avatars.githubusercontent.com/u/3316245?v=3","gravatar_id":"","url":"https://api.github.com/users/arcturusannamalai","html_url":"https://github.com/arcturusannamalai","followers_url":"https://api.github.com/users/arcturusannamalai/followers","following_url":"https://api.github.com/users/arcturusannamalai/following{/other_user}","gists_url":"https://api.github.com/users/arcturusannamalai/gists{/gist_id}","starred_url":"https://api.github.com/users/arcturusannamalai/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arcturusannamalai/subscriptions","organizations_url":"https://api.github.com/users/arcturusannamalai/orgs","repos_url":"https://api.github.com/users/arcturusannamalai/repos","events_url":"https://api.github.com/users/arcturusannamalai/events{/privacy}","received_events_url":"https://api.github.com/users/arcturusannamalai/received_events","type":"User","site_admin":false},"body":"Change to check for tuple/list on the label 'fields' of fieldsets field of ModelAdmin.\r\nTicket 24089","created_at":"2015-01-10T00:30:47Z","updated_at":"2015-01-12T18:49:18Z","closed_at":"2015-01-12T18:49:18Z","merged_at":null,"merge_commit_sha":"71fe8e39c835445bb6c8e71d331b74ea86508e22","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3876/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3876/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3876/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/93c40f2d57cbb5f7c655682db369c772ed48afce","head":{"label":"arcturusannamalai:ticket_24089","ref":"ticket_24089","sha":"93c40f2d57cbb5f7c655682db369c772ed48afce","user":{"login":"arcturusannamalai","id":3316245,"avatar_url":"https://avatars.githubusercontent.com/u/3316245?v=3","gravatar_id":"","url":"https://api.github.com/users/arcturusannamalai","html_url":"https://github.com/arcturusannamalai","followers_url":"https://api.github.com/users/arcturusannamalai/followers","following_url":"https://api.github.com/users/arcturusannamalai/following{/other_user}","gists_url":"https://api.github.com/users/arcturusannamalai/gists{/gist_id}","starred_url":"https://api.github.com/users/arcturusannamalai/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arcturusannamalai/subscriptions","organizations_url":"https://api.github.com/users/arcturusannamalai/orgs","repos_url":"https://api.github.com/users/arcturusannamalai/repos","events_url":"https://api.github.com/users/arcturusannamalai/events{/privacy}","received_events_url":"https://api.github.com/users/arcturusannamalai/received_events","type":"User","site_admin":false},"repo":{"id":28951809,"name":"django","full_name":"arcturusannamalai/django","owner":{"login":"arcturusannamalai","id":3316245,"avatar_url":"https://avatars.githubusercontent.com/u/3316245?v=3","gravatar_id":"","url":"https://api.github.com/users/arcturusannamalai","html_url":"https://github.com/arcturusannamalai","followers_url":"https://api.github.com/users/arcturusannamalai/followers","following_url":"https://api.github.com/users/arcturusannamalai/following{/other_user}","gists_url":"https://api.github.com/users/arcturusannamalai/gists{/gist_id}","starred_url":"https://api.github.com/users/arcturusannamalai/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arcturusannamalai/subscriptions","organizations_url":"https://api.github.com/users/arcturusannamalai/orgs","repos_url":"https://api.github.com/users/arcturusannamalai/repos","events_url":"https://api.github.com/users/arcturusannamalai/events{/privacy}","received_events_url":"https://api.github.com/users/arcturusannamalai/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/arcturusannamalai/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/arcturusannamalai/django","forks_url":"https://api.github.com/repos/arcturusannamalai/django/forks","keys_url":"https://api.github.com/repos/arcturusannamalai/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/arcturusannamalai/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/arcturusannamalai/django/teams","hooks_url":"https://api.github.com/repos/arcturusannamalai/django/hooks","issue_events_url":"https://api.github.com/repos/arcturusannamalai/django/issues/events{/number}","events_url":"https://api.github.com/repos/arcturusannamalai/django/events","assignees_url":"https://api.github.com/repos/arcturusannamalai/django/assignees{/user}","branches_url":"https://api.github.com/repos/arcturusannamalai/django/branches{/branch}","tags_url":"https://api.github.com/repos/arcturusannamalai/django/tags","blobs_url":"https://api.github.com/repos/arcturusannamalai/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/arcturusannamalai/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/arcturusannamalai/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/arcturusannamalai/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/arcturusannamalai/django/statuses/{sha}","languages_url":"https://api.github.com/repos/arcturusannamalai/django/languages","stargazers_url":"https://api.github.com/repos/arcturusannamalai/django/stargazers","contributors_url":"https://api.github.com/repos/arcturusannamalai/django/contributors","subscribers_url":"https://api.github.com/repos/arcturusannamalai/django/subscribers","subscription_url":"https://api.github.com/repos/arcturusannamalai/django/subscription","commits_url":"https://api.github.com/repos/arcturusannamalai/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/arcturusannamalai/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/arcturusannamalai/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/arcturusannamalai/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/arcturusannamalai/django/contents/{+path}","compare_url":"https://api.github.com/repos/arcturusannamalai/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/arcturusannamalai/django/merges","archive_url":"https://api.github.com/repos/arcturusannamalai/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/arcturusannamalai/django/downloads","issues_url":"https://api.github.com/repos/arcturusannamalai/django/issues{/number}","pulls_url":"https://api.github.com/repos/arcturusannamalai/django/pulls{/number}","milestones_url":"https://api.github.com/repos/arcturusannamalai/django/milestones{/number}","notifications_url":"https://api.github.com/repos/arcturusannamalai/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/arcturusannamalai/django/labels{/name}","releases_url":"https://api.github.com/repos/arcturusannamalai/django/releases{/id}","created_at":"2015-01-08T06:12:17Z","updated_at":"2015-01-10T04:51:02Z","pushed_at":"2015-01-10T17:27:29Z","git_url":"git://github.com/arcturusannamalai/django.git","ssh_url":"git@github.com:arcturusannamalai/django.git","clone_url":"https://github.com/arcturusannamalai/django.git","svn_url":"https://github.com/arcturusannamalai/django","homepage":"https://www.djangoproject.com/","size":117393,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"07988744b347302925bc6cc66511e34224db55ab","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3876"},"html":{"href":"https://github.com/django/django/pull/3876"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3876"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3876/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3876/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3876/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/93c40f2d57cbb5f7c655682db369c772ed48afce"}}},{"url":"https://api.github.com/repos/django/django/pulls/3875","id":27133290,"html_url":"https://github.com/django/django/pull/3875","diff_url":"https://github.com/django/django/pull/3875.diff","patch_url":"https://github.com/django/django/pull/3875.patch","issue_url":"https://api.github.com/repos/django/django/issues/3875","number":3875,"state":"closed","locked":false,"title":"Fixed #23967 -- Added formats for Greek","user":{"login":"spapas","id":3911074,"avatar_url":"https://avatars.githubusercontent.com/u/3911074?v=3","gravatar_id":"","url":"https://api.github.com/users/spapas","html_url":"https://github.com/spapas","followers_url":"https://api.github.com/users/spapas/followers","following_url":"https://api.github.com/users/spapas/following{/other_user}","gists_url":"https://api.github.com/users/spapas/gists{/gist_id}","starred_url":"https://api.github.com/users/spapas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spapas/subscriptions","organizations_url":"https://api.github.com/users/spapas/orgs","repos_url":"https://api.github.com/users/spapas/repos","events_url":"https://api.github.com/users/spapas/events{/privacy}","received_events_url":"https://api.github.com/users/spapas/received_events","type":"User","site_admin":false},"body":"Please take a look at the discussion of #3696.","created_at":"2015-01-09T22:10:01Z","updated_at":"2015-01-10T16:37:13Z","closed_at":"2015-01-10T16:13:50Z","merged_at":null,"merge_commit_sha":"85a0081ca5fa0909e21ded251b3e11b5d0f0dbb9","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3875/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3875/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3875/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d6ecce683682eb67ebd7f2c6766195131ea30158","head":{"label":"spapas:master","ref":"master","sha":"d6ecce683682eb67ebd7f2c6766195131ea30158","user":{"login":"spapas","id":3911074,"avatar_url":"https://avatars.githubusercontent.com/u/3911074?v=3","gravatar_id":"","url":"https://api.github.com/users/spapas","html_url":"https://github.com/spapas","followers_url":"https://api.github.com/users/spapas/followers","following_url":"https://api.github.com/users/spapas/following{/other_user}","gists_url":"https://api.github.com/users/spapas/gists{/gist_id}","starred_url":"https://api.github.com/users/spapas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spapas/subscriptions","organizations_url":"https://api.github.com/users/spapas/orgs","repos_url":"https://api.github.com/users/spapas/repos","events_url":"https://api.github.com/users/spapas/events{/privacy}","received_events_url":"https://api.github.com/users/spapas/received_events","type":"User","site_admin":false},"repo":{"id":27629403,"name":"django","full_name":"spapas/django","owner":{"login":"spapas","id":3911074,"avatar_url":"https://avatars.githubusercontent.com/u/3911074?v=3","gravatar_id":"","url":"https://api.github.com/users/spapas","html_url":"https://github.com/spapas","followers_url":"https://api.github.com/users/spapas/followers","following_url":"https://api.github.com/users/spapas/following{/other_user}","gists_url":"https://api.github.com/users/spapas/gists{/gist_id}","starred_url":"https://api.github.com/users/spapas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spapas/subscriptions","organizations_url":"https://api.github.com/users/spapas/orgs","repos_url":"https://api.github.com/users/spapas/repos","events_url":"https://api.github.com/users/spapas/events{/privacy}","received_events_url":"https://api.github.com/users/spapas/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/spapas/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/spapas/django","forks_url":"https://api.github.com/repos/spapas/django/forks","keys_url":"https://api.github.com/repos/spapas/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/spapas/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/spapas/django/teams","hooks_url":"https://api.github.com/repos/spapas/django/hooks","issue_events_url":"https://api.github.com/repos/spapas/django/issues/events{/number}","events_url":"https://api.github.com/repos/spapas/django/events","assignees_url":"https://api.github.com/repos/spapas/django/assignees{/user}","branches_url":"https://api.github.com/repos/spapas/django/branches{/branch}","tags_url":"https://api.github.com/repos/spapas/django/tags","blobs_url":"https://api.github.com/repos/spapas/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/spapas/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/spapas/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/spapas/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/spapas/django/statuses/{sha}","languages_url":"https://api.github.com/repos/spapas/django/languages","stargazers_url":"https://api.github.com/repos/spapas/django/stargazers","contributors_url":"https://api.github.com/repos/spapas/django/contributors","subscribers_url":"https://api.github.com/repos/spapas/django/subscribers","subscription_url":"https://api.github.com/repos/spapas/django/subscription","commits_url":"https://api.github.com/repos/spapas/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/spapas/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/spapas/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/spapas/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/spapas/django/contents/{+path}","compare_url":"https://api.github.com/repos/spapas/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/spapas/django/merges","archive_url":"https://api.github.com/repos/spapas/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/spapas/django/downloads","issues_url":"https://api.github.com/repos/spapas/django/issues{/number}","pulls_url":"https://api.github.com/repos/spapas/django/pulls{/number}","milestones_url":"https://api.github.com/repos/spapas/django/milestones{/number}","notifications_url":"https://api.github.com/repos/spapas/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/spapas/django/labels{/name}","releases_url":"https://api.github.com/repos/spapas/django/releases{/id}","created_at":"2014-12-06T09:31:39Z","updated_at":"2015-01-09T22:06:28Z","pushed_at":"2015-01-09T22:06:28Z","git_url":"git://github.com/spapas/django.git","ssh_url":"git@github.com:spapas/django.git","clone_url":"https://github.com/spapas/django.git","svn_url":"https://github.com/spapas/django","homepage":"https://www.djangoproject.com/","size":117265,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"f2f70faa809c3b261e840441451ac93992c5ee84","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3875"},"html":{"href":"https://github.com/django/django/pull/3875"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3875"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3875/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3875/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3875/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d6ecce683682eb67ebd7f2c6766195131ea30158"}}},{"url":"https://api.github.com/repos/django/django/pulls/3874","id":27130219,"html_url":"https://github.com/django/django/pull/3874","diff_url":"https://github.com/django/django/pull/3874.diff","patch_url":"https://github.com/django/django/pull/3874.patch","issue_url":"https://api.github.com/repos/django/django/issues/3874","number":3874,"state":"closed","locked":false,"title":"Fixed #24097 -- Prevented AttributeError in redirect_to_login","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Thanks Peter Schmidt for the report and the initial patch.","created_at":"2015-01-09T21:23:39Z","updated_at":"2015-01-10T09:15:59Z","closed_at":"2015-01-10T09:06:13Z","merged_at":"2015-01-10T09:06:13Z","merge_commit_sha":"26f846b1cf6a5f1d95013d1bdb5edabca08b2b92","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3874/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3874/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3874/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d7bc37d611b43d58be4b430faf0b9813bcde29c6","head":{"label":"claudep:24097","ref":"24097","sha":"d7bc37d611b43d58be4b430faf0b9813bcde29c6","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"f5c3a8bff57add71b801c9c44442ea0f8fa35858","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3874"},"html":{"href":"https://github.com/django/django/pull/3874"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3874"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3874/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3874/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3874/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d7bc37d611b43d58be4b430faf0b9813bcde29c6"}}},{"url":"https://api.github.com/repos/django/django/pulls/3873","id":27121596,"html_url":"https://github.com/django/django/pull/3873","diff_url":"https://github.com/django/django/pull/3873.diff","patch_url":"https://github.com/django/django/pull/3873.patch","issue_url":"https://api.github.com/repos/django/django/issues/3873","number":3873,"state":"closed","locked":false,"title":"Fix CustomUserBadRequiredFields docstring typo.","user":{"login":"hellysmile","id":1834317,"avatar_url":"https://avatars.githubusercontent.com/u/1834317?v=3","gravatar_id":"","url":"https://api.github.com/users/hellysmile","html_url":"https://github.com/hellysmile","followers_url":"https://api.github.com/users/hellysmile/followers","following_url":"https://api.github.com/users/hellysmile/following{/other_user}","gists_url":"https://api.github.com/users/hellysmile/gists{/gist_id}","starred_url":"https://api.github.com/users/hellysmile/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hellysmile/subscriptions","organizations_url":"https://api.github.com/users/hellysmile/orgs","repos_url":"https://api.github.com/users/hellysmile/repos","events_url":"https://api.github.com/users/hellysmile/events{/privacy}","received_events_url":"https://api.github.com/users/hellysmile/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-09T19:09:43Z","updated_at":"2015-01-09T19:34:31Z","closed_at":"2015-01-09T19:34:31Z","merged_at":null,"merge_commit_sha":"8d260c327986441b9b04a7b4403789d719624d33","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3873/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3873/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3873/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d2b1c8d28026db6c9993be657c6abaa4609b17ec","head":{"label":"hellysmile:custom_user_typo","ref":"custom_user_typo","sha":"d2b1c8d28026db6c9993be657c6abaa4609b17ec","user":{"login":"hellysmile","id":1834317,"avatar_url":"https://avatars.githubusercontent.com/u/1834317?v=3","gravatar_id":"","url":"https://api.github.com/users/hellysmile","html_url":"https://github.com/hellysmile","followers_url":"https://api.github.com/users/hellysmile/followers","following_url":"https://api.github.com/users/hellysmile/following{/other_user}","gists_url":"https://api.github.com/users/hellysmile/gists{/gist_id}","starred_url":"https://api.github.com/users/hellysmile/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hellysmile/subscriptions","organizations_url":"https://api.github.com/users/hellysmile/orgs","repos_url":"https://api.github.com/users/hellysmile/repos","events_url":"https://api.github.com/users/hellysmile/events{/privacy}","received_events_url":"https://api.github.com/users/hellysmile/received_events","type":"User","site_admin":false},"repo":{"id":22813316,"name":"django","full_name":"hellysmile/django","owner":{"login":"hellysmile","id":1834317,"avatar_url":"https://avatars.githubusercontent.com/u/1834317?v=3","gravatar_id":"","url":"https://api.github.com/users/hellysmile","html_url":"https://github.com/hellysmile","followers_url":"https://api.github.com/users/hellysmile/followers","following_url":"https://api.github.com/users/hellysmile/following{/other_user}","gists_url":"https://api.github.com/users/hellysmile/gists{/gist_id}","starred_url":"https://api.github.com/users/hellysmile/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hellysmile/subscriptions","organizations_url":"https://api.github.com/users/hellysmile/orgs","repos_url":"https://api.github.com/users/hellysmile/repos","events_url":"https://api.github.com/users/hellysmile/events{/privacy}","received_events_url":"https://api.github.com/users/hellysmile/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/hellysmile/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/hellysmile/django","forks_url":"https://api.github.com/repos/hellysmile/django/forks","keys_url":"https://api.github.com/repos/hellysmile/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hellysmile/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hellysmile/django/teams","hooks_url":"https://api.github.com/repos/hellysmile/django/hooks","issue_events_url":"https://api.github.com/repos/hellysmile/django/issues/events{/number}","events_url":"https://api.github.com/repos/hellysmile/django/events","assignees_url":"https://api.github.com/repos/hellysmile/django/assignees{/user}","branches_url":"https://api.github.com/repos/hellysmile/django/branches{/branch}","tags_url":"https://api.github.com/repos/hellysmile/django/tags","blobs_url":"https://api.github.com/repos/hellysmile/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hellysmile/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hellysmile/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/hellysmile/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hellysmile/django/statuses/{sha}","languages_url":"https://api.github.com/repos/hellysmile/django/languages","stargazers_url":"https://api.github.com/repos/hellysmile/django/stargazers","contributors_url":"https://api.github.com/repos/hellysmile/django/contributors","subscribers_url":"https://api.github.com/repos/hellysmile/django/subscribers","subscription_url":"https://api.github.com/repos/hellysmile/django/subscription","commits_url":"https://api.github.com/repos/hellysmile/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/hellysmile/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/hellysmile/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/hellysmile/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/hellysmile/django/contents/{+path}","compare_url":"https://api.github.com/repos/hellysmile/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hellysmile/django/merges","archive_url":"https://api.github.com/repos/hellysmile/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hellysmile/django/downloads","issues_url":"https://api.github.com/repos/hellysmile/django/issues{/number}","pulls_url":"https://api.github.com/repos/hellysmile/django/pulls{/number}","milestones_url":"https://api.github.com/repos/hellysmile/django/milestones{/number}","notifications_url":"https://api.github.com/repos/hellysmile/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hellysmile/django/labels{/name}","releases_url":"https://api.github.com/repos/hellysmile/django/releases{/id}","created_at":"2014-08-10T16:33:04Z","updated_at":"2014-08-10T12:41:32Z","pushed_at":"2015-01-09T21:59:45Z","git_url":"git://github.com/hellysmile/django.git","ssh_url":"git@github.com:hellysmile/django.git","clone_url":"https://github.com/hellysmile/django.git","svn_url":"https://github.com/hellysmile/django","homepage":"http://www.djangoproject.com/","size":114824,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"7102b99653e354eb8c291cfa5b4f772d15d83ae0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3873"},"html":{"href":"https://github.com/django/django/pull/3873"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3873"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3873/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3873/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3873/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d2b1c8d28026db6c9993be657c6abaa4609b17ec"}}},{"url":"https://api.github.com/repos/django/django/pulls/3872","id":27120204,"html_url":"https://github.com/django/django/pull/3872","diff_url":"https://github.com/django/django/pull/3872.diff","patch_url":"https://github.com/django/django/pull/3872.patch","issue_url":"https://api.github.com/repos/django/django/issues/3872","number":3872,"state":"closed","locked":false,"title":"Fixed invalid polish e-mail validation msg translation","user":{"login":"rafalp","id":750553,"avatar_url":"https://avatars.githubusercontent.com/u/750553?v=3","gravatar_id":"","url":"https://api.github.com/users/rafalp","html_url":"https://github.com/rafalp","followers_url":"https://api.github.com/users/rafalp/followers","following_url":"https://api.github.com/users/rafalp/following{/other_user}","gists_url":"https://api.github.com/users/rafalp/gists{/gist_id}","starred_url":"https://api.github.com/users/rafalp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rafalp/subscriptions","organizations_url":"https://api.github.com/users/rafalp/orgs","repos_url":"https://api.github.com/users/rafalp/repos","events_url":"https://api.github.com/users/rafalp/events{/privacy}","received_events_url":"https://api.github.com/users/rafalp/received_events","type":"User","site_admin":false},"body":"Polish translation for „Enter valid email” was copied over from \"Enter\r\na valid username.\", producing confusing and incorrect error message\r\nfor validate_email validator. ","created_at":"2015-01-09T18:49:12Z","updated_at":"2015-01-09T19:36:02Z","closed_at":"2015-01-09T19:36:02Z","merged_at":null,"merge_commit_sha":"c86b672c0026ec7e93ba42e6f14e8d32c6898bcd","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3872/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3872/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3872/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/4df871dfaf60de9ca6d71d1b2cb888ccec21686d","head":{"label":"rafalp:master","ref":"master","sha":"4df871dfaf60de9ca6d71d1b2cb888ccec21686d","user":{"login":"rafalp","id":750553,"avatar_url":"https://avatars.githubusercontent.com/u/750553?v=3","gravatar_id":"","url":"https://api.github.com/users/rafalp","html_url":"https://github.com/rafalp","followers_url":"https://api.github.com/users/rafalp/followers","following_url":"https://api.github.com/users/rafalp/following{/other_user}","gists_url":"https://api.github.com/users/rafalp/gists{/gist_id}","starred_url":"https://api.github.com/users/rafalp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rafalp/subscriptions","organizations_url":"https://api.github.com/users/rafalp/orgs","repos_url":"https://api.github.com/users/rafalp/repos","events_url":"https://api.github.com/users/rafalp/events{/privacy}","received_events_url":"https://api.github.com/users/rafalp/received_events","type":"User","site_admin":false},"repo":{"id":26237259,"name":"django","full_name":"rafalp/django","owner":{"login":"rafalp","id":750553,"avatar_url":"https://avatars.githubusercontent.com/u/750553?v=3","gravatar_id":"","url":"https://api.github.com/users/rafalp","html_url":"https://github.com/rafalp","followers_url":"https://api.github.com/users/rafalp/followers","following_url":"https://api.github.com/users/rafalp/following{/other_user}","gists_url":"https://api.github.com/users/rafalp/gists{/gist_id}","starred_url":"https://api.github.com/users/rafalp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rafalp/subscriptions","organizations_url":"https://api.github.com/users/rafalp/orgs","repos_url":"https://api.github.com/users/rafalp/repos","events_url":"https://api.github.com/users/rafalp/events{/privacy}","received_events_url":"https://api.github.com/users/rafalp/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/rafalp/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/rafalp/django","forks_url":"https://api.github.com/repos/rafalp/django/forks","keys_url":"https://api.github.com/repos/rafalp/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rafalp/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rafalp/django/teams","hooks_url":"https://api.github.com/repos/rafalp/django/hooks","issue_events_url":"https://api.github.com/repos/rafalp/django/issues/events{/number}","events_url":"https://api.github.com/repos/rafalp/django/events","assignees_url":"https://api.github.com/repos/rafalp/django/assignees{/user}","branches_url":"https://api.github.com/repos/rafalp/django/branches{/branch}","tags_url":"https://api.github.com/repos/rafalp/django/tags","blobs_url":"https://api.github.com/repos/rafalp/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rafalp/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rafalp/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/rafalp/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rafalp/django/statuses/{sha}","languages_url":"https://api.github.com/repos/rafalp/django/languages","stargazers_url":"https://api.github.com/repos/rafalp/django/stargazers","contributors_url":"https://api.github.com/repos/rafalp/django/contributors","subscribers_url":"https://api.github.com/repos/rafalp/django/subscribers","subscription_url":"https://api.github.com/repos/rafalp/django/subscription","commits_url":"https://api.github.com/repos/rafalp/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/rafalp/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/rafalp/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/rafalp/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/rafalp/django/contents/{+path}","compare_url":"https://api.github.com/repos/rafalp/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rafalp/django/merges","archive_url":"https://api.github.com/repos/rafalp/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rafalp/django/downloads","issues_url":"https://api.github.com/repos/rafalp/django/issues{/number}","pulls_url":"https://api.github.com/repos/rafalp/django/pulls{/number}","milestones_url":"https://api.github.com/repos/rafalp/django/milestones{/number}","notifications_url":"https://api.github.com/repos/rafalp/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rafalp/django/labels{/name}","releases_url":"https://api.github.com/repos/rafalp/django/releases{/id}","created_at":"2014-11-05T20:01:50Z","updated_at":"2015-01-09T18:41:36Z","pushed_at":"2015-01-09T18:41:28Z","git_url":"git://github.com/rafalp/django.git","ssh_url":"git@github.com:rafalp/django.git","clone_url":"https://github.com/rafalp/django.git","svn_url":"https://github.com/rafalp/django","homepage":"https://www.djangoproject.com/","size":112403,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"7102b99653e354eb8c291cfa5b4f772d15d83ae0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3872"},"html":{"href":"https://github.com/django/django/pull/3872"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3872"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3872/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3872/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3872/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/4df871dfaf60de9ca6d71d1b2cb888ccec21686d"}}},{"url":"https://api.github.com/repos/django/django/pulls/3870","id":27117034,"html_url":"https://github.com/django/django/pull/3870","diff_url":"https://github.com/django/django/pull/3870.diff","patch_url":"https://github.com/django/django/pull/3870.patch","issue_url":"https://api.github.com/repos/django/django/issues/3870","number":3870,"state":"closed","locked":false,"title":"Added best practices for versionadded/changed annotations.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"Please review for clarity or any questions you have that aren't addressed.","created_at":"2015-01-09T17:56:21Z","updated_at":"2015-01-09T18:24:23Z","closed_at":"2015-01-09T18:23:57Z","merged_at":"2015-01-09T18:23:57Z","merge_commit_sha":"39bbf249d288409d3432df69cc9c07e8187ff027","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3870/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3870/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3870/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/7102b99653e354eb8c291cfa5b4f772d15d83ae0","head":{"label":"timgraham:version-annotations","ref":"version-annotations","sha":"7102b99653e354eb8c291cfa5b4f772d15d83ae0","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"8f4877c89d0f28e289399fbb46357623a49e7eb0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3870"},"html":{"href":"https://github.com/django/django/pull/3870"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3870"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3870/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3870/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3870/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/7102b99653e354eb8c291cfa5b4f772d15d83ae0"}}},{"url":"https://api.github.com/repos/django/django/pulls/3869","id":27109323,"html_url":"https://github.com/django/django/pull/3869","diff_url":"https://github.com/django/django/pull/3869.diff","patch_url":"https://github.com/django/django/pull/3869.patch","issue_url":"https://api.github.com/repos/django/django/issues/3869","number":3869,"state":"closed","locked":false,"title":"Fixed #24094 -- Enable template tests to run individually.","user":{"login":"prestontimmons","id":207051,"avatar_url":"https://avatars.githubusercontent.com/u/207051?v=3","gravatar_id":"","url":"https://api.github.com/users/prestontimmons","html_url":"https://github.com/prestontimmons","followers_url":"https://api.github.com/users/prestontimmons/followers","following_url":"https://api.github.com/users/prestontimmons/following{/other_user}","gists_url":"https://api.github.com/users/prestontimmons/gists{/gist_id}","starred_url":"https://api.github.com/users/prestontimmons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prestontimmons/subscriptions","organizations_url":"https://api.github.com/users/prestontimmons/orgs","repos_url":"https://api.github.com/users/prestontimmons/repos","events_url":"https://api.github.com/users/prestontimmons/events{/privacy}","received_events_url":"https://api.github.com/users/prestontimmons/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-09T16:06:23Z","updated_at":"2015-01-09T16:45:22Z","closed_at":"2015-01-09T16:45:22Z","merged_at":null,"merge_commit_sha":"7513bda026daa9ab7db044dbcb079830ba59081d","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3869/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3869/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3869/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/375426d3ce517654418def8b2a4da63b00bd9664","head":{"label":"prestontimmons:ticket-24094","ref":"ticket-24094","sha":"375426d3ce517654418def8b2a4da63b00bd9664","user":{"login":"prestontimmons","id":207051,"avatar_url":"https://avatars.githubusercontent.com/u/207051?v=3","gravatar_id":"","url":"https://api.github.com/users/prestontimmons","html_url":"https://github.com/prestontimmons","followers_url":"https://api.github.com/users/prestontimmons/followers","following_url":"https://api.github.com/users/prestontimmons/following{/other_user}","gists_url":"https://api.github.com/users/prestontimmons/gists{/gist_id}","starred_url":"https://api.github.com/users/prestontimmons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prestontimmons/subscriptions","organizations_url":"https://api.github.com/users/prestontimmons/orgs","repos_url":"https://api.github.com/users/prestontimmons/repos","events_url":"https://api.github.com/users/prestontimmons/events{/privacy}","received_events_url":"https://api.github.com/users/prestontimmons/received_events","type":"User","site_admin":false},"repo":{"id":8862914,"name":"django","full_name":"prestontimmons/django","owner":{"login":"prestontimmons","id":207051,"avatar_url":"https://avatars.githubusercontent.com/u/207051?v=3","gravatar_id":"","url":"https://api.github.com/users/prestontimmons","html_url":"https://github.com/prestontimmons","followers_url":"https://api.github.com/users/prestontimmons/followers","following_url":"https://api.github.com/users/prestontimmons/following{/other_user}","gists_url":"https://api.github.com/users/prestontimmons/gists{/gist_id}","starred_url":"https://api.github.com/users/prestontimmons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prestontimmons/subscriptions","organizations_url":"https://api.github.com/users/prestontimmons/orgs","repos_url":"https://api.github.com/users/prestontimmons/repos","events_url":"https://api.github.com/users/prestontimmons/events{/privacy}","received_events_url":"https://api.github.com/users/prestontimmons/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/prestontimmons/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/prestontimmons/django","forks_url":"https://api.github.com/repos/prestontimmons/django/forks","keys_url":"https://api.github.com/repos/prestontimmons/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/prestontimmons/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/prestontimmons/django/teams","hooks_url":"https://api.github.com/repos/prestontimmons/django/hooks","issue_events_url":"https://api.github.com/repos/prestontimmons/django/issues/events{/number}","events_url":"https://api.github.com/repos/prestontimmons/django/events","assignees_url":"https://api.github.com/repos/prestontimmons/django/assignees{/user}","branches_url":"https://api.github.com/repos/prestontimmons/django/branches{/branch}","tags_url":"https://api.github.com/repos/prestontimmons/django/tags","blobs_url":"https://api.github.com/repos/prestontimmons/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/prestontimmons/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/prestontimmons/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/prestontimmons/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/prestontimmons/django/statuses/{sha}","languages_url":"https://api.github.com/repos/prestontimmons/django/languages","stargazers_url":"https://api.github.com/repos/prestontimmons/django/stargazers","contributors_url":"https://api.github.com/repos/prestontimmons/django/contributors","subscribers_url":"https://api.github.com/repos/prestontimmons/django/subscribers","subscription_url":"https://api.github.com/repos/prestontimmons/django/subscription","commits_url":"https://api.github.com/repos/prestontimmons/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/prestontimmons/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/prestontimmons/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/prestontimmons/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/prestontimmons/django/contents/{+path}","compare_url":"https://api.github.com/repos/prestontimmons/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/prestontimmons/django/merges","archive_url":"https://api.github.com/repos/prestontimmons/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/prestontimmons/django/downloads","issues_url":"https://api.github.com/repos/prestontimmons/django/issues{/number}","pulls_url":"https://api.github.com/repos/prestontimmons/django/pulls{/number}","milestones_url":"https://api.github.com/repos/prestontimmons/django/milestones{/number}","notifications_url":"https://api.github.com/repos/prestontimmons/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/prestontimmons/django/labels{/name}","releases_url":"https://api.github.com/repos/prestontimmons/django/releases{/id}","created_at":"2013-03-18T20:02:22Z","updated_at":"2015-01-16T23:17:21Z","pushed_at":"2015-01-16T23:31:08Z","git_url":"git://github.com/prestontimmons/django.git","ssh_url":"git@github.com:prestontimmons/django.git","clone_url":"https://github.com/prestontimmons/django.git","svn_url":"https://github.com/prestontimmons/django","homepage":"http://www.djangoproject.com/","size":108842,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"c8bac4b556cf4716dc9003e5da48060cb72ba7cb","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3869"},"html":{"href":"https://github.com/django/django/pull/3869"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3869"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3869/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3869/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3869/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/375426d3ce517654418def8b2a4da63b00bd9664"}}},{"url":"https://api.github.com/repos/django/django/pulls/3868","id":27106185,"html_url":"https://github.com/django/django/pull/3868","diff_url":"https://github.com/django/django/pull/3868.diff","patch_url":"https://github.com/django/django/pull/3868.patch","issue_url":"https://api.github.com/repos/django/django/issues/3868","number":3868,"state":"closed","locked":false,"title":"Fixed #24060 -- Added OrderBy Expressions","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"body":"This is the initial implementation of being able to use expressions in the order_by clause. It's still a bit rough around the edges. Still need:\r\n\r\n- [x] Lots more tests\r\n- [x] Documentation\r\n- [x] ~~Implement NULLS LAST/FIRST~~ Cutting due to time\r\n\r\nI think I'm on the right track though. Eventually I'd like to move a lot of the order processing from the compiler and into the expression itself, but that's polish that can wait until another version.","created_at":"2015-01-09T15:21:25Z","updated_at":"2015-01-14T06:38:19Z","closed_at":"2015-01-12T22:42:07Z","merged_at":"2015-01-12T22:42:07Z","merge_commit_sha":"d81ec91d9264ea60d854ff42f9568c3299ea3ddd","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3868/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3868/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3868/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/21b858cb6735cdfdc695ff7b076e4cbc1981bc88","head":{"label":"jarshwah:orderby-expressions","ref":"orderby-expressions","sha":"21b858cb6735cdfdc695ff7b076e4cbc1981bc88","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"repo":{"id":4635741,"name":"django","full_name":"jarshwah/django","owner":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarshwah/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/jarshwah/django","forks_url":"https://api.github.com/repos/jarshwah/django/forks","keys_url":"https://api.github.com/repos/jarshwah/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarshwah/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarshwah/django/teams","hooks_url":"https://api.github.com/repos/jarshwah/django/hooks","issue_events_url":"https://api.github.com/repos/jarshwah/django/issues/events{/number}","events_url":"https://api.github.com/repos/jarshwah/django/events","assignees_url":"https://api.github.com/repos/jarshwah/django/assignees{/user}","branches_url":"https://api.github.com/repos/jarshwah/django/branches{/branch}","tags_url":"https://api.github.com/repos/jarshwah/django/tags","blobs_url":"https://api.github.com/repos/jarshwah/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarshwah/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarshwah/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarshwah/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarshwah/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jarshwah/django/languages","stargazers_url":"https://api.github.com/repos/jarshwah/django/stargazers","contributors_url":"https://api.github.com/repos/jarshwah/django/contributors","subscribers_url":"https://api.github.com/repos/jarshwah/django/subscribers","subscription_url":"https://api.github.com/repos/jarshwah/django/subscription","commits_url":"https://api.github.com/repos/jarshwah/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarshwah/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarshwah/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarshwah/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jarshwah/django/contents/{+path}","compare_url":"https://api.github.com/repos/jarshwah/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarshwah/django/merges","archive_url":"https://api.github.com/repos/jarshwah/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarshwah/django/downloads","issues_url":"https://api.github.com/repos/jarshwah/django/issues{/number}","pulls_url":"https://api.github.com/repos/jarshwah/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jarshwah/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jarshwah/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarshwah/django/labels{/name}","releases_url":"https://api.github.com/repos/jarshwah/django/releases{/id}","created_at":"2012-06-12T09:53:04Z","updated_at":"2014-06-27T11:10:20Z","pushed_at":"2015-01-17T23:23:41Z","git_url":"git://github.com/jarshwah/django.git","ssh_url":"git@github.com:jarshwah/django.git","clone_url":"https://github.com/jarshwah/django.git","svn_url":"https://github.com/jarshwah/django","homepage":"http://www.djangoproject.com/","size":113452,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"f48e2258a96a08dcec843921206bcf7656e3ae45","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3868"},"html":{"href":"https://github.com/django/django/pull/3868"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3868"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3868/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3868/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3868/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/21b858cb6735cdfdc695ff7b076e4cbc1981bc88"}}},{"url":"https://api.github.com/repos/django/django/pulls/3867","id":27088891,"html_url":"https://github.com/django/django/pull/3867","diff_url":"https://github.com/django/django/pull/3867.diff","patch_url":"https://github.com/django/django/pull/3867.patch","issue_url":"https://api.github.com/repos/django/django/issues/3867","number":3867,"state":"closed","locked":false,"title":"Minor release notes fix","user":{"login":"tchaumeny","id":1296387,"avatar_url":"https://avatars.githubusercontent.com/u/1296387?v=3","gravatar_id":"","url":"https://api.github.com/users/tchaumeny","html_url":"https://github.com/tchaumeny","followers_url":"https://api.github.com/users/tchaumeny/followers","following_url":"https://api.github.com/users/tchaumeny/following{/other_user}","gists_url":"https://api.github.com/users/tchaumeny/gists{/gist_id}","starred_url":"https://api.github.com/users/tchaumeny/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tchaumeny/subscriptions","organizations_url":"https://api.github.com/users/tchaumeny/orgs","repos_url":"https://api.github.com/users/tchaumeny/repos","events_url":"https://api.github.com/users/tchaumeny/events{/privacy}","received_events_url":"https://api.github.com/users/tchaumeny/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-09T09:41:27Z","updated_at":"2015-01-09T12:39:56Z","closed_at":"2015-01-09T12:39:56Z","merged_at":null,"merge_commit_sha":"3eabf3358523a8cdcde1b9f928966453b1da3395","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3867/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3867/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3867/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/45f9f280024f9225ce4050f1e6d518b99f058317","head":{"label":"tchaumeny:fix_release_note","ref":"fix_release_note","sha":"45f9f280024f9225ce4050f1e6d518b99f058317","user":{"login":"tchaumeny","id":1296387,"avatar_url":"https://avatars.githubusercontent.com/u/1296387?v=3","gravatar_id":"","url":"https://api.github.com/users/tchaumeny","html_url":"https://github.com/tchaumeny","followers_url":"https://api.github.com/users/tchaumeny/followers","following_url":"https://api.github.com/users/tchaumeny/following{/other_user}","gists_url":"https://api.github.com/users/tchaumeny/gists{/gist_id}","starred_url":"https://api.github.com/users/tchaumeny/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tchaumeny/subscriptions","organizations_url":"https://api.github.com/users/tchaumeny/orgs","repos_url":"https://api.github.com/users/tchaumeny/repos","events_url":"https://api.github.com/users/tchaumeny/events{/privacy}","received_events_url":"https://api.github.com/users/tchaumeny/received_events","type":"User","site_admin":false},"repo":{"id":17920067,"name":"django","full_name":"tchaumeny/django","owner":{"login":"tchaumeny","id":1296387,"avatar_url":"https://avatars.githubusercontent.com/u/1296387?v=3","gravatar_id":"","url":"https://api.github.com/users/tchaumeny","html_url":"https://github.com/tchaumeny","followers_url":"https://api.github.com/users/tchaumeny/followers","following_url":"https://api.github.com/users/tchaumeny/following{/other_user}","gists_url":"https://api.github.com/users/tchaumeny/gists{/gist_id}","starred_url":"https://api.github.com/users/tchaumeny/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tchaumeny/subscriptions","organizations_url":"https://api.github.com/users/tchaumeny/orgs","repos_url":"https://api.github.com/users/tchaumeny/repos","events_url":"https://api.github.com/users/tchaumeny/events{/privacy}","received_events_url":"https://api.github.com/users/tchaumeny/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/tchaumeny/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/tchaumeny/django","forks_url":"https://api.github.com/repos/tchaumeny/django/forks","keys_url":"https://api.github.com/repos/tchaumeny/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tchaumeny/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tchaumeny/django/teams","hooks_url":"https://api.github.com/repos/tchaumeny/django/hooks","issue_events_url":"https://api.github.com/repos/tchaumeny/django/issues/events{/number}","events_url":"https://api.github.com/repos/tchaumeny/django/events","assignees_url":"https://api.github.com/repos/tchaumeny/django/assignees{/user}","branches_url":"https://api.github.com/repos/tchaumeny/django/branches{/branch}","tags_url":"https://api.github.com/repos/tchaumeny/django/tags","blobs_url":"https://api.github.com/repos/tchaumeny/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tchaumeny/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tchaumeny/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/tchaumeny/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tchaumeny/django/statuses/{sha}","languages_url":"https://api.github.com/repos/tchaumeny/django/languages","stargazers_url":"https://api.github.com/repos/tchaumeny/django/stargazers","contributors_url":"https://api.github.com/repos/tchaumeny/django/contributors","subscribers_url":"https://api.github.com/repos/tchaumeny/django/subscribers","subscription_url":"https://api.github.com/repos/tchaumeny/django/subscription","commits_url":"https://api.github.com/repos/tchaumeny/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/tchaumeny/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/tchaumeny/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/tchaumeny/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/tchaumeny/django/contents/{+path}","compare_url":"https://api.github.com/repos/tchaumeny/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tchaumeny/django/merges","archive_url":"https://api.github.com/repos/tchaumeny/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tchaumeny/django/downloads","issues_url":"https://api.github.com/repos/tchaumeny/django/issues{/number}","pulls_url":"https://api.github.com/repos/tchaumeny/django/pulls{/number}","milestones_url":"https://api.github.com/repos/tchaumeny/django/milestones{/number}","notifications_url":"https://api.github.com/repos/tchaumeny/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tchaumeny/django/labels{/name}","releases_url":"https://api.github.com/repos/tchaumeny/django/releases{/id}","created_at":"2014-03-19T20:54:51Z","updated_at":"2014-12-03T20:17:10Z","pushed_at":"2015-01-09T09:43:36Z","git_url":"git://github.com/tchaumeny/django.git","ssh_url":"git@github.com:tchaumeny/django.git","clone_url":"https://github.com/tchaumeny/django.git","svn_url":"https://github.com/tchaumeny/django","homepage":"http://www.djangoproject.com/","size":112338,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"c1493879d98328040b36ad93cd104c0b3b546772","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3867"},"html":{"href":"https://github.com/django/django/pull/3867"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3867"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3867/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3867/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3867/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/45f9f280024f9225ce4050f1e6d518b99f058317"}}},{"url":"https://api.github.com/repos/django/django/pulls/3864","id":27059080,"html_url":"https://github.com/django/django/pull/3864","diff_url":"https://github.com/django/django/pull/3864.diff","patch_url":"https://github.com/django/django/pull/3864.patch","issue_url":"https://api.github.com/repos/django/django/issues/3864","number":3864,"state":"closed","locked":false,"title":"Fixed typo in 1.8 release notes","user":{"login":"sephii","id":754333,"avatar_url":"https://avatars.githubusercontent.com/u/754333?v=3","gravatar_id":"","url":"https://api.github.com/users/sephii","html_url":"https://github.com/sephii","followers_url":"https://api.github.com/users/sephii/followers","following_url":"https://api.github.com/users/sephii/following{/other_user}","gists_url":"https://api.github.com/users/sephii/gists{/gist_id}","starred_url":"https://api.github.com/users/sephii/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sephii/subscriptions","organizations_url":"https://api.github.com/users/sephii/orgs","repos_url":"https://api.github.com/users/sephii/repos","events_url":"https://api.github.com/users/sephii/events{/privacy}","received_events_url":"https://api.github.com/users/sephii/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-08T20:57:28Z","updated_at":"2015-01-08T21:03:23Z","closed_at":"2015-01-08T21:03:23Z","merged_at":null,"merge_commit_sha":"7028ff6ddc62b8abe9bc7e4a6fe3ba9a9f51a142","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3864/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3864/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3864/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/7e0e1c50ee83b9d127307269d52d3fd4237df53a","head":{"label":"sephii:18-release-notes-typo","ref":"18-release-notes-typo","sha":"7e0e1c50ee83b9d127307269d52d3fd4237df53a","user":{"login":"sephii","id":754333,"avatar_url":"https://avatars.githubusercontent.com/u/754333?v=3","gravatar_id":"","url":"https://api.github.com/users/sephii","html_url":"https://github.com/sephii","followers_url":"https://api.github.com/users/sephii/followers","following_url":"https://api.github.com/users/sephii/following{/other_user}","gists_url":"https://api.github.com/users/sephii/gists{/gist_id}","starred_url":"https://api.github.com/users/sephii/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sephii/subscriptions","organizations_url":"https://api.github.com/users/sephii/orgs","repos_url":"https://api.github.com/users/sephii/repos","events_url":"https://api.github.com/users/sephii/events{/privacy}","received_events_url":"https://api.github.com/users/sephii/received_events","type":"User","site_admin":false},"repo":{"id":13412776,"name":"django","full_name":"sephii/django","owner":{"login":"sephii","id":754333,"avatar_url":"https://avatars.githubusercontent.com/u/754333?v=3","gravatar_id":"","url":"https://api.github.com/users/sephii","html_url":"https://github.com/sephii","followers_url":"https://api.github.com/users/sephii/followers","following_url":"https://api.github.com/users/sephii/following{/other_user}","gists_url":"https://api.github.com/users/sephii/gists{/gist_id}","starred_url":"https://api.github.com/users/sephii/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sephii/subscriptions","organizations_url":"https://api.github.com/users/sephii/orgs","repos_url":"https://api.github.com/users/sephii/repos","events_url":"https://api.github.com/users/sephii/events{/privacy}","received_events_url":"https://api.github.com/users/sephii/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/sephii/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/sephii/django","forks_url":"https://api.github.com/repos/sephii/django/forks","keys_url":"https://api.github.com/repos/sephii/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sephii/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sephii/django/teams","hooks_url":"https://api.github.com/repos/sephii/django/hooks","issue_events_url":"https://api.github.com/repos/sephii/django/issues/events{/number}","events_url":"https://api.github.com/repos/sephii/django/events","assignees_url":"https://api.github.com/repos/sephii/django/assignees{/user}","branches_url":"https://api.github.com/repos/sephii/django/branches{/branch}","tags_url":"https://api.github.com/repos/sephii/django/tags","blobs_url":"https://api.github.com/repos/sephii/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sephii/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sephii/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/sephii/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sephii/django/statuses/{sha}","languages_url":"https://api.github.com/repos/sephii/django/languages","stargazers_url":"https://api.github.com/repos/sephii/django/stargazers","contributors_url":"https://api.github.com/repos/sephii/django/contributors","subscribers_url":"https://api.github.com/repos/sephii/django/subscribers","subscription_url":"https://api.github.com/repos/sephii/django/subscription","commits_url":"https://api.github.com/repos/sephii/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/sephii/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/sephii/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/sephii/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/sephii/django/contents/{+path}","compare_url":"https://api.github.com/repos/sephii/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sephii/django/merges","archive_url":"https://api.github.com/repos/sephii/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sephii/django/downloads","issues_url":"https://api.github.com/repos/sephii/django/issues{/number}","pulls_url":"https://api.github.com/repos/sephii/django/pulls{/number}","milestones_url":"https://api.github.com/repos/sephii/django/milestones{/number}","notifications_url":"https://api.github.com/repos/sephii/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sephii/django/labels{/name}","releases_url":"https://api.github.com/repos/sephii/django/releases{/id}","created_at":"2013-10-08T12:29:27Z","updated_at":"2015-01-08T20:54:37Z","pushed_at":"2015-01-08T20:55:34Z","git_url":"git://github.com/sephii/django.git","ssh_url":"git@github.com:sephii/django.git","clone_url":"https://github.com/sephii/django.git","svn_url":"https://github.com/sephii/django","homepage":"http://www.djangoproject.com/","size":107010,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"13e4156518e9c13606870442f4fe1607c3d72518","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3864"},"html":{"href":"https://github.com/django/django/pull/3864"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3864"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3864/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3864/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3864/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/7e0e1c50ee83b9d127307269d52d3fd4237df53a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3863","id":27046350,"html_url":"https://github.com/django/django/pull/3863","diff_url":"https://github.com/django/django/pull/3863.diff","patch_url":"https://github.com/django/django/pull/3863.patch","issue_url":"https://api.github.com/repos/django/django/issues/3863","number":3863,"state":"closed","locked":false,"title":"Isolated some cache tests; refs #23947.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"This reverts a change made in 40c60efecc0fc73f0b2320b44d684586b52ee799\r\nwhich was incorrect and caused CacheKeyWarnings.","created_at":"2015-01-08T17:52:06Z","updated_at":"2015-01-08T18:16:02Z","closed_at":"2015-01-08T18:15:33Z","merged_at":"2015-01-08T18:15:33Z","merge_commit_sha":"01a5634e4ed58abefd52a64e63e09e59ccb35fbf","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3863/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3863/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3863/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/5c43fd48258eb977e6e611310e12a921d8470944","head":{"label":"timgraham:cache-test","ref":"cache-test","sha":"5c43fd48258eb977e6e611310e12a921d8470944","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"543df07720181fe23737ba14f1a261ff6f37f49c","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3863"},"html":{"href":"https://github.com/django/django/pull/3863"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3863"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3863/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3863/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3863/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/5c43fd48258eb977e6e611310e12a921d8470944"}}},{"url":"https://api.github.com/repos/django/django/pulls/3861","id":27044792,"html_url":"https://github.com/django/django/pull/3861","diff_url":"https://github.com/django/django/pull/3861.diff","patch_url":"https://github.com/django/django/pull/3861.patch","issue_url":"https://api.github.com/repos/django/django/issues/3861","number":3861,"state":"closed","locked":false,"title":"Create __main__.py","user":{"login":"holdenweb","id":105312,"avatar_url":"https://avatars.githubusercontent.com/u/105312?v=3","gravatar_id":"","url":"https://api.github.com/users/holdenweb","html_url":"https://github.com/holdenweb","followers_url":"https://api.github.com/users/holdenweb/followers","following_url":"https://api.github.com/users/holdenweb/following{/other_user}","gists_url":"https://api.github.com/users/holdenweb/gists{/gist_id}","starred_url":"https://api.github.com/users/holdenweb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/holdenweb/subscriptions","organizations_url":"https://api.github.com/users/holdenweb/orgs","repos_url":"https://api.github.com/users/holdenweb/repos","events_url":"https://api.github.com/users/holdenweb/events{/privacy}","received_events_url":"https://api.github.com/users/holdenweb/received_events","type":"User","site_admin":false},"body":"It's always irked me that I had to start an interactive interpreter to discover which version of django I was running. This module takes advantage of Python's recently-added ability to run a package.\r\n\r\nAfter the addition of this module, the command `python -m django` reports various useful version data. Here's a sample output from a current virtual environment:\r\n\r\n (training-site)airhead:training-site sholden$ python -m django\r\n Django version 1.7.2\r\n Loaded from /Users/sholden/.virtualenvs/training-site/lib/python2.7/site-packages/django\r\n Python 2.7.2 (default, Oct 11 2012, 20:14:37)\r\n [GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)]\r\n\r\nI'm not sure how to integrate a test for this feature, and will happily take advice from more experienced devs. This just scratches an itch for me. I hope this file will always stay small!","created_at":"2015-01-08T17:30:16Z","updated_at":"2015-01-09T03:38:56Z","closed_at":"2015-01-09T03:38:56Z","merged_at":null,"merge_commit_sha":"d15e0e1046a50e76488455a269095aa93d4b15e4","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3861/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3861/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3861/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/331a1f5d219d06bd29302446f6090844ad84f289","head":{"label":"holdenweb:master","ref":"master","sha":"331a1f5d219d06bd29302446f6090844ad84f289","user":{"login":"holdenweb","id":105312,"avatar_url":"https://avatars.githubusercontent.com/u/105312?v=3","gravatar_id":"","url":"https://api.github.com/users/holdenweb","html_url":"https://github.com/holdenweb","followers_url":"https://api.github.com/users/holdenweb/followers","following_url":"https://api.github.com/users/holdenweb/following{/other_user}","gists_url":"https://api.github.com/users/holdenweb/gists{/gist_id}","starred_url":"https://api.github.com/users/holdenweb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/holdenweb/subscriptions","organizations_url":"https://api.github.com/users/holdenweb/orgs","repos_url":"https://api.github.com/users/holdenweb/repos","events_url":"https://api.github.com/users/holdenweb/events{/privacy}","received_events_url":"https://api.github.com/users/holdenweb/received_events","type":"User","site_admin":false},"repo":{"id":28977093,"name":"django","full_name":"holdenweb/django","owner":{"login":"holdenweb","id":105312,"avatar_url":"https://avatars.githubusercontent.com/u/105312?v=3","gravatar_id":"","url":"https://api.github.com/users/holdenweb","html_url":"https://github.com/holdenweb","followers_url":"https://api.github.com/users/holdenweb/followers","following_url":"https://api.github.com/users/holdenweb/following{/other_user}","gists_url":"https://api.github.com/users/holdenweb/gists{/gist_id}","starred_url":"https://api.github.com/users/holdenweb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/holdenweb/subscriptions","organizations_url":"https://api.github.com/users/holdenweb/orgs","repos_url":"https://api.github.com/users/holdenweb/repos","events_url":"https://api.github.com/users/holdenweb/events{/privacy}","received_events_url":"https://api.github.com/users/holdenweb/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/holdenweb/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/holdenweb/django","forks_url":"https://api.github.com/repos/holdenweb/django/forks","keys_url":"https://api.github.com/repos/holdenweb/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/holdenweb/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/holdenweb/django/teams","hooks_url":"https://api.github.com/repos/holdenweb/django/hooks","issue_events_url":"https://api.github.com/repos/holdenweb/django/issues/events{/number}","events_url":"https://api.github.com/repos/holdenweb/django/events","assignees_url":"https://api.github.com/repos/holdenweb/django/assignees{/user}","branches_url":"https://api.github.com/repos/holdenweb/django/branches{/branch}","tags_url":"https://api.github.com/repos/holdenweb/django/tags","blobs_url":"https://api.github.com/repos/holdenweb/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/holdenweb/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/holdenweb/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/holdenweb/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/holdenweb/django/statuses/{sha}","languages_url":"https://api.github.com/repos/holdenweb/django/languages","stargazers_url":"https://api.github.com/repos/holdenweb/django/stargazers","contributors_url":"https://api.github.com/repos/holdenweb/django/contributors","subscribers_url":"https://api.github.com/repos/holdenweb/django/subscribers","subscription_url":"https://api.github.com/repos/holdenweb/django/subscription","commits_url":"https://api.github.com/repos/holdenweb/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/holdenweb/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/holdenweb/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/holdenweb/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/holdenweb/django/contents/{+path}","compare_url":"https://api.github.com/repos/holdenweb/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/holdenweb/django/merges","archive_url":"https://api.github.com/repos/holdenweb/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/holdenweb/django/downloads","issues_url":"https://api.github.com/repos/holdenweb/django/issues{/number}","pulls_url":"https://api.github.com/repos/holdenweb/django/pulls{/number}","milestones_url":"https://api.github.com/repos/holdenweb/django/milestones{/number}","notifications_url":"https://api.github.com/repos/holdenweb/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/holdenweb/django/labels{/name}","releases_url":"https://api.github.com/repos/holdenweb/django/releases{/id}","created_at":"2015-01-08T17:24:35Z","updated_at":"2015-01-08T17:29:46Z","pushed_at":"2015-01-08T17:29:46Z","git_url":"git://github.com/holdenweb/django.git","ssh_url":"git@github.com:holdenweb/django.git","clone_url":"https://github.com/holdenweb/django.git","svn_url":"https://github.com/holdenweb/django","homepage":"https://www.djangoproject.com/","size":117343,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"543df07720181fe23737ba14f1a261ff6f37f49c","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3861"},"html":{"href":"https://github.com/django/django/pull/3861"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3861"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3861/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3861/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3861/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/331a1f5d219d06bd29302446f6090844ad84f289"}}},{"url":"https://api.github.com/repos/django/django/pulls/3860","id":27044178,"html_url":"https://github.com/django/django/pull/3860","diff_url":"https://github.com/django/django/pull/3860.diff","patch_url":"https://github.com/django/django/pull/3860.patch","issue_url":"https://api.github.com/repos/django/django/issues/3860","number":3860,"state":"closed","locked":false,"title":"Fixed #24101 -- Fixed flaky admin_views selenium tests; refs #7361.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-08T17:21:59Z","updated_at":"2015-01-08T18:53:03Z","closed_at":"2015-01-08T18:52:58Z","merged_at":"2015-01-08T18:52:58Z","merge_commit_sha":"97aae9c0941dcb98014e8505e1bb1e9f2daec175","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3860/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3860/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3860/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/b8abfe141be17f20079f55b921dcaf7abe116c4b","head":{"label":"timgraham:24101","ref":"24101","sha":"b8abfe141be17f20079f55b921dcaf7abe116c4b","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"5c43fd48258eb977e6e611310e12a921d8470944","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3860"},"html":{"href":"https://github.com/django/django/pull/3860"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3860"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3860/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3860/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3860/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/b8abfe141be17f20079f55b921dcaf7abe116c4b"}}},{"url":"https://api.github.com/repos/django/django/pulls/3859","id":27042936,"html_url":"https://github.com/django/django/pull/3859","diff_url":"https://github.com/django/django/pull/3859.diff","patch_url":"https://github.com/django/django/pull/3859.patch","issue_url":"https://api.github.com/repos/django/django/issues/3859","number":3859,"state":"closed","locked":false,"title":"Fixed #24098 -- Added no-op attributes to RunPython and RunSQL","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24098","created_at":"2015-01-08T17:06:18Z","updated_at":"2015-01-09T15:47:31Z","closed_at":"2015-01-09T15:47:31Z","merged_at":null,"merge_commit_sha":"5a3b8d2236d1459c67fdb2824ec646fe72e96279","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3859/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3859/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3859/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a21a372948ca28fd9f378e613998c2ce93a4419e","head":{"label":"MarkusH:ticket24098","ref":"ticket24098","sha":"a21a372948ca28fd9f378e613998c2ce93a4419e","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"67d6a8c4e66c379111d0acf4552e162356917dd7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3859"},"html":{"href":"https://github.com/django/django/pull/3859"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3859"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3859/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3859/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3859/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a21a372948ca28fd9f378e613998c2ce93a4419e"}}},{"url":"https://api.github.com/repos/django/django/pulls/3858","id":27040623,"html_url":"https://github.com/django/django/pull/3858","diff_url":"https://github.com/django/django/pull/3858.diff","patch_url":"https://github.com/django/django/pull/3858.patch","issue_url":"https://api.github.com/repos/django/django/issues/3858","number":3858,"state":"closed","locked":false,"title":"Fixed #24099 -- Removed contenttype.name deprecated field","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"This finsishes the work started on #16803.","created_at":"2015-01-08T16:36:44Z","updated_at":"2015-01-16T19:31:52Z","closed_at":"2015-01-16T19:25:51Z","merged_at":null,"merge_commit_sha":"57740d33e4b77289e1d0d2f38aa057f87d5beacc","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3858/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3858/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3858/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/79f61f5502e09c285de8dfab73cbfd1c448018d5","head":{"label":"claudep:24099","ref":"24099","sha":"79f61f5502e09c285de8dfab73cbfd1c448018d5","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4c413e231cfe788de6e371567f395c8ccbd26103","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3858"},"html":{"href":"https://github.com/django/django/pull/3858"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3858"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3858/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3858/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3858/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/79f61f5502e09c285de8dfab73cbfd1c448018d5"}}},{"url":"https://api.github.com/repos/django/django/pulls/3856","id":27018166,"html_url":"https://github.com/django/django/pull/3856","diff_url":"https://github.com/django/django/pull/3856.diff","patch_url":"https://github.com/django/django/pull/3856.patch","issue_url":"https://api.github.com/repos/django/django/issues/3856","number":3856,"state":"closed","locked":false,"title":"Returned None for get_language when translations are deactivated","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-08T10:12:26Z","updated_at":"2015-01-08T16:46:54Z","closed_at":"2015-01-08T16:44:19Z","merged_at":"2015-01-08T16:44:19Z","merge_commit_sha":"44c9a82028f42575adb1c3eee0d96d9f1f2c1d34","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3856/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3856/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3856/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/543df07720181fe23737ba14f1a261ff6f37f49c","head":{"label":"claudep:24073","ref":"24073","sha":"543df07720181fe23737ba14f1a261ff6f37f49c","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"d6c8121ed007e59bac9a68873248104ec30d5d8b","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3856"},"html":{"href":"https://github.com/django/django/pull/3856"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3856"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3856/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3856/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3856/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/543df07720181fe23737ba14f1a261ff6f37f49c"}}},{"url":"https://api.github.com/repos/django/django/pulls/3855","id":26997752,"html_url":"https://github.com/django/django/pull/3855","diff_url":"https://github.com/django/django/pull/3855.diff","patch_url":"https://github.com/django/django/pull/3855.patch","issue_url":"https://api.github.com/repos/django/django/issues/3855","number":3855,"state":"closed","locked":false,"title":"Fixed #24095 -- Prevented WarningLoggerTests from leaking a warnings filter.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24095#ticket","created_at":"2015-01-07T23:51:50Z","updated_at":"2015-01-08T13:50:48Z","closed_at":"2015-01-08T13:50:38Z","merged_at":"2015-01-08T13:50:38Z","merge_commit_sha":"f2c54c637e7febd6ff29744e786b890b0b39a9df","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3855/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3855/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3855/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/ade985999657eaef6a9510c2aeba9b2196d7bf6e","head":{"label":"timgraham:24095","ref":"24095","sha":"ade985999657eaef6a9510c2aeba9b2196d7bf6e","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"862ea825b5073588efafd5b7eed349ad098b5fe1","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3855"},"html":{"href":"https://github.com/django/django/pull/3855"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3855"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3855/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3855/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3855/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/ade985999657eaef6a9510c2aeba9b2196d7bf6e"}}},{"url":"https://api.github.com/repos/django/django/pulls/3854","id":26987470,"html_url":"https://github.com/django/django/pull/3854","diff_url":"https://github.com/django/django/pull/3854.diff","patch_url":"https://github.com/django/django/pull/3854.patch","issue_url":"https://api.github.com/repos/django/django/issues/3854","number":3854,"state":"closed","locked":false,"title":"Refs #23822 -- Made MigrationOptimizer aware of model managers","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/23822","created_at":"2015-01-07T21:02:31Z","updated_at":"2015-01-08T00:16:15Z","closed_at":"2015-01-07T22:33:42Z","merged_at":null,"merge_commit_sha":"05dbd770968b9bff42ca28ec6542343f9b90b151","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3854/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3854/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3854/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/4d7c08938e72d0f75168d94d0186a36aae03f4df","head":{"label":"MarkusH:ticket23822-optimizer","ref":"ticket23822-optimizer","sha":"4d7c08938e72d0f75168d94d0186a36aae03f4df","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"127f9e073d83904defd4bde4eaa4491f3306ca25","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3854"},"html":{"href":"https://github.com/django/django/pull/3854"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3854"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3854/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3854/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3854/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/4d7c08938e72d0f75168d94d0186a36aae03f4df"}}},{"url":"https://api.github.com/repos/django/django/pulls/3853","id":26986172,"html_url":"https://github.com/django/django/pull/3853","diff_url":"https://github.com/django/django/pull/3853.diff","patch_url":"https://github.com/django/django/pull/3853.patch","issue_url":"https://api.github.com/repos/django/django/issues/3853","number":3853,"state":"closed","locked":false,"title":"Fixed #24093 -- Prevented MigrationWriter to write operation kwargs that are not explicitly deconstructed","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24093","created_at":"2015-01-07T20:43:28Z","updated_at":"2015-01-08T02:24:49Z","closed_at":"2015-01-08T00:30:07Z","merged_at":null,"merge_commit_sha":"4f2cc0991d06601fd965bd71ef7efe2c941086ab","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3853/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3853/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3853/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/6e3a17ea4482354ea1c3537ffa67cb71632e3b5b","head":{"label":"MarkusH:ticket24093","ref":"ticket24093","sha":"6e3a17ea4482354ea1c3537ffa67cb71632e3b5b","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"f7c287fca9c9e6370cc88d1457d3ed9466703687","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3853"},"html":{"href":"https://github.com/django/django/pull/3853"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3853"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3853/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3853/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3853/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/6e3a17ea4482354ea1c3537ffa67cb71632e3b5b"}}},{"url":"https://api.github.com/repos/django/django/pulls/3851","id":26951658,"html_url":"https://github.com/django/django/pull/3851","diff_url":"https://github.com/django/django/pull/3851.diff","patch_url":"https://github.com/django/django/pull/3851.patch","issue_url":"https://api.github.com/repos/django/django/issues/3851","number":3851,"state":"closed","locked":false,"title":"Allowed creation of objects with NULL DurationFields","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-07T11:24:46Z","updated_at":"2015-01-07T13:34:51Z","closed_at":"2015-01-07T13:34:51Z","merged_at":null,"merge_commit_sha":"ab5cae663074768ef1429daffa5e07fa88b95744","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3851/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3851/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3851/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/2b6c94bb0b284ef137fc73f13876164818df7caa","head":{"label":"jarshwah:null-duration-field","ref":"null-duration-field","sha":"2b6c94bb0b284ef137fc73f13876164818df7caa","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"repo":{"id":4635741,"name":"django","full_name":"jarshwah/django","owner":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarshwah/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/jarshwah/django","forks_url":"https://api.github.com/repos/jarshwah/django/forks","keys_url":"https://api.github.com/repos/jarshwah/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarshwah/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarshwah/django/teams","hooks_url":"https://api.github.com/repos/jarshwah/django/hooks","issue_events_url":"https://api.github.com/repos/jarshwah/django/issues/events{/number}","events_url":"https://api.github.com/repos/jarshwah/django/events","assignees_url":"https://api.github.com/repos/jarshwah/django/assignees{/user}","branches_url":"https://api.github.com/repos/jarshwah/django/branches{/branch}","tags_url":"https://api.github.com/repos/jarshwah/django/tags","blobs_url":"https://api.github.com/repos/jarshwah/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarshwah/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarshwah/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarshwah/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarshwah/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jarshwah/django/languages","stargazers_url":"https://api.github.com/repos/jarshwah/django/stargazers","contributors_url":"https://api.github.com/repos/jarshwah/django/contributors","subscribers_url":"https://api.github.com/repos/jarshwah/django/subscribers","subscription_url":"https://api.github.com/repos/jarshwah/django/subscription","commits_url":"https://api.github.com/repos/jarshwah/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarshwah/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarshwah/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarshwah/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jarshwah/django/contents/{+path}","compare_url":"https://api.github.com/repos/jarshwah/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarshwah/django/merges","archive_url":"https://api.github.com/repos/jarshwah/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarshwah/django/downloads","issues_url":"https://api.github.com/repos/jarshwah/django/issues{/number}","pulls_url":"https://api.github.com/repos/jarshwah/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jarshwah/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jarshwah/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarshwah/django/labels{/name}","releases_url":"https://api.github.com/repos/jarshwah/django/releases{/id}","created_at":"2012-06-12T09:53:04Z","updated_at":"2014-06-27T11:10:20Z","pushed_at":"2015-01-17T23:23:41Z","git_url":"git://github.com/jarshwah/django.git","ssh_url":"git@github.com:jarshwah/django.git","clone_url":"https://github.com/jarshwah/django.git","svn_url":"https://github.com/jarshwah/django","homepage":"http://www.djangoproject.com/","size":113452,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"9b057b51ce01087afbeeb683098d4d2f1088fd7b","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3851"},"html":{"href":"https://github.com/django/django/pull/3851"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3851"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3851/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3851/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3851/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/2b6c94bb0b284ef137fc73f13876164818df7caa"}}},{"url":"https://api.github.com/repos/django/django/pulls/3850","id":26950314,"html_url":"https://github.com/django/django/pull/3850","diff_url":"https://github.com/django/django/pull/3850.diff","patch_url":"https://github.com/django/django/pull/3850.patch","issue_url":"https://api.github.com/repos/django/django/issues/3850","number":3850,"state":"closed","locked":false,"title":"Fixed null handling in Value expression","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"body":"In some rare cases, Oracle is unable to convert `Value(None)` into the correct NULL type, so we do it explicitly. https://github.com/django/django/pull/3825 has hit this corner case and has tests that fail without this change. Better to add this separately.","created_at":"2015-01-07T10:54:31Z","updated_at":"2015-01-08T00:08:49Z","closed_at":"2015-01-08T00:08:49Z","merged_at":null,"merge_commit_sha":"567e906e2cb55474ba732a4b55b801ea03dcd1ad","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3850/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3850/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3850/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a4db987db3c79b1543bbbed829a46650f5ddeb56","head":{"label":"jarshwah:improve-value-expression","ref":"improve-value-expression","sha":"a4db987db3c79b1543bbbed829a46650f5ddeb56","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"repo":{"id":4635741,"name":"django","full_name":"jarshwah/django","owner":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarshwah/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/jarshwah/django","forks_url":"https://api.github.com/repos/jarshwah/django/forks","keys_url":"https://api.github.com/repos/jarshwah/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarshwah/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarshwah/django/teams","hooks_url":"https://api.github.com/repos/jarshwah/django/hooks","issue_events_url":"https://api.github.com/repos/jarshwah/django/issues/events{/number}","events_url":"https://api.github.com/repos/jarshwah/django/events","assignees_url":"https://api.github.com/repos/jarshwah/django/assignees{/user}","branches_url":"https://api.github.com/repos/jarshwah/django/branches{/branch}","tags_url":"https://api.github.com/repos/jarshwah/django/tags","blobs_url":"https://api.github.com/repos/jarshwah/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarshwah/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarshwah/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarshwah/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarshwah/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jarshwah/django/languages","stargazers_url":"https://api.github.com/repos/jarshwah/django/stargazers","contributors_url":"https://api.github.com/repos/jarshwah/django/contributors","subscribers_url":"https://api.github.com/repos/jarshwah/django/subscribers","subscription_url":"https://api.github.com/repos/jarshwah/django/subscription","commits_url":"https://api.github.com/repos/jarshwah/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarshwah/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarshwah/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarshwah/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jarshwah/django/contents/{+path}","compare_url":"https://api.github.com/repos/jarshwah/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarshwah/django/merges","archive_url":"https://api.github.com/repos/jarshwah/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarshwah/django/downloads","issues_url":"https://api.github.com/repos/jarshwah/django/issues{/number}","pulls_url":"https://api.github.com/repos/jarshwah/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jarshwah/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jarshwah/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarshwah/django/labels{/name}","releases_url":"https://api.github.com/repos/jarshwah/django/releases{/id}","created_at":"2012-06-12T09:53:04Z","updated_at":"2014-06-27T11:10:20Z","pushed_at":"2015-01-17T23:23:41Z","git_url":"git://github.com/jarshwah/django.git","ssh_url":"git@github.com:jarshwah/django.git","clone_url":"https://github.com/jarshwah/django.git","svn_url":"https://github.com/jarshwah/django","homepage":"http://www.djangoproject.com/","size":113452,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"1f03d2d924ba90e83dc9d8c93438bf5ee2f17ccd","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3850"},"html":{"href":"https://github.com/django/django/pull/3850"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3850"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3850/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3850/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3850/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a4db987db3c79b1543bbbed829a46650f5ddeb56"}}},{"url":"https://api.github.com/repos/django/django/pulls/3849","id":26946999,"html_url":"https://github.com/django/django/pull/3849","diff_url":"https://github.com/django/django/pull/3849.diff","patch_url":"https://github.com/django/django/pull/3849.patch","issue_url":"https://api.github.com/repos/django/django/issues/3849","number":3849,"state":"closed","locked":false,"title":" Fixed #22583 -- Allowed RunPython and RunSQL to provide hints to the db router.","user":{"login":"loic","id":36160,"avatar_url":"https://avatars.githubusercontent.com/u/36160?v=3","gravatar_id":"","url":"https://api.github.com/users/loic","html_url":"https://github.com/loic","followers_url":"https://api.github.com/users/loic/followers","following_url":"https://api.github.com/users/loic/following{/other_user}","gists_url":"https://api.github.com/users/loic/gists{/gist_id}","starred_url":"https://api.github.com/users/loic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/loic/subscriptions","organizations_url":"https://api.github.com/users/loic/orgs","repos_url":"https://api.github.com/users/loic/repos","events_url":"https://api.github.com/users/loic/events{/privacy}","received_events_url":"https://api.github.com/users/loic/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-07T09:47:00Z","updated_at":"2015-01-09T18:22:29Z","closed_at":"2015-01-09T18:22:29Z","merged_at":"2015-01-09T18:22:29Z","merge_commit_sha":"1047caf4c07575d2f78cb0c06c14e7eb6ab9099f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3849/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3849/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3849/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/8f4877c89d0f28e289399fbb46357623a49e7eb0","head":{"label":"loic:migrations_hints","ref":"migrations_hints","sha":"8f4877c89d0f28e289399fbb46357623a49e7eb0","user":{"login":"loic","id":36160,"avatar_url":"https://avatars.githubusercontent.com/u/36160?v=3","gravatar_id":"","url":"https://api.github.com/users/loic","html_url":"https://github.com/loic","followers_url":"https://api.github.com/users/loic/followers","following_url":"https://api.github.com/users/loic/following{/other_user}","gists_url":"https://api.github.com/users/loic/gists{/gist_id}","starred_url":"https://api.github.com/users/loic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/loic/subscriptions","organizations_url":"https://api.github.com/users/loic/orgs","repos_url":"https://api.github.com/users/loic/repos","events_url":"https://api.github.com/users/loic/events{/privacy}","received_events_url":"https://api.github.com/users/loic/received_events","type":"User","site_admin":false},"repo":{"id":4394214,"name":"django","full_name":"loic/django","owner":{"login":"loic","id":36160,"avatar_url":"https://avatars.githubusercontent.com/u/36160?v=3","gravatar_id":"","url":"https://api.github.com/users/loic","html_url":"https://github.com/loic","followers_url":"https://api.github.com/users/loic/followers","following_url":"https://api.github.com/users/loic/following{/other_user}","gists_url":"https://api.github.com/users/loic/gists{/gist_id}","starred_url":"https://api.github.com/users/loic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/loic/subscriptions","organizations_url":"https://api.github.com/users/loic/orgs","repos_url":"https://api.github.com/users/loic/repos","events_url":"https://api.github.com/users/loic/events{/privacy}","received_events_url":"https://api.github.com/users/loic/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/loic/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/loic/django","forks_url":"https://api.github.com/repos/loic/django/forks","keys_url":"https://api.github.com/repos/loic/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/loic/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/loic/django/teams","hooks_url":"https://api.github.com/repos/loic/django/hooks","issue_events_url":"https://api.github.com/repos/loic/django/issues/events{/number}","events_url":"https://api.github.com/repos/loic/django/events","assignees_url":"https://api.github.com/repos/loic/django/assignees{/user}","branches_url":"https://api.github.com/repos/loic/django/branches{/branch}","tags_url":"https://api.github.com/repos/loic/django/tags","blobs_url":"https://api.github.com/repos/loic/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/loic/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/loic/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/loic/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/loic/django/statuses/{sha}","languages_url":"https://api.github.com/repos/loic/django/languages","stargazers_url":"https://api.github.com/repos/loic/django/stargazers","contributors_url":"https://api.github.com/repos/loic/django/contributors","subscribers_url":"https://api.github.com/repos/loic/django/subscribers","subscription_url":"https://api.github.com/repos/loic/django/subscription","commits_url":"https://api.github.com/repos/loic/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/loic/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/loic/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/loic/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/loic/django/contents/{+path}","compare_url":"https://api.github.com/repos/loic/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/loic/django/merges","archive_url":"https://api.github.com/repos/loic/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/loic/django/downloads","issues_url":"https://api.github.com/repos/loic/django/issues{/number}","pulls_url":"https://api.github.com/repos/loic/django/pulls{/number}","milestones_url":"https://api.github.com/repos/loic/django/milestones{/number}","notifications_url":"https://api.github.com/repos/loic/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/loic/django/labels{/name}","releases_url":"https://api.github.com/repos/loic/django/releases{/id}","created_at":"2012-05-21T14:04:30Z","updated_at":"2014-07-15T10:39:50Z","pushed_at":"2015-01-09T17:36:32Z","git_url":"git://github.com/loic/django.git","ssh_url":"git@github.com:loic/django.git","clone_url":"https://github.com/loic/django.git","svn_url":"https://github.com/loic/django","homepage":"http://www.djangoproject.com/","size":113416,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"665e0aa6ec80a48492033a3b2b4ffdfaae3c78eb","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3849"},"html":{"href":"https://github.com/django/django/pull/3849"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3849"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3849/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3849/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3849/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/8f4877c89d0f28e289399fbb46357623a49e7eb0"}}},{"url":"https://api.github.com/repos/django/django/pulls/3848","id":26929403,"html_url":"https://github.com/django/django/pull/3848","diff_url":"https://github.com/django/django/pull/3848.diff","patch_url":"https://github.com/django/django/pull/3848.patch","issue_url":"https://api.github.com/repos/django/django/issues/3848","number":3848,"state":"closed","locked":false,"title":"Fixed #12663 -- Formalized the Model._meta API for retrieving fields.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"Thanks to Russell Keith-Magee for mentoring this Google Summer of\r\nCode 2014 project and everyone else who helped with the patch!","created_at":"2015-01-07T00:26:38Z","updated_at":"2015-01-07T00:58:56Z","closed_at":"2015-01-07T00:58:13Z","merged_at":"2015-01-07T00:58:13Z","merge_commit_sha":"046acd4af258b39ca91ee6eb6483a2ed51e58dc8","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3848/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3848/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3848/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/fb48eb05816b1ac87d58696cdfe48be18c901f16","head":{"label":"timgraham:12663","ref":"12663","sha":"fb48eb05816b1ac87d58696cdfe48be18c901f16","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"749d23251bbd6564341405e6f8c1da129b8307e7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3848"},"html":{"href":"https://github.com/django/django/pull/3848"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3848"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3848/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3848/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3848/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/fb48eb05816b1ac87d58696cdfe48be18c901f16"}}},{"url":"https://api.github.com/repos/django/django/pulls/3847","id":26878973,"html_url":"https://github.com/django/django/pull/3847","diff_url":"https://github.com/django/django/pull/3847.diff","patch_url":"https://github.com/django/django/pull/3847.patch","issue_url":"https://api.github.com/repos/django/django/issues/3847","number":3847,"state":"closed","locked":false,"title":"Fixed #23712 -- Fixed KeyError with BaseForm._html_output()","user":{"login":"raully7","id":3197223,"avatar_url":"https://avatars.githubusercontent.com/u/3197223?v=3","gravatar_id":"","url":"https://api.github.com/users/raully7","html_url":"https://github.com/raully7","followers_url":"https://api.github.com/users/raully7/followers","following_url":"https://api.github.com/users/raully7/following{/other_user}","gists_url":"https://api.github.com/users/raully7/gists{/gist_id}","starred_url":"https://api.github.com/users/raully7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raully7/subscriptions","organizations_url":"https://api.github.com/users/raully7/orgs","repos_url":"https://api.github.com/users/raully7/repos","events_url":"https://api.github.com/users/raully7/events{/privacy}","received_events_url":"https://api.github.com/users/raully7/received_events","type":"User","site_admin":false},"body":"```field_name``` was not fully add and will trigger the bug when using a hidden field with a unmatch ```row_ender```.","created_at":"2015-01-06T09:51:16Z","updated_at":"2015-01-16T01:20:23Z","closed_at":"2015-01-16T01:20:23Z","merged_at":null,"merge_commit_sha":"e0a0fa0cf4e1c47b5349707d517ff33f475f6a34","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3847/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3847/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3847/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/9cadafa0a31aa3f844e3cf30b620275fb6966735","head":{"label":"raully7:ticket_23712","ref":"ticket_23712","sha":"9cadafa0a31aa3f844e3cf30b620275fb6966735","user":{"login":"raully7","id":3197223,"avatar_url":"https://avatars.githubusercontent.com/u/3197223?v=3","gravatar_id":"","url":"https://api.github.com/users/raully7","html_url":"https://github.com/raully7","followers_url":"https://api.github.com/users/raully7/followers","following_url":"https://api.github.com/users/raully7/following{/other_user}","gists_url":"https://api.github.com/users/raully7/gists{/gist_id}","starred_url":"https://api.github.com/users/raully7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raully7/subscriptions","organizations_url":"https://api.github.com/users/raully7/orgs","repos_url":"https://api.github.com/users/raully7/repos","events_url":"https://api.github.com/users/raully7/events{/privacy}","received_events_url":"https://api.github.com/users/raully7/received_events","type":"User","site_admin":false},"repo":{"id":28844154,"name":"django","full_name":"raully7/django","owner":{"login":"raully7","id":3197223,"avatar_url":"https://avatars.githubusercontent.com/u/3197223?v=3","gravatar_id":"","url":"https://api.github.com/users/raully7","html_url":"https://github.com/raully7","followers_url":"https://api.github.com/users/raully7/followers","following_url":"https://api.github.com/users/raully7/following{/other_user}","gists_url":"https://api.github.com/users/raully7/gists{/gist_id}","starred_url":"https://api.github.com/users/raully7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raully7/subscriptions","organizations_url":"https://api.github.com/users/raully7/orgs","repos_url":"https://api.github.com/users/raully7/repos","events_url":"https://api.github.com/users/raully7/events{/privacy}","received_events_url":"https://api.github.com/users/raully7/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/raully7/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/raully7/django","forks_url":"https://api.github.com/repos/raully7/django/forks","keys_url":"https://api.github.com/repos/raully7/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/raully7/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/raully7/django/teams","hooks_url":"https://api.github.com/repos/raully7/django/hooks","issue_events_url":"https://api.github.com/repos/raully7/django/issues/events{/number}","events_url":"https://api.github.com/repos/raully7/django/events","assignees_url":"https://api.github.com/repos/raully7/django/assignees{/user}","branches_url":"https://api.github.com/repos/raully7/django/branches{/branch}","tags_url":"https://api.github.com/repos/raully7/django/tags","blobs_url":"https://api.github.com/repos/raully7/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/raully7/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/raully7/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/raully7/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/raully7/django/statuses/{sha}","languages_url":"https://api.github.com/repos/raully7/django/languages","stargazers_url":"https://api.github.com/repos/raully7/django/stargazers","contributors_url":"https://api.github.com/repos/raully7/django/contributors","subscribers_url":"https://api.github.com/repos/raully7/django/subscribers","subscription_url":"https://api.github.com/repos/raully7/django/subscription","commits_url":"https://api.github.com/repos/raully7/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/raully7/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/raully7/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/raully7/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/raully7/django/contents/{+path}","compare_url":"https://api.github.com/repos/raully7/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/raully7/django/merges","archive_url":"https://api.github.com/repos/raully7/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/raully7/django/downloads","issues_url":"https://api.github.com/repos/raully7/django/issues{/number}","pulls_url":"https://api.github.com/repos/raully7/django/pulls{/number}","milestones_url":"https://api.github.com/repos/raully7/django/milestones{/number}","notifications_url":"https://api.github.com/repos/raully7/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/raully7/django/labels{/name}","releases_url":"https://api.github.com/repos/raully7/django/releases{/id}","created_at":"2015-01-06T03:05:59Z","updated_at":"2015-01-06T03:06:14Z","pushed_at":"2015-01-11T23:37:55Z","git_url":"git://github.com/raully7/django.git","ssh_url":"git@github.com:raully7/django.git","clone_url":"https://github.com/raully7/django.git","svn_url":"https://github.com/raully7/django","homepage":"https://www.djangoproject.com/","size":117094,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"68a439a18da17a65555832eff0a7c2090655b583","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3847"},"html":{"href":"https://github.com/django/django/pull/3847"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3847"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3847/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3847/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3847/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/9cadafa0a31aa3f844e3cf30b620275fb6966735"}}},{"url":"https://api.github.com/repos/django/django/pulls/3846","id":26849819,"html_url":"https://github.com/django/django/pull/3846","diff_url":"https://github.com/django/django/pull/3846.diff","patch_url":"https://github.com/django/django/pull/3846.patch","issue_url":"https://api.github.com/repos/django/django/issues/3846","number":3846,"state":"closed","locked":false,"title":"Fixed #24022 -- Deprecated the ssi tag.","user":{"login":"prestontimmons","id":207051,"avatar_url":"https://avatars.githubusercontent.com/u/207051?v=3","gravatar_id":"","url":"https://api.github.com/users/prestontimmons","html_url":"https://github.com/prestontimmons","followers_url":"https://api.github.com/users/prestontimmons/followers","following_url":"https://api.github.com/users/prestontimmons/following{/other_user}","gists_url":"https://api.github.com/users/prestontimmons/gists{/gist_id}","starred_url":"https://api.github.com/users/prestontimmons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prestontimmons/subscriptions","organizations_url":"https://api.github.com/users/prestontimmons/orgs","repos_url":"https://api.github.com/users/prestontimmons/repos","events_url":"https://api.github.com/users/prestontimmons/events{/privacy}","received_events_url":"https://api.github.com/users/prestontimmons/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-05T20:48:41Z","updated_at":"2015-01-06T00:35:49Z","closed_at":"2015-01-06T00:35:49Z","merged_at":null,"merge_commit_sha":"c76da152dff9cb598bb0a28865872c15c0e7759a","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3846/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3846/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3846/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d09694cea34ac46bd92c3bfd4b76fba47aec6d5b","head":{"label":"prestontimmons:ticket-24022","ref":"ticket-24022","sha":"d09694cea34ac46bd92c3bfd4b76fba47aec6d5b","user":{"login":"prestontimmons","id":207051,"avatar_url":"https://avatars.githubusercontent.com/u/207051?v=3","gravatar_id":"","url":"https://api.github.com/users/prestontimmons","html_url":"https://github.com/prestontimmons","followers_url":"https://api.github.com/users/prestontimmons/followers","following_url":"https://api.github.com/users/prestontimmons/following{/other_user}","gists_url":"https://api.github.com/users/prestontimmons/gists{/gist_id}","starred_url":"https://api.github.com/users/prestontimmons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prestontimmons/subscriptions","organizations_url":"https://api.github.com/users/prestontimmons/orgs","repos_url":"https://api.github.com/users/prestontimmons/repos","events_url":"https://api.github.com/users/prestontimmons/events{/privacy}","received_events_url":"https://api.github.com/users/prestontimmons/received_events","type":"User","site_admin":false},"repo":{"id":8862914,"name":"django","full_name":"prestontimmons/django","owner":{"login":"prestontimmons","id":207051,"avatar_url":"https://avatars.githubusercontent.com/u/207051?v=3","gravatar_id":"","url":"https://api.github.com/users/prestontimmons","html_url":"https://github.com/prestontimmons","followers_url":"https://api.github.com/users/prestontimmons/followers","following_url":"https://api.github.com/users/prestontimmons/following{/other_user}","gists_url":"https://api.github.com/users/prestontimmons/gists{/gist_id}","starred_url":"https://api.github.com/users/prestontimmons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prestontimmons/subscriptions","organizations_url":"https://api.github.com/users/prestontimmons/orgs","repos_url":"https://api.github.com/users/prestontimmons/repos","events_url":"https://api.github.com/users/prestontimmons/events{/privacy}","received_events_url":"https://api.github.com/users/prestontimmons/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/prestontimmons/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/prestontimmons/django","forks_url":"https://api.github.com/repos/prestontimmons/django/forks","keys_url":"https://api.github.com/repos/prestontimmons/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/prestontimmons/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/prestontimmons/django/teams","hooks_url":"https://api.github.com/repos/prestontimmons/django/hooks","issue_events_url":"https://api.github.com/repos/prestontimmons/django/issues/events{/number}","events_url":"https://api.github.com/repos/prestontimmons/django/events","assignees_url":"https://api.github.com/repos/prestontimmons/django/assignees{/user}","branches_url":"https://api.github.com/repos/prestontimmons/django/branches{/branch}","tags_url":"https://api.github.com/repos/prestontimmons/django/tags","blobs_url":"https://api.github.com/repos/prestontimmons/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/prestontimmons/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/prestontimmons/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/prestontimmons/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/prestontimmons/django/statuses/{sha}","languages_url":"https://api.github.com/repos/prestontimmons/django/languages","stargazers_url":"https://api.github.com/repos/prestontimmons/django/stargazers","contributors_url":"https://api.github.com/repos/prestontimmons/django/contributors","subscribers_url":"https://api.github.com/repos/prestontimmons/django/subscribers","subscription_url":"https://api.github.com/repos/prestontimmons/django/subscription","commits_url":"https://api.github.com/repos/prestontimmons/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/prestontimmons/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/prestontimmons/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/prestontimmons/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/prestontimmons/django/contents/{+path}","compare_url":"https://api.github.com/repos/prestontimmons/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/prestontimmons/django/merges","archive_url":"https://api.github.com/repos/prestontimmons/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/prestontimmons/django/downloads","issues_url":"https://api.github.com/repos/prestontimmons/django/issues{/number}","pulls_url":"https://api.github.com/repos/prestontimmons/django/pulls{/number}","milestones_url":"https://api.github.com/repos/prestontimmons/django/milestones{/number}","notifications_url":"https://api.github.com/repos/prestontimmons/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/prestontimmons/django/labels{/name}","releases_url":"https://api.github.com/repos/prestontimmons/django/releases{/id}","created_at":"2013-03-18T20:02:22Z","updated_at":"2015-01-16T23:17:21Z","pushed_at":"2015-01-16T23:31:08Z","git_url":"git://github.com/prestontimmons/django.git","ssh_url":"git@github.com:prestontimmons/django.git","clone_url":"https://github.com/prestontimmons/django.git","svn_url":"https://github.com/prestontimmons/django","homepage":"http://www.djangoproject.com/","size":108842,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"a9aec1154e5b65fcaf608801905a1bbafcfbfbf7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3846"},"html":{"href":"https://github.com/django/django/pull/3846"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3846"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3846/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3846/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3846/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d09694cea34ac46bd92c3bfd4b76fba47aec6d5b"}}},{"url":"https://api.github.com/repos/django/django/pulls/3845","id":26849101,"html_url":"https://github.com/django/django/pull/3845","diff_url":"https://github.com/django/django/pull/3845.diff","patch_url":"https://github.com/django/django/pull/3845.patch","issue_url":"https://api.github.com/repos/django/django/issues/3845","number":3845,"state":"closed","locked":false,"title":"Multiple template engines docs","user":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-05T20:36:46Z","updated_at":"2015-01-10T19:20:25Z","closed_at":"2015-01-10T19:20:21Z","merged_at":"2015-01-10T19:20:21Z","merge_commit_sha":"08bb33ab239b237055f9764fbced0a4d1a1f17c7","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3845/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3845/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3845/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/f01306a6d81755bf93db6c8cab3529819e60e1fe","head":{"label":"aaugustin:multiple-template-engines-docs","ref":"multiple-template-engines-docs","sha":"f01306a6d81755bf93db6c8cab3529819e60e1fe","user":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"repo":{"id":5128238,"name":"django","full_name":"aaugustin/django","owner":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/aaugustin/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/aaugustin/django","forks_url":"https://api.github.com/repos/aaugustin/django/forks","keys_url":"https://api.github.com/repos/aaugustin/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aaugustin/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aaugustin/django/teams","hooks_url":"https://api.github.com/repos/aaugustin/django/hooks","issue_events_url":"https://api.github.com/repos/aaugustin/django/issues/events{/number}","events_url":"https://api.github.com/repos/aaugustin/django/events","assignees_url":"https://api.github.com/repos/aaugustin/django/assignees{/user}","branches_url":"https://api.github.com/repos/aaugustin/django/branches{/branch}","tags_url":"https://api.github.com/repos/aaugustin/django/tags","blobs_url":"https://api.github.com/repos/aaugustin/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aaugustin/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aaugustin/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/aaugustin/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aaugustin/django/statuses/{sha}","languages_url":"https://api.github.com/repos/aaugustin/django/languages","stargazers_url":"https://api.github.com/repos/aaugustin/django/stargazers","contributors_url":"https://api.github.com/repos/aaugustin/django/contributors","subscribers_url":"https://api.github.com/repos/aaugustin/django/subscribers","subscription_url":"https://api.github.com/repos/aaugustin/django/subscription","commits_url":"https://api.github.com/repos/aaugustin/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/aaugustin/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/aaugustin/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/aaugustin/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/aaugustin/django/contents/{+path}","compare_url":"https://api.github.com/repos/aaugustin/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aaugustin/django/merges","archive_url":"https://api.github.com/repos/aaugustin/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aaugustin/django/downloads","issues_url":"https://api.github.com/repos/aaugustin/django/issues{/number}","pulls_url":"https://api.github.com/repos/aaugustin/django/pulls{/number}","milestones_url":"https://api.github.com/repos/aaugustin/django/milestones{/number}","notifications_url":"https://api.github.com/repos/aaugustin/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aaugustin/django/labels{/name}","releases_url":"https://api.github.com/repos/aaugustin/django/releases{/id}","created_at":"2012-07-20T20:52:27Z","updated_at":"2015-01-10T20:12:42Z","pushed_at":"2015-01-12T20:31:21Z","git_url":"git://github.com/aaugustin/django.git","ssh_url":"git@github.com:aaugustin/django.git","clone_url":"https://github.com/aaugustin/django.git","svn_url":"https://github.com/aaugustin/django","homepage":"http://www.djangoproject.com/","size":107483,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"b86107ced15f9093f49469b76860cc98e7a7a671","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3845"},"html":{"href":"https://github.com/django/django/pull/3845"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3845"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3845/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3845/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3845/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/f01306a6d81755bf93db6c8cab3529819e60e1fe"}}},{"url":"https://api.github.com/repos/django/django/pulls/3844","id":26844217,"html_url":"https://github.com/django/django/pull/3844","diff_url":"https://github.com/django/django/pull/3844.diff","patch_url":"https://github.com/django/django/pull/3844.patch","issue_url":"https://api.github.com/repos/django/django/issues/3844","number":3844,"state":"closed","locked":false,"title":"Fixed test failures introduced in refs #23861.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-05T19:18:15Z","updated_at":"2015-01-05T19:36:41Z","closed_at":"2015-01-05T19:36:06Z","merged_at":"2015-01-05T19:36:06Z","merge_commit_sha":"6c78f06d555d3f36842e2feaddc69efb7b8a5082","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3844/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3844/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3844/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/789baf9c3a432297ff775aee7f174494e4fd9962","head":{"label":"timgraham:fix-23861-tests","ref":"fix-23861-tests","sha":"789baf9c3a432297ff775aee7f174494e4fd9962","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"ce17b045bf5629aac66f872c3f548205906e04db","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3844"},"html":{"href":"https://github.com/django/django/pull/3844"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3844"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3844/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3844/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3844/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/789baf9c3a432297ff775aee7f174494e4fd9962"}}},{"url":"https://api.github.com/repos/django/django/pulls/3843","id":26837588,"html_url":"https://github.com/django/django/pull/3843","diff_url":"https://github.com/django/django/pull/3843.diff","patch_url":"https://github.com/django/django/pull/3843.patch","issue_url":"https://api.github.com/repos/django/django/issues/3843","number":3843,"state":"closed","locked":false,"title":"Fixed #23815 -- Prevented UnicodeDecodeError in CSRF middleware","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Thanks codeitloadit for the report and living180 for investigations.","created_at":"2015-01-05T17:26:25Z","updated_at":"2015-01-06T07:44:19Z","closed_at":"2015-01-06T07:44:17Z","merged_at":"2015-01-06T07:44:17Z","merge_commit_sha":"fa234dc387ec33adf08c4cb72803e67d2ac46b62","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3843/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3843/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3843/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/27dd7e727153cbf12632a2161217340123687c44","head":{"label":"claudep:23815","ref":"23815","sha":"27dd7e727153cbf12632a2161217340123687c44","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"de9ebdd39cb4f4b65475b43e0e32772d5a315654","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3843"},"html":{"href":"https://github.com/django/django/pull/3843"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3843"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3843/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3843/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3843/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/27dd7e727153cbf12632a2161217340123687c44"}}},{"url":"https://api.github.com/repos/django/django/pulls/3842","id":26836474,"html_url":"https://github.com/django/django/pull/3842","diff_url":"https://github.com/django/django/pull/3842.diff","patch_url":"https://github.com/django/django/pull/3842.patch","issue_url":"https://api.github.com/repos/django/django/issues/3842","number":3842,"state":"closed","locked":false,"title":"Close files in FileResponse refs #24072","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-05T17:08:01Z","updated_at":"2015-01-05T19:56:59Z","closed_at":"2015-01-05T19:56:59Z","merged_at":null,"merge_commit_sha":"26fd9b69abc5bd7358a4244f166cb3e2246966ad","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3842/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3842/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3842/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/add7d19d21498a111e31a73c4a8ca7b276483f8e","head":{"label":"collinanderson:3842","ref":"3842","sha":"add7d19d21498a111e31a73c4a8ca7b276483f8e","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"789baf9c3a432297ff775aee7f174494e4fd9962","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3842"},"html":{"href":"https://github.com/django/django/pull/3842"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3842"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3842/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3842/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3842/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/add7d19d21498a111e31a73c4a8ca7b276483f8e"}}},{"url":"https://api.github.com/repos/django/django/pulls/3841","id":26823859,"html_url":"https://github.com/django/django/pull/3841","diff_url":"https://github.com/django/django/pull/3841.diff","patch_url":"https://github.com/django/django/pull/3841.patch","issue_url":"https://api.github.com/repos/django/django/issues/3841","number":3841,"state":"closed","locked":false,"title":"Renamed internally used flag for detecting managers built from QuerySets with as_manager()","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"This rename is intended to prevent confusion with the variable naming which @loic pointed out to me.","created_at":"2015-01-05T13:40:42Z","updated_at":"2015-01-05T16:15:59Z","closed_at":"2015-01-05T15:34:23Z","merged_at":null,"merge_commit_sha":"d2aec762aa5b217928cbcdf2f90cedcc0a73debc","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3841/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3841/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3841/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/1b859f8bbc5ea74adf3d1113bbd78b6a767b6f9a","head":{"label":"MarkusH:rename-built-as-manager","ref":"rename-built-as-manager","sha":"1b859f8bbc5ea74adf3d1113bbd78b6a767b6f9a","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"572ad9a92e08797f12e547477efcce7893159cfb","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3841"},"html":{"href":"https://github.com/django/django/pull/3841"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3841"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3841/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3841/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3841/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/1b859f8bbc5ea74adf3d1113bbd78b6a767b6f9a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3840","id":26816098,"html_url":"https://github.com/django/django/pull/3840","diff_url":"https://github.com/django/django/pull/3840.diff","patch_url":"https://github.com/django/django/pull/3840.patch","issue_url":"https://api.github.com/repos/django/django/issues/3840","number":3840,"state":"closed","locked":false,"title":"Fixed #24078 -- Removed empty strings from GenericIPAddressField","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"body":"The empty string as a value is not supported for GenericIPAddressField on Postgres due to the inet type. Oracle was also coercing nulls to the empty string when retrieving data which was different from the other backends.","created_at":"2015-01-05T10:34:27Z","updated_at":"2015-01-07T13:12:30Z","closed_at":"2015-01-07T13:12:30Z","merged_at":null,"merge_commit_sha":"9b8d7de6b879baec55e4a19bae832a77f6f5e8a2","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3840/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3840/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3840/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/9d92a74f547f1760709524d51be205e974335344","head":{"label":"jarshwah:fix-ipaddress-field","ref":"fix-ipaddress-field","sha":"9d92a74f547f1760709524d51be205e974335344","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"repo":{"id":4635741,"name":"django","full_name":"jarshwah/django","owner":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarshwah/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/jarshwah/django","forks_url":"https://api.github.com/repos/jarshwah/django/forks","keys_url":"https://api.github.com/repos/jarshwah/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarshwah/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarshwah/django/teams","hooks_url":"https://api.github.com/repos/jarshwah/django/hooks","issue_events_url":"https://api.github.com/repos/jarshwah/django/issues/events{/number}","events_url":"https://api.github.com/repos/jarshwah/django/events","assignees_url":"https://api.github.com/repos/jarshwah/django/assignees{/user}","branches_url":"https://api.github.com/repos/jarshwah/django/branches{/branch}","tags_url":"https://api.github.com/repos/jarshwah/django/tags","blobs_url":"https://api.github.com/repos/jarshwah/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarshwah/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarshwah/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarshwah/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarshwah/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jarshwah/django/languages","stargazers_url":"https://api.github.com/repos/jarshwah/django/stargazers","contributors_url":"https://api.github.com/repos/jarshwah/django/contributors","subscribers_url":"https://api.github.com/repos/jarshwah/django/subscribers","subscription_url":"https://api.github.com/repos/jarshwah/django/subscription","commits_url":"https://api.github.com/repos/jarshwah/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarshwah/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarshwah/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarshwah/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jarshwah/django/contents/{+path}","compare_url":"https://api.github.com/repos/jarshwah/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarshwah/django/merges","archive_url":"https://api.github.com/repos/jarshwah/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarshwah/django/downloads","issues_url":"https://api.github.com/repos/jarshwah/django/issues{/number}","pulls_url":"https://api.github.com/repos/jarshwah/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jarshwah/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jarshwah/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarshwah/django/labels{/name}","releases_url":"https://api.github.com/repos/jarshwah/django/releases{/id}","created_at":"2012-06-12T09:53:04Z","updated_at":"2014-06-27T11:10:20Z","pushed_at":"2015-01-17T23:23:41Z","git_url":"git://github.com/jarshwah/django.git","ssh_url":"git@github.com:jarshwah/django.git","clone_url":"https://github.com/jarshwah/django.git","svn_url":"https://github.com/jarshwah/django","homepage":"http://www.djangoproject.com/","size":113452,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"9b057b51ce01087afbeeb683098d4d2f1088fd7b","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3840"},"html":{"href":"https://github.com/django/django/pull/3840"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3840"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3840/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3840/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3840/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/9d92a74f547f1760709524d51be205e974335344"}}},{"url":"https://api.github.com/repos/django/django/pulls/3839","id":26786350,"html_url":"https://github.com/django/django/pull/3839","diff_url":"https://github.com/django/django/pull/3839.diff","patch_url":"https://github.com/django/django/pull/3839.patch","issue_url":"https://api.github.com/repos/django/django/issues/3839","number":3839,"state":"closed","locked":false,"title":"Updated release instructions with latest process.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-03T19:56:38Z","updated_at":"2015-01-06T18:54:21Z","closed_at":"2015-01-06T18:53:20Z","merged_at":"2015-01-06T18:53:20Z","merge_commit_sha":"9cf4b10b75cb0f84f47ce6d48cb36856bcd094db","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3839/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3839/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3839/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/6288fccfda91593438f3b2f03998b7d7b6b0fcc0","head":{"label":"timgraham:howto-release","ref":"howto-release","sha":"6288fccfda91593438f3b2f03998b7d7b6b0fcc0","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"9f328405f6691784fbd59530e7e01bd6d74e35f1","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3839"},"html":{"href":"https://github.com/django/django/pull/3839"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3839"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3839/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3839/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3839/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/6288fccfda91593438f3b2f03998b7d7b6b0fcc0"}}},{"url":"https://api.github.com/repos/django/django/pulls/3838","id":26786094,"html_url":"https://github.com/django/django/pull/3838","diff_url":"https://github.com/django/django/pull/3838.diff","patch_url":"https://github.com/django/django/pull/3838.patch","issue_url":"https://api.github.com/repos/django/django/issues/3838","number":3838,"state":"closed","locked":false,"title":"Fixed #24073 -- Deactivated translations when leave_locale_alone is False","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-03T19:29:37Z","updated_at":"2015-01-07T19:13:00Z","closed_at":"2015-01-07T19:12:18Z","merged_at":"2015-01-07T19:12:18Z","merge_commit_sha":"55448763285287920e18c191ac784b4ac98b3f4f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3838/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3838/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3838/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/f7c287fca9c9e6370cc88d1457d3ed9466703687","head":{"label":"claudep:24073","ref":"24073","sha":"f7c287fca9c9e6370cc88d1457d3ed9466703687","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"2c0f64b5f6fe25ca35feb30db7e3112a4cb916ed","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3838"},"html":{"href":"https://github.com/django/django/pull/3838"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3838"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3838/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3838/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3838/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/f7c287fca9c9e6370cc88d1457d3ed9466703687"}}},{"url":"https://api.github.com/repos/django/django/pulls/3837","id":26785608,"html_url":"https://github.com/django/django/pull/3837","diff_url":"https://github.com/django/django/pull/3837.diff","patch_url":"https://github.com/django/django/pull/3837.patch","issue_url":"https://api.github.com/repos/django/django/issues/3837","number":3837,"state":"closed","locked":false,"title":"[1.7.x] Increased the default PBKDF2 iterations.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-03T18:38:18Z","updated_at":"2015-01-03T19:08:57Z","closed_at":"2015-01-03T19:08:42Z","merged_at":"2015-01-03T19:08:42Z","merge_commit_sha":"9911e65b238d2cd067d9ce992e1eea81e5e8f16f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3837/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3837/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3837/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/4aed731154b12e2948ee2b6a8baa5083840a343b","head":{"label":"timgraham:iterations-increase","ref":"iterations-increase","sha":"4aed731154b12e2948ee2b6a8baa5083840a343b","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:stable/1.7.x","ref":"stable/1.7.x","sha":"0a06ae9ef383ba00d7c30453e5d7d897506de842","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3837"},"html":{"href":"https://github.com/django/django/pull/3837"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3837"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3837/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3837/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3837/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/4aed731154b12e2948ee2b6a8baa5083840a343b"}}},{"url":"https://api.github.com/repos/django/django/pulls/3836","id":26784699,"html_url":"https://github.com/django/django/pull/3836","diff_url":"https://github.com/django/django/pull/3836.diff","patch_url":"https://github.com/django/django/pull/3836.patch","issue_url":"https://api.github.com/repos/django/django/issues/3836","number":3836,"state":"closed","locked":false,"title":"Fixed #24072 -- Added FileResponse","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24072","created_at":"2015-01-03T17:08:23Z","updated_at":"2015-01-05T15:52:20Z","closed_at":"2015-01-05T15:52:20Z","merged_at":null,"merge_commit_sha":"947c203117765251929c2a5b5e909668fd06e21f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3836/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3836/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3836/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/fa4f1e212c707418a34a52c6f81e5c07af76d6cf","head":{"label":"collinanderson:24072","ref":"24072","sha":"fa4f1e212c707418a34a52c6f81e5c07af76d6cf","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"05f702b94ca4ad77236a1e299270e8014def02e6","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3836"},"html":{"href":"https://github.com/django/django/pull/3836"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3836"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3836/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3836/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3836/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/fa4f1e212c707418a34a52c6f81e5c07af76d6cf"}}},{"url":"https://api.github.com/repos/django/django/pulls/3835","id":26781328,"html_url":"https://github.com/django/django/pull/3835","diff_url":"https://github.com/django/django/pull/3835.diff","patch_url":"https://github.com/django/django/pull/3835.patch","issue_url":"https://api.github.com/repos/django/django/issues/3835","number":3835,"state":"closed","locked":false,"title":"Fixed #24070 -- Added topics beside the Tutorials parts for clarification","user":{"login":"iambibhas","id":357253,"avatar_url":"https://avatars.githubusercontent.com/u/357253?v=3","gravatar_id":"","url":"https://api.github.com/users/iambibhas","html_url":"https://github.com/iambibhas","followers_url":"https://api.github.com/users/iambibhas/followers","following_url":"https://api.github.com/users/iambibhas/following{/other_user}","gists_url":"https://api.github.com/users/iambibhas/gists{/gist_id}","starred_url":"https://api.github.com/users/iambibhas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iambibhas/subscriptions","organizations_url":"https://api.github.com/users/iambibhas/orgs","repos_url":"https://api.github.com/users/iambibhas/repos","events_url":"https://api.github.com/users/iambibhas/events{/privacy}","received_events_url":"https://api.github.com/users/iambibhas/received_events","type":"User","site_admin":false},"body":"Updated the documentation front page to mention the topic names beside the tutorial parts.\r\n\r\nThanks timgraham for the patch and claudep for the review.","created_at":"2015-01-03T09:52:13Z","updated_at":"2015-01-03T13:49:07Z","closed_at":"2015-01-03T13:49:07Z","merged_at":null,"merge_commit_sha":"7d434d5947fd07bcba871879d219cc7fa8943b1c","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3835/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3835/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3835/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d35dabdd43d4ed9c1561b9497748a76dcf9e6156","head":{"label":"iambibhas:ticket_24070","ref":"ticket_24070","sha":"d35dabdd43d4ed9c1561b9497748a76dcf9e6156","user":{"login":"iambibhas","id":357253,"avatar_url":"https://avatars.githubusercontent.com/u/357253?v=3","gravatar_id":"","url":"https://api.github.com/users/iambibhas","html_url":"https://github.com/iambibhas","followers_url":"https://api.github.com/users/iambibhas/followers","following_url":"https://api.github.com/users/iambibhas/following{/other_user}","gists_url":"https://api.github.com/users/iambibhas/gists{/gist_id}","starred_url":"https://api.github.com/users/iambibhas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iambibhas/subscriptions","organizations_url":"https://api.github.com/users/iambibhas/orgs","repos_url":"https://api.github.com/users/iambibhas/repos","events_url":"https://api.github.com/users/iambibhas/events{/privacy}","received_events_url":"https://api.github.com/users/iambibhas/received_events","type":"User","site_admin":false},"repo":{"id":26653478,"name":"django","full_name":"iambibhas/django","owner":{"login":"iambibhas","id":357253,"avatar_url":"https://avatars.githubusercontent.com/u/357253?v=3","gravatar_id":"","url":"https://api.github.com/users/iambibhas","html_url":"https://github.com/iambibhas","followers_url":"https://api.github.com/users/iambibhas/followers","following_url":"https://api.github.com/users/iambibhas/following{/other_user}","gists_url":"https://api.github.com/users/iambibhas/gists{/gist_id}","starred_url":"https://api.github.com/users/iambibhas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iambibhas/subscriptions","organizations_url":"https://api.github.com/users/iambibhas/orgs","repos_url":"https://api.github.com/users/iambibhas/repos","events_url":"https://api.github.com/users/iambibhas/events{/privacy}","received_events_url":"https://api.github.com/users/iambibhas/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/iambibhas/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/iambibhas/django","forks_url":"https://api.github.com/repos/iambibhas/django/forks","keys_url":"https://api.github.com/repos/iambibhas/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/iambibhas/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/iambibhas/django/teams","hooks_url":"https://api.github.com/repos/iambibhas/django/hooks","issue_events_url":"https://api.github.com/repos/iambibhas/django/issues/events{/number}","events_url":"https://api.github.com/repos/iambibhas/django/events","assignees_url":"https://api.github.com/repos/iambibhas/django/assignees{/user}","branches_url":"https://api.github.com/repos/iambibhas/django/branches{/branch}","tags_url":"https://api.github.com/repos/iambibhas/django/tags","blobs_url":"https://api.github.com/repos/iambibhas/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/iambibhas/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/iambibhas/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/iambibhas/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/iambibhas/django/statuses/{sha}","languages_url":"https://api.github.com/repos/iambibhas/django/languages","stargazers_url":"https://api.github.com/repos/iambibhas/django/stargazers","contributors_url":"https://api.github.com/repos/iambibhas/django/contributors","subscribers_url":"https://api.github.com/repos/iambibhas/django/subscribers","subscription_url":"https://api.github.com/repos/iambibhas/django/subscription","commits_url":"https://api.github.com/repos/iambibhas/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/iambibhas/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/iambibhas/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/iambibhas/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/iambibhas/django/contents/{+path}","compare_url":"https://api.github.com/repos/iambibhas/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/iambibhas/django/merges","archive_url":"https://api.github.com/repos/iambibhas/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/iambibhas/django/downloads","issues_url":"https://api.github.com/repos/iambibhas/django/issues{/number}","pulls_url":"https://api.github.com/repos/iambibhas/django/pulls{/number}","milestones_url":"https://api.github.com/repos/iambibhas/django/milestones{/number}","notifications_url":"https://api.github.com/repos/iambibhas/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/iambibhas/django/labels{/name}","releases_url":"https://api.github.com/repos/iambibhas/django/releases{/id}","created_at":"2014-11-14T19:15:16Z","updated_at":"2015-01-03T09:43:56Z","pushed_at":"2015-01-03T09:45:18Z","git_url":"git://github.com/iambibhas/django.git","ssh_url":"git@github.com:iambibhas/django.git","clone_url":"https://github.com/iambibhas/django.git","svn_url":"https://github.com/iambibhas/django","homepage":"https://www.djangoproject.com/","size":116112,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"15cd71ed24945ff7be5716580603fd65c0d45ef7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3835"},"html":{"href":"https://github.com/django/django/pull/3835"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3835"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3835/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3835/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3835/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d35dabdd43d4ed9c1561b9497748a76dcf9e6156"}}},{"url":"https://api.github.com/repos/django/django/pulls/3834","id":26781111,"html_url":"https://github.com/django/django/pull/3834","diff_url":"https://github.com/django/django/pull/3834.diff","patch_url":"https://github.com/django/django/pull/3834.patch","issue_url":"https://api.github.com/repos/django/django/issues/3834","number":3834,"state":"closed","locked":false,"title":"Removed extraneous super call in LiveServerTestCase","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Refs #21281. Thanks Tim Graham and Thomas Chaumeny for investigations.","created_at":"2015-01-03T09:16:21Z","updated_at":"2015-01-03T13:33:01Z","closed_at":"2015-01-03T13:26:39Z","merged_at":"2015-01-03T13:26:39Z","merge_commit_sha":"784d93634c1811120a6e92d4489fcef30eddb88e","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3834/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3834/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3834/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/3bac904607f1999136b97249d9aa220f1db94258","head":{"label":"claudep:21281-2","ref":"21281-2","sha":"3bac904607f1999136b97249d9aa220f1db94258","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"15cd71ed24945ff7be5716580603fd65c0d45ef7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3834"},"html":{"href":"https://github.com/django/django/pull/3834"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3834"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3834/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3834/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3834/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/3bac904607f1999136b97249d9aa220f1db94258"}}},{"url":"https://api.github.com/repos/django/django/pulls/3833","id":26778104,"html_url":"https://github.com/django/django/pull/3833","diff_url":"https://github.com/django/django/pull/3833.diff","patch_url":"https://github.com/django/django/pull/3833.patch","issue_url":"https://api.github.com/repos/django/django/issues/3833","number":3833,"state":"closed","locked":false,"title":"Removed formtools entries from MANIFEST.in.","user":{"login":"berkerpeksag","id":26338,"avatar_url":"https://avatars.githubusercontent.com/u/26338?v=3","gravatar_id":"","url":"https://api.github.com/users/berkerpeksag","html_url":"https://github.com/berkerpeksag","followers_url":"https://api.github.com/users/berkerpeksag/followers","following_url":"https://api.github.com/users/berkerpeksag/following{/other_user}","gists_url":"https://api.github.com/users/berkerpeksag/gists{/gist_id}","starred_url":"https://api.github.com/users/berkerpeksag/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/berkerpeksag/subscriptions","organizations_url":"https://api.github.com/users/berkerpeksag/orgs","repos_url":"https://api.github.com/users/berkerpeksag/repos","events_url":"https://api.github.com/users/berkerpeksag/events{/privacy}","received_events_url":"https://api.github.com/users/berkerpeksag/received_events","type":"User","site_admin":false},"body":"```\r\nwarning: no files found matching '*' under directory 'django/contrib/formtools/templates'\r\n warning: no files found matching '*' under directory 'django/contrib/formtools/tests/templates'\r\n warning: no files found matching '*' under directory 'django/contrib/formtools/tests/wizard/wizardtests/templates'\r\n```","created_at":"2015-01-03T02:04:57Z","updated_at":"2015-01-03T13:30:13Z","closed_at":"2015-01-03T13:28:12Z","merged_at":null,"merge_commit_sha":"bdb78ee439143891e417372f5b56846ac9bb36f0","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3833/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3833/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3833/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/df4496e9cccb0513c1308a53e5f2ab676eb9df2f","head":{"label":"berkerpeksag:remove-formtools","ref":"remove-formtools","sha":"df4496e9cccb0513c1308a53e5f2ab676eb9df2f","user":{"login":"berkerpeksag","id":26338,"avatar_url":"https://avatars.githubusercontent.com/u/26338?v=3","gravatar_id":"","url":"https://api.github.com/users/berkerpeksag","html_url":"https://github.com/berkerpeksag","followers_url":"https://api.github.com/users/berkerpeksag/followers","following_url":"https://api.github.com/users/berkerpeksag/following{/other_user}","gists_url":"https://api.github.com/users/berkerpeksag/gists{/gist_id}","starred_url":"https://api.github.com/users/berkerpeksag/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/berkerpeksag/subscriptions","organizations_url":"https://api.github.com/users/berkerpeksag/orgs","repos_url":"https://api.github.com/users/berkerpeksag/repos","events_url":"https://api.github.com/users/berkerpeksag/events{/privacy}","received_events_url":"https://api.github.com/users/berkerpeksag/received_events","type":"User","site_admin":false},"repo":{"id":12853253,"name":"django","full_name":"berkerpeksag/django","owner":{"login":"berkerpeksag","id":26338,"avatar_url":"https://avatars.githubusercontent.com/u/26338?v=3","gravatar_id":"","url":"https://api.github.com/users/berkerpeksag","html_url":"https://github.com/berkerpeksag","followers_url":"https://api.github.com/users/berkerpeksag/followers","following_url":"https://api.github.com/users/berkerpeksag/following{/other_user}","gists_url":"https://api.github.com/users/berkerpeksag/gists{/gist_id}","starred_url":"https://api.github.com/users/berkerpeksag/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/berkerpeksag/subscriptions","organizations_url":"https://api.github.com/users/berkerpeksag/orgs","repos_url":"https://api.github.com/users/berkerpeksag/repos","events_url":"https://api.github.com/users/berkerpeksag/events{/privacy}","received_events_url":"https://api.github.com/users/berkerpeksag/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/berkerpeksag/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/berkerpeksag/django","forks_url":"https://api.github.com/repos/berkerpeksag/django/forks","keys_url":"https://api.github.com/repos/berkerpeksag/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/berkerpeksag/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/berkerpeksag/django/teams","hooks_url":"https://api.github.com/repos/berkerpeksag/django/hooks","issue_events_url":"https://api.github.com/repos/berkerpeksag/django/issues/events{/number}","events_url":"https://api.github.com/repos/berkerpeksag/django/events","assignees_url":"https://api.github.com/repos/berkerpeksag/django/assignees{/user}","branches_url":"https://api.github.com/repos/berkerpeksag/django/branches{/branch}","tags_url":"https://api.github.com/repos/berkerpeksag/django/tags","blobs_url":"https://api.github.com/repos/berkerpeksag/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/berkerpeksag/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/berkerpeksag/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/berkerpeksag/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/berkerpeksag/django/statuses/{sha}","languages_url":"https://api.github.com/repos/berkerpeksag/django/languages","stargazers_url":"https://api.github.com/repos/berkerpeksag/django/stargazers","contributors_url":"https://api.github.com/repos/berkerpeksag/django/contributors","subscribers_url":"https://api.github.com/repos/berkerpeksag/django/subscribers","subscription_url":"https://api.github.com/repos/berkerpeksag/django/subscription","commits_url":"https://api.github.com/repos/berkerpeksag/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/berkerpeksag/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/berkerpeksag/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/berkerpeksag/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/berkerpeksag/django/contents/{+path}","compare_url":"https://api.github.com/repos/berkerpeksag/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/berkerpeksag/django/merges","archive_url":"https://api.github.com/repos/berkerpeksag/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/berkerpeksag/django/downloads","issues_url":"https://api.github.com/repos/berkerpeksag/django/issues{/number}","pulls_url":"https://api.github.com/repos/berkerpeksag/django/pulls{/number}","milestones_url":"https://api.github.com/repos/berkerpeksag/django/milestones{/number}","notifications_url":"https://api.github.com/repos/berkerpeksag/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/berkerpeksag/django/labels{/name}","releases_url":"https://api.github.com/repos/berkerpeksag/django/releases{/id}","created_at":"2013-09-15T21:51:52Z","updated_at":"2014-10-17T09:24:24Z","pushed_at":"2015-01-12T02:42:20Z","git_url":"git://github.com/berkerpeksag/django.git","ssh_url":"git@github.com:berkerpeksag/django.git","clone_url":"https://github.com/berkerpeksag/django.git","svn_url":"https://github.com/berkerpeksag/django","homepage":"http://www.djangoproject.com/","size":111773,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"15cd71ed24945ff7be5716580603fd65c0d45ef7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3833"},"html":{"href":"https://github.com/django/django/pull/3833"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3833"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3833/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3833/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3833/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/df4496e9cccb0513c1308a53e5f2ab676eb9df2f"}}},{"url":"https://api.github.com/repos/django/django/pulls/3832","id":26766813,"html_url":"https://github.com/django/django/pull/3832","diff_url":"https://github.com/django/django/pull/3832.diff","patch_url":"https://github.com/django/django/pull/3832.patch","issue_url":"https://api.github.com/repos/django/django/issues/3832","number":3832,"state":"closed","locked":false,"title":"Fixed #23861 -- Added an API to deprecate model fields.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/23861","created_at":"2015-01-02T18:58:42Z","updated_at":"2015-01-05T16:41:51Z","closed_at":"2015-01-05T16:40:01Z","merged_at":"2015-01-05T16:40:01Z","merge_commit_sha":"32fe08ee37b041b4a715729ec28ff7c262f75f28","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3832/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3832/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3832/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/c87ee41954737869e6026d6fb12394ec4f79d50a","head":{"label":"timgraham:23861","ref":"23861","sha":"c87ee41954737869e6026d6fb12394ec4f79d50a","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"6e1c9c6568c405bfa481dda4249abe2960173547","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3832"},"html":{"href":"https://github.com/django/django/pull/3832"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3832"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3832/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3832/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3832/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/c87ee41954737869e6026d6fb12394ec4f79d50a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3831","id":26766772,"html_url":"https://github.com/django/django/pull/3831","diff_url":"https://github.com/django/django/pull/3831.diff","patch_url":"https://github.com/django/django/pull/3831.patch","issue_url":"https://api.github.com/repos/django/django/issues/3831","number":3831,"state":"closed","locked":false,"title":"Fixed: #23940 -- Added checks for 'exact' fieldnames","user":{"login":"nicwest","id":794070,"avatar_url":"https://avatars.githubusercontent.com/u/794070?v=3","gravatar_id":"","url":"https://api.github.com/users/nicwest","html_url":"https://github.com/nicwest","followers_url":"https://api.github.com/users/nicwest/followers","following_url":"https://api.github.com/users/nicwest/following{/other_user}","gists_url":"https://api.github.com/users/nicwest/gists{/gist_id}","starred_url":"https://api.github.com/users/nicwest/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nicwest/subscriptions","organizations_url":"https://api.github.com/users/nicwest/orgs","repos_url":"https://api.github.com/users/nicwest/repos","events_url":"https://api.github.com/users/nicwest/events{/privacy}","received_events_url":"https://api.github.com/users/nicwest/received_events","type":"User","site_admin":false},"body":"Adds a system check on base field to ensure that no feilds are given the\r\nname 'exact' as this is conflicting with the SQL keyword.","created_at":"2015-01-02T18:57:27Z","updated_at":"2015-01-06T18:55:21Z","closed_at":"2015-01-06T18:55:21Z","merged_at":null,"merge_commit_sha":"43b53a9cc75d3c81c599154947e6796f8bac77a6","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3831/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3831/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3831/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/7799016ff5c293722043ef08ef9d709852ac85eb","head":{"label":"nicwest:ticket_23940","ref":"ticket_23940","sha":"7799016ff5c293722043ef08ef9d709852ac85eb","user":{"login":"nicwest","id":794070,"avatar_url":"https://avatars.githubusercontent.com/u/794070?v=3","gravatar_id":"","url":"https://api.github.com/users/nicwest","html_url":"https://github.com/nicwest","followers_url":"https://api.github.com/users/nicwest/followers","following_url":"https://api.github.com/users/nicwest/following{/other_user}","gists_url":"https://api.github.com/users/nicwest/gists{/gist_id}","starred_url":"https://api.github.com/users/nicwest/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nicwest/subscriptions","organizations_url":"https://api.github.com/users/nicwest/orgs","repos_url":"https://api.github.com/users/nicwest/repos","events_url":"https://api.github.com/users/nicwest/events{/privacy}","received_events_url":"https://api.github.com/users/nicwest/received_events","type":"User","site_admin":false},"repo":{"id":28722267,"name":"django","full_name":"nicwest/django","owner":{"login":"nicwest","id":794070,"avatar_url":"https://avatars.githubusercontent.com/u/794070?v=3","gravatar_id":"","url":"https://api.github.com/users/nicwest","html_url":"https://github.com/nicwest","followers_url":"https://api.github.com/users/nicwest/followers","following_url":"https://api.github.com/users/nicwest/following{/other_user}","gists_url":"https://api.github.com/users/nicwest/gists{/gist_id}","starred_url":"https://api.github.com/users/nicwest/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nicwest/subscriptions","organizations_url":"https://api.github.com/users/nicwest/orgs","repos_url":"https://api.github.com/users/nicwest/repos","events_url":"https://api.github.com/users/nicwest/events{/privacy}","received_events_url":"https://api.github.com/users/nicwest/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/nicwest/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/nicwest/django","forks_url":"https://api.github.com/repos/nicwest/django/forks","keys_url":"https://api.github.com/repos/nicwest/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/nicwest/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/nicwest/django/teams","hooks_url":"https://api.github.com/repos/nicwest/django/hooks","issue_events_url":"https://api.github.com/repos/nicwest/django/issues/events{/number}","events_url":"https://api.github.com/repos/nicwest/django/events","assignees_url":"https://api.github.com/repos/nicwest/django/assignees{/user}","branches_url":"https://api.github.com/repos/nicwest/django/branches{/branch}","tags_url":"https://api.github.com/repos/nicwest/django/tags","blobs_url":"https://api.github.com/repos/nicwest/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/nicwest/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/nicwest/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/nicwest/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/nicwest/django/statuses/{sha}","languages_url":"https://api.github.com/repos/nicwest/django/languages","stargazers_url":"https://api.github.com/repos/nicwest/django/stargazers","contributors_url":"https://api.github.com/repos/nicwest/django/contributors","subscribers_url":"https://api.github.com/repos/nicwest/django/subscribers","subscription_url":"https://api.github.com/repos/nicwest/django/subscription","commits_url":"https://api.github.com/repos/nicwest/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/nicwest/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/nicwest/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/nicwest/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/nicwest/django/contents/{+path}","compare_url":"https://api.github.com/repos/nicwest/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/nicwest/django/merges","archive_url":"https://api.github.com/repos/nicwest/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/nicwest/django/downloads","issues_url":"https://api.github.com/repos/nicwest/django/issues{/number}","pulls_url":"https://api.github.com/repos/nicwest/django/pulls{/number}","milestones_url":"https://api.github.com/repos/nicwest/django/milestones{/number}","notifications_url":"https://api.github.com/repos/nicwest/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/nicwest/django/labels{/name}","releases_url":"https://api.github.com/repos/nicwest/django/releases{/id}","created_at":"2015-01-02T18:33:58Z","updated_at":"2015-01-02T18:34:12Z","pushed_at":"2015-01-03T10:43:47Z","git_url":"git://github.com/nicwest/django.git","ssh_url":"git@github.com:nicwest/django.git","clone_url":"https://github.com/nicwest/django.git","svn_url":"https://github.com/nicwest/django","homepage":"https://www.djangoproject.com/","size":116801,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"15cd71ed24945ff7be5716580603fd65c0d45ef7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3831"},"html":{"href":"https://github.com/django/django/pull/3831"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3831"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3831/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3831/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3831/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/7799016ff5c293722043ef08ef9d709852ac85eb"}}},{"url":"https://api.github.com/repos/django/django/pulls/3830","id":26765112,"html_url":"https://github.com/django/django/pull/3830","diff_url":"https://github.com/django/django/pull/3830.diff","patch_url":"https://github.com/django/django/pull/3830.patch","issue_url":"https://api.github.com/repos/django/django/issues/3830","number":3830,"state":"closed","locked":false,"title":"Refs #22608 -- Used cached_property for lower case conversions of model and field names in migrations","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"This PR supersedes #3545 ","created_at":"2015-01-02T18:04:47Z","updated_at":"2015-01-07T14:23:35Z","closed_at":"2015-01-07T13:58:01Z","merged_at":null,"merge_commit_sha":"34e888546fb4ea37410e55e45ad5c03f0bd9688f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3830/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3830/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3830/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/9e559f4e6a18921c210ea55ee7e2b3558f17d5a0","head":{"label":"MarkusH:pr/3545","ref":"pr/3545","sha":"9e559f4e6a18921c210ea55ee7e2b3558f17d5a0","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"9b057b51ce01087afbeeb683098d4d2f1088fd7b","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3830"},"html":{"href":"https://github.com/django/django/pull/3830"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3830"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3830/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3830/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3830/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/9e559f4e6a18921c210ea55ee7e2b3558f17d5a0"}}},{"url":"https://api.github.com/repos/django/django/pulls/3829","id":26764876,"html_url":"https://github.com/django/django/pull/3829","diff_url":"https://github.com/django/django/pull/3829.diff","patch_url":"https://github.com/django/django/pull/3829.patch","issue_url":"https://api.github.com/repos/django/django/issues/3829","number":3829,"state":"closed","locked":false,"title":"Updated six to 1.9.0.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-02T17:57:28Z","updated_at":"2015-01-03T12:44:30Z","closed_at":"2015-01-02T18:21:19Z","merged_at":"2015-01-02T18:21:19Z","merge_commit_sha":"d94893afb7d4340a66c6c670cdc88768ee43d7b0","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3829/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3829/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3829/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/52f0b2b62262743d5f935ddae29428e661b5d8ea","head":{"label":"timgraham:six-1.9.0","ref":"six-1.9.0","sha":"52f0b2b62262743d5f935ddae29428e661b5d8ea","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"839f431ef5b927c8b07ce33483b3a7b0dd17b761","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3829"},"html":{"href":"https://github.com/django/django/pull/3829"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3829"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3829/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3829/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3829/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/52f0b2b62262743d5f935ddae29428e661b5d8ea"}}},{"url":"https://api.github.com/repos/django/django/pulls/3828","id":26763415,"html_url":"https://github.com/django/django/pull/3828","diff_url":"https://github.com/django/django/pull/3828.diff","patch_url":"https://github.com/django/django/pull/3828.patch","issue_url":"https://api.github.com/repos/django/django/issues/3828","number":3828,"state":"closed","locked":false,"title":"Fixed #8280 -- Allowed management command discovery for eggs","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Thanks jdetaeye for the report, and bhuztez and jdetaeye for the\r\ninitial patches.","created_at":"2015-01-02T17:14:02Z","updated_at":"2015-01-05T16:21:28Z","closed_at":"2015-01-05T16:20:42Z","merged_at":"2015-01-05T16:20:42Z","merge_commit_sha":"ce7d083182ce1298aef024e9906da1d4d3f98e1b","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3828/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3828/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3828/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/6e1c9c6568c405bfa481dda4249abe2960173547","head":{"label":"claudep:8280","ref":"8280","sha":"6e1c9c6568c405bfa481dda4249abe2960173547","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"d94fe42ae5e67e9fd600d204a08eef00cc10a7df","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3828"},"html":{"href":"https://github.com/django/django/pull/3828"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3828"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3828/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3828/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3828/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/6e1c9c6568c405bfa481dda4249abe2960173547"}}},{"url":"https://api.github.com/repos/django/django/pulls/3827","id":26758798,"html_url":"https://github.com/django/django/pull/3827","diff_url":"https://github.com/django/django/pull/3827.diff","patch_url":"https://github.com/django/django/pull/3827.patch","issue_url":"https://api.github.com/repos/django/django/issues/3827","number":3827,"state":"closed","locked":false,"title":"Fixed #9104 -- Moved FieldDoesNotExist to core.exceptions","user":{"login":"PirosB3","id":847179,"avatar_url":"https://avatars.githubusercontent.com/u/847179?v=3","gravatar_id":"","url":"https://api.github.com/users/PirosB3","html_url":"https://github.com/PirosB3","followers_url":"https://api.github.com/users/PirosB3/followers","following_url":"https://api.github.com/users/PirosB3/following{/other_user}","gists_url":"https://api.github.com/users/PirosB3/gists{/gist_id}","starred_url":"https://api.github.com/users/PirosB3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PirosB3/subscriptions","organizations_url":"https://api.github.com/users/PirosB3/orgs","repos_url":"https://api.github.com/users/PirosB3/repos","events_url":"https://api.github.com/users/PirosB3/events{/privacy}","received_events_url":"https://api.github.com/users/PirosB3/received_events","type":"User","site_admin":false},"body":"Cherry pick of f96990ff71d30a7397b07367e93404d816ad085b","created_at":"2015-01-02T14:40:39Z","updated_at":"2015-01-02T15:47:08Z","closed_at":"2015-01-02T15:47:08Z","merged_at":null,"merge_commit_sha":"f5ce9e3b13cb4a8f21d5de9e58bdb70ba2761cab","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3827/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3827/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3827/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/09222094a42dc39d5ddaf8498d5bbd445f345543","head":{"label":"PirosB3:move_fielddoesnotexist_to_core_exceptions","ref":"move_fielddoesnotexist_to_core_exceptions","sha":"09222094a42dc39d5ddaf8498d5bbd445f345543","user":{"login":"PirosB3","id":847179,"avatar_url":"https://avatars.githubusercontent.com/u/847179?v=3","gravatar_id":"","url":"https://api.github.com/users/PirosB3","html_url":"https://github.com/PirosB3","followers_url":"https://api.github.com/users/PirosB3/followers","following_url":"https://api.github.com/users/PirosB3/following{/other_user}","gists_url":"https://api.github.com/users/PirosB3/gists{/gist_id}","starred_url":"https://api.github.com/users/PirosB3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PirosB3/subscriptions","organizations_url":"https://api.github.com/users/PirosB3/orgs","repos_url":"https://api.github.com/users/PirosB3/repos","events_url":"https://api.github.com/users/PirosB3/events{/privacy}","received_events_url":"https://api.github.com/users/PirosB3/received_events","type":"User","site_admin":false},"repo":{"id":17481434,"name":"django","full_name":"PirosB3/django","owner":{"login":"PirosB3","id":847179,"avatar_url":"https://avatars.githubusercontent.com/u/847179?v=3","gravatar_id":"","url":"https://api.github.com/users/PirosB3","html_url":"https://github.com/PirosB3","followers_url":"https://api.github.com/users/PirosB3/followers","following_url":"https://api.github.com/users/PirosB3/following{/other_user}","gists_url":"https://api.github.com/users/PirosB3/gists{/gist_id}","starred_url":"https://api.github.com/users/PirosB3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PirosB3/subscriptions","organizations_url":"https://api.github.com/users/PirosB3/orgs","repos_url":"https://api.github.com/users/PirosB3/repos","events_url":"https://api.github.com/users/PirosB3/events{/privacy}","received_events_url":"https://api.github.com/users/PirosB3/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/PirosB3/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/PirosB3/django","forks_url":"https://api.github.com/repos/PirosB3/django/forks","keys_url":"https://api.github.com/repos/PirosB3/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PirosB3/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PirosB3/django/teams","hooks_url":"https://api.github.com/repos/PirosB3/django/hooks","issue_events_url":"https://api.github.com/repos/PirosB3/django/issues/events{/number}","events_url":"https://api.github.com/repos/PirosB3/django/events","assignees_url":"https://api.github.com/repos/PirosB3/django/assignees{/user}","branches_url":"https://api.github.com/repos/PirosB3/django/branches{/branch}","tags_url":"https://api.github.com/repos/PirosB3/django/tags","blobs_url":"https://api.github.com/repos/PirosB3/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PirosB3/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PirosB3/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/PirosB3/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PirosB3/django/statuses/{sha}","languages_url":"https://api.github.com/repos/PirosB3/django/languages","stargazers_url":"https://api.github.com/repos/PirosB3/django/stargazers","contributors_url":"https://api.github.com/repos/PirosB3/django/contributors","subscribers_url":"https://api.github.com/repos/PirosB3/django/subscribers","subscription_url":"https://api.github.com/repos/PirosB3/django/subscription","commits_url":"https://api.github.com/repos/PirosB3/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/PirosB3/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/PirosB3/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/PirosB3/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/PirosB3/django/contents/{+path}","compare_url":"https://api.github.com/repos/PirosB3/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PirosB3/django/merges","archive_url":"https://api.github.com/repos/PirosB3/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PirosB3/django/downloads","issues_url":"https://api.github.com/repos/PirosB3/django/issues{/number}","pulls_url":"https://api.github.com/repos/PirosB3/django/pulls{/number}","milestones_url":"https://api.github.com/repos/PirosB3/django/milestones{/number}","notifications_url":"https://api.github.com/repos/PirosB3/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PirosB3/django/labels{/name}","releases_url":"https://api.github.com/repos/PirosB3/django/releases{/id}","created_at":"2014-03-06T15:01:29Z","updated_at":"2014-06-24T15:06:48Z","pushed_at":"2015-01-07T00:17:38Z","git_url":"git://github.com/PirosB3/django.git","ssh_url":"git@github.com:PirosB3/django.git","clone_url":"https://github.com/PirosB3/django.git","svn_url":"https://github.com/PirosB3/django","homepage":"http://www.djangoproject.com/","size":116145,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":3,"forks":0,"open_issues":3,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"1aa3e09c2043c88a760e8b73fb95dc8f1ffef50e","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3827"},"html":{"href":"https://github.com/django/django/pull/3827"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3827"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3827/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3827/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3827/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/09222094a42dc39d5ddaf8498d5bbd445f345543"}}},{"url":"https://api.github.com/repos/django/django/pulls/3826","id":26755508,"html_url":"https://github.com/django/django/pull/3826","diff_url":"https://github.com/django/django/pull/3826.diff","patch_url":"https://github.com/django/django/pull/3826.patch","issue_url":"https://api.github.com/repos/django/django/issues/3826","number":3826,"state":"closed","locked":false,"title":"Fixed #24069 - make ServerHandler a new style class","user":{"login":"pelme","id":20529,"avatar_url":"https://avatars.githubusercontent.com/u/20529?v=3","gravatar_id":"","url":"https://api.github.com/users/pelme","html_url":"https://github.com/pelme","followers_url":"https://api.github.com/users/pelme/followers","following_url":"https://api.github.com/users/pelme/following{/other_user}","gists_url":"https://api.github.com/users/pelme/gists{/gist_id}","starred_url":"https://api.github.com/users/pelme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pelme/subscriptions","organizations_url":"https://api.github.com/users/pelme/orgs","repos_url":"https://api.github.com/users/pelme/repos","events_url":"https://api.github.com/users/pelme/events{/privacy}","received_events_url":"https://api.github.com/users/pelme/received_events","type":"User","site_admin":false},"body":"Patch for https://code.djangoproject.com/ticket/24069","created_at":"2015-01-02T12:00:53Z","updated_at":"2015-01-02T17:08:58Z","closed_at":"2015-01-02T13:53:02Z","merged_at":null,"merge_commit_sha":"2a6ec652ba95568a7a6aaad11381a9a5588db843","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3826/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3826/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3826/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/7aed133454666efbd85e3721c2ba36663bab2f5d","head":{"label":"pelme:ticket-24069","ref":"ticket-24069","sha":"7aed133454666efbd85e3721c2ba36663bab2f5d","user":{"login":"pelme","id":20529,"avatar_url":"https://avatars.githubusercontent.com/u/20529?v=3","gravatar_id":"","url":"https://api.github.com/users/pelme","html_url":"https://github.com/pelme","followers_url":"https://api.github.com/users/pelme/followers","following_url":"https://api.github.com/users/pelme/following{/other_user}","gists_url":"https://api.github.com/users/pelme/gists{/gist_id}","starred_url":"https://api.github.com/users/pelme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pelme/subscriptions","organizations_url":"https://api.github.com/users/pelme/orgs","repos_url":"https://api.github.com/users/pelme/repos","events_url":"https://api.github.com/users/pelme/events{/privacy}","received_events_url":"https://api.github.com/users/pelme/received_events","type":"User","site_admin":false},"repo":{"id":4222075,"name":"django","full_name":"pelme/django","owner":{"login":"pelme","id":20529,"avatar_url":"https://avatars.githubusercontent.com/u/20529?v=3","gravatar_id":"","url":"https://api.github.com/users/pelme","html_url":"https://github.com/pelme","followers_url":"https://api.github.com/users/pelme/followers","following_url":"https://api.github.com/users/pelme/following{/other_user}","gists_url":"https://api.github.com/users/pelme/gists{/gist_id}","starred_url":"https://api.github.com/users/pelme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pelme/subscriptions","organizations_url":"https://api.github.com/users/pelme/orgs","repos_url":"https://api.github.com/users/pelme/repos","events_url":"https://api.github.com/users/pelme/events{/privacy}","received_events_url":"https://api.github.com/users/pelme/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/pelme/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/pelme/django","forks_url":"https://api.github.com/repos/pelme/django/forks","keys_url":"https://api.github.com/repos/pelme/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pelme/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pelme/django/teams","hooks_url":"https://api.github.com/repos/pelme/django/hooks","issue_events_url":"https://api.github.com/repos/pelme/django/issues/events{/number}","events_url":"https://api.github.com/repos/pelme/django/events","assignees_url":"https://api.github.com/repos/pelme/django/assignees{/user}","branches_url":"https://api.github.com/repos/pelme/django/branches{/branch}","tags_url":"https://api.github.com/repos/pelme/django/tags","blobs_url":"https://api.github.com/repos/pelme/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pelme/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pelme/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/pelme/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pelme/django/statuses/{sha}","languages_url":"https://api.github.com/repos/pelme/django/languages","stargazers_url":"https://api.github.com/repos/pelme/django/stargazers","contributors_url":"https://api.github.com/repos/pelme/django/contributors","subscribers_url":"https://api.github.com/repos/pelme/django/subscribers","subscription_url":"https://api.github.com/repos/pelme/django/subscription","commits_url":"https://api.github.com/repos/pelme/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/pelme/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/pelme/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/pelme/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/pelme/django/contents/{+path}","compare_url":"https://api.github.com/repos/pelme/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pelme/django/merges","archive_url":"https://api.github.com/repos/pelme/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pelme/django/downloads","issues_url":"https://api.github.com/repos/pelme/django/issues{/number}","pulls_url":"https://api.github.com/repos/pelme/django/pulls{/number}","milestones_url":"https://api.github.com/repos/pelme/django/milestones{/number}","notifications_url":"https://api.github.com/repos/pelme/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pelme/django/labels{/name}","releases_url":"https://api.github.com/repos/pelme/django/releases{/id}","created_at":"2012-05-04T06:03:29Z","updated_at":"2013-11-04T09:46:49Z","pushed_at":"2015-01-02T11:58:39Z","git_url":"git://github.com/pelme/django.git","ssh_url":"git@github.com:pelme/django.git","clone_url":"https://github.com/pelme/django.git","svn_url":"https://github.com/pelme/django","homepage":"http://www.djangoproject.com/","size":88370,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"40ccef16cb699ff66a9d4163cc195c3a3b28c5ba","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3826"},"html":{"href":"https://github.com/django/django/pull/3826"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3826"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3826/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3826/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3826/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/7aed133454666efbd85e3721c2ba36663bab2f5d"}}},{"url":"https://api.github.com/repos/django/django/pulls/3825","id":26754104,"html_url":"https://github.com/django/django/pull/3825","diff_url":"https://github.com/django/django/pull/3825.diff","patch_url":"https://github.com/django/django/pull/3825.patch","issue_url":"https://api.github.com/repos/django/django/issues/3825","number":3825,"state":"closed","locked":false,"title":"Fixed #24031 -- Added CASE expressions","user":{"login":"michalmo","id":9825131,"avatar_url":"https://avatars.githubusercontent.com/u/9825131?v=3","gravatar_id":"","url":"https://api.github.com/users/michalmo","html_url":"https://github.com/michalmo","followers_url":"https://api.github.com/users/michalmo/followers","following_url":"https://api.github.com/users/michalmo/following{/other_user}","gists_url":"https://api.github.com/users/michalmo/gists{/gist_id}","starred_url":"https://api.github.com/users/michalmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalmo/subscriptions","organizations_url":"https://api.github.com/users/michalmo/orgs","repos_url":"https://api.github.com/users/michalmo/repos","events_url":"https://api.github.com/users/michalmo/events{/privacy}","received_events_url":"https://api.github.com/users/michalmo/received_events","type":"User","site_admin":false},"body":"I'm opening this PR for review of my implementation of CASE expressions.\r\nIt's working with tests passing on SQLite, postgres and MySQL with python 2.7, 3.2, 3.3 and 3.4 (except MySQL + python 3.2).\r\n\r\nThere are some issues however:\r\n\r\n* API needs to be finalized. I've discussed this with @jarshwah and am currently using two classes ```SearchedCase``` and ```SimpleCase```, with an entry point class ```Case```, that returns one of those two depending on the arguments. You can see how Case expressions could be used with each of the classes and then we can drop some of the names once a decision has been made.\r\n* No documentation - waiting on API decision.\r\n* I added tests for the interaction of ```QuerySet.update``` with Case expressions and all the Field types, and came across some issues with ```Value``` expressions and ```DurationField```. I've fixed these in separate commits in this PR. How should I proceed with this? Make tickets for the issues? The fixes work, but I'd appreciate review from the authors of those pieces of code @mjtamlyn and @jarshwah.\r\n* In some cases I've made the ```as_sql``` methods depend on the type of query compiler (detecting sql update). This works but needs to be better, maybe adding methods to ```SQLCompiler``` and overriding for ```SQLUpdateCompiler```. Input appreciated on this.\r\n\r\nThis is without the bulk_update code. I'll do a separate PR for that if it is wanted.","created_at":"2015-01-02T10:42:59Z","updated_at":"2015-01-12T23:17:05Z","closed_at":"2015-01-12T23:16:46Z","merged_at":null,"merge_commit_sha":"6b0837d63aa032033f4c767e6c2bfab74f3fc21d","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3825/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3825/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3825/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/68db6516e067fc49790d38f5462449343b989db4","head":{"label":"michalmo:case-expressions","ref":"case-expressions","sha":"68db6516e067fc49790d38f5462449343b989db4","user":{"login":"michalmo","id":9825131,"avatar_url":"https://avatars.githubusercontent.com/u/9825131?v=3","gravatar_id":"","url":"https://api.github.com/users/michalmo","html_url":"https://github.com/michalmo","followers_url":"https://api.github.com/users/michalmo/followers","following_url":"https://api.github.com/users/michalmo/following{/other_user}","gists_url":"https://api.github.com/users/michalmo/gists{/gist_id}","starred_url":"https://api.github.com/users/michalmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalmo/subscriptions","organizations_url":"https://api.github.com/users/michalmo/orgs","repos_url":"https://api.github.com/users/michalmo/repos","events_url":"https://api.github.com/users/michalmo/events{/privacy}","received_events_url":"https://api.github.com/users/michalmo/received_events","type":"User","site_admin":false},"repo":{"id":28709403,"name":"django","full_name":"michalmo/django","owner":{"login":"michalmo","id":9825131,"avatar_url":"https://avatars.githubusercontent.com/u/9825131?v=3","gravatar_id":"","url":"https://api.github.com/users/michalmo","html_url":"https://github.com/michalmo","followers_url":"https://api.github.com/users/michalmo/followers","following_url":"https://api.github.com/users/michalmo/following{/other_user}","gists_url":"https://api.github.com/users/michalmo/gists{/gist_id}","starred_url":"https://api.github.com/users/michalmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalmo/subscriptions","organizations_url":"https://api.github.com/users/michalmo/orgs","repos_url":"https://api.github.com/users/michalmo/repos","events_url":"https://api.github.com/users/michalmo/events{/privacy}","received_events_url":"https://api.github.com/users/michalmo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/michalmo/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/michalmo/django","forks_url":"https://api.github.com/repos/michalmo/django/forks","keys_url":"https://api.github.com/repos/michalmo/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/michalmo/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/michalmo/django/teams","hooks_url":"https://api.github.com/repos/michalmo/django/hooks","issue_events_url":"https://api.github.com/repos/michalmo/django/issues/events{/number}","events_url":"https://api.github.com/repos/michalmo/django/events","assignees_url":"https://api.github.com/repos/michalmo/django/assignees{/user}","branches_url":"https://api.github.com/repos/michalmo/django/branches{/branch}","tags_url":"https://api.github.com/repos/michalmo/django/tags","blobs_url":"https://api.github.com/repos/michalmo/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/michalmo/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/michalmo/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/michalmo/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/michalmo/django/statuses/{sha}","languages_url":"https://api.github.com/repos/michalmo/django/languages","stargazers_url":"https://api.github.com/repos/michalmo/django/stargazers","contributors_url":"https://api.github.com/repos/michalmo/django/contributors","subscribers_url":"https://api.github.com/repos/michalmo/django/subscribers","subscription_url":"https://api.github.com/repos/michalmo/django/subscription","commits_url":"https://api.github.com/repos/michalmo/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/michalmo/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/michalmo/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/michalmo/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/michalmo/django/contents/{+path}","compare_url":"https://api.github.com/repos/michalmo/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/michalmo/django/merges","archive_url":"https://api.github.com/repos/michalmo/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/michalmo/django/downloads","issues_url":"https://api.github.com/repos/michalmo/django/issues{/number}","pulls_url":"https://api.github.com/repos/michalmo/django/pulls{/number}","milestones_url":"https://api.github.com/repos/michalmo/django/milestones{/number}","notifications_url":"https://api.github.com/repos/michalmo/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/michalmo/django/labels{/name}","releases_url":"https://api.github.com/repos/michalmo/django/releases{/id}","created_at":"2015-01-02T09:47:52Z","updated_at":"2015-01-02T09:48:09Z","pushed_at":"2015-01-15T21:47:01Z","git_url":"git://github.com/michalmo/django.git","ssh_url":"git@github.com:michalmo/django.git","clone_url":"https://github.com/michalmo/django.git","svn_url":"https://github.com/michalmo/django","homepage":"https://www.djangoproject.com/","size":118464,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"aa8ee6a5731b37b73635e7605521fb1a54a5c10d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3825"},"html":{"href":"https://github.com/django/django/pull/3825"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3825"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3825/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3825/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3825/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/68db6516e067fc49790d38f5462449343b989db4"}}},{"url":"https://api.github.com/repos/django/django/pulls/3824","id":26749589,"html_url":"https://github.com/django/django/pull/3824","diff_url":"https://github.com/django/django/pull/3824.diff","patch_url":"https://github.com/django/django/pull/3824.patch","issue_url":"https://api.github.com/repos/django/django/issues/3824","number":3824,"state":"closed","locked":false,"title":"Fixed #23908 -- Made the admin XHTML5 compatible.","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"More of just a proposal: https://code.djangoproject.com/ticket/23908#comment:9","created_at":"2015-01-02T04:08:57Z","updated_at":"2015-01-02T14:58:45Z","closed_at":"2015-01-02T14:58:45Z","merged_at":null,"merge_commit_sha":"8cc26f0d41bbe9758e40639b7eca9cdca3a28fcd","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3824/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3824/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3824/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/71345c33f680c6fc896b268e5020ce08f4c545fb","head":{"label":"collinanderson:23908","ref":"23908","sha":"71345c33f680c6fc896b268e5020ce08f4c545fb","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"40ccef16cb699ff66a9d4163cc195c3a3b28c5ba","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3824"},"html":{"href":"https://github.com/django/django/pull/3824"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3824"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3824/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3824/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3824/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/71345c33f680c6fc896b268e5020ce08f4c545fb"}}},{"url":"https://api.github.com/repos/django/django/pulls/3823","id":26743677,"html_url":"https://github.com/django/django/pull/3823","diff_url":"https://github.com/django/django/pull/3823.diff","patch_url":"https://github.com/django/django/pull/3823.patch","issue_url":"https://api.github.com/repos/django/django/issues/3823","number":3823,"state":"closed","locked":false,"title":"Removed double newline from output of migrate --list","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"refs [#23359](https://code.djangoproject.com/ticket/23359) and PR https://github.com/django/django/pull/3153#issuecomment-68471839","created_at":"2015-01-01T14:48:41Z","updated_at":"2015-01-05T21:06:54Z","closed_at":"2015-01-05T19:54:11Z","merged_at":null,"merge_commit_sha":"b3bf76db52a2e7e512bed701bb86361aae00073f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3823/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3823/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3823/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a951366b7f2c4ca6269810c56f0e3b62d94b9386","head":{"label":"MarkusH:fix-migrate-list-output","ref":"fix-migrate-list-output","sha":"a951366b7f2c4ca6269810c56f0e3b62d94b9386","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"c87ee41954737869e6026d6fb12394ec4f79d50a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3823"},"html":{"href":"https://github.com/django/django/pull/3823"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3823"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3823/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3823/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3823/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a951366b7f2c4ca6269810c56f0e3b62d94b9386"}}},{"url":"https://api.github.com/repos/django/django/pulls/3822","id":26740289,"html_url":"https://github.com/django/django/pull/3822","diff_url":"https://github.com/django/django/pull/3822.diff","patch_url":"https://github.com/django/django/pull/3822.patch","issue_url":"https://api.github.com/repos/django/django/issues/3822","number":3822,"state":"closed","locked":false,"title":"Fixed #23749 -- Added an example of using database routers in migrations","user":{"login":"splbio","id":629072,"avatar_url":"https://avatars.githubusercontent.com/u/629072?v=3","gravatar_id":"","url":"https://api.github.com/users/splbio","html_url":"https://github.com/splbio","followers_url":"https://api.github.com/users/splbio/followers","following_url":"https://api.github.com/users/splbio/following{/other_user}","gists_url":"https://api.github.com/users/splbio/gists{/gist_id}","starred_url":"https://api.github.com/users/splbio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/splbio/subscriptions","organizations_url":"https://api.github.com/users/splbio/orgs","repos_url":"https://api.github.com/users/splbio/repos","events_url":"https://api.github.com/users/splbio/events{/privacy}","received_events_url":"https://api.github.com/users/splbio/received_events","type":"User","site_admin":false},"body":"The ticket https://code.djangoproject.com/ticket/23749 explains the issue where the ```schema_editor.connection.alias``` should be documented. It is now documented with some examples included.","created_at":"2015-01-01T03:26:36Z","updated_at":"2015-01-03T17:07:16Z","closed_at":"2015-01-03T17:07:16Z","merged_at":null,"merge_commit_sha":"a02a1fa4ca769d90c2ccff53bb94e30ac09c5b33","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3822/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3822/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3822/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/df8472ccd9d7729893dd893db717c30f937696e6","head":{"label":"splbio:ap_document_db_alias","ref":"ap_document_db_alias","sha":"df8472ccd9d7729893dd893db717c30f937696e6","user":{"login":"splbio","id":629072,"avatar_url":"https://avatars.githubusercontent.com/u/629072?v=3","gravatar_id":"","url":"https://api.github.com/users/splbio","html_url":"https://github.com/splbio","followers_url":"https://api.github.com/users/splbio/followers","following_url":"https://api.github.com/users/splbio/following{/other_user}","gists_url":"https://api.github.com/users/splbio/gists{/gist_id}","starred_url":"https://api.github.com/users/splbio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/splbio/subscriptions","organizations_url":"https://api.github.com/users/splbio/orgs","repos_url":"https://api.github.com/users/splbio/repos","events_url":"https://api.github.com/users/splbio/events{/privacy}","received_events_url":"https://api.github.com/users/splbio/received_events","type":"User","site_admin":false},"repo":{"id":28678926,"name":"django","full_name":"splbio/django","owner":{"login":"splbio","id":629072,"avatar_url":"https://avatars.githubusercontent.com/u/629072?v=3","gravatar_id":"","url":"https://api.github.com/users/splbio","html_url":"https://github.com/splbio","followers_url":"https://api.github.com/users/splbio/followers","following_url":"https://api.github.com/users/splbio/following{/other_user}","gists_url":"https://api.github.com/users/splbio/gists{/gist_id}","starred_url":"https://api.github.com/users/splbio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/splbio/subscriptions","organizations_url":"https://api.github.com/users/splbio/orgs","repos_url":"https://api.github.com/users/splbio/repos","events_url":"https://api.github.com/users/splbio/events{/privacy}","received_events_url":"https://api.github.com/users/splbio/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/splbio/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/splbio/django","forks_url":"https://api.github.com/repos/splbio/django/forks","keys_url":"https://api.github.com/repos/splbio/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/splbio/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/splbio/django/teams","hooks_url":"https://api.github.com/repos/splbio/django/hooks","issue_events_url":"https://api.github.com/repos/splbio/django/issues/events{/number}","events_url":"https://api.github.com/repos/splbio/django/events","assignees_url":"https://api.github.com/repos/splbio/django/assignees{/user}","branches_url":"https://api.github.com/repos/splbio/django/branches{/branch}","tags_url":"https://api.github.com/repos/splbio/django/tags","blobs_url":"https://api.github.com/repos/splbio/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/splbio/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/splbio/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/splbio/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/splbio/django/statuses/{sha}","languages_url":"https://api.github.com/repos/splbio/django/languages","stargazers_url":"https://api.github.com/repos/splbio/django/stargazers","contributors_url":"https://api.github.com/repos/splbio/django/contributors","subscribers_url":"https://api.github.com/repos/splbio/django/subscribers","subscription_url":"https://api.github.com/repos/splbio/django/subscription","commits_url":"https://api.github.com/repos/splbio/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/splbio/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/splbio/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/splbio/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/splbio/django/contents/{+path}","compare_url":"https://api.github.com/repos/splbio/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/splbio/django/merges","archive_url":"https://api.github.com/repos/splbio/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/splbio/django/downloads","issues_url":"https://api.github.com/repos/splbio/django/issues{/number}","pulls_url":"https://api.github.com/repos/splbio/django/pulls{/number}","milestones_url":"https://api.github.com/repos/splbio/django/milestones{/number}","notifications_url":"https://api.github.com/repos/splbio/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/splbio/django/labels{/name}","releases_url":"https://api.github.com/repos/splbio/django/releases{/id}","created_at":"2015-01-01T02:04:52Z","updated_at":"2015-01-01T02:05:05Z","pushed_at":"2015-01-02T23:12:48Z","git_url":"git://github.com/splbio/django.git","ssh_url":"git@github.com:splbio/django.git","clone_url":"https://github.com/splbio/django.git","svn_url":"https://github.com/splbio/django","homepage":"https://www.djangoproject.com/","size":116665,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"52f0b2b62262743d5f935ddae29428e661b5d8ea","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3822"},"html":{"href":"https://github.com/django/django/pull/3822"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3822"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3822/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3822/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3822/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/df8472ccd9d7729893dd893db717c30f937696e6"}}},{"url":"https://api.github.com/repos/django/django/pulls/3821","id":26734111,"html_url":"https://github.com/django/django/pull/3821","diff_url":"https://github.com/django/django/pull/3821.diff","patch_url":"https://github.com/django/django/pull/3821.patch","issue_url":"https://api.github.com/repos/django/django/issues/3821","number":3821,"state":"closed","locked":false,"title":"Fixed #24064 - Prevented database access in compile time in spatialite models","user":{"login":"coldmind","id":1932804,"avatar_url":"https://avatars.githubusercontent.com/u/1932804?v=3","gravatar_id":"","url":"https://api.github.com/users/coldmind","html_url":"https://github.com/coldmind","followers_url":"https://api.github.com/users/coldmind/followers","following_url":"https://api.github.com/users/coldmind/following{/other_user}","gists_url":"https://api.github.com/users/coldmind/gists{/gist_id}","starred_url":"https://api.github.com/users/coldmind/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coldmind/subscriptions","organizations_url":"https://api.github.com/users/coldmind/orgs","repos_url":"https://api.github.com/users/coldmind/repos","events_url":"https://api.github.com/users/coldmind/events{/privacy}","received_events_url":"https://api.github.com/users/coldmind/received_events","type":"User","site_admin":false},"body":"Here is the patch that can fix problem.\r\nIdeas about improvements are welcome.","created_at":"2014-12-31T20:02:17Z","updated_at":"2015-01-02T17:13:46Z","closed_at":"2015-01-02T17:13:46Z","merged_at":null,"merge_commit_sha":"74bf088b6535403b09c7bfb4400a805cb020afd2","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3821/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3821/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3821/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/639516f651d9fd3eb337831d78b5862ea8dd1670","head":{"label":"coldmind:ticket_24064","ref":"ticket_24064","sha":"639516f651d9fd3eb337831d78b5862ea8dd1670","user":{"login":"coldmind","id":1932804,"avatar_url":"https://avatars.githubusercontent.com/u/1932804?v=3","gravatar_id":"","url":"https://api.github.com/users/coldmind","html_url":"https://github.com/coldmind","followers_url":"https://api.github.com/users/coldmind/followers","following_url":"https://api.github.com/users/coldmind/following{/other_user}","gists_url":"https://api.github.com/users/coldmind/gists{/gist_id}","starred_url":"https://api.github.com/users/coldmind/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coldmind/subscriptions","organizations_url":"https://api.github.com/users/coldmind/orgs","repos_url":"https://api.github.com/users/coldmind/repos","events_url":"https://api.github.com/users/coldmind/events{/privacy}","received_events_url":"https://api.github.com/users/coldmind/received_events","type":"User","site_admin":false},"repo":{"id":18882135,"name":"django","full_name":"coldmind/django","owner":{"login":"coldmind","id":1932804,"avatar_url":"https://avatars.githubusercontent.com/u/1932804?v=3","gravatar_id":"","url":"https://api.github.com/users/coldmind","html_url":"https://github.com/coldmind","followers_url":"https://api.github.com/users/coldmind/followers","following_url":"https://api.github.com/users/coldmind/following{/other_user}","gists_url":"https://api.github.com/users/coldmind/gists{/gist_id}","starred_url":"https://api.github.com/users/coldmind/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coldmind/subscriptions","organizations_url":"https://api.github.com/users/coldmind/orgs","repos_url":"https://api.github.com/users/coldmind/repos","events_url":"https://api.github.com/users/coldmind/events{/privacy}","received_events_url":"https://api.github.com/users/coldmind/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/coldmind/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/coldmind/django","forks_url":"https://api.github.com/repos/coldmind/django/forks","keys_url":"https://api.github.com/repos/coldmind/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/coldmind/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/coldmind/django/teams","hooks_url":"https://api.github.com/repos/coldmind/django/hooks","issue_events_url":"https://api.github.com/repos/coldmind/django/issues/events{/number}","events_url":"https://api.github.com/repos/coldmind/django/events","assignees_url":"https://api.github.com/repos/coldmind/django/assignees{/user}","branches_url":"https://api.github.com/repos/coldmind/django/branches{/branch}","tags_url":"https://api.github.com/repos/coldmind/django/tags","blobs_url":"https://api.github.com/repos/coldmind/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/coldmind/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/coldmind/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/coldmind/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/coldmind/django/statuses/{sha}","languages_url":"https://api.github.com/repos/coldmind/django/languages","stargazers_url":"https://api.github.com/repos/coldmind/django/stargazers","contributors_url":"https://api.github.com/repos/coldmind/django/contributors","subscribers_url":"https://api.github.com/repos/coldmind/django/subscribers","subscription_url":"https://api.github.com/repos/coldmind/django/subscription","commits_url":"https://api.github.com/repos/coldmind/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/coldmind/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/coldmind/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/coldmind/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/coldmind/django/contents/{+path}","compare_url":"https://api.github.com/repos/coldmind/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/coldmind/django/merges","archive_url":"https://api.github.com/repos/coldmind/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/coldmind/django/downloads","issues_url":"https://api.github.com/repos/coldmind/django/issues{/number}","pulls_url":"https://api.github.com/repos/coldmind/django/pulls{/number}","milestones_url":"https://api.github.com/repos/coldmind/django/milestones{/number}","notifications_url":"https://api.github.com/repos/coldmind/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/coldmind/django/labels{/name}","releases_url":"https://api.github.com/repos/coldmind/django/releases{/id}","created_at":"2014-04-17T14:54:10Z","updated_at":"2015-01-16T09:59:20Z","pushed_at":"2015-01-16T09:59:18Z","git_url":"git://github.com/coldmind/django.git","ssh_url":"git@github.com:coldmind/django.git","clone_url":"https://github.com/coldmind/django.git","svn_url":"https://github.com/coldmind/django","homepage":"http://www.djangoproject.com/","size":113617,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"8958170755b37ce346ae5257c1000bd936faa3b0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3821"},"html":{"href":"https://github.com/django/django/pull/3821"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3821"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3821/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3821/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3821/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/639516f651d9fd3eb337831d78b5862ea8dd1670"}}}] \ No newline at end of file diff --git a/dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=2.txt b/dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=2.txt new file mode 100644 index 000000000..9b8cbc4ac --- /dev/null +++ b/dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=2.txt @@ -0,0 +1,2 @@ +application/json; charset=utf-8 +[{"url":"https://api.github.com/repos/django/django/pulls/3806","id":26628363,"html_url":"https://github.com/django/django/pull/3806","diff_url":"https://github.com/django/django/pull/3806.diff","patch_url":"https://github.com/django/django/pull/3806.patch","issue_url":"https://api.github.com/repos/django/django/issues/3806","number":3806,"state":"closed","locked":false,"title":"Fixed #23753 -- Oracle failure with Coalesce","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"body":"This fixes the Oracle errors on CI when mixing CharFields and TextFields. We cast each input to Coalesce to NCLOB when the output of the expression is expected to be TextField (database NCLOB). We can't do this with a converter because the inputs need to be cast, not just the output.","created_at":"2014-12-28T22:18:50Z","updated_at":"2014-12-29T08:50:20Z","closed_at":"2014-12-29T08:47:43Z","merged_at":"2014-12-29T08:47:43Z","merge_commit_sha":"a42bdedda72b6c858b8c81d332acf15cab322104","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3806/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3806/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3806/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/1cdfbde4db1ac6bbddb2cf8dd5192831bc0f9ce3","head":{"label":"jarshwah:fix-coalesce-oracle","ref":"fix-coalesce-oracle","sha":"1cdfbde4db1ac6bbddb2cf8dd5192831bc0f9ce3","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"repo":{"id":4635741,"name":"django","full_name":"jarshwah/django","owner":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarshwah/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/jarshwah/django","forks_url":"https://api.github.com/repos/jarshwah/django/forks","keys_url":"https://api.github.com/repos/jarshwah/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarshwah/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarshwah/django/teams","hooks_url":"https://api.github.com/repos/jarshwah/django/hooks","issue_events_url":"https://api.github.com/repos/jarshwah/django/issues/events{/number}","events_url":"https://api.github.com/repos/jarshwah/django/events","assignees_url":"https://api.github.com/repos/jarshwah/django/assignees{/user}","branches_url":"https://api.github.com/repos/jarshwah/django/branches{/branch}","tags_url":"https://api.github.com/repos/jarshwah/django/tags","blobs_url":"https://api.github.com/repos/jarshwah/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarshwah/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarshwah/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarshwah/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarshwah/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jarshwah/django/languages","stargazers_url":"https://api.github.com/repos/jarshwah/django/stargazers","contributors_url":"https://api.github.com/repos/jarshwah/django/contributors","subscribers_url":"https://api.github.com/repos/jarshwah/django/subscribers","subscription_url":"https://api.github.com/repos/jarshwah/django/subscription","commits_url":"https://api.github.com/repos/jarshwah/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarshwah/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarshwah/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarshwah/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jarshwah/django/contents/{+path}","compare_url":"https://api.github.com/repos/jarshwah/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarshwah/django/merges","archive_url":"https://api.github.com/repos/jarshwah/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarshwah/django/downloads","issues_url":"https://api.github.com/repos/jarshwah/django/issues{/number}","pulls_url":"https://api.github.com/repos/jarshwah/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jarshwah/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jarshwah/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarshwah/django/labels{/name}","releases_url":"https://api.github.com/repos/jarshwah/django/releases{/id}","created_at":"2012-06-12T09:53:04Z","updated_at":"2014-06-27T11:10:20Z","pushed_at":"2015-01-12T22:40:09Z","git_url":"git://github.com/jarshwah/django.git","ssh_url":"git@github.com:jarshwah/django.git","clone_url":"https://github.com/jarshwah/django.git","svn_url":"https://github.com/jarshwah/django","homepage":"http://www.djangoproject.com/","size":113167,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"932d449f001a94aa5065cda652a442e4b1dd5352","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-16T15:28:24Z","pushed_at":"2015-01-16T14:42:08Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":246028,"stargazers_count":12578,"watchers_count":12578,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4921,"mirror_url":null,"open_issues_count":70,"forks":4921,"open_issues":70,"watchers":12578,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3806"},"html":{"href":"https://github.com/django/django/pull/3806"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3806"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3806/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3806/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3806/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/1cdfbde4db1ac6bbddb2cf8dd5192831bc0f9ce3"}}}] diff --git a/dashboard/fixtures/code.djangoproject.com_timeline_changeset=on_max=0_daysback=7_format=rss.txt b/dashboard/fixtures/code.djangoproject.com_timeline_changeset=on_max=0_daysback=7_format=rss.txt new file mode 100644 index 000000000..72dfaebb5 --- /dev/null +++ b/dashboard/fixtures/code.djangoproject.com_timeline_changeset=on_max=0_daysback=7_format=rss.txt @@ -0,0 +1,2627 @@ +application/rss+xml;charset=utf-8 + + + + Django + https://code.djangoproject.com/timeline + Trac Timeline + en-US + Trac 1.0.2 + + Django + https://www.djangoproject.com/s/img/site/hdr_logo.gif + https://code.djangoproject.com/timeline + + + Changeset [c3336e7e]: Removed dumpdata --natural option and serializers use_natural_keys ... + + Tim Graham <timograham@…> + + Sun, 18 Jan 2015 01:18:34 GMT + https://code.djangoproject.com/changeset/c3336e7e4f146fc62272d462288a00f8d78c1f83 + https://code.djangoproject.com/changeset/c3336e7e4f146fc62272d462288a00f8d78c1f83/1421543914000000 + <p> +Removed dumpdata --natural option and serializers use_natural_keys parameter. +</p> +<p> +Per deprecation timeline; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/13252" title="New feature: Use the natural key instead of the primary key when serializing (closed: fixed)">#13252</a>. +</p> + + changeset + + Changeset [1d975ff]: Removed usage of deprecated dumpdata options in docs. + + Tim Graham <timograham@…> + + Sun, 18 Jan 2015 01:14:45 GMT + https://code.djangoproject.com/changeset/1d975ff44bc23efaf0ebf3e96cc35539d80bd244 + https://code.djangoproject.com/changeset/1d975ff44bc23efaf0ebf3e96cc35539d80bd244/1421543685000000 + <p> +Removed usage of deprecated dumpdata options in docs. +</p> + + changeset + + Changeset [8d959f73]: Removed obsolete deprecation warning in runtests.py + + Tim Graham <timograham@…> + + Sun, 18 Jan 2015 00:41:46 GMT + https://code.djangoproject.com/changeset/8d959f73bed135c1253c0d957355b60fce4091e9 + https://code.djangoproject.com/changeset/8d959f73bed135c1253c0d957355b60fce4091e9/1421541706000000 + <p> +Removed obsolete deprecation warning in runtests.py +</p> + + changeset + + Changeset [40d6b37]: Removed BaseMemcachedCacheMethods._get_memcache_timeout backwards ... + + Tim Graham <timograham@…> + + Sun, 18 Jan 2015 00:32:54 GMT + https://code.djangoproject.com/changeset/40d6b376d4ac29c1f271bb827cd9ca24860ce4b5 + https://code.djangoproject.com/changeset/40d6b376d4ac29c1f271bb827cd9ca24860ce4b5/1421541174000000 + <p> +Removed BaseMemcachedCacheMethods._get_memcache_timeout backwards compatibility shim. +</p> +<p> +Per deprecation timeline; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/21147" title="Bug: cache.tests.FileBasedCacheTests.test_zero_timeout fails with sqlite on ... (closed: fixed)">#21147</a>. +</p> + + changeset + + Changeset [eea66a6e]: [1.7.x] Added removal of check management command to deprecation ... + + Tim Graham <timograham@…> + + Sun, 18 Jan 2015 00:16:41 GMT + https://code.djangoproject.com/changeset/eea66a6e97f9c3392cf24b971c15a6a7ea634202 + https://code.djangoproject.com/changeset/eea66a6e97f9c3392cf24b971c15a6a7ea634202/1421540201000000 + <p> +[1.7.x] Added removal of check management command to deprecation timeline. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/20e4e8fc79af9a87fb48951d03d3747f1f550551/" title="Added removal of check management command to deprecation timeline.">20e4e8fc79af9a87fb48951d03d3747f1f550551</a> from master +</p> + + changeset + + Changeset [a41d410]: [1.8.x] Added removal of check management command to deprecation ... + + Tim Graham <timograham@…> + + Sun, 18 Jan 2015 00:15:59 GMT + https://code.djangoproject.com/changeset/a41d41046af60e585713b33ff2e6e039446ce389 + https://code.djangoproject.com/changeset/a41d41046af60e585713b33ff2e6e039446ce389/1421540159000000 + <p> +[1.8.x] Added removal of check management command to deprecation timeline. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/20e4e8fc79af9a87fb48951d03d3747f1f550551/" title="Added removal of check management command to deprecation timeline.">20e4e8fc79af9a87fb48951d03d3747f1f550551</a> from master +</p> + + changeset + + Changeset [20e4e8f]: Added removal of check management command to deprecation timeline. + + Tim Graham <timograham@…> + + Sun, 18 Jan 2015 00:14:44 GMT + https://code.djangoproject.com/changeset/20e4e8fc79af9a87fb48951d03d3747f1f550551 + https://code.djangoproject.com/changeset/20e4e8fc79af9a87fb48951d03d3747f1f550551/1421540084000000 + <p> +Added removal of check management command to deprecation timeline. +</p> + + changeset + + Changeset [0622bca5]: Removed the validate management command per deprecation timeline. + + Tim Graham <timograham@…> + + Sun, 18 Jan 2015 00:12:03 GMT + https://code.djangoproject.com/changeset/0622bca5d1b25877167b7beda96edcd3ba58db8d + https://code.djangoproject.com/changeset/0622bca5d1b25877167b7beda96edcd3ba58db8d/1421539923000000 + <p> +Removed the validate management command per deprecation timeline. +</p> + + changeset + + Changeset [714277c]: Removed support for SplitDateTimeWidget with DateTimeField per ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 23:49:44 GMT + https://code.djangoproject.com/changeset/714277cb4cedd8290101f9c6b3e6382f192ae177 + https://code.djangoproject.com/changeset/714277cb4cedd8290101f9c6b3e6382f192ae177/1421538584000000 + <p> +Removed support for SplitDateTimeWidget with DateTimeField per deprecation timeline. +</p> +<p> +refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/8898" title="Bug: `required` validation bypassed when using `DateTimeField` with ... (closed: fixed)">#8898</a> +</p> + + changeset + + Changeset [ecbe20f]: [1.7.x] Added versionadded to ModelAdmin.get_formsets_with_inlines(); ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 23:18:06 GMT + https://code.djangoproject.com/changeset/ecbe20fe20ddc54aa034530b38a73195ee3f598d + https://code.djangoproject.com/changeset/ecbe20fe20ddc54aa034530b38a73195ee3f598d/1421536686000000 + <p> +[1.7.x] Added versionadded to ModelAdmin.get_formsets_with_inlines(); refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/20702" title="Bug: Using ModelAdmin.get_formsets() to filter inlines is broken. (closed: fixed)">#20702</a>. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/7cfcdd98dcf0dbbde7cfd656e450c52342dbe6f3/" title="[1.8.x] Added versionadded to ModelAdmin.get_formsets_with_inlines(); ...">7cfcdd98dcf0dbbde7cfd656e450c52342dbe6f3</a> from stable/1.8.x +</p> + + changeset + + Changeset [7cfcdd9]: [1.8.x] Added versionadded to ModelAdmin.get_formsets_with_inlines(); ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 23:12:47 GMT + https://code.djangoproject.com/changeset/7cfcdd98dcf0dbbde7cfd656e450c52342dbe6f3 + https://code.djangoproject.com/changeset/7cfcdd98dcf0dbbde7cfd656e450c52342dbe6f3/1421536367000000 + <p> +[1.8.x] Added versionadded to ModelAdmin.get_formsets_with_inlines(); refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/20702" title="Bug: Using ModelAdmin.get_formsets() to filter inlines is broken. (closed: fixed)">#20702</a>. +</p> + + changeset + + Changeset [2c9e9563]: Removed ModelAdmin.get_formsets() per deprecation timeline; refs #20702. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 23:02:35 GMT + https://code.djangoproject.com/changeset/2c9e95639e5a353f9fe1b81ecd3fdc5e2212781e + https://code.djangoproject.com/changeset/2c9e95639e5a353f9fe1b81ecd3fdc5e2212781e/1421535755000000 + <p> +Removed ModelAdmin.get_formsets() per deprecation timeline; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/20702" title="Bug: Using ModelAdmin.get_formsets() to filter inlines is broken. (closed: fixed)">#20702</a>. +</p> + + changeset + + Changeset [3b570db]: Removed BaseDatabaseValidation.validate_field() per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 19:58:09 GMT + https://code.djangoproject.com/changeset/3b570dbcdb605cc6ee7e8796e1533fdd40c92362 + https://code.djangoproject.com/changeset/3b570dbcdb605cc6ee7e8796e1533fdd40c92362/1421524689000000 + <p> +Removed BaseDatabaseValidation.validate_field() per deprecation timeline. +</p> + + changeset + + Changeset [e1b93db]: Removed deprecated aliases in django.db.models. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 19:57:34 GMT + https://code.djangoproject.com/changeset/e1b93dbbef6afb86cf17be7f260f7b05ab7579e2 + https://code.djangoproject.com/changeset/e1b93dbbef6afb86cf17be7f260f7b05ab7579e2/1421524654000000 + <p> +Removed deprecated aliases in django.db.models. +</p> + + changeset + + Changeset [29737a2]: [1.7.x] Cleaned up migration writer tests Backport of ... + + Markus Holtermann <info@…> + + Sat, 17 Jan 2015 19:45:41 GMT + https://code.djangoproject.com/changeset/29737a2949e9b56df03dae3f84fccd8fe0443358 + https://code.djangoproject.com/changeset/29737a2949e9b56df03dae3f84fccd8fe0443358/1421523941000000 + <p> +[1.7.x] Cleaned up migration writer tests +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/65d55c409343aab7c2ae771c459720ef797b4cdb/" title="Cleaned up migration writer tests">65d55c409343aab7c2ae771c459720ef797b4cdb</a> from master +</p> + + changeset + + Changeset [5512338]: [1.8.x] Cleaned up migration writer tests Backport of ... + + Markus Holtermann <info@…> + + Sat, 17 Jan 2015 19:42:58 GMT + https://code.djangoproject.com/changeset/5512338d4f2d4193cf4d9fa3dd707b149b8b9450 + https://code.djangoproject.com/changeset/5512338d4f2d4193cf4d9fa3dd707b149b8b9450/1421523778000000 + <p> +[1.8.x] Cleaned up migration writer tests +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/65d55c409343aab7c2ae771c459720ef797b4cdb/" title="Cleaned up migration writer tests">65d55c409343aab7c2ae771c459720ef797b4cdb</a> from master +</p> + + changeset + + Changeset [2b4ca2e]: Removed unused imports. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 19:42:51 GMT + https://code.djangoproject.com/changeset/2b4ca2ec295503472d488bb75548f0a576eb6aaf + https://code.djangoproject.com/changeset/2b4ca2ec295503472d488bb75548f0a576eb6aaf/1421523771000000 + <p> +Removed unused imports. +</p> + + changeset + + Changeset [c2d5f290]: Removed contrib.flatpages.FlatPageSitemap per deprecation timeline; ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 19:40:22 GMT + https://code.djangoproject.com/changeset/c2d5f2903cfaef4f8b17d86f4db706b61073a471 + https://code.djangoproject.com/changeset/c2d5f2903cfaef4f8b17d86f4db706b61073a471/1421523622000000 + <p> +Removed contrib.flatpages.FlatPageSitemap per deprecation timeline; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/23884" title="Cleanup/optimization: Consider moving FlatPageSitemap to contrib.flatpages (closed: fixed)">#23884</a>. +</p> + + changeset + + Changeset [65d55c40]: Cleaned up migration writer tests + + Markus Holtermann <info@…> + + Sat, 17 Jan 2015 19:29:50 GMT + https://code.djangoproject.com/changeset/65d55c409343aab7c2ae771c459720ef797b4cdb + https://code.djangoproject.com/changeset/65d55c409343aab7c2ae771c459720ef797b4cdb/1421522990000000 + <p> +Cleaned up migration writer tests +</p> + + changeset + + Changeset [2788c46]: Removed Multiple/ModelChoiceField cache_choices option; refs #22838. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 18:48:46 GMT + https://code.djangoproject.com/changeset/2788c46d46bc4d7afb906765ce1f484faef180c5 + https://code.djangoproject.com/changeset/2788c46d46bc4d7afb906765ce1f484faef180c5/1421520526000000 + <p> +Removed Multiple/ModelChoiceField cache_choices option; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/22838" title="Cleanup/optimization: Deprecate ModelChoiceField.cache_choices (closed: fixed)">#22838</a>. +</p> + + changeset + + Changeset [4b8d3bb]: Standardized indentation in docs/howto/custom-management-commands.txt. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 18:38:01 GMT + https://code.djangoproject.com/changeset/4b8d3bbab58ee99404fc84091fcca566552322ea + https://code.djangoproject.com/changeset/4b8d3bbab58ee99404fc84091fcca566552322ea/1421519881000000 + <p> +Standardized indentation in docs/howto/custom-management-commands.txt. +</p> + + changeset + + Changeset [bd93032]: Removed ssi/url tags from future per deprecation timeline; refs #21939. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 18:29:52 GMT + https://code.djangoproject.com/changeset/bd93032191f96bc7086aa46b91b4177601c6fce9 + https://code.djangoproject.com/changeset/bd93032191f96bc7086aa46b91b4177601c6fce9/1421519392000000 + <p> +Removed ssi/url tags from future per deprecation timeline; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/21939" title="Cleanup/optimization: Deprecate loading ssi/url tags from future (closed: fixed)">#21939</a>. +</p> + + changeset + + Changeset [a58a120]: [1.8.x] Standardized indentation in ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 18:27:59 GMT + https://code.djangoproject.com/changeset/a58a120021e4d63fbb176ecd88a7fefae54ff19c + https://code.djangoproject.com/changeset/a58a120021e4d63fbb176ecd88a7fefae54ff19c/1421519279000000 + <p> +[1.8.x] Standardized indentation in docs/howto/custom-management-commands.txt. +</p> + + changeset + + Changeset [e278407]: Removed unused imports from previous commit. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 18:22:52 GMT + https://code.djangoproject.com/changeset/e278407b20af0fd957fc3f39244a991c7520f2ba + https://code.djangoproject.com/changeset/e278407b20af0fd957fc3f39244a991c7520f2ba/1421518972000000 + <p> +Removed unused imports from previous commit. +</p> + + changeset + + Changeset [4a03d348]: Removed BaseCommand.requires_model_validation per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 17:59:07 GMT + https://code.djangoproject.com/changeset/4a03d348c70caa3e21393e08e6e665ef752202ac + https://code.djangoproject.com/changeset/4a03d348c70caa3e21393e08e6e665ef752202ac/1421517547000000 + <p> +Removed BaseCommand.requires_model_validation per deprecation timeline. +</p> + + changeset + + Changeset [85c0eb1]: [1.7.x] Replaced deprecated requires_model_validation in docs. ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 17:52:34 GMT + https://code.djangoproject.com/changeset/85c0eb1e3baf09d79d463a20fedc3fbded3093f9 + https://code.djangoproject.com/changeset/85c0eb1e3baf09d79d463a20fedc3fbded3093f9/1421517154000000 + <p> +[1.7.x] Replaced deprecated requires_model_validation in docs. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/18192b9fa4387d5e6c677a7929d91ce04f92cda7/" title="Replaced deprecated requires_model_validation in docs.">18192b9fa4387d5e6c677a7929d91ce04f92cda7</a> from master +</p> + + changeset + + Changeset [bfa34788]: [1.8.x] Replaced deprecated requires_model_validation in docs. ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 17:52:30 GMT + https://code.djangoproject.com/changeset/bfa34788507505584a9885c6856c6a6083670879 + https://code.djangoproject.com/changeset/bfa34788507505584a9885c6856c6a6083670879/1421517150000000 + <p> +[1.8.x] Replaced deprecated requires_model_validation in docs. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/18192b9fa4387d5e6c677a7929d91ce04f92cda7/" title="Replaced deprecated requires_model_validation in docs.">18192b9fa4387d5e6c677a7929d91ce04f92cda7</a> from master +</p> + + changeset + + Changeset [18192b9f]: Replaced deprecated requires_model_validation in docs. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 17:51:50 GMT + https://code.djangoproject.com/changeset/18192b9fa4387d5e6c677a7929d91ce04f92cda7 + https://code.djangoproject.com/changeset/18192b9fa4387d5e6c677a7929d91ce04f92cda7/1421517110000000 + <p> +Replaced deprecated requires_model_validation in docs. +</p> + + changeset + + Changeset [df3f3bb]: Removed utils.text.javascript_quote() per deprecation timeline; refs ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 17:41:49 GMT + https://code.djangoproject.com/changeset/df3f3bbe2927b9bad80088c6adbf5e8c5ba778c9 + https://code.djangoproject.com/changeset/df3f3bbe2927b9bad80088c6adbf5e8c5ba778c9/1421516509000000 + <p> +Removed utils.text.javascript_quote() per deprecation timeline; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/21725" title="Bug: Javascript translations fail with non-BMP characters (closed: fixed)">#21725</a>. +</p> + + changeset + + Changeset [00a1199]: Removed support for AppCommand.handle_app() per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 17:34:34 GMT + https://code.djangoproject.com/changeset/00a11994a57312687b9e104d2de370b139a28358 + https://code.djangoproject.com/changeset/00a11994a57312687b9e104d2de370b139a28358/1421516074000000 + <p> +Removed support for AppCommand.handle_app() per deprecation timeline. +</p> + + changeset + + Changeset [f0a1df0b]: Removed deprecated Chinese language codes; refs #18149. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 16:23:43 GMT + https://code.djangoproject.com/changeset/f0a1df0b0139a7f5a576dff966210b5d52247650 + https://code.djangoproject.com/changeset/f0a1df0b0139a7f5a576dff966210b5d52247650/1421511823000000 + <p> +Removed deprecated Chinese language codes; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/18149" title="Bug: Form.prefix example gives wrong separator between prefix and field name (closed: fixed)">#18149</a>. +</p> + + changeset + + Changeset [467fd7e]: [1.7.x] Updated tutorial 1 with actual migrate output. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 15:54:34 GMT + https://code.djangoproject.com/changeset/467fd7ea1afe6d80735af73ece45eaa61d9ff3c5 + https://code.djangoproject.com/changeset/467fd7ea1afe6d80735af73ece45eaa61d9ff3c5/1421510074000000 + <p> +[1.7.x] Updated tutorial 1 with actual migrate output. +</p> + + changeset + + Changeset [9f86d86]: [1.8.x] Updated tutorial 1 with actual migrate output. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 15:46:27 GMT + https://code.djangoproject.com/changeset/9f86d86c62e5e805ba0191ccd546e174301998ea + https://code.djangoproject.com/changeset/9f86d86c62e5e805ba0191ccd546e174301998ea/1421509587000000 + <p> +[1.8.x] Updated tutorial 1 with actual migrate output. +</p> + + changeset + + Changeset [b845951]: Required sqlparse for SQL splitting per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 15:20:30 GMT + https://code.djangoproject.com/changeset/b845951fd41cf6a380b3e09eeb30f7d105c37061 + https://code.djangoproject.com/changeset/b845951fd41cf6a380b3e09eeb30f7d105c37061/1421508030000000 + <p> +Required sqlparse for SQL splitting per deprecation timeline. +</p> + + changeset + + Changeset [4aa089a9]: Removed support for custom SQL per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 15:16:06 GMT + https://code.djangoproject.com/changeset/4aa089a9a9504c4a833eee8161be013206da5d15 + https://code.djangoproject.com/changeset/4aa089a9a9504c4a833eee8161be013206da5d15/1421507766000000 + <p> +Removed support for custom SQL per deprecation timeline. +</p> + + changeset + + Changeset [a420f83]: Fixed #24055 -- Keep reference to view class for resolve() + + Loic Bistuer <loic.bistuer@…> + + Sat, 17 Jan 2015 15:09:10 GMT + https://code.djangoproject.com/changeset/a420f83e7d2e446ca01ef7c13d30c2ef3e975e5c + https://code.djangoproject.com/changeset/a420f83e7d2e446ca01ef7c13d30c2ef3e975e5c/1421507350000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24055" title="New feature: Keep reference to view class for resolve() (closed: fixed)">#24055</a> -- Keep reference to view class for resolve() +</p> + + changeset + + Changeset [67235fd]: Removed support for initial_data fixtures per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 14:59:25 GMT + https://code.djangoproject.com/changeset/67235fd4ef1b006fc9cdb2fa20e7bb93b0edff4b + https://code.djangoproject.com/changeset/67235fd4ef1b006fc9cdb2fa20e7bb93b0edff4b/1421506765000000 + <p> +Removed support for initial_data fixtures per deprecation timeline. +</p> + + changeset + + Changeset [f635d759]: Removed support for old-style test database settings per deprecation ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 14:55:18 GMT + https://code.djangoproject.com/changeset/f635d759354842e46901ed1ae1be5f5a0b81e567 + https://code.djangoproject.com/changeset/f635d759354842e46901ed1ae1be5f5a0b81e567/1421506518000000 + <p> +Removed support for old-style test database settings per deprecation timeline. +</p> + + changeset + + Changeset [d038c54]: Removed django.core.cache.get_cache() per deprecation timeline; refs ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 14:55:18 GMT + https://code.djangoproject.com/changeset/d038c547b5ce585cbf9ef5bb7e5298f52e4a243b + https://code.djangoproject.com/changeset/d038c547b5ce585cbf9ef5bb7e5298f52e4a243b/1421506518000000 + <p> +Removed django.core.cache.get_cache() per deprecation timeline; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/21012" title="Cleanup/optimization: Provide shared &#34;caches&#34; dict to avoid creating multiple cache class ... (closed: fixed)">#21012</a>. +</p> + + changeset + + Changeset [6b1b726]: [1.8.x] Fixed PostGIS crosses lookup and added crosses test Backport ... + + Claude Paroz <claude@…> + + Sat, 17 Jan 2015 14:46:50 GMT + https://code.djangoproject.com/changeset/6b1b7263f4b0065a8a514abfd7e74e17e742dbf6 + https://code.djangoproject.com/changeset/6b1b7263f4b0065a8a514abfd7e74e17e742dbf6/1421506010000000 + <p> +[1.8.x] Fixed PostGIS crosses lookup and added crosses test +</p> +<p> +Backport of aff0e54d5 from master. +</p> + + changeset + + Changeset [aff0e54d]: Fixed PostGIS crosses lookup and added crosses test + + Claude Paroz <claude@…> + + Sat, 17 Jan 2015 14:44:49 GMT + https://code.djangoproject.com/changeset/aff0e54d511f55dbcdbae6a79c237fbb3edc9973 + https://code.djangoproject.com/changeset/aff0e54d511f55dbcdbae6a79c237fbb3edc9973/1421505889000000 + <p> +Fixed PostGIS crosses lookup and added crosses test +</p> + + changeset + + Changeset [1b0365ad]: Removed django.utils.tzinfo per deprecation timeline; refs #17262. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 14:32:33 GMT + https://code.djangoproject.com/changeset/1b0365ad34151f266fe3faecb4edf31a51a8642c + https://code.djangoproject.com/changeset/1b0365ad34151f266fe3faecb4edf31a51a8642c/1421505153000000 + <p> +Removed django.utils.tzinfo per deprecation timeline; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/17262" title="Cleanup/optimization: Refactor the implementations of tzinfo classes (closed: fixed)">#17262</a>. +</p> + + changeset + + Changeset [5f600db3]: [1.7.x] Documented django.utils.timezone.FixedOffset; thanks Aymeric. ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 14:31:59 GMT + https://code.djangoproject.com/changeset/5f600db37a61be24cfe75bb2f327bb7bb57a468c + https://code.djangoproject.com/changeset/5f600db37a61be24cfe75bb2f327bb7bb57a468c/1421505119000000 + <p> +[1.7.x] Documented django.utils.timezone.FixedOffset; thanks Aymeric. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/25264d4e2a4b3fd6a25e6b617388ea24f3d48d63/" title="Documented django.utils.timezone.FixedOffset; thanks Aymeric.">25264d4e2a4b3fd6a25e6b617388ea24f3d48d63</a> from master +</p> + + changeset + + Changeset [b714316]: [1.8.x] Documented django.utils.timezone.FixedOffset; thanks Aymeric. ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 14:31:56 GMT + https://code.djangoproject.com/changeset/b714316c0606110cd508863b6d12650004366aaf + https://code.djangoproject.com/changeset/b714316c0606110cd508863b6d12650004366aaf/1421505116000000 + <p> +[1.8.x] Documented django.utils.timezone.FixedOffset; thanks Aymeric. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/25264d4e2a4b3fd6a25e6b617388ea24f3d48d63/" title="Documented django.utils.timezone.FixedOffset; thanks Aymeric.">25264d4e2a4b3fd6a25e6b617388ea24f3d48d63</a> from master +</p> + + changeset + + Changeset [25264d4e]: Documented django.utils.timezone.FixedOffset; thanks Aymeric. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 14:30:52 GMT + https://code.djangoproject.com/changeset/25264d4e2a4b3fd6a25e6b617388ea24f3d48d63 + https://code.djangoproject.com/changeset/25264d4e2a4b3fd6a25e6b617388ea24f3d48d63/1421505052000000 + <p> +Documented django.utils.timezone.FixedOffset; thanks Aymeric. +</p> + + changeset + + Changeset [f6463bb3]: Removed the syncdb command per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 14:20:12 GMT + https://code.djangoproject.com/changeset/f6463bb38047bac7a62826ca901e3c5add40cb10 + https://code.djangoproject.com/changeset/f6463bb38047bac7a62826ca901e3c5add40cb10/1421504412000000 + <p> +Removed the syncdb command per deprecation timeline. +</p> + + changeset + + Changeset [f4f24d3]: Removed pre_syncdb and post_syncdb signals per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 14:07:00 GMT + https://code.djangoproject.com/changeset/f4f24d30e044b5bc2014b8356058099808c22c1a + https://code.djangoproject.com/changeset/f4f24d30e044b5bc2014b8356058099808c22c1a/1421503620000000 + <p> +Removed pre_syncdb and post_syncdb signals per deprecation timeline. +</p> + + changeset + + Changeset [fed25f11]: Removed compatibility with Python 3.2. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 14:00:17 GMT + https://code.djangoproject.com/changeset/fed25f1105ff0d5fe46cd217b29371ee7f1907f2 + https://code.djangoproject.com/changeset/fed25f1105ff0d5fe46cd217b29371ee7f1907f2/1421503217000000 + <p> +Removed compatibility with Python 3.2. +</p> + + changeset + + Changeset [4e65f195]: Removed django.db.models.loading per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 13:40:59 GMT + https://code.djangoproject.com/changeset/4e65f195e1b10d83bb7edc38c908747c4fd537b8 + https://code.djangoproject.com/changeset/4e65f195e1b10d83bb7edc38c908747c4fd537b8/1421502059000000 + <p> +Removed django.db.models.loading per deprecation timeline. +</p> + + changeset + + Changeset [d4ee6cd]: Removed ModelAdmin.declared_fieldsets per deprecation timeline; refs ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 13:40:33 GMT + https://code.djangoproject.com/changeset/d4ee6cda5802adc5a38d266ccebe78fb67066179 + https://code.djangoproject.com/changeset/d4ee6cda5802adc5a38d266ccebe78fb67066179/1421502033000000 + <p> +Removed ModelAdmin.declared_fieldsets per deprecation timeline; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/18681" title="Bug: get_fieldsets not hooked in properly (closed: fixed)">#18681</a>. +</p> + + changeset + + Changeset [c820892]: Removed django.utils.datastructures.SortedDict per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 13:40:23 GMT + https://code.djangoproject.com/changeset/c820892eed9ea10879270e64e8109dc44829756a + https://code.djangoproject.com/changeset/c820892eed9ea10879270e64e8109dc44829756a/1421502023000000 + <p> +Removed django.utils.datastructures.<a class="wiki" href="https://code.djangoproject.com/wiki/SortedDict">SortedDict</a> per deprecation timeline. +</p> + + changeset + + Changeset [41f0d3d3]: Removed FastCGI support per deprecation timeline; refs #20766. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 13:32:31 GMT + https://code.djangoproject.com/changeset/41f0d3d3bc8b0a6831530e1176c6415f9ba45b0b + https://code.djangoproject.com/changeset/41f0d3d3bc8b0a6831530e1176c6415f9ba45b0b/1421501551000000 + <p> +Removed FastCGI support per deprecation timeline; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/20766" title="Cleanup/optimization: Deprecate fastcgi support (closed: fixed)">#20766</a>. +</p> + + changeset + + Changeset [37b7776a]: Removed django.utils.datastructures.MergeDict per deprecation ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 13:13:36 GMT + https://code.djangoproject.com/changeset/37b7776a015102e97b9bdd64d88c732883ff9989 + https://code.djangoproject.com/changeset/37b7776a015102e97b9bdd64d88c732883ff9989/1421500416000000 + <p> +Removed django.utils.datastructures.MergeDict per deprecation timeline; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/18659" title="Cleanup/optimization: Remove `request.REQUEST` (closed: fixed)">#18659</a>. +</p> + + changeset + + Changeset [75f107b8]: Removed request.REQUEST per deprecation timeline; refs #18659. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 13:05:18 GMT + https://code.djangoproject.com/changeset/75f107b8842dfc890ddd65262bd09ca87c3a15be + https://code.djangoproject.com/changeset/75f107b8842dfc890ddd65262bd09ca87c3a15be/1421499918000000 + <p> +Removed request.REQUEST per deprecation timeline; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/18659" title="Cleanup/optimization: Remove `request.REQUEST` (closed: fixed)">#18659</a>. +</p> + + changeset + + Changeset [61ad1ea]: Removed django.utils.functional.memoize per deprecation timeline. ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 12:55:32 GMT + https://code.djangoproject.com/changeset/61ad1ea92b1f4df992b0ef1dcc7c781da2413815 + https://code.djangoproject.com/changeset/61ad1ea92b1f4df992b0ef1dcc7c781da2413815/1421499332000000 + <p> +Removed django.utils.functional.memoize per deprecation timeline. +</p> +<p> +refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/21351" title="Cleanup/optimization: memoize function needs tests and improvements (closed: fixed)">#21351</a>. +</p> + + changeset + + Changeset [9ce36512]: Removed backwards compatibility shims for "util" modules per ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 12:40:12 GMT + https://code.djangoproject.com/changeset/9ce36512fa925231b0496cc10f7d114c069c7c06 + https://code.djangoproject.com/changeset/9ce36512fa925231b0496cc10f7d114c069c7c06/1421498412000000 + <p> +Removed backwards compatibility shims for "util" modules per deprecation timeline. +</p> +<p> +refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/17627" title="Cleanup/optimization: contrib.admin.util is misnamed (closed: fixed)">#17627</a>. +</p> + + changeset + + Changeset [d79a30b]: Removed fallback suport for allow_syncdb() in database routers per ... + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 12:39:46 GMT + https://code.djangoproject.com/changeset/d79a30ba3f991bc3150fa1260fab1c10f5d3450a + https://code.djangoproject.com/changeset/d79a30ba3f991bc3150fa1260fab1c10f5d3450a/1421498386000000 + <p> +Removed fallback suport for allow_syncdb() in database routers per deprecation timeline. +</p> + + changeset + + Changeset [b952c3fc]: Removed django.utils.unittest per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 12:32:22 GMT + https://code.djangoproject.com/changeset/b952c3fc606ed01c6d0ff26451b6e2acf1b91ca5 + https://code.djangoproject.com/changeset/b952c3fc606ed01c6d0ff26451b6e2acf1b91ca5/1421497942000000 + <p> +Removed django.utils.unittest per deprecation timeline. +</p> + + changeset + + Changeset [ce78b954]: Removed django.utils.importlib per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 12:14:21 GMT + https://code.djangoproject.com/changeset/ce78b954cf2747add06dadd6aef8bbd70d70c667 + https://code.djangoproject.com/changeset/ce78b954cf2747add06dadd6aef8bbd70d70c667/1421496861000000 + <p> +Removed django.utils.importlib per deprecation timeline. +</p> + + changeset + + Changeset [1c8b637e]: Removed django.utils.dictconfig per deprecation timeline. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 12:13:51 GMT + https://code.djangoproject.com/changeset/1c8b637ed97927c90a0f0056aa7b30bfe361c16b + https://code.djangoproject.com/changeset/1c8b637ed97927c90a0f0056aa7b30bfe361c16b/1421496831000000 + <p> +Removed django.utils.dictconfig per deprecation timeline. +</p> + + changeset + + Changeset [428c8840]: Used features in GIS sitemap view conditionals + + Claude Paroz <claude@…> + + Sat, 17 Jan 2015 11:41:18 GMT + https://code.djangoproject.com/changeset/428c884083d8e60025ba1d2fa97de438c57c9d48 + https://code.djangoproject.com/changeset/428c884083d8e60025ba1d2fa97de438c57c9d48/1421494878000000 + <p> +Used features in GIS sitemap view conditionals +</p> + + changeset + + Changeset [53e1423]: Updated en translation catalogs Forward port of 666c12e52 from ... + + Claude Paroz <claude@…> + + Sat, 17 Jan 2015 10:19:37 GMT + https://code.djangoproject.com/changeset/53e1423eda369acb1882d6939a7f9e11617e5591 + https://code.djangoproject.com/changeset/53e1423eda369acb1882d6939a7f9e11617e5591/1421489977000000 + <p> +Updated en translation catalogs +</p> +<p> +Forward port of 666c12e52 from stable/1.8.x +</p> + + changeset + + Changeset [666c12e5]: [1.8.x] Updated en translation catalogs + + Claude Paroz <claude@…> + + Sat, 17 Jan 2015 10:18:45 GMT + https://code.djangoproject.com/changeset/666c12e5295d021c8d791d4410e5753d4a2cc98e + https://code.djangoproject.com/changeset/666c12e5295d021c8d791d4410e5753d4a2cc98e/1421489925000000 + <p> +[1.8.x] Updated en translation catalogs +</p> + + changeset + + Changeset [dec5157a]: [1.8.x] Complemented test about non-supported aggregation exception ... + + Claude Paroz <claude@…> + + Sat, 17 Jan 2015 09:04:38 GMT + https://code.djangoproject.com/changeset/dec5157a7256b91534eaa64afb91c6e569ce17e3 + https://code.djangoproject.com/changeset/dec5157a7256b91534eaa64afb91c6e569ce17e3/1421485478000000 + <p> +[1.8.x] Complemented test about non-supported aggregation exception +</p> +<p> +Backport of d69ecf922dd from master. +</p> + + changeset + + Changeset [d69ecf9]: Complemented test about non-supported aggregation exception + + Claude Paroz <claude@…> + + Sat, 17 Jan 2015 09:01:55 GMT + https://code.djangoproject.com/changeset/d69ecf922ddf6d4e3698e0dfd42d9ae387df182c + https://code.djangoproject.com/changeset/d69ecf922ddf6d4e3698e0dfd42d9ae387df182c/1421485315000000 + <p> +Complemented test about non-supported aggregation exception +</p> + + changeset + + Changeset [eb6a07e0]: [1.8.x] Fixed typo in 'Django Template Language' Backport of ... + + Markus Holtermann <info@…> + + Sat, 17 Jan 2015 02:06:26 GMT + https://code.djangoproject.com/changeset/eb6a07e0697cf4dbaf33915e60fce56d7705ec22 + https://code.djangoproject.com/changeset/eb6a07e0697cf4dbaf33915e60fce56d7705ec22/1421460386000000 + <p> +[1.8.x] Fixed typo in 'Django Template Language' +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/d60b96d98881b47c845125e82269ea6a9b268fbb/" title="Fixed typo in 'Django Template Language'">d60b96d98881b47c845125e82269ea6a9b268fbb</a> from master +</p> + + changeset + + Changeset [d60b96d]: Fixed typo in 'Django Template Language' + + Markus Holtermann <info@…> + + Sat, 17 Jan 2015 02:05:28 GMT + https://code.djangoproject.com/changeset/d60b96d98881b47c845125e82269ea6a9b268fbb + https://code.djangoproject.com/changeset/d60b96d98881b47c845125e82269ea6a9b268fbb/1421460328000000 + <p> +Fixed typo in 'Django Template Language' +</p> + + changeset + + Changeset [c5125888]: Increased the default PBKDF2 iterations. + + Tim Graham <timograham@…> + + Sat, 17 Jan 2015 00:27:10 GMT + https://code.djangoproject.com/changeset/c51258882bbf388f5c4cfc379340097ebe9beda9 + https://code.djangoproject.com/changeset/c51258882bbf388f5c4cfc379340097ebe9beda9/1421454430000000 + <p> +Increased the default PBKDF2 iterations. +</p> + + changeset + + Changeset [8be1b8b4]: [1.8.x] Bumped django_next_version in docs config. + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 23:30:49 GMT + https://code.djangoproject.com/changeset/8be1b8b488760959410be93e460944970b8199d6 + https://code.djangoproject.com/changeset/8be1b8b488760959410be93e460944970b8199d6/1421451049000000 + <p> +[1.8.x] Bumped django_next_version in docs config. +</p> + + changeset + + Changeset [d468903]: Bumped version to 1.9 in docs config. + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 23:30:28 GMT + https://code.djangoproject.com/changeset/d4689034becf3bc519dbddd22f702406c5cbe5b1 + https://code.djangoproject.com/changeset/d4689034becf3bc519dbddd22f702406c5cbe5b1/1421451028000000 + <p> +Bumped version to 1.9 in docs config. +</p> + + changeset + + Changeset [cba3d8a]: [1.6.x] Fixed a typo in the test responses docs. Backport of ... + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 23:24:51 GMT + https://code.djangoproject.com/changeset/cba3d8ab076f3a34c23ca51ea9c31e9e7688e833 + https://code.djangoproject.com/changeset/cba3d8ab076f3a34c23ca51ea9c31e9e7688e833/1421450691000000 + <p> +[1.6.x] Fixed a typo in the test responses docs. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/996292d6498d25c6b3e84435e82edeff5aaa0257/" title="Fixed a typo in the test responses docs.">996292d6498d25c6b3e84435e82edeff5aaa0257</a> from master +</p> + + changeset + + Changeset [be0bc9a9]: [1.7.x] Fixed a typo in the test responses docs. Backport of ... + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 23:24:48 GMT + https://code.djangoproject.com/changeset/be0bc9a9e7ad4421cea4aeebf274278e256d1a62 + https://code.djangoproject.com/changeset/be0bc9a9e7ad4421cea4aeebf274278e256d1a62/1421450688000000 + <p> +[1.7.x] Fixed a typo in the test responses docs. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/996292d6498d25c6b3e84435e82edeff5aaa0257/" title="Fixed a typo in the test responses docs.">996292d6498d25c6b3e84435e82edeff5aaa0257</a> from master +</p> + + changeset + + Changeset [801287b]: [1.8.x] Fixed a typo in the test responses docs. Backport of ... + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 23:24:44 GMT + https://code.djangoproject.com/changeset/801287bff262e3beb52d4b4fd21ec529416e079e + https://code.djangoproject.com/changeset/801287bff262e3beb52d4b4fd21ec529416e079e/1421450684000000 + <p> +[1.8.x] Fixed a typo in the test responses docs. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/996292d6498d25c6b3e84435e82edeff5aaa0257/" title="Fixed a typo in the test responses docs.">996292d6498d25c6b3e84435e82edeff5aaa0257</a> from master +</p> + + changeset + + Changeset [d9edd2f]: Fixed #21108 -- Updated how to release docs: prereleases now go to PyPI. + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 23:24:10 GMT + https://code.djangoproject.com/changeset/d9edd2f68f6edaa5e634a7d93b29fe97cb7312fe + https://code.djangoproject.com/changeset/d9edd2f68f6edaa5e634a7d93b29fe97cb7312fe/1421450650000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/21108" title="New feature: pip install --pre Django==1.xb not found (closed: fixed)">#21108</a> -- Updated how to release docs: prereleases now go to PyPI. +</p> + + changeset + + Changeset [996292d6]: Fixed a typo in the test responses docs. + + Simon Charette <charette.s@…> + + Fri, 16 Jan 2015 23:17:00 GMT + https://code.djangoproject.com/changeset/996292d6498d25c6b3e84435e82edeff5aaa0257 + https://code.djangoproject.com/changeset/996292d6498d25c6b3e84435e82edeff5aaa0257/1421450220000000 + <p> +Fixed a typo in the test responses docs. +</p> + + changeset + + Changeset [3fe3bdd]: Added stub release notes for Django 1.9. + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 23:00:45 GMT + https://code.djangoproject.com/changeset/3fe3bddc2895e4bd1f968a962da36748160f4dae + https://code.djangoproject.com/changeset/3fe3bddc2895e4bd1f968a962da36748160f4dae/1421449245000000 + <p> +Added stub release notes for Django 1.9. +</p> + + changeset + + Changeset [c72448b5]: Bumped version to 1.8 alpha 1. + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 22:06:32 GMT + https://code.djangoproject.com/changeset/c72448b59725c619f4f9d6e38264484c12c4c3b9 + https://code.djangoproject.com/changeset/c72448b59725c619f4f9d6e38264484c12c4c3b9/1421445992000000 + <p> +Bumped version to 1.8 alpha 1. +</p> + + changeset + + Changeset [3f23f1c]: Bumped version; master is now 1.9 pre-alpha. + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 22:04:35 GMT + https://code.djangoproject.com/changeset/3f23f1cfb472e77bb1f9260a71b40f895438658d + https://code.djangoproject.com/changeset/3f23f1cfb472e77bb1f9260a71b40f895438658d/1421445875000000 + <p> +Bumped version; master is now 1.9 pre-alpha. +</p> + + changeset + + Changeset [39d95fb]: Fixed #24092 -- Widened base field support for ArrayField. Several ... + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 21:15:16 GMT + https://code.djangoproject.com/changeset/39d95fb6ada99c59d47fa0eae6d3128abafe2d58 + https://code.djangoproject.com/changeset/39d95fb6ada99c59d47fa0eae6d3128abafe2d58/1421442916000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24092" title="Bug: New ArrayField from django.contrib.postgres.fields does not correctly ... (closed: fixed)">#24092</a> -- Widened base field support for ArrayField. +</p> +<p> +Several issues resolved here, following from a report that a base_field +of GenericIpAddressField was failing. +</p> +<p> +We were using get_prep_value instead of get_db_prep_value in ArrayField +which was bypassing any extra modifications to the value being made in +the base field's get_db_prep_value. Changing this broke datetime +support, so the postgres backend has gained the relevant operation +methods to send dates/times/datetimes directly to the db backend instead +of casting them to strings. Similarly, a new database feature has been +added allowing the uuid to be passed directly to the backend, as we do +with timedeltas. +</p> +<p> +On the other side, psycopg2 expects an Inet() instance for IP address +fields, so we add a value_to_db_ipaddress method to wrap the strings on +postgres. We also have to manually add a database adapter to psycopg2, +as we do not wish to use the built in adapter which would turn +everything into Inet() instances. +</p> +<p> +Thanks to smclenithan for the report. +</p> + + changeset + + Changeset [a17724b7]: Fixed the length of a headline in the 1.8 release notes. This broke ... + + Jannis Leidel <jannis@…> + + Fri, 16 Jan 2015 20:29:28 GMT + https://code.djangoproject.com/changeset/a17724b791275578334bcdc66b3a8113eb86605e + https://code.djangoproject.com/changeset/a17724b791275578334bcdc66b3a8113eb86605e/1421440168000000 + <p> +Fixed the length of a headline in the 1.8 release notes. +</p> +<p> +This broke the website design in the sidebar because the line could not be wrapped. +</p> + + changeset + + Changeset [e8171da]: Fixed #24146 -- Fixed a missing fields regression in admin checks. ... + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 19:47:09 GMT + https://code.djangoproject.com/changeset/e8171daf0cd7f0e070395cb4c850c17fea32f11d + https://code.djangoproject.com/changeset/e8171daf0cd7f0e070395cb4c850c17fea32f11d/1421437629000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24146" title="Bug: (admin.E116) The value of 'list_filter[0]' refers to 'through__field', ... (closed: fixed)">#24146</a> -- Fixed a missing fields regression in admin checks. +</p> +<p> +This allows using get_field() early in the app loading process. +</p> +<p> +Thanks to PirosB3 and Tim Graham. +</p> + + changeset + + Changeset [8e8daf7c]: Removed empty sections in 1.8 minor features. + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 19:41:05 GMT + https://code.djangoproject.com/changeset/8e8daf7c9b0f951ed53c322eada0e61e55a57a9f + https://code.djangoproject.com/changeset/8e8daf7c9b0f951ed53c322eada0e61e55a57a9f/1421437265000000 + <p> +Removed empty sections in 1.8 minor features. +</p> + + changeset + + Changeset [b4ac232]: Fixed #24099 -- Removed contenttype.name deprecated field This ... + + Markus Holtermann <info@…> + + Fri, 16 Jan 2015 19:21:34 GMT + https://code.djangoproject.com/changeset/b4ac23290772e0c11379eb2dfb81c750b7052b66 + https://code.djangoproject.com/changeset/b4ac23290772e0c11379eb2dfb81c750b7052b66/1421436094000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24099" title="Cleanup/optimization: Remove ContentType.name (closed: fixed)">#24099</a> -- Removed contenttype.name deprecated field +</p> +<p> +This finsishes the work started on <a class="closed ticket" href="https://code.djangoproject.com/ticket/16803" title="Bug: Unicode representation of ContentType instances is not translated (closed: fixed)">#16803</a>. +Thanks Simon Charette, Tim Graham and Collin Anderson for the +reviews. +</p> + + changeset + + Changeset [374c2419]: Tested that geo aggregates support slicing Refs #15101. Patch ... + + Claude Paroz <claude@…> + + Fri, 16 Jan 2015 19:10:25 GMT + https://code.djangoproject.com/changeset/374c2419e5adef53a643bf69c4753a6bf0c78a98 + https://code.djangoproject.com/changeset/374c2419e5adef53a643bf69c4753a6bf0c78a98/1421435425000000 + <p> +Tested that geo aggregates support slicing +</p> +<p> +Refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/15101" title="Bug: GeoQuerySet extent() method fails to limit (closed: fixed)">#15101</a>. Patch slightly reworked by Claude Paroz. +</p> + + changeset + + Changeset [a79e6b67]: Fixed #24152 -- Deprecated GeoQuerySet aggregate methods Thanks Josh ... + + Claude Paroz <claude@…> + + Fri, 16 Jan 2015 18:53:02 GMT + https://code.djangoproject.com/changeset/a79e6b67175f532049967268c10609af6d31d140 + https://code.djangoproject.com/changeset/a79e6b67175f532049967268c10609af6d31d140/1421434382000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24152" title="Cleanup/optimization: Deprecate GeoQuerySet aggregate methods (closed: fixed)">#24152</a> -- Deprecated GeoQuerySet aggregate methods +</p> +<p> +Thanks Josh Smeaton and Tim Graham for the reviews. +</p> + + changeset + + Changeset [cef3f805]: [1.7.x] Fixed #24160 -- Fixed model_regress test on Windows; refs ... + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 17:03:15 GMT + https://code.djangoproject.com/changeset/cef3f805c21c029d017e6704565f9f2f5746a1e5 + https://code.djangoproject.com/changeset/cef3f805c21c029d017e6704565f9f2f5746a1e5/1421427795000000 + <p> +[1.7.x] Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24160" title="Bug: Fatal Python error: Failed to initialize Windows random API (CryptoGen) (closed: fixed)">#24160</a> -- Fixed model_regress test on Windows; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/24007" title="Bug: Unable to unpickle models from an external script (closed: fixed)">#24007</a>. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/5338ff4808c822a8b00e90154b884b7be3011e60/" title="Fixed #24160 -- Fixed model_regress test on Windows; refs #24007.">5338ff4808c822a8b00e90154b884b7be3011e60</a> from master +</p> + + changeset + + Changeset [5338ff4]: Fixed #24160 -- Fixed model_regress test on Windows; refs #24007. + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 16:59:08 GMT + https://code.djangoproject.com/changeset/5338ff4808c822a8b00e90154b884b7be3011e60 + https://code.djangoproject.com/changeset/5338ff4808c822a8b00e90154b884b7be3011e60/1421427548000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24160" title="Bug: Fatal Python error: Failed to initialize Windows random API (CryptoGen) (closed: fixed)">#24160</a> -- Fixed model_regress test on Windows; refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/24007" title="Bug: Unable to unpickle models from an external script (closed: fixed)">#24007</a>. +</p> + + changeset + + Changeset [fb614ff4]: [1.6.x] Fixed #23312 -- Marked an i18n test as expectedFailure on ... + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 15:34:46 GMT + https://code.djangoproject.com/changeset/fb614ff4a712cf7d221ed9ddeb7e4164e882ba81 + https://code.djangoproject.com/changeset/fb614ff4a712cf7d221ed9ddeb7e4164e882ba81/1421422486000000 + <p> +[1.6.x] Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/23312" title="Bug: Windows/Python 3 test failure: test_unicode_decode_error (closed: fixed)">#23312</a> -- Marked an i18n test as expectedFailure on Windows/Python 3. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/433e7dd5076e492290a90130c9b3e2b1319b2f95/" title="[1.7.x] Fixed #23312 -- Marked an i18n test as expectedFailure on ...">433e7dd5076e492290a90130c9b3e2b1319b2f95</a> from stable/1.7.x +</p> + + changeset + + Changeset [433e7dd]: [1.7.x] Fixed #23312 -- Marked an i18n test as expectedFailure on ... + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 15:31:49 GMT + https://code.djangoproject.com/changeset/433e7dd5076e492290a90130c9b3e2b1319b2f95 + https://code.djangoproject.com/changeset/433e7dd5076e492290a90130c9b3e2b1319b2f95/1421422309000000 + <p> +[1.7.x] Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/23312" title="Bug: Windows/Python 3 test failure: test_unicode_decode_error (closed: fixed)">#23312</a> -- Marked an i18n test as expectedFailure on Windows/Python 3. +</p> + + changeset + + Changeset [bd08cfca]: [1.7.x] Fixed #24143 -- Encouraged use of Http404 messages for ... + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 14:42:03 GMT + https://code.djangoproject.com/changeset/bd08cfca6ff04e7cec940f5b59e97cdcceddcc69 + https://code.djangoproject.com/changeset/bd08cfca6ff04e7cec940f5b59e97cdcceddcc69/1421419323000000 + <p> +[1.7.x] Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24143" title="Cleanup/optimization: Documentation uses uninstantiated Http404s (closed: fixed)">#24143</a> -- Encouraged use of Http404 messages for debugging. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/726a9550db5129badc1c44809b0bed728fa1ad90/" title="Fixed #24143 -- Encouraged use of Http404 messages for debugging.">726a9550db5129badc1c44809b0bed728fa1ad90</a> from master +</p> + + changeset + + Changeset [726a9550]: Fixed #24143 -- Encouraged use of Http404 messages for debugging. + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 14:41:01 GMT + https://code.djangoproject.com/changeset/726a9550db5129badc1c44809b0bed728fa1ad90 + https://code.djangoproject.com/changeset/726a9550db5129badc1c44809b0bed728fa1ad90/1421419261000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24143" title="Cleanup/optimization: Documentation uses uninstantiated Http404s (closed: fixed)">#24143</a> -- Encouraged use of Http404 messages for debugging. +</p> + + changeset + + Changeset [a34fba5]: Simplified a bit GeoAggregate classes Thanks Josh Smeaton for the ... + + Claude Paroz <claude@…> + + Fri, 16 Jan 2015 09:40:45 GMT + https://code.djangoproject.com/changeset/a34fba5e596a3ec95bf284fd77b1609e71a65019 + https://code.djangoproject.com/changeset/a34fba5e596a3ec95bf284fd77b1609e71a65019/1421401245000000 + <p> +Simplified a bit GeoAggregate classes +</p> +<p> +Thanks Josh Smeaton for the review. Refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/24152" title="Cleanup/optimization: Deprecate GeoQuerySet aggregate methods (closed: fixed)">#24152</a>. +</p> + + changeset + + Changeset [065b2a82]: [1.7.x] Fixed #24135 -- Made RenameModel rename many-to-many tables. ... + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 01:43:49 GMT + https://code.djangoproject.com/changeset/065b2a82f6d7539032e15308351fa5eee95c0cb9 + https://code.djangoproject.com/changeset/065b2a82f6d7539032e15308351fa5eee95c0cb9/1421372629000000 + <p> +[1.7.x] Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24135" title="Bug: migrations.RenameModel does not rename m2m tables (closed: fixed)">#24135</a> -- Made RenameModel rename many-to-many tables. +</p> +<p> +Thanks Simon and Markus for reviews. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/28db4af80a319485c0da724d692e2f8396aa57e3/" title="Fixed #24135 -- Made RenameModel rename many-to-many tables. +Thanks ...">28db4af80a319485c0da724d692e2f8396aa57e3</a> from master +</p> + + changeset + + Changeset [28db4af]: Fixed #24135 -- Made RenameModel rename many-to-many tables. Thanks ... + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 01:34:33 GMT + https://code.djangoproject.com/changeset/28db4af80a319485c0da724d692e2f8396aa57e3 + https://code.djangoproject.com/changeset/28db4af80a319485c0da724d692e2f8396aa57e3/1421372073000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24135" title="Bug: migrations.RenameModel does not rename m2m tables (closed: fixed)">#24135</a> -- Made RenameModel rename many-to-many tables. +</p> +<p> +Thanks Simon and Markus for reviews. +</p> + + changeset + + Changeset [3f9ec12d]: Fixed #23712 -- Fixed KeyError with BaseForm._html_output() + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 01:19:53 GMT + https://code.djangoproject.com/changeset/3f9ec12d9c9eff9a3b1a205d87c7e66587cf9967 + https://code.djangoproject.com/changeset/3f9ec12d9c9eff9a3b1a205d87c7e66587cf9967/1421371193000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/23712" title="Bug: BaseForm._html_output() uses inconsistent formatting for normal row (closed: fixed)">#23712</a> -- Fixed KeyError with BaseForm._html_output() +</p> + + changeset + + Changeset [faf0d66a]: Fixed #23850 -- Fixed a migrations test failure on Mac OS X & Python 3 + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 00:45:43 GMT + https://code.djangoproject.com/changeset/faf0d66a80e09be3656a337c33a8e70c7fbab7e3 + https://code.djangoproject.com/changeset/faf0d66a80e09be3656a337c33a8e70c7fbab7e3/1421369143000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/23850" title="Bug: Test failure in migrations tests on OS X (closed: fixed)">#23850</a> -- Fixed a migrations test failure on Mac OS X &amp; Python 3 +</p> + + changeset + + Changeset [39b58ad]: Fixed #24148 -- Documented a bug with case expressions in SQLite < 3.7.0 + + Tim Graham <timograham@…> + + Fri, 16 Jan 2015 00:42:05 GMT + https://code.djangoproject.com/changeset/39b58ad95ade8109de0f0ae3930e333b7f689c0f + https://code.djangoproject.com/changeset/39b58ad95ade8109de0f0ae3930e333b7f689c0f/1421368925000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24148" title="Bug: test_combined_expression test failure on Windows/Python 2 (closed: fixed)">#24148</a> -- Documented a bug with case expressions in SQLite &lt; 3.7.0 +</p> + + changeset + + Changeset [b419bd3]: [1.7.x] Refs #24075 -- Silenced needless call_command output while ... + + Markus Holtermann <info@…> + + Thu, 15 Jan 2015 20:13:27 GMT + https://code.djangoproject.com/changeset/b419bd38431b83eec93376cd911e2b17eb8e7342 + https://code.djangoproject.com/changeset/b419bd38431b83eec93376cd911e2b17eb8e7342/1421352807000000 + <p> +[1.7.x] Refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/24075" title="Bug: Can't migrate contenttypes and auth to zero (closed: fixed)">#24075</a> -- Silenced needless call_command output while running tests +</p> +<p> +Thanks Tim Graham for the report +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/51dc617b21e67636d96cf645905797a4d6ff4bf0/" title="Refs #24075 -- Silenced needless call_command output while running ...">51dc617b21e67636d96cf645905797a4d6ff4bf0</a> from master +</p> + + changeset + + Changeset [51dc617b]: Refs #24075 -- Silenced needless call_command output while running ... + + Markus Holtermann <info@…> + + Thu, 15 Jan 2015 20:07:39 GMT + https://code.djangoproject.com/changeset/51dc617b21e67636d96cf645905797a4d6ff4bf0 + https://code.djangoproject.com/changeset/51dc617b21e67636d96cf645905797a4d6ff4bf0/1421352459000000 + <p> +Refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/24075" title="Bug: Can't migrate contenttypes and auth to zero (closed: fixed)">#24075</a> -- Silenced needless call_command output while running tests +</p> +<p> +Thanks Tim Graham for the report +</p> + + changeset + + Changeset [67dbc56]: Made an expressions_case test work without Pillow. + + Tim Graham <timograham@…> + + Thu, 15 Jan 2015 19:02:58 GMT + https://code.djangoproject.com/changeset/67dbc56ec8657e02247c97ec06f7cde8d4808f0d + https://code.djangoproject.com/changeset/67dbc56ec8657e02247c97ec06f7cde8d4808f0d/1421348578000000 + <p> +Made an expressions_case test work without Pillow. +</p> + + changeset + + Changeset [47bdad4e]: Replaced inner functions by class methods. refs #24031 Thanks to Tim ... + + Simon Charette <charette.s@…> + + Thu, 15 Jan 2015 18:03:34 GMT + https://code.djangoproject.com/changeset/47bdad4e6b3bf70aec0d19d65eeb6a7319ad045a + https://code.djangoproject.com/changeset/47bdad4e6b3bf70aec0d19d65eeb6a7319ad045a/1421345014000000 + <p> +Replaced inner functions by class methods. +</p> +<p> +refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/24031" title="New feature: Implement a Case/When expression (closed: fixed)">#24031</a> +</p> +<p> +Thanks to Tim Graham and Michał Modzelewski for the review. +</p> + + changeset + + Changeset [57671dd0]: [1.5.x] Direct readers to format_html() in mark_safe() docs. Backport ... + + Luke Plant <L.Plant.98@…> + + Thu, 15 Jan 2015 08:32:32 GMT + https://code.djangoproject.com/changeset/57671dd0b91ed4def9c7a49c486944f4e98fed9d + https://code.djangoproject.com/changeset/57671dd0b91ed4def9c7a49c486944f4e98fed9d/1421310752000000 + <p> +[1.5.x] Direct readers to format_html() in mark_safe() docs. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/4832c004e88a68b98b976b4f68a1c9fdb4ea3530/" title="Direct readers to format_html() in mark_safe() docs.">4832c004e88a68b98b976b4f68a1c9fdb4ea3530</a> from master +</p> + + changeset + + Changeset [b9101fa7]: [1.6.x] Direct readers to format_html() in mark_safe() docs. Backport ... + + Luke Plant <L.Plant.98@…> + + Thu, 15 Jan 2015 08:30:38 GMT + https://code.djangoproject.com/changeset/b9101fa7a2180f121fc828174149b61e9151e69d + https://code.djangoproject.com/changeset/b9101fa7a2180f121fc828174149b61e9151e69d/1421310638000000 + <p> +[1.6.x] Direct readers to format_html() in mark_safe() docs. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/4832c004e88a68b98b976b4f68a1c9fdb4ea3530/" title="Direct readers to format_html() in mark_safe() docs.">4832c004e88a68b98b976b4f68a1c9fdb4ea3530</a> from master +</p> + + changeset + + Changeset [327703c]: [1.7.x] Direct readers to format_html() in mark_safe() docs. Backport ... + + Luke Plant <L.Plant.98@…> + + Thu, 15 Jan 2015 08:29:00 GMT + https://code.djangoproject.com/changeset/327703c0672b705f264d2611aacbe2ce9795749b + https://code.djangoproject.com/changeset/327703c0672b705f264d2611aacbe2ce9795749b/1421310540000000 + <p> +[1.7.x] Direct readers to format_html() in mark_safe() docs. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/4832c004e88a68b98b976b4f68a1c9fdb4ea3530/" title="Direct readers to format_html() in mark_safe() docs.">4832c004e88a68b98b976b4f68a1c9fdb4ea3530</a> from master +</p> + + changeset + + Changeset [4832c004]: Direct readers to format_html() in mark_safe() docs. + + Luke Plant <L.Plant.98@…> + + Thu, 15 Jan 2015 08:24:54 GMT + https://code.djangoproject.com/changeset/4832c004e88a68b98b976b4f68a1c9fdb4ea3530 + https://code.djangoproject.com/changeset/4832c004e88a68b98b976b4f68a1c9fdb4ea3530/1421310294000000 + <p> +Direct readers to format_html() in mark_safe() docs. +</p> + + changeset + + Changeset [67bcae1]: Moved check_aggregate_support to BaseSpatialOperations + + Claude Paroz <claude@…> + + Wed, 14 Jan 2015 21:03:41 GMT + https://code.djangoproject.com/changeset/67bcae1e5890c77d789d10cfe8644b5ab00ffb81 + https://code.djangoproject.com/changeset/67bcae1e5890c77d789d10cfe8644b5ab00ffb81/1421269421000000 + <p> +Moved check_aggregate_support to BaseSpatialOperations +</p> + + changeset + + Changeset [9801d41]: Skipped a problematic file_storage test on Windows. + + Tim Graham <timograham@…> + + Wed, 14 Jan 2015 20:00:27 GMT + https://code.djangoproject.com/changeset/9801d419b9e3d3c716cb857e4337f403d1c50706 + https://code.djangoproject.com/changeset/9801d419b9e3d3c716cb857e4337f403d1c50706/1421265627000000 + <p> +Skipped a problematic file_storage test on Windows. +</p> + + changeset + + Changeset [2d5da57f]: Fixed incorrect error message in Options.get_fields() + + Tim Graham <timograham@…> + + Wed, 14 Jan 2015 19:51:05 GMT + https://code.djangoproject.com/changeset/2d5da57f4856656677d82d4a56f5914f3cc431d8 + https://code.djangoproject.com/changeset/2d5da57f4856656677d82d4a56f5914f3cc431d8/1421265065000000 + <p> +Fixed incorrect error message in Options.get_fields() +</p> + + changeset + + Changeset [478546f]: [1.7.x] Fixed #24075 -- Prevented running post_migrate signals when ... + + Markus Holtermann <info@…> + + Wed, 14 Jan 2015 19:37:56 GMT + https://code.djangoproject.com/changeset/478546fcef38d95866a92bc44d10e15b26c7254c + https://code.djangoproject.com/changeset/478546fcef38d95866a92bc44d10e15b26c7254c/1421264276000000 + <p> +[1.7.x] Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24075" title="Bug: Can't migrate contenttypes and auth to zero (closed: fixed)">#24075</a> -- Prevented running post_migrate signals when unapplying initial migrations of contenttypes and auth +</p> +<p> +Thanks Florian Apolloner for the report and Claude Paroz and Tim Graham for the review and help on the patch. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/737d24923ac69bb8b89af1bb2f3f4c4c744349e8/" title="Fixed #24075 -- Prevented running post_migrate signals when unapplying ...">737d24923ac69bb8b89af1bb2f3f4c4c744349e8</a> from master. +</p> + + changeset + + Changeset [28308078]: Fixed #22603 -- Reorganized classes in django.db.backends. + + Tim Graham <timograham@…> + + Wed, 14 Jan 2015 19:16:20 GMT + https://code.djangoproject.com/changeset/28308078f397d1de36fd0da417ac7da2544ba12d + https://code.djangoproject.com/changeset/28308078f397d1de36fd0da417ac7da2544ba12d/1421262980000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/22603" title="Cleanup/optimization: Reorganize code in django.db.backends (closed: fixed)">#22603</a> -- Reorganized classes in django.db.backends. +</p> + + changeset + + Changeset [737d249]: Fixed #24075 -- Prevented running post_migrate signals when unapplying ... + + Markus Holtermann <info@…> + + Wed, 14 Jan 2015 18:59:39 GMT + https://code.djangoproject.com/changeset/737d24923ac69bb8b89af1bb2f3f4c4c744349e8 + https://code.djangoproject.com/changeset/737d24923ac69bb8b89af1bb2f3f4c4c744349e8/1421261979000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24075" title="Bug: Can't migrate contenttypes and auth to zero (closed: fixed)">#24075</a> -- Prevented running post_migrate signals when unapplying initial migrations of contenttypes and auth +</p> +<p> +Thanks Florian Apolloner for the report and Claude Paroz and Tim Graham for the review and help on the patch. +</p> + + changeset + + Changeset [99e6ac7]: [1.4.x] Fixed a static view test on Windows. Backport of ... + + Tim Graham <timograham@…> + + Wed, 14 Jan 2015 18:57:59 GMT + https://code.djangoproject.com/changeset/99e6ac77f2b5c701896dd83ce99ff12278cdbeef + https://code.djangoproject.com/changeset/99e6ac77f2b5c701896dd83ce99ff12278cdbeef/1421261879000000 + <p> +[1.4.x] Fixed a static view test on Windows. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/a6f144fd4fee0090de3a99b1f50a4142722e7946/" title="Fixed a static view test on Windows.">a6f144fd4fee0090de3a99b1f50a4142722e7946</a> from master +</p> + + changeset + + Changeset [79df62f]: [1.6.x] Fixed a static view test on Windows. Backport of ... + + Tim Graham <timograham@…> + + Wed, 14 Jan 2015 18:57:14 GMT + https://code.djangoproject.com/changeset/79df62f4d2254a1158f5fda4bfddbfcea570c735 + https://code.djangoproject.com/changeset/79df62f4d2254a1158f5fda4bfddbfcea570c735/1421261834000000 + <p> +[1.6.x] Fixed a static view test on Windows. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/a6f144fd4fee0090de3a99b1f50a4142722e7946/" title="Fixed a static view test on Windows.">a6f144fd4fee0090de3a99b1f50a4142722e7946</a> from master +</p> + + changeset + + Changeset [02c059f]: [1.7.x] Fixed a static view test on Windows. Backport of ... + + Tim Graham <timograham@…> + + Wed, 14 Jan 2015 18:57:10 GMT + https://code.djangoproject.com/changeset/02c059ff7f282e541629a67e25a70a292cc01d87 + https://code.djangoproject.com/changeset/02c059ff7f282e541629a67e25a70a292cc01d87/1421261830000000 + <p> +[1.7.x] Fixed a static view test on Windows. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/a6f144fd4fee0090de3a99b1f50a4142722e7946/" title="Fixed a static view test on Windows.">a6f144fd4fee0090de3a99b1f50a4142722e7946</a> from master +</p> + + changeset + + Changeset [a6f144f]: Fixed a static view test on Windows. + + Tim Graham <timograham@…> + + Wed, 14 Jan 2015 18:56:49 GMT + https://code.djangoproject.com/changeset/a6f144fd4fee0090de3a99b1f50a4142722e7946 + https://code.djangoproject.com/changeset/a6f144fd4fee0090de3a99b1f50a4142722e7946/1421261809000000 + <p> +Fixed a static view test on Windows. +</p> + + changeset + + Changeset [88786af]: Fixed #24147 -- Prevented managers leaking model during migrations ... + + Markus Holtermann <info@…> + + Wed, 14 Jan 2015 15:09:33 GMT + https://code.djangoproject.com/changeset/88786afbffc5c095f6491e080afea394f63bb44a + https://code.djangoproject.com/changeset/88786afbffc5c095f6491e080afea394f63bb44a/1421248173000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24147" title="Bug: Model managers in migration leak referenced model across project states (closed: fixed)">#24147</a> -- Prevented managers leaking model during migrations +</p> +<p> +Thanks Tim Graham for the review. +</p> + + changeset + + Changeset [2e261799]: [1.7.x] Added stub release notes for 1.7.4. Backport of ... + + Tim Graham <timograham@…> + + Wed, 14 Jan 2015 14:48:06 GMT + https://code.djangoproject.com/changeset/2e2617991a6f446defc755c6b73e6e9db865f197 + https://code.djangoproject.com/changeset/2e2617991a6f446defc755c6b73e6e9db865f197/1421246886000000 + <p> +[1.7.x] Added stub release notes for 1.7.4. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/ec7ef5afbbd12abe74314d557aabb3d85d667749/" title="Added stub release notes for 1.7.4.">ec7ef5afbbd12abe74314d557aabb3d85d667749</a> from master +</p> + + changeset + + Changeset [ec7ef5af]: Added stub release notes for 1.7.4. + + Tim Graham <timograham@…> + + Wed, 14 Jan 2015 14:47:29 GMT + https://code.djangoproject.com/changeset/ec7ef5afbbd12abe74314d557aabb3d85d667749 + https://code.djangoproject.com/changeset/ec7ef5afbbd12abe74314d557aabb3d85d667749/1421246849000000 + <p> +Added stub release notes for 1.7.4. +</p> + + changeset + + Changeset [dc90bf2]: Removed unused import + + Claude Paroz <claude@…> + + Wed, 14 Jan 2015 08:31:24 GMT + https://code.djangoproject.com/changeset/dc90bf2ac823ed9841cc8ca4035fe0b62a18c958 + https://code.djangoproject.com/changeset/dc90bf2ac823ed9841cc8ca4035fe0b62a18c958/1421224284000000 + <p> +Removed unused import +</p> + + changeset + + Changeset [1913c1a]: Added today's security issues to the archive. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 19:44:08 GMT + https://code.djangoproject.com/changeset/1913c1ac2190cdc31de9dcd81687f5dad057e2f0 + https://code.djangoproject.com/changeset/1913c1ac2190cdc31de9dcd81687f5dad057e2f0/1421178248000000 + <p> +Added today's security issues to the archive. +</p> + + changeset + + Changeset [7ecd6544]: Removed blank lines from docs/releases/security.txt + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 19:37:30 GMT + https://code.djangoproject.com/changeset/7ecd654497e778550735b77794eae62a9d014272 + https://code.djangoproject.com/changeset/7ecd654497e778550735b77794eae62a9d014272/1421177850000000 + <p> +Removed blank lines from docs/releases/security.txt +</p> + + changeset + + Changeset [4296a1da]: [1.4.x] Post-release version bump. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 19:16:07 GMT + https://code.djangoproject.com/changeset/4296a1da8b2acf118814669fa045a3c353c8892e + https://code.djangoproject.com/changeset/4296a1da8b2acf118814669fa045a3c353c8892e/1421176567000000 + <p> +[1.4.x] Post-release version bump. +</p> + + changeset + + Changeset [4c6bd574]: [1.6.x] Post-release version bump. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 19:15:55 GMT + https://code.djangoproject.com/changeset/4c6bd574ad5fd8c6e9988b571ad41123ed348992 + https://code.djangoproject.com/changeset/4c6bd574ad5fd8c6e9988b571ad41123ed348992/1421176555000000 + <p> +[1.6.x] Post-release version bump. +</p> + + changeset + + Changeset [f7ce66b]: [1.7.x] Post-release version bump. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 19:14:05 GMT + https://code.djangoproject.com/changeset/f7ce66bc466e04249fbdc66048c3de6f605fddb1 + https://code.djangoproject.com/changeset/f7ce66bc466e04249fbdc66048c3de6f605fddb1/1421176445000000 + <p> +[1.7.x] Post-release version bump. +</p> + + changeset + + Changeset [bd9dcd2]: [1.4.x] Bumped version for 1.4.18 release. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:14:08 GMT + https://code.djangoproject.com/changeset/bd9dcd226b5b11fa40668553d26ce06000b3be75 + https://code.djangoproject.com/changeset/bd9dcd226b5b11fa40668553d26ce06000b3be75/1421172848000000 + <p> +[1.4.x] Bumped version for 1.4.18 release. +</p> + + changeset + + Changeset [e2fea7c7]: [1.6.x] Bumped version for 1.6.10 release. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:12:22 GMT + https://code.djangoproject.com/changeset/e2fea7c7145e6d26a17126c60bf090bab2932e7e + https://code.djangoproject.com/changeset/e2fea7c7145e6d26a17126c60bf090bab2932e7e/1421172742000000 + <p> +[1.6.x] Bumped version for 1.6.10 release. +</p> + + changeset + + Changeset [6bf1930f]: [1.7.x] Bumped version for 1.7.3 release. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:11:37 GMT + https://code.djangoproject.com/changeset/6bf1930fb5c7c6a47992ff368e21c58f4f14b402 + https://code.djangoproject.com/changeset/6bf1930fb5c7c6a47992ff368e21c58f4f14b402/1421172697000000 + <p> +[1.7.x] Bumped version for 1.7.3 release. +</p> + + changeset + + Changeset [88b7957]: [1.4.x] Added dates to release notes. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:10:54 GMT + https://code.djangoproject.com/changeset/88b7957b34b2305ece54a3aab57a87701279a1d8 + https://code.djangoproject.com/changeset/88b7957b34b2305ece54a3aab57a87701279a1d8/1421172654000000 + <p> +[1.4.x] Added dates to release notes. +</p> + + changeset + + Changeset [f9de1998]: [1.6.x] Added dates to release notes. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:10:25 GMT + https://code.djangoproject.com/changeset/f9de1998f9aac2387b6896653b3aa51ad372da81 + https://code.djangoproject.com/changeset/f9de1998f9aac2387b6896653b3aa51ad372da81/1421172625000000 + <p> +[1.6.x] Added dates to release notes. +</p> + + changeset + + Changeset [d7a06ee7]: [1.6.x] Fixed DoS possibility in ModelMultipleChoiceField. This is a ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:10:11 GMT + https://code.djangoproject.com/changeset/d7a06ee7e571b6dad07c0f5b519b1db02e2a476c + https://code.djangoproject.com/changeset/d7a06ee7e571b6dad07c0f5b519b1db02e2a476c/1421172611000000 + <p> +[1.6.x] Fixed DoS possibility in ModelMultipleChoiceField. +</p> +<p> +This is a security fix. Disclosure following shortly. +</p> +<p> +Thanks Keryn Knight for the report and initial patch. +</p> + + changeset + + Changeset [553779c]: [1.6.x] Prevented views.static.serve() from using large memory on ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:10:11 GMT + https://code.djangoproject.com/changeset/553779c4055e8742cc832ed525b9ee34b174934f + https://code.djangoproject.com/changeset/553779c4055e8742cc832ed525b9ee34b174934f/1421172611000000 + <p> +[1.6.x] Prevented views.static.serve() from using large memory on large files. +</p> +<p> +This is a security fix. Disclosure following shortly. +</p> + + changeset + + Changeset [72e0b03]: [1.6.x] Fixed is_safe_url() to handle leading whitespace. This is a ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:10:11 GMT + https://code.djangoproject.com/changeset/72e0b033662faa11bb7f516f18a132728aa0ae28 + https://code.djangoproject.com/changeset/72e0b033662faa11bb7f516f18a132728aa0ae28/1421172611000000 + <p> +[1.6.x] Fixed is_safe_url() to handle leading whitespace. +</p> +<p> +This is a security fix. Disclosure following shortly. +</p> + + changeset + + Changeset [d7597b31]: [1.6.x] Stripped headers containing underscores to prevent spoofing in ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:10:11 GMT + https://code.djangoproject.com/changeset/d7597b31d5c03106eeba4be14a33b32a5e25f4ee + https://code.djangoproject.com/changeset/d7597b31d5c03106eeba4be14a33b32a5e25f4ee/1421172611000000 + <p> +[1.6.x] Stripped headers containing underscores to prevent spoofing in WSGI environ. +</p> +<p> +This is a security fix. Disclosure following shortly. +</p> +<p> +Thanks to Jedediah Smith for the report. +</p> + + changeset + + Changeset [f143e25]: [1.6.x] Added stub release notes for security releases. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:10:11 GMT + https://code.djangoproject.com/changeset/f143e25883bb420fd8ec140a09dc88a899e9607e + https://code.djangoproject.com/changeset/f143e25883bb420fd8ec140a09dc88a899e9607e/1421172611000000 + <p> +[1.6.x] Added stub release notes for security releases. +</p> + + changeset + + Changeset [9b403a1]: [1.7.x] Added dates to release notes. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:09:34 GMT + https://code.djangoproject.com/changeset/9b403a108cfd1e63b5a99174c65c65fc41116d6e + https://code.djangoproject.com/changeset/9b403a108cfd1e63b5a99174c65c65fc41116d6e/1421172574000000 + <p> +[1.7.x] Added dates to release notes. +</p> + + changeset + + Changeset [cbbe6a6a]: Added dates to release notes. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:08:57 GMT + https://code.djangoproject.com/changeset/cbbe6a6abba6510716e25b7ee9364274334ffcfe + https://code.djangoproject.com/changeset/cbbe6a6abba6510716e25b7ee9364274334ffcfe/1421172537000000 + <p> +Added dates to release notes. +</p> + + changeset + + Changeset [baf2542]: Fixed DoS possibility in ModelMultipleChoiceField. This is a security ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:03:06 GMT + https://code.djangoproject.com/changeset/baf2542c4f502d8f5adc3704eb22ca237d50aee1 + https://code.djangoproject.com/changeset/baf2542c4f502d8f5adc3704eb22ca237d50aee1/1421172186000000 + <p> +Fixed DoS possibility in ModelMultipleChoiceField. +</p> +<p> +This is a security fix. Disclosure following shortly. +</p> +<p> +Thanks Keryn Knight for the report and initial patch. +</p> + + changeset + + Changeset [a3bebfd]: Ensured views.static.serve() doesn't use large memory on large files. ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:03:06 GMT + https://code.djangoproject.com/changeset/a3bebfdc34686622b91e7f3154390ca2058957f9 + https://code.djangoproject.com/changeset/a3bebfdc34686622b91e7f3154390ca2058957f9/1421172186000000 + <p> +Ensured views.static.serve() doesn't use large memory on large files. +</p> +<p> +This issue was fixed in master by refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/24072" title="New feature: Add wsgi.file_wrapper support to responses (closed: fixed)">#24072</a>. +</p> + + changeset + + Changeset [69b5e667]: Fixed is_safe_url() to handle leading whitespace. This is a security ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:03:06 GMT + https://code.djangoproject.com/changeset/69b5e667385db9ed5e61917a58a75f97b6a97e68 + https://code.djangoproject.com/changeset/69b5e667385db9ed5e61917a58a75f97b6a97e68/1421172186000000 + <p> +Fixed is_safe_url() to handle leading whitespace. +</p> +<p> +This is a security fix. Disclosure following shortly. +</p> + + changeset + + Changeset [316b8d4]: Stripped headers containing underscores to prevent spoofing in WSGI ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:03:05 GMT + https://code.djangoproject.com/changeset/316b8d49746933d1845d600314b002d9b64d3e3d + https://code.djangoproject.com/changeset/316b8d49746933d1845d600314b002d9b64d3e3d/1421172185000000 + <p> +Stripped headers containing underscores to prevent spoofing in WSGI environ. +</p> +<p> +This is a security fix. Disclosure following shortly. +</p> +<p> +Thanks to Jedediah Smith for the report. +</p> + + changeset + + Changeset [958aeda]: Added stub release notes for security releases. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:03:05 GMT + https://code.djangoproject.com/changeset/958aeda4b5efcde30438979d93fc585a2f12ce02 + https://code.djangoproject.com/changeset/958aeda4b5efcde30438979d93fc585a2f12ce02/1421172185000000 + <p> +Added stub release notes for security releases. +</p> + + changeset + + Changeset [bcfb477]: [1.7.x] Fixed DoS possibility in ModelMultipleChoiceField. This is a ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:02:56 GMT + https://code.djangoproject.com/changeset/bcfb47780ce7caecb409a9e9c1c314266e41d392 + https://code.djangoproject.com/changeset/bcfb47780ce7caecb409a9e9c1c314266e41d392/1421172176000000 + <p> +[1.7.x] Fixed DoS possibility in ModelMultipleChoiceField. +</p> +<p> +This is a security fix. Disclosure following shortly. +</p> +<p> +Thanks Keryn Knight for the report and initial patch. +</p> + + changeset + + Changeset [818e59a3]: [1.7.x] Prevented views.static.serve() from using large memory on ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:02:56 GMT + https://code.djangoproject.com/changeset/818e59a3f0fbadf6c447754d202d88df025f8f2a + https://code.djangoproject.com/changeset/818e59a3f0fbadf6c447754d202d88df025f8f2a/1421172176000000 + <p> +[1.7.x] Prevented views.static.serve() from using large memory on large files. +</p> +<p> +This is a security fix. Disclosure following shortly. +</p> + + changeset + + Changeset [de67dedc]: [1.7.x] Fixed is_safe_url() to handle leading whitespace. This is a ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:02:56 GMT + https://code.djangoproject.com/changeset/de67dedc771ad2edec15c1d00c083a1a084e1e89 + https://code.djangoproject.com/changeset/de67dedc771ad2edec15c1d00c083a1a084e1e89/1421172176000000 + <p> +[1.7.x] Fixed is_safe_url() to handle leading whitespace. +</p> +<p> +This is a security fix. Disclosure following shortly. +</p> + + changeset + + Changeset [41b4bc7]: [1.7.x] Stripped headers containing underscores to prevent spoofing in ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:02:56 GMT + https://code.djangoproject.com/changeset/41b4bc73ee0da7b2e09f4af47fc1fd21144c710f + https://code.djangoproject.com/changeset/41b4bc73ee0da7b2e09f4af47fc1fd21144c710f/1421172176000000 + <p> +[1.7.x] Stripped headers containing underscores to prevent spoofing in WSGI environ. +</p> +<p> +This is a security fix. Disclosure following shortly. +</p> +<p> +Thanks to Jedediah Smith for the report. +</p> + + changeset + + Changeset [33f1ccf5]: [1.7.x] Added stub release notes for security releases. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 18:02:55 GMT + https://code.djangoproject.com/changeset/33f1ccf5b1a928b8680e25b3e419834d139e04e8 + https://code.djangoproject.com/changeset/33f1ccf5b1a928b8680e25b3e419834d139e04e8/1421172175000000 + <p> +[1.7.x] Added stub release notes for security releases. +</p> + + changeset + + Changeset [a1a23038]: [1.6.x] Fixed bad model example in admin docs. Backport of ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 16:54:05 GMT + https://code.djangoproject.com/changeset/a1a230382d6e510199fb625d2d185a579713b712 + https://code.djangoproject.com/changeset/a1a230382d6e510199fb625d2d185a579713b712/1421168045000000 + <p> +[1.6.x] Fixed bad model example in admin docs. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/e7771ec380a116dbef481001fb1ce664f5c7311e/" title="Fixed bad model example in admin docs.">e7771ec380a116dbef481001fb1ce664f5c7311e</a> from master +</p> + + changeset + + Changeset [6a08020f]: [1.7.x] Fixed bad model example in admin docs. Backport of ... + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 16:53:59 GMT + https://code.djangoproject.com/changeset/6a08020fcff3681202047ba002c700fedebc6e74 + https://code.djangoproject.com/changeset/6a08020fcff3681202047ba002c700fedebc6e74/1421168039000000 + <p> +[1.7.x] Fixed bad model example in admin docs. +</p> +<p> +Backport of <a class="changeset" href="https://code.djangoproject.com/changeset/e7771ec380a116dbef481001fb1ce664f5c7311e/" title="Fixed bad model example in admin docs.">e7771ec380a116dbef481001fb1ce664f5c7311e</a> from master +</p> + + changeset + + Changeset [e7771ec]: Fixed bad model example in admin docs. + + Tim Graham <timograham@…> + + Tue, 13 Jan 2015 16:53:03 GMT + https://code.djangoproject.com/changeset/e7771ec380a116dbef481001fb1ce664f5c7311e + https://code.djangoproject.com/changeset/e7771ec380a116dbef481001fb1ce664f5c7311e/1421167983000000 + <p> +Fixed bad model example in admin docs. +</p> + + changeset + + Changeset [e084ff0]: Fixed #24136 -- Prevented crash when convert_extent input is None ... + + Claude Paroz <claude@…> + + Tue, 13 Jan 2015 16:27:11 GMT + https://code.djangoproject.com/changeset/e084ff01f27a28717eef471ff8e86b074d452f44 + https://code.djangoproject.com/changeset/e084ff01f27a28717eef471ff8e86b074d452f44/1421166431000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24136" title="Bug: GeoQueryset.extent() -&gt; TypeError (closed: fixed)">#24136</a> -- Prevented crash when convert_extent input is None +</p> +<p> +Thanks Max Demars for the report. +</p> + + changeset + + Changeset [65246de7]: Fixed #24031 -- Added CASE expressions to the ORM. + + Tim Graham <timograham@…> + + Mon, 12 Jan 2015 23:15:34 GMT + https://code.djangoproject.com/changeset/65246de7b1d70d25831ab394c4f4a75813f629fe + https://code.djangoproject.com/changeset/65246de7b1d70d25831ab394c4f4a75813f629fe/1421104534000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24031" title="New feature: Implement a Case/When expression (closed: fixed)">#24031</a> -- Added CASE expressions to the ORM. +</p> + + changeset + + Changeset [aa8ee6a]: Fixed test failures in Oracle introspection Refs #17785 + + Shai Berger <shai@…> + + Mon, 12 Jan 2015 23:00:09 GMT + https://code.djangoproject.com/changeset/aa8ee6a5731b37b73635e7605521fb1a54a5c10d + https://code.djangoproject.com/changeset/aa8ee6a5731b37b73635e7605521fb1a54a5c10d/1421103609000000 + <p> +Fixed test failures in Oracle introspection +</p> +<p> +Refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/17785" title="Bug: PostgreSQL Introspection: get_relations() broken after drop column (closed: fixed)">#17785</a> +</p> + + changeset + + Changeset [5d7217dc]: Fixed typo in docs/release/1.8.txt & added word for spelling check. + + Tim Graham <timograham@…> + + Mon, 12 Jan 2015 22:53:32 GMT + https://code.djangoproject.com/changeset/5d7217dce307ad55ca9f20da6737f6ab605ab96f + https://code.djangoproject.com/changeset/5d7217dce307ad55ca9f20da6737f6ab605ab96f/1421103212000000 + <p> +Fixed typo in docs/release/1.8.txt &amp; added word for spelling check. +</p> + + changeset + + Changeset [3844ccc9]: Fixed #24138 -- Added modelform_factory to __all__. + + Tim Graham <timograham@…> + + Mon, 12 Jan 2015 22:44:06 GMT + https://code.djangoproject.com/changeset/3844ccc958f59aef731dbb054a51fa37aa1d16ec + https://code.djangoproject.com/changeset/3844ccc958f59aef731dbb054a51fa37aa1d16ec/1421102646000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24138" title="Bug: Expose modelform_factory in __all__ (closed: fixed)">#24138</a> -- Added modelform_factory to <span class="underline">all</span>. +</p> + + changeset + + Changeset [21b858c]: Fixed #24060 -- Added OrderBy Expressions + + Josh Smeaton <josh.smeaton@…> + + Mon, 12 Jan 2015 22:39:55 GMT + https://code.djangoproject.com/changeset/21b858cb6735cdfdc695ff7b076e4cbc1981bc88 + https://code.djangoproject.com/changeset/21b858cb6735cdfdc695ff7b076e4cbc1981bc88/1421102395000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24060" title="New feature: Allow expressions to be used in order_by queryset method (closed: fixed)">#24060</a> -- Added OrderBy Expressions +</p> + + changeset + + Changeset [f48e2258]: Fixed #24133 -- Replaced formatting syntax in success_url placeholders ... + + Claude Paroz <claude@…> + + Mon, 12 Jan 2015 21:51:22 GMT + https://code.djangoproject.com/changeset/f48e2258a96a08dcec843921206bcf7656e3ae45 + https://code.djangoproject.com/changeset/f48e2258a96a08dcec843921206bcf7656e3ae45/1421099482000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24133" title="Bug: DeleteView success_url bug for non ascii urls (closed: fixed)">#24133</a> -- Replaced formatting syntax in success_url placeholders +</p> +<p> +Thanks Laurent Payot for the report, and Markus Holtermann, Tim Graham +for the reviews. +</p> + + changeset + + Changeset [5f7230e]: Fixed #24124 (again) -- Updated tests with new default ... + + Aymeric Augustin <aymeric.augustin@…> + + Mon, 12 Jan 2015 21:31:44 GMT + https://code.djangoproject.com/changeset/5f7230e12f0d237cdc19d8930006b0fc7d9dbaa6 + https://code.djangoproject.com/changeset/5f7230e12f0d237cdc19d8930006b0fc7d9dbaa6/1421098304000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24124" title="Cleanup/optimization: Review the list of default context processors (closed: fixed)">#24124</a> (again) -- Updated tests with new default context_processors. +</p> +<p> +Thanks Collin for the review. +</p> + + changeset + + Changeset [511a53b]: Avoided exceptions in admindocs' template detail view. This is ... + + Aymeric Augustin <aymeric.augustin@…> + + Mon, 12 Jan 2015 20:01:34 GMT + https://code.djangoproject.com/changeset/511a53b3142551a1bc3093ed1b6655f57634f510 + https://code.djangoproject.com/changeset/511a53b3142551a1bc3093ed1b6655f57634f510/1421092894000000 + <p> +Avoided exceptions in admindocs' template detail view. +</p> +<p> +This is marginally better than crashing when several Django template +engines are configured in a project. +</p> +<p> +Refs <a class="new ticket" href="https://code.djangoproject.com/ticket/24125" title="Bug: TemplateDetailView in admindocs requires a single Django templates engine (new)">#24125</a>. +</p> + + changeset + + Changeset [3bba4b42]: Avoided exceptions in a non-critical check in the admin. This change ... + + Aymeric Augustin <aymeric.augustin@…> + + Mon, 12 Jan 2015 20:01:34 GMT + https://code.djangoproject.com/changeset/3bba4b420ed5e89608d9d71ad328fbaed026b232 + https://code.djangoproject.com/changeset/3bba4b420ed5e89608d9d71ad328fbaed026b232/1421092894000000 + <p> +Avoided exceptions in a non-critical check in the admin. +</p> +<p> +This change makes it possible to configure several Django template +engines in a project and still use the admin. On the flip side the +check is silently skipped when no Django template engine is configured. +</p> + + changeset + + Changeset [6b5113ec]: Made debug views not crash when there isn't a default template engine. + + Aymeric Augustin <aymeric.augustin@…> + + Mon, 12 Jan 2015 20:01:34 GMT + https://code.djangoproject.com/changeset/6b5113ec94e6b9c81e3e4d9a68b0703ccb14c22d + https://code.djangoproject.com/changeset/6b5113ec94e6b9c81e3e4d9a68b0703ccb14c22d/1421092894000000 + <p> +Made debug views not crash when there isn't a default template engine. +</p> + + changeset + + Changeset [79deb6a0]: Accounted for multiple template engines in template responses. + + Aymeric Augustin <aymeric.augustin@…> + + Mon, 12 Jan 2015 20:01:34 GMT + https://code.djangoproject.com/changeset/79deb6a0716e554cac5308e86f5754f19ad436dc + https://code.djangoproject.com/changeset/79deb6a0716e554cac5308e86f5754f19ad436dc/1421092894000000 + <p> +Accounted for multiple template engines in template responses. +</p> + + changeset + + Changeset [a3e783fe]: Deprecated passing a Context to a generic Template.render. A ... + + Aymeric Augustin <aymeric.augustin@…> + + Mon, 12 Jan 2015 20:01:34 GMT + https://code.djangoproject.com/changeset/a3e783fe11dd25bbf84bfb6201186566ed473506 + https://code.djangoproject.com/changeset/a3e783fe11dd25bbf84bfb6201186566ed473506/1421092894000000 + <p> +Deprecated passing a Context to a generic Template.render. +</p> +<p> +A deprecation path is required because the return type of +django.template.loader.get_template changed during the +multiple template engines refactor. +</p> +<p> +test_csrf_token_in_404 was incorrect: it tested the case when the +hardcoded template was rendered, and that template doesn't depend on the +CSRF token. This commit makes it test the case when a custom template is +rendered. +</p> + + changeset + + Changeset [71b7668]: Rewrapped TemplateSyntaxError in Jinja2 backend. Changed import style ... + + Aymeric Augustin <aymeric.augustin@…> + + Mon, 12 Jan 2015 20:01:34 GMT + https://code.djangoproject.com/changeset/71b7668b75d10589bbbdc7c5ca9ee7a125f91c90 + https://code.djangoproject.com/changeset/71b7668b75d10589bbbdc7c5ca9ee7a125f91c90/1421092894000000 + <p> +Rewrapped TemplateSyntaxError in Jinja2 backend. +</p> +<p> +Changed import style to avoid confusion between Django's and Jinja2's +APIs. +</p> + + changeset + + Changeset [4c413e23]: Fixed #17785 -- Preferred column names in get_relations introspection ... + + Claude Paroz <claude@…> + + Mon, 12 Jan 2015 18:58:47 GMT + https://code.djangoproject.com/changeset/4c413e231cfe788de6e371567f395c8ccbd26103 + https://code.djangoproject.com/changeset/4c413e231cfe788de6e371567f395c8ccbd26103/1421089127000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/17785" title="Bug: PostgreSQL Introspection: get_relations() broken after drop column (closed: fixed)">#17785</a> -- Preferred column names in get_relations introspection +</p> +<p> +Thanks Thomas Güttler for the report and the initial patch, and +Tim Graham for the review. +</p> + + changeset + + Changeset [b75c707]: Fixed #24089 -- Added check for when ModelAdmin.fieldsets[1]['fields'] ... + + Tim Graham <timograham@…> + + Mon, 12 Jan 2015 18:47:58 GMT + https://code.djangoproject.com/changeset/b75c707943e159b80c179c538721406bbfb8b120 + https://code.djangoproject.com/changeset/b75c707943e159b80c179c538721406bbfb8b120/1421088478000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24089" title="Cleanup/optimization: Misleading error raised during system check related to ModelAdmin (closed: fixed)">#24089</a> -- Added check for when ModelAdmin.fieldsets<a class="changeset" href="https://code.djangoproject.com/changeset/1/">[1]</a><a class="missing wiki">fields?</a> isn't a list/tuple. +</p> + + changeset + + Changeset [eeb88123]: Fixed #24129 -- Added indicator that migrations are rendering the ... + + Markus Holtermann <info@…> + + Mon, 12 Jan 2015 18:23:46 GMT + https://code.djangoproject.com/changeset/eeb88123e725946802732162a22e5ad856e0c50c + https://code.djangoproject.com/changeset/eeb88123e725946802732162a22e5ad856e0c50c/1421087026000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24129" title="New feature: Add indicator that migrations are rendering model states before ... (closed: fixed)">#24129</a> -- Added indicator that migrations are rendering the initial state +</p> +<p> +Thanks Tim Graham for the review. +</p> + + changeset + + Changeset [9f51d0c]: Fixed test from refs #23913 when running tests in reverse. + + Tim Graham <timograham@…> + + Mon, 12 Jan 2015 18:20:44 GMT + https://code.djangoproject.com/changeset/9f51d0c86d9348349d921c393d6ffcbbfd521192 + https://code.djangoproject.com/changeset/9f51d0c86d9348349d921c393d6ffcbbfd521192/1421086844000000 + <p> +Fixed test from refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/23913" title="Cleanup/optimization: = comparison does work in templates although it shouldn't (closed: fixed)">#23913</a> when running tests in reverse. +</p> + + changeset + + Changeset [26a92619]: Fixed #24124 -- Changed context_processors in the default settings.py + + Collin Anderson <cmawebsite@…> + + Mon, 12 Jan 2015 18:17:44 GMT + https://code.djangoproject.com/changeset/26a92619f62aeb6f60e15c62e8322c96744eff26 + https://code.djangoproject.com/changeset/26a92619f62aeb6f60e15c62e8322c96744eff26/1421086664000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24124" title="Cleanup/optimization: Review the list of default context processors (closed: fixed)">#24124</a> -- Changed context_processors in the default settings.py +</p> + + changeset + + Changeset [bbbed99]: Fixed #24123 -- Used all available migrations to generate the initial ... + + Markus Holtermann <info@…> + + Mon, 12 Jan 2015 17:39:18 GMT + https://code.djangoproject.com/changeset/bbbed99f6260a8b3e65cb990e49721b1ce4a441b + https://code.djangoproject.com/changeset/bbbed99f6260a8b3e65cb990e49721b1ce4a441b/1421084358000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24123" title="Bug: LookupError when rolling back migrations (closed: fixed)">#24123</a> -- Used all available migrations to generate the initial migration state +</p> +<p> +Thanks Collin Anderson for the input when creating the patch and Tim Graham for the review. +</p> + + changeset + + Changeset [8f5d6c77]: Fixed #23878 -- Moved Query and Prefetch documentation + + Tim Graham <timograham@…> + + Mon, 12 Jan 2015 16:35:20 GMT + https://code.djangoproject.com/changeset/8f5d6c77b6bbe0390b683cea649de6ad24d80fef + https://code.djangoproject.com/changeset/8f5d6c77b6bbe0390b683cea649de6ad24d80fef/1421080520000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/23878" title="Cleanup/optimization: Query object/expression documentation needs to tidied (closed: fixed)">#23878</a> -- Moved Query and Prefetch documentation +</p> + + changeset + + Changeset [58833f51]: Made Django's templates get their own LANGUAGE_* variables. Refs #24117 + + Tim Graham <timograham@…> + + Mon, 12 Jan 2015 15:54:59 GMT + https://code.djangoproject.com/changeset/58833f519797e15ae3cb39b1613e5f7e09c96952 + https://code.djangoproject.com/changeset/58833f519797e15ae3cb39b1613e5f7e09c96952/1421078099000000 + <p> +Made Django's templates get their own LANGUAGE_* variables. +</p> +<p> +Refs <a class="new ticket" href="https://code.djangoproject.com/ticket/24117" title="Cleanup/optimization: make admin not require context_processors (new)">#24117</a> +</p> + + changeset + + Changeset [a7c256c]: Fixed #9893 -- Allowed using a field's max_length in the Storage. + + Tim Graham <timograham@…> + + Mon, 12 Jan 2015 14:09:18 GMT + https://code.djangoproject.com/changeset/a7c256cb5491bf2a77abdff01638239db5bfd9d5 + https://code.djangoproject.com/changeset/a7c256cb5491bf2a77abdff01638239db5bfd9d5/1421071758000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/9893" title="Bug: Filename + path length greater than 100 truncated on database ... (closed: fixed)">#9893</a> -- Allowed using a field's max_length in the Storage. +</p> + + changeset + + Changeset [b5c1a85]: Fixed #24118 -- Added --debug-sql option for tests. Added a ... + + Marc Tamlyn <marc.tamlyn@…> + + Mon, 12 Jan 2015 08:16:08 GMT + https://code.djangoproject.com/changeset/b5c1a85b50c709770b8e98aeecfeb8e81ca29dcf + https://code.djangoproject.com/changeset/b5c1a85b50c709770b8e98aeecfeb8e81ca29dcf/1421050568000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24118" title="New feature: Add --debug-sql option to tests to print SQL queries on failure (closed: fixed)">#24118</a> -- Added --debug-sql option for tests. +</p> +<p> +Added a --debug-sql option for tests and runtests.py which outputs the +SQL logger for failing tests. When combined with --verbosity=2, it also +outputs the SQL for passing tests. +</p> +<p> +Thanks to Berker, Tim, Markus, Shai, Josh and Anssi for review and +discussion. +</p> + + changeset + + Changeset [68a439a]: Removed supports_binary_field flag as all backends support them It ... + + Claude Paroz <claude@…> + + Sun, 11 Jan 2015 22:34:47 GMT + https://code.djangoproject.com/changeset/68a439a18da17a65555832eff0a7c2090655b583 + https://code.djangoproject.com/changeset/68a439a18da17a65555832eff0a7c2090655b583/1421015687000000 + <p> +Removed supports_binary_field flag as all backends support them +</p> +<p> +It was mainly for MySQL on Python 3, but now the current +recommended MySQL driver for Python 3 (mysqlclient) does support +binary fields, it is unneeded. Refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/20377" title="Cleanup/optimization: BinaryField doesn't work on MySQL and Python 3 (closed: fixed)">#20377</a>. +</p> + + changeset + + Changeset [d563e3b]: Fixed #23913 -- Deprecated the `=` comparison in `if` template tag. + + Tim Graham <timograham@…> + + Sun, 11 Jan 2015 20:21:01 GMT + https://code.djangoproject.com/changeset/d563e3be68369694a3bac1efd7779d8e03bb6a51 + https://code.djangoproject.com/changeset/d563e3be68369694a3bac1efd7779d8e03bb6a51/1421007661000000 + <p> +Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/23913" title="Cleanup/optimization: = comparison does work in templates although it shouldn't (closed: fixed)">#23913</a> -- Deprecated the <tt>=</tt> comparison in <tt>if</tt> template tag. +</p> + + changeset + + Changeset [412066e7]: Revert "Marked a test as an expected failure on MySQL and Python 3.2." ... + + Claude Paroz <claude@…> + + Sun, 11 Jan 2015 19:59:07 GMT + https://code.djangoproject.com/changeset/412066e71e81e899bca63523f239e56138ec9e9d + https://code.djangoproject.com/changeset/412066e71e81e899bca63523f239e56138ec9e9d/1421006347000000 + <p> +Revert "Marked a test as an expected failure on MySQL and Python 3.2." +</p> +<p> +This reverts commit <a class="changeset" href="https://code.djangoproject.com/changeset/832b4a5722ba6b55e7b17c3bac6614ecca9aa88d/" title="Marked a test as an expected failure on MySQL and Python 3.2. +This ...">832b4a5722ba6b55e7b17c3bac6614ecca9aa88d</a>. +We officially don't support MySQL on Python 3.2. Refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/20380" title="Cleanup/optimization: MySQL doesn't support dates below 1000 on Python 3.2 (closed: fixed)">#20380</a>. +</p> + + changeset + + Changeset [28de5cd]: Fixed spelling errors in docs. + + Tim Graham <timograham@…> + + Sun, 11 Jan 2015 18:24:13 GMT + https://code.djangoproject.com/changeset/28de5cd4de3ddacf67af40c6b31d4fefd85f31f8 + https://code.djangoproject.com/changeset/28de5cd4de3ddacf67af40c6b31d4fefd85f31f8/1421000653000000 + <p> +Fixed spelling errors in docs. +</p> + + changeset + + + \ No newline at end of file diff --git a/dashboard/fixtures/dashboard_example_data.json.gz b/dashboard/fixtures/dashboard_example_data.json.gz new file mode 100644 index 0000000000000000000000000000000000000000..d56f9aabc5b6ef0bde8d1ba8265c6308c4241de9 GIT binary patch literal 2076765 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

MGA-YX3|5h}xW+EU4_iM6Q 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%0A3lo_lo}M*;gEvcbk-j6%cP1vt36AiV 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 z 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

Tn||5Hock5J_y*QUsmp=0-K z77`9v2^i%BJ7VQglW}|ad0bT@g+?=EBLk)q}KbWDgo>VC)f`MbCbC1t$xKi zg(M7}7o{+_OB8&<{b!|Ep1c^ao65Y<5F_*SJqLp%lRwN572Xb!NG|n?oH_O^s(+a> zYT?*X-Vr39b|$dk;d_e@fYxjF7a81Mj_-{+9|RnC4Jl4h%Qh!U(W55}-n7{>9-D<@ zT|ztf+weW6*uX5nNB{A1`~jOq)9Z$Mj)ta<16XSPi#Bq0Qgg60>6TL@^ARyHjw&Tv zjB9v~k9NF>A}cF+eZsQ6L>*C*eDK(z2ai^ZN5BbNIZVy*mi8RWbNLP31{*2b=uPHN zYCEM@+uF1ID-vgISgH-Abj^2oEhpHdf+Se#CL4Cv4g@He!?#%xKRz}8KP`YBH{EYj z7eu)2QUfL(y{VG#`;%w_iQ)ufF=Lwbn7jYPY22owqmVppo~(Y}Yc9iSm&0#-H>^;h zPn*2121h^E249PA@UD4H74Oi_)*kJC6`^i=yL|GIq>fXm__5ZudXIGbj?jwGWW8{Q z(w{hQRBoxn?%lPmxaez}R8iec6*uJwpWUYLPoll>%Iu<|^dGZu<`~Z+wDh;I^1{QvRg^f7{11PQA6p& zKGOFRu1|4dOL*HBS=V+WLSCR^s^enLoaT!2Y~V64_4&ut>Ex8{)#cpHj3;e3Xu8hm z_nL!Yy=3^6ZF_7!sE~z|ut9&B@h!LoBNhYh#9lTDR#Jq=)~O=hk}+i(`3O`d&|fTS z7K7=P`8N&~Z>Ml|ub+m~yQf*XQsnprT02QZGlM|tc5F8GW6P@B*fUlT2&8Qf zs-yn;+u3Z#)%br1NDX(AFEt1((`CiSlOK(#AIyvfF$#pbnO7t9S_3Dne8qLk@WFRu zZCkq*;ADb7K-}B+@<5!&ER3)DT#zXIgzNt5t$WwH=Sy*3>H{aPZn(3v_>(|U=RAE) zgdvY949{JG-xM+o?=4gchW04s6);YxmsBIHa2|iA?Lk`ZA-m@aj^rZ=j41}80&=6f zopzl-=`RcNQG1({Wg5s!kSCl~`l(#e3Nt-2*i!e;g90JUHacB#=#5*ED(9ujO}YF5 zO`lD+xPh1)6l!%;2w%deMpk;uvS+gN6J$;b7>s4l98Abuo~?S~bztpW@+APFj`H*^|(2*T68`y|s z@}E^48_9AYY2~#0x&J6l2Cpv+@1-yPW{OpAZXf?%o-mih3Uy|%4)`8RnL>zBK&rma z%QlU{J`jbDID10ykmw_Q0WBT7Ziv>+TDIIT8! z=2*J^Oh|Kl$FAFK(kcN}6M4IWsoF=WnIM8`cZwcp$GWsX1FE9?TLcQHq|TEE95l0P z2=5XRe%fWnAxW={;zdL7@?gyK4&o;06!rk;HL=nbrdjrXQ{q>(Wgp=;zUgwCK@sox z)P z=8`^4SP=bBD?o;70!2`9O`+2ap83TEQ9bqF+`3})rIVIKY{*Mg`nJT~uaHJ*f?w^j zUj26C%$O=+aQLT_QbY(%>;L}Ypx1X57^MY_Nao=lpXYE=if))gMA5%6^#;xr+2LM}9;gaF zd5kxHS~=bImNPx@r9o?Z!HDN({EHICGd0(!3QF$G(D5_O72`-Vc{`0}29l=ViGDs) z_sIr7jRP69<%s0VKZM1~t9IcP=p@}*)1VUnCyRj`#Biw*Z8)pJ@4>-BNnpG!?{gD_ zG#}f#-V`+jDS{@inm-%dOSG@ccCO1m{J;&f69`bwTm%MbvEoAf4EyBQG-H-GHjWvfoF5)-8;lxGQy ze&BZxBCMTRsG@^+s@(Joc-weko$IYW&=h^t5C2O-0<W%E|Hf}WiJLb!^<5Xi z{HGi&HHVKC&_g6GJ-2hV@`xKpq|d?Jm&i6HBt!^*C~mKJkGKCvp7?C#3`dDq7lW1; zRTAgx6u4HIB?@%NTpu(!Z$1Av2j`kTp?KjQanMU3ygQC;&gF#1s9H}La)L8H9l^j6 z+nl>w{QmP z&=J=EXzF4H)k6QoySfkTUGCKIJtj|jqvwPIij&r1v4d~{#S5HQQPWffx=A0L5o9_X z;zeynN)(^a8tcN`N&rx|`vvRY5BTr=LOhH^oS@A~5BH=l@*2u=c#+F5%F$coyaM9@ zLDOhP8A~#KRt7EUSSKKKQWrQ37U)+>^q~ke#S#&}GChTjkMQXRCAP!rW(%HT zN-^(8oOV2J8$sREZM2nRvlsnE5gw(E75mHc%&B1~H&lBw|JWK6NIqAQW zspvfptCN8w+^-fpGHKwQuaLJ#?iZqv)vNCd!B0lUkGMboT!~5yq+Bui8yhZR1seAq zVScFIKMmYWxLeX`>g7!1&uy|rw4sXO{vi4= zNppz^ruB&A6DVS?gsLaAnrHt*Sh2E0^tIZMgHQOuKv;Y(#6DmKsOH>1yx)_1_|`zw zSH&~D{Hl=^FY;mh!EGcSBB@~rN-k=+>+-L9Po+c<+SO%OgfS3}J*Y}QWdX?);u4Ey z0n%l$7PwFUAT{aFF?~3W2)v}r%*@>!*c+cZYRaQZ- zVb!`6p^@EOEiutqKb@Y(?=QdloFd05E{}Tf(%9oycQDk1CO>i_1&j#5Yf~x@OTG)N zgvTR-*S}9E~#!YBJFbD1_u`aV}Zry5wVzdUhc>`T@K`BaUWl z)+DIUV-Bk@U6(?AD*0pMf2QmMq|4=sGR%udJjE?5{`7v^5g;u^RQnOCGaj7nMdN*LB=_! zk_Z6S$F#m-?Aid3fva6tX0>M2U&bX&jG#5jEyR&(y1zHg-1!$VlFbS7Xwd{YBKUpM zH5cUnd>kto-uv9WagP*a`IqQxstjpOZ2*4r$hWP3&9V|xBr(Rr+>#AGO3ej#k-xUb zMOS{CW|3_v!2x&%~y8iTn#l>ZeN1Z6BqWIGiKa&H+O_IZFk7$Wx$D4xw&8b{zYv9K<1 z#EeWJq1bVC$=D>gjeIA&d#|zod(svy1Cxta{%^Xf$I}Ua*({Led{EVWNdwOs(ED|P zC5z z@#w@zsv8;aEOjng?el;j|8>l^P4#rP^q^XfoM(DfmY5i3dDl*a;b0z{GW6NGQWFdJO2MM_2q$7X8-?5QW+T)D$%NixGfVC(liaGOzUKin<5piC2MXs zsW6C%(8`oCE$GtX3SA^gDx=1h?b=(&MTL;>>zwEI`ThR8uIE1IJm;L}ocHp2z21%w zZ51WGu(f{*2{>}CzgT>qS)riQM?Z(3r+4m}v&pe<>pXVb`RJTJaUNXyuYGTlR~>|Y z!xWDQ4Ex6o(X(~yG-nO<^}SJDyZWowfnZxKo8*M2(Nf2}sSJk?(nVv(5l3N4P}2|nC;`Ho)eshQqt!}LAJ#V>bG?pr|C zaM7KHDbbTOkuI}WS5K(o=m$MXNC@qGs?L8ks)2Oj&Hy~b3BHV$jBo%-jC~PI?yUSGGiC9mGl(ve|S$9hJt{s-7M$*!3T(r_%iGkBF zadA`9c!7%hPvrPb$Y-5W`gQwq%?Xq)Pg*M$1hQPDLrr%d*>GJd@KC{9&I*R6!9L z`>(&76pXgyZXgG5wS~SviNetH-gm+|90(O;`>EzEzQlY^Y^w2DJDD_Up*q;Ii#hZ% ztjZC&dh-?4Tw?>xj1*Q#OpYGI(UiEp0VRxmD zwF6?QgOYpu45sz>y6>XWV@PMK)0&5mNQR=nCUX5;$wbuZe^>+mo6N#*@d*~|pr6~o zR?lJAE96;NGL~M?-;LDP^eWe}K4idHY^U6ZYv|Y~^`POM(h(*~l#M*do;X$-w$CK5zCN+ESjmezj zWRh=Qj(ji|m!Q$Is@|WSw|K}=lSlY=#xI51{}MICdv*s(EJ}YO26y3j^=W4(2!0w! z2<4k4?#imx&prA<=tEMk zOp|BEPSeZ@jHzwS&Y9^9@l*0P-i=If`SuEkbVUl5M2{4tq3MP~Z=wZD#zEeo1s)KF z0p+yD_gs`L`nKTpV5Z_B8xS2Cr)+wD=Gu{Wtoo3p7#p%%XFxr@JTUU zS|xH9!Cdf-u2v=-xr^7oiAds#kIbh>YguQ@*Fjy)WLQms0iKf^RaDN?w*7n?_BJ2@ z2$OGWVUWC#G1ICiO=N=V#{+t|o({8Rv>I8BX`XxJ&(dueAnm{jbQfkdq8_;HHX3H^ zdv=cX>3}wgC+8XdE|mZ5I)cSCIIbUhlobb?<5j2y62Wgv^K9p~Pa#%k+3LAr1Bwz8 z&qO?v#JM4gC=7BY>y5R7)#$n%Pyxm&m6u)Dooyb&S^?Qe#Y9`l1)eL!7FLYWDVXyy zqfeCg9f^6itdm`P^X_ILZGNbwaeDoNM#U?106u#;Jv{n?p2W`lY|wv6+?wc0+CH{T zr&bt1A*s??H{sC27&)rio6tjY8ZsS2H)a-7i>Taw<;@?NgR=jl)x$t0+<1pysqJG% z?BD)Hbx&I`QDKvZoGczNQMq^2kjioY8ZCQ>$UO7B z#lPNK89rFQU^0jPAvC{zZPa_5Ax7`F7L@4rPvzU69Kb!H#6-g*uC-2QT+*7KgWH?E3K*#0=!hvEqwnS>*BA#JnI zjI0r*QjZ7p(`Cbxv&#vPI8gkUrym3{Z&9;4!n{k#R3XLicz}`wkRKRa%yobOFkFqk z823mj4PE`G>E?KGC1Zy4u5Pu^PI*3|zFAZUCDd@4kx!#a9)Z2>qO!7{u9!97F(y}u z^N&j9pJ6f=187&+8pX0INN1Wbo!g`B&x)l3UZFBg zgIYi(_v8KB3x~!ga)yk9T%Ig+eot5dumn3h?%NjCrO&`?%8E9c_hY<8pk)x`CDkAN zXRG^>0PE*P=f1AXn6#Ph0B>ZP!mAzVo1y+-?^^LG#s{m=iVrBW*o0+Zgb?&{5^g}$ zKPg-_u@4bnl7A@fE*nDRfyDZMk6+7AJF=Vx`wjKVt^S7UIyL~YOa4M8)dq8{Hr%SY zl#mh-*I$r+Ql<3(Oh&f)h>*2MCYe5Sq2S9Y?C8YgYcasP&Rn}tIC+dmXHLPW^`hT@ zQYTLk=PR#Z3sPoqFNgzH9F^VR6|-81vJGD?`SU9=33LfeVO|I2X9@hbT7YFiS^ zHsP@i3i`XMvxqr3GJTIxT64@98tWT9wrnh+^B3|C8N_AAY8_l^brgn8YWPcioDS<%+SNk*M}P z_wn1Is7@lSl~e0)E|$c-t(v@27m+p$3RPGslK5sq*T_>68YO|&*H2)3oFS3MJtdj& z%3N2BX%z%11i_s9jN?}$$$aqYg5SxLk4$E%`3is6g^)bSH>ArCwn*+*owis>tpHgO z+WL`(idGujzg?Nt8c82KqRIXk4nGq54fZj#$N58Iu582Q`{d6{;+zih1FushL1%@a z><+xrG|ZcOz*}VR388!vXzjccy6sr7h(3I{n*R-u4$hFMk4tJBZ#Cxx$vG5Huh*^D zT#JbNl6>!)<2`ARK>!p-YlQYLdwkO^paUq{O* zVD@9=clTn^(U88|3@hd{svNu+yEmV7cpE?u;gY~FiYrX!zy_H`lP$JxNY+fOMc~=h zLiazZ?~rzx&K{hUEoUzWT9RWRl#HyVUc9$?Dw%?Wt^*`g(6f#}L!AT;$=y6H9F^^V3$o=Z3nkKpX7q=g6P$qz+o$l@4CkbYofe&|O>K@F& z>ij)Eu1iJgbnf$X>_wT9ccE#p>K&4OWCX;9`E#@cUtkT8*uPc&P$W*)E*4SMnSHd` zUa}5KrwM(Pu_p6IN_8%?8|U4*)K(lAO=dwp)#}<`bm>I$ZA-DOPb7;Un4Jd*zR@Ar zEBzjJFWwnc^{^6kBG^Z>Gq;a#F@g0*vka&2QgZ+=At{4Vn7@aN#Z&`dacE%GV z>>OhZA#E6=(5L1omV+HHk*BvTRFV4=yDhcA)f`NT&FRcLSk}IXdP3=!r3j zORlH_3ba=#X%t2w2cg(IYepvihfrm{VN^t**ViK72+k8p{5y-1 zrTwK4z7FV03b(yCTi_D+H)(b6{X(AB2Bs2#tD@yo$&j`THP(5gE+P{9r=}a~y2f=; zx7#RfqCcl%f?zA@N73d`6`;7Q-V#U9=ACT+E6G2ePtALUQPOX~%l@62!i&^`^jD-0 zSs_Qa$KZP6{fdWz9!-*)yIz_z#_8=Q!RKo2y^|aHz%0j>;d~3#iq3H;PJcy*_uPQ( z)|VvZ!Lr$gg|APa-K=H|yDbw9NNYYUak|-pGm;Rr3$)`_4gqUqMj$K6d4ahE^n40PSv+!LZ3v~?gMkXLL|3%dIk zG+#G#O&2ume1t=)JRj^nTleNGi0w8d3!yt=G61gJc%4D0zaYTTIZ#_HY~{p|kqSyU z?cB}@a{~LCN^ocC+5F+9YR5()$ISO*oUJF6)Eai9D2K`m)mvw~ zFe#lXU17s+i{E+&Al*`VEvt2N=~g)HyrP#u^+Z(`S5y=B0v_3(xaLZYRYczipUopC z8y!QF)o8NzW#T8@93iln3M&T3LE00yo7J>#$*YxtlOUC|+rFXM;^HGNh5=;JRD=2{ z_DdImO&t*MNh|Lc+DG+z~oPH6>0=BF@0Zs~u@QaKt!`ZScKn}sVHa7EpMsbc8% z$^?p^x7WT`pRDlf*c8Eoq3)Np3x`uicW89f+5b3Wu&NL7b@uF27+ZIpa$fW9-cxtL zwuVk@&qcYfheoCe9;_XxxW91N=kUWU0AJtiAT$tXA2DRcJJe1u&qkcBqF7ar}+l1${nTtODHoG}~ z{yN;nEub&lwqUk8`RoFemkGQT+?znKe$6Pdo`#?9PEeI|`6NbCx`G0OVZ!QG|`kM3QWmQ5K(m-Nfg=i9@ z1LR5aYDHy7Z@}uW1Y2CueHuxNu1@Uws zv~arVcvB#v2!08W4w`bGgu`){ft2}0#1KR@y~6L|;(8|-zNC7=EWzw%Vg`|GR&$aI zlOvEJKxL_*4ZjLUDb(tXi%YMX;yjPsasNXea8q$n;ih!o^1l0d41+|S=G+2*8!pP?+8 zfl?l9wmSFM70cCDA_EL`op^qse?cm#UxJIvpU&X=XyAUJpKmxHZ24LaZmgYpo()QW z0P`p`G*lAgG)I!$Mc&?z#UwmUZjl})eS+ixKD8HWab)c~h|`F#!)=XFD5~{+Sy8e> zq%DmgiTx)Gzyr)Dj#$kd65T!;@S}RPs`8OZ$cm#1R7!EeL<~4N`W_Co*LXfAK|jc^ zrywo$7H6NkmD{SX-72!{$?5mL%HtY56eOb&3e;tcADo1In@ynHA_|O4w3LbGhtRC_ zvrg%3gyLmj0q7TQF_GPF-v(Ah;?ok2{z|neZKimfDij?t;VVQ6<;S7{S{*FDIU{@y-Q5MaPyHbq+uEf&W$SRMl6$fenIZ2 zU|w%OXWU!VFo*sKD7@L_z} zCd~%K|8>or+IQxUsiLro3|}hRO8ZfqR_z#S3FaT$plP><*Wp*5oo?rnGp=6K4mGh- zMzc0s5ChbpP&x@o=k%AP?vmw+n~So|Y2hEu_xqx+?|`k%=&BmGjq&`WAwQez>FyPXj*GWtztjQ(cBe#Ap^kyS3q4)Vp+c)t@&Q z^oNP6e`z6^O7;phqYLf>s@d(EN$?*i8yAgX&T3Aa4!oYDy?;rT;V1Vxd1|i@3__YW z%1&baTScs*#pcL^JGl(LlH`jL(n87mLI62S#RPQcjrjY_d~IW-z{wPR7vIaGxs(3Y z>jyS8ho?wJTu`Aq-NTYhx{F1WnlqDJc^&$|fw94rQnOonk(L;5$oLqKP&=K8vOA^} zLSUMFCS|K1JPeVhe>n4`-fx%qI-weQ76Swa>T5I&r9jlTIS`r~Fm$m66p{!abwV1B#8gP-mEv_koxUZ! zjZAO$mSip@Z~E%|lRn6QQk+w16meqZ8AJT;@z9Ud#aQ2;yT5*FnUes;jxg~J8F_Za zu|0?>?6QZ^0 zFD=>cF1=zBp`RMQcS@_5M=37E!QRO&SfKnXTr0pQ5}$|pr#zsc-(p#(sO-L4TR<#e zuW99Hrc4c@A@!q0h%4rU6I!7nA5B|nuMH1VU4vDJK>T5?1>8|AVchH=QxDT<@`1Z- z?_+gCCic!UPLq#eQqsl7{%TG2Ov7`y`L69VuodUw#&s2zI*+ZHhGz++S=CHHue4{x zWf&O?HY!P_i-t96sw1L2yK)ND?8(?9I4@I6WU$3~gIjZgdl023NNPV`p=K4THQEBD z9icG!pXCchJSom8_Z2LoMOG6H#~s3d>O&$799V8v^c>(^jNUaluGwJK?ax}GDz>9(X!JJUA(zTl zOMuW45~iyA`Bv)>1K@%o$nOWv$zm%5#?YJnH^p!l7!Iv!38LUy06~Pi1g*sP#1edK zeKVqvSR25EplT+iYy$~mziOLLdl-W|imiS|nFP4PR%7GY8qFbU2DM#Ol(m0OK=%Ow zed%G{fTp9HOV|W!<$L7|U)eXadg0l1 z6G}-Op4WM46(XXG2FDMY(DdAd+{4jGp|;yXURPpFMLd;{hGC&wca`RquWw1EnLbyxxHpV`me-Z z`8c^SOs*ri4K=?^^SzDwqTX*JRNQ>4T^BUic>^?XZ=TbAm1U`#k4)UP zh@$8lu1}o2u;60Xn>NL~{kuFM2uaAeBI9I2AXWki)P!x6hZg+K$@0NHS2tz;zb4tx zcg|rDI8RhZdWE29Dxu{Tnwd!T_*iHVX7b?PQkKGBnuGvb=)z$?*~t9Pa^QihDVaC% z{^1M03rXtAF!k+Je{V(RS1F?^v(7K3H|x1%@L>&@h2&=EOvA-(gsc2VfLLqzTG)Z!C7^fyXQwtD!=nn$$tJ9vik?5O$?L*&&7{n!?>0CBlU!wzJr(*)(L5#2ZQdNlZ zhu^Z!!D;6OHM+gfj#Ywk%7KG7#`C1^JKcUbQu<-`*+M^y3-rgh=NzQFV}Q!uYt;JQ znJeynwMg(=6}k|vX7C~Ynd51IxKq?p#+^@F3B0=;GB}$!^mB^)usmclx>hEkw(i5I zT!5VSA>pf_>Xx#@Md|*TH66~p(mJ1LY2I-qT(%;q+4#MiQ=y;C{WEG{VD3>;xDN6n ze$(bB9Gqf5^`A`~G#2S@^{8jv4zGoQFgF`^hBjc$n|wxhUJLeXNxuHXg@`ql&J%T< z`kC>f;capCPZnSxvVt#8MVFRCwqdc0&&JEPivypnA8PO`m+GQs|f+(k&=YTud7fdM57Ht=}F~x)@Jpu3HiP?+MC+(X(ngk3%n~Cmuur?ef3;qCM*V+*)z@qoiRy^QEj6R^Q z=DRV@=By5HhdEV~L!U@9(%1J2gU+UB#BF}e7B zQ)_#vgHwgyWU?Gq=N(cM>;?rGgK-BcRSwL35IYabpMzIG8M-OAIGe2c=)e#PLrcjv z+CB{ArDN z(_5kpvTnwo*cIud+}kPmc>jz!mYkVP{_VERNapFY>Yb=$itDPeHopX;&9=3-a*1#a z)Bwz`g>NelZle_N)@M_{dK`mZ%bZc7*V1G7r8&7@;SA^jP2>9}CF%6CQVX%>2$A%r z4DxY-Q#PJ4i+h6@sZ#d)%%)H}<)I>f5)$_i5 zop%2L4A;3u=Hg{tRodr?h7SMrlZ)N)zY)T#Wm@Zog28 z{h$qO^148Mr7y&89d?2fvyWF6G~eXo^)^F$^F}^ zbL8aI^$)0ajSgXi`<=f25bz5|t>a@slSU%$LdE5GMcPVHVHQd zBf8REUttGf_^-=%HLdv*@hh3_Ay?iAtr`meyQ8A_5KDYZ9B+r=@ zY5oK+C7FmN0ei&sm*AXt`t37idbUSaxRQR$?HF)cl0|>!$2(Z_=6gd)i-6ys=ww8H z))nkGjjh!lqR*ZCWZ+A1WOt6nTby3@1vOekB>^tU(AziJTO?Xdd|OR%Ev50-x4Kwl zMq$mSUIrfOZ<3xvw1yu70G|(BeETJ zHd7{iwRUsow+Xj?NOvc)1QSXuOCF83h<>vqx;>f}g{jQUL!GmVOpnzA*B@STj0C?_ zLm|aZ*AYe5L6L_TKyKQ&j5kE$0k1)IdW)^}7Kv2UgRX4b82TE@=hAuooR?;P>yHQa*gCv>mvq`D9r4hq^X%6dp~{RPV`VwMpd5Bs?{6or0@ zFv^Paj${hvieC|PG8V5>R`4kZWI*V`l9e!!wNJ39$q_Wp_fd!O?|@J7C%i%IfpN9C z|DCq1lAzsN6s=A6UKvmLMSOWBOb6gHVV$bexQ7#J!L}p*R z4>WSUS87t~hzpTF5bovcA>i}`)bE}d;n~%@0PAYnXP;-ibnl1nWdM^tuhKJ9)2GC~ zlzeob^=`*MEuZ0ZsP~VY_j2i+ydO-HHZ#bWy{Mk6{^@)8r9}w;+7_qS!|QP&R9~g@ z5U(j9@elncU;4$ zMF;Ty*;NNf-@rN4H=7_m1AhEt!}XTefH}~DqvDWg_om_%htQav^H*;fEF>HS2>HYv ze8G@3SS!oR!}bs+OrLf~t#kb}p~qJZj|g(2svET`J0K_l%eT{+wOq(2vF~ET^??q( zVeyFeqNmRFLhi9+Q|cQhWKT4_W&iugMACs`!=Xwuec!sR(;$A-_Vd|&f>{Kvz9dQE znKVxy5g*pdZAJ@fGRl5Mymu;4{u~DaGkRn=6j`;SnWTHcKL_?-*4~An<^DkO;e)u0 z5U@cApC$OucemE8A!YJAMY+?6#1MI>9zmrkZf%;c$PG{Gq{KNzgo{?tDma+lCT8^D$m|tcH|QYwmT#y&RUrFCxS_&cS`*% zJ{fj{XRj7sDPByxZ#0tdOxE6+K*9b9II`=m|5Fl;hF`Q;5S(8C^qmU8`5%8(w9iEd zxQVTP^l9>*>EUoU;YEcSM&*%kGx*aLe|_VaLlb%49g1ZlOm6W~@EFOp!)r9{qX_Kl zRKUlO)0xi57OaSFyj{`qR596!Fwae!%)#g(ghKm-!xLW9oC+dmuBM_82tRGjL0Vkw3O*f!PN? zwDnH(%s_$@B46(kSPr%;VQPW-;%|Svgp>n^_bG5ayN}G=L&GEG8*FpV95p8d4F%y$ zPtmfY0ARi+7&v*ZyCxe zh;2wmz#ACI`C)l11t}UDj_TBmPr-PA;T?Zsl||G{iU2iyHu}AI90QLNr=|uS-A)0J zvU7j9Srf8=`u<|A)bN3qh&iLh#QDirZ(nKyaBQ@_uxI#74R~m9!gufc=#;~-0G8y3 zp(GHAMJb>R1rq(}U7_jS1-vnYIx%zH^n*)nIdN?u?2jw&XWQ1Me?E3(eAAq9wOxu) zo$o$c4UM}sPVf`q|D+ThvAsXbSqfNcgdib|xXmfGEq{z7O=7MQB|Ig9nnoDjrY56> z!n64{;JtlMf{{HFn)Yp!^81T0y@A5Y@nCI$=IrtSbXo5Vu9 z3IZLDO|G|Z1Hc;gPm%giO}hCiio?zd>lvMZcs`Jb3ruNK}D&MGVmN))0+}Zd%#bW@&9)eaqruATY)A= z8Xq+Cn(br+VBmOPlI=tWK$^sY?FKBs5dMwmi? zIKA8I{2AY156URGF@u4qSQV{ic%Bdgx<6|yh+?n@#_`*|waQ;a#K%s^DKPXVdT^QG zpydE~qowTkN@@b>MDC26e=^ALfx(wUxu>ENDQH5Sosp9qWPlMyC80vElJpol8#z9% zBpONb4K7VO_E?l83vd&PJ-C)YKZbPQN`m3%()9*qC~*RY--M=VZhNkrS&&^paQGQf z#~uU|21HYBd(qw<=RE`a+wFc*7yO(dGuTLHy?^N>O#sQ{ z{l0~HY*rFm!M|H_MZ)q{9yWqxg8w-nJn5#wbGf?r`dk+*|yRq$n>qpxb89^U=xeQ1|;>r@0Au4*${xjo;5_@-8YblFLF!)(!HIx-xlDR+89%&2jDE ztCHA1NT*vROU$}RBuRbvbsuh&aAo8A+iriGd3|<}WbK>0cPb$SVa$7?rvW=F7ZGlI z`=eXmm+iD$;~`g42)^gsmz!nN0wx95DZ%T@4!t`?$7%}wL!9k=cVc7r)kz#no?O8~ z?k`JaIcv-(2(*BM_Uu$al-AfIm$3(`=J_uTu8V6L|3S=4kQZ#Wm(meU?eQ3S^e2|L%>JB;M=N$%!7NPKh;9J^Ejk&Zgu*(#hqlc zX*9fNoMkj~77%;zkzP5>78RI(QNK?d8BYu$d;5{s8hZwb6^87)11+={H#qC(|X-BmRaDA$JL|{Acyy*A84H z+y@ezdoo!5Yfr+=lj%SV%3PPT=1UCe&N{0_1lq;1_Nyc-EwCtt_N%u5Dh><_P5 z>ZNFdElFU|horV`f*pm&-fe8La!`{Dc_K1FgRh}5fTaG%b9bMHkY`4WCO}~{sLE*V7*Iib%kkq+le)T$+oi1 znY&ksj9lp{&>KGkbqut?y2CaB0z6befYlA z?7|Xep4(*l!?o1u!db#US5370aZ}T~6FHUU)bt4`6{rFCOuFDAbbD*^*_B5aOYjN= zN0K%e?uZOzl3&qA3u~rKASzGbeY&4oH&z9pi5{%`#q}%xrk2mgWo4}Q3{NH+T#4r5 zFlz0T00+?+xs+NvA9uPJJRpkd0|} z1-G)00I;aZ1p1m#y9e5drT|G0Xv;R&c&(jG4A%XP2yD`2+PrLb9JCbNSqk=RZYoB- zk;B~Et8+Iy>`@F~lr2w$bV?664!+qGTqhbXJ7F0)h4UYrsX`S*)Mu*sUyECei^%kr zARlxBcGkAybhk+y^65@X7A%26^2{dOkJDuY_$aHlQr(|_gZ{{n8*b8F=c~WLLzNpi zq}F)v<*uJ)#S09C06gf}eh|MQK$>F#{+jJOU}~WtJ-D7dZrPIO76-d`XH+oEUXfDM zF6!ZsURjyczat=zUCb=RUP!+!B+!bAX^r84mQoDN$v4_8%x4i}5yvi;I^gDhX%WRS(Vr~+(JxFa({y7*N@gV zn363^K+p(P6~pK{LoClDJR{$a+42<7?b@b>MMB{A`^{?phEGTbAoaj5?dHV!5_I=a z-Bw?TnoGswAU#x!pv?!LhIv{_XkOk{^;pHEncQEN5=WX&#&es-?XoK{CJ4RzKZ1%H z9iB|-o+@lGr15j*b5~sY`0bCheOG{CK?j|Ag6$m{cfHf!PGeXGMGJ(2X#`zPY9=@D zM?D2fZ0Iaii13Gv(FK-)xoS-^LLKNl8(@kn%tSt8)fJSHSDygUjo;UdXRdh0vMOF3 zOjp2qsmJ~G^?oxv6i9z+^4%pnXM+t0TxS=a#!lMozU=*|65QHimDgbhmA zs6*(0j>VFJmdW1;E~T0rf~8|f2Q5L3Bl!F zX1muk^7u)C_2RSl7f4|BvWc(g@Q?7j#_Rs-B6;n6MX_MI`hXF^9~>`S0bJo$B41^v zZn(T3+Y$bN?$wFayst>|Q~4i`;`QB_iBGAh%JSyuo3u_nYqg=2iYzuD|7a(`~m?71M=pTDX$!myo7STBA*)i4y+%# zEVAf5a9=VdoOPUR^V{eHNGA(N`obmTpXD~t%$87lGQ*;Y+eJ2l*wfHM{tBEEa{d{i z(Fad8WNr2(hHkE}ZMOvL?kYm9LINaPEsR{_FM)eiyaSJ(V$2KmKm3Pjhtc?==fd`a z)lmH~A>P+>{j8b5UQl%%tEN=gzA&q;x_$-c)|cRHo+*n}7@Wa5BmI#q3I0eU1hm@t>z{IKDjJ9V}QEAjDa0uUVjL0G<7-hpC6zt z!`D;3E^+Xz(ppl&@YH(1cb87hd%@7*SLf#*INNK#R|4=qB%?5UGWraNSDd>#W`{br zj*vB=ANC+t1KgrF0rOAhlw|G$Fb7UlNPCXt6QreX+>&^EVSG~0g+rJON`^Q8VxIq8 z+Jsrrbr)gPR*b&8YhKfR4JJL2bpZlv50-rbsO6(|m!X)4@kYTseVG5XR7vP{L6SW6 zN7m)vsO~&7(Z{R`;_LGw-Pp>Zt{oG9a7yi6uMFh^8^Tj=lSC zMC_G->9T^`+a+tfx6VdivIO=hsm`RsjEV@Bp`#MTCeSz}!cve{TKI6^H;J9^MWqrQ zr3~wb+NzROSLt;s88U(BV9C2v(Z>UIXJC0iLn_Cd+q0bU?5ekVoFMiVe7ityu}#yz zt@P6nw;MJMI*v*H4%G>&XjJE>Kln^^!K-MuIMqnLW?31Ds&PEeZrH<j8-J0ZG_%TW*8hg*h54Cq zttD$8t|lkV_-_uCtMQ{`qMiy5jX(2K#+8zEn4!gTCT?a@eh5AGj0-h4{QD+4cLKtx zwndg$9^_i~2fbBXX-(o<*mLi(%chP0pi&E9a&f5E!o;2M=?S9DCjUoW`pG{%uf+`- zR`_Lt^Upp7!2~f4VIknm`YGHk&%fBP#f0&3Kp>D74*X8c{5=0s!;hqBzzUXq{}xZk zQ{oQJO`7NXIkpf7t85t)ZnxDoU2Yau{o)?;sE(#2!%0{sXN3?{uNkEw-cuLgRck6d) za@<>>S=eVYl;9(QhB?pjgpe2<>LvLnRhj7OwrxdH>N~&3uooBxloToo0IgPi_Ue^a z5H&g7VRHVauOFm0q`fD4I@j!WKOcu1HTnZa>Yle&!LbCwEF-vD^#E1{n^&Tj)~pIC zoz~&9p23{TDXny(!QwrddmBMCI2O z1)*n9=*ws-AgM-fO%a4gPO%ZKr7y#@tSf-Q!qY0{f2ZnXrZ$cS5(XrlK=qM0Cggpj z;!Vvq*#ZHCd}bf5-2yN*oZ62uJD4;QxZc07($pOPL9Z9#iQ&fqWM>Cx4O$|B(t{nK zjXgywB0poys|TKc9Kl}7Wmh7TrAY!PDrtLA1~c0nVf`lE{> zM`}2a)BC!?-QJR**N+SG4E>`I7glcGT$CiJ%WR_4V-tFW?~CX^0{? z$&Nni308_$&E92Xl_7j^SGtLSlZl6^BFp`{i>z}6ooUOn9dFS0-6M8Sm;w2}`bdWn z>(h?qQWX6Ew`tnNx8pS7VkRy-HL0fyDn5;uE~!ASx$nAv&IqE&#$0qqtU4T~O4Kvp zMwXxIhm?~Rxs!0MC_Rks1hP$?yI{{=VzFPYccwkKu&)4=WdhnUPf3i(xT+tG7 z0w9a5b5QjeWJS6FDY`#UVrpq-u0nTWxfYsAbLQrojOO{5}%a$_Kr8^ueD zW;eM`QS}vtr$}raZ`bS6*O`F&U6{9V#Ok>ylc)SmW5%jvF=UyNiM#jV>W+un zmf=iDy|TsX?NzYZiM40BTohBG0LXsqT!QC!DqHox)p)<<@^6wJ#1)MfW=hN)fbVUI ztScFwoc1XcTS-1&fCw)fEnblj>k2*wcs*pJx}id?OTGjhoa%WTwav1Utc7 zmaGNCG|~Kn5^Ko8>Fv1+O)?W3hxun?kGh@g)}#igO1I;q=dg{C*eMH@r+zg44TI&*-h2Ly3DY*b@ zuCMQp=zhwN>(1Kzl4cbmRhV~y=Zwm|{`?D)hrf4r@?)wbdB3Du+k3E#x)~&YvD{E% z=v7YRc!TWvGwDgfIAGkh$SO=o(&=SpF`u75^poI zy)&D}-cIJm&b_?uDMsb+_wRif%|Sa+*7=fjaXYAPOR|*)MF+{@`1OyTX$R%~9Uwix zB@&+*$NzUa+Lo`vqe38r?8;9eoeW8Dgx5diU^UR=(IEej8#vNL)Z3t7Zwg*bMg-8t zF>AB1)Lkm@(O32sff8i^=Bk^Z?3Oe8{naPbxCFp7&kgE!m13uG+S{8lZCUhkXK zGVYMi$l`6<{o zBW%N4si~~@l@dFlEZ&od9>7ZV^XfHXFpZ6rKxLM(oA(C_xFrql70hT(fbSn~RJ3UOxX3JUB{4@%?VFh#7z=e(g+Ex?_^&MPOEgYZ?U z!EifL5|eKlI_16)N(i_BMoj3ZDJ*+xJscbV-N7={)Pk4dpEx$nwFA>D%VtobjWDz3TFLf@i=7)Y`rCQ<5H#BbUNF zx)YT@CkEGHdWAvNim3O|p@nr9t|lK7x|rVi1BNf!jlXUV9D{D~n63e={;Sk#ML(|5pvv~SIh4o-* zs7%!we2Ge&fWR2!JIFWfzCm#GJlPtzIa=2u0hp(MxQbE(F_;F=ijHO4?F&AdkAhKq z@RD}dSXqnhHjr&;Nv^lmV@*IJaa9lW->%=b?vo*~eLrr)k>eU>_=g$(aY4;LC3`7T zD9oW`t>9S#I%Hlp_}CtOAQj&B%E$!(n@EsB&wwFC^`KT;j7)5M=9OvlVl_J2A<$#l zvZm)u@835U+&=^DbpPs%hc83jftp72IoDz1%VTTV;)-}3Jrpl<423|9_1oMts@4uhcT(efD^M@<$!t7M zW~Avyl#jv9d!1a=8m$101d891C*>jnoVc+K`AqDTF+EXh^lq0RYoUH=HTNrqr3<~0 z(F!QzY`XnqWU_cd^bBvHGQp7xINR&C(;RnK@88C2*0kka++~hO23lWbc}s8#Ak%6c z+k69Rj`P2h+~$*eTPiTq(Rg_460-IPcpOsjv#Ln>w&j3n+wGhIqd|i2U(*HDH>sRu z{a8eXpHv#HDd_&^CI!Gt{nL7}3PpdOEa+dI@6R(bs{5n=Y3d0L%ES=IXrMCUpLEXc zGNj!rl{7#PK&F>%<|CWZpG6~hv($?+j#96A*^&jxA6x8*B;L;WARfU z*;V7GEm8n-oAxNFXTAU7ztBB2p5gjh`#i<&XGvQgr5JeZAAL@ahL2ID>JO~7W*>w2 zTP4$M@7Goj6=9g-o>qwuWwg4rHzAe{*$^TuR=d@=l9I4fK_n0 zh0Y50$<*4f5ekGoLI?yIdEWP$@In$iKih91A*VRn1H(V&m7{F@_uaaX7&;UeK4sS8 zW7fIyuAAm*K`P8`ExQV|bblagZ%j+*?|PtRD|tqU)BHX~vIJt3xQFL4lfg=q?Nnpv z1Ttj=#%%5Mb;7wQ_wLVFkz`u7c@-VDp})gwXufG}!5z5zE64jZitnbyH$0(`^%vXR z8~^Q$C#Yy-g^Uch5V&y9V4s7cyAwJ^@W8pg`bA9XSGZI%BmG#r>^gs>#rfVc`xT^u9U#qqiMHZGikHR~vQ*VZY8t^) zuc6GL>9nSm?D7i|th7a$S@m%G0tTxtG+6h!Zu`&Gs5aa1#TV6I(X>|8icgpya)*@F z`J=vOi%Eg32;B@>95>8}@Ws8;$>SoAaeG!A-cIthyA`1%GT8aix?%<-uP&Ob?ocML zLD>tR>iD~-Wrh=^c1?MC&#^UDweA}ylcHsoQ_HOO>0lN}jjry3)r5{h0N>B|*5Dw} zLG`+)AZ`6SR^3e?}B`pH=gYY`P!Dl^S#Vi zEm-P)rF{h#)3Hkuy!b8Ed^HygK8|kvi0dDBk3 z0QVUV=u^3VW{+=efDtd0`RLhWYWPEr#@Og9)wk$?PR(`Ah8Wfp?U$fj<^St&=lG)g z#yL+$qIzCy|IvynXo0Z=(A1f{T6m{=k$@EM(T+ACWS~~F8B6^P z8U8!%cUv#n{+&voYw}H(=?YVSe{Y|*h1`~+DdLXie01Qxge3@Yd|KTNjFbIH)wZ%&ZF~C zKCURfA%=D()>v&i>_5CmKEF;9%$+{j_?G(>x?@{NGem`*DTV85s8)9l+mbncl@qoqzu-PV z=6?Rqr$T{Z5pd-rFK$^qOd!=_$t-BdWn10a1m?hy8av}9sPwS?7Q?O>%BTQM!jv=& zis8bSlFNNkvm0R85b{8N*`o&XE8jy=HB?0N9$s@Yypt`pp=sfd06)-?$@bu*Jcl%jz%)5IrLR zk80(@Jlz5)XZMJAK?L}W_(#&n)?e%YWO}eyrg}N0QIrc?=ZTay-h>f<-kI$!)+j)k zNEJ%L5I)gUt3t9B);ghdIi!CuVfrBmNw|O|+vLdWtX|%{AN-M4av-Cgx zRZ}tL`yukMsg?&ePWNjg9lL7YHGKwMBrkg2A999Oocav#f}$^pXpoG8V7I7&)WY4; z@%F9X<0UhVy;@xmkAEM@J{H^tBES;&!yjbxykPf`;bmEutlv!=PZ}Ig*E{*Pr>}Vf zDFjciurl&Zqqob+4r9qOaM?LgIF1fRKB|CE9h4*9MycWDq^7Y$ zw}VS9CC`5V;DHImrXO>(oN5sK-Tl#A86zxfKVH$)JexP9Zec5V)K#>~H zcH+sNOKaH#>kWHE(IB6fHbrXNW-XA7a89?oN34}>Q87+xw1_1klO2%vdxt&3&JhAD z5l4$I*rM1vipx06(tA($I%L?5(&cjj+{VFbr=JcRg=~=*QNd=_3BF(QH z$^P&2ewJ>y#9CN`sy!%CO>HxqqFh1;MHTv?Q`$#4$LSFjcYR+AuYZEhylAb018cfr zkHiK{QsF-8mwM!PZT&`w>xtid^bAc{F4{lLo{unx`enlpT{>63%lr6k8s;>aJVS+5 zd$rLwZ#+Bo(nK2+c6cXaO7o9=<>~F#nS}=hkh=K!&sX0N>ws7LI9_Wr3`4}H_nF*$ zW8z1O-8L(z&N8n!{ehS*)90zLQ8CuL{nT)bW!KO$*53C#H6@I?nk?I{X^H& zVudZpAsp{KUn8!TPq5a%#0#xeLQQuU&2Wxm0x(x`+NtCNoI`g5i-sqwfcYA}J?A$x zwF=GNjWoUY3u)wUE@N< z=1QA;FMJQ@s5IH88niNH$`rE2u`fxIEj2=pY@x++IAw|QyPoGgeZT+SPOtabpXa`> z`+lw~@X8zSX+Hr0D0VKrx4ZQ9Rf&ebj2@c}b`>lqRnWner( z;OaW!NBxS}0?7M%nw>YX%+DVub7+q7LL42vm>*{PFQdUA0H-RnEIZw?Z}P*`+pMv= z_V~$|Qm1`W3-iq3!dFs4V%r3QHDGq;*-5Kj$I4660U5HWDR}HKe8GcX%z5AS14y_| zGyv6mK1cs~ZLF>WU0_j;l|m|1i?|-w=#;n;4w*I8h$DClTSF!sh*y&n^1?$h zZ}}}X1F+)srD9-t>*AUT-DbA$8U6{w2O)yFvAT0nBlJf@(VZ$<2~31j?CWdcFzNtp z>hj{gC3o>jH7rYa1BfJp9?;c%EsPc%*cGF{99S9swP~fHULq>*WGJ;$*Q4SmxVnaz zE%(pyUt{yx=M>Q05SzZ|r2BtCQbC5JbdlK(m~{Xrzzd|Sk4GgrqVpS4k)|~@u(>cPFLO3jxDvFdmN$)iviwP~2+s955U0-V zD&`+_N(gv6wDtBUa+Uh^PW8xlESV+L)kPJ@_RG#DP)ZgVkIcf(Gjr3cF`bgyyRN~? z#wba!y@*(Ll1`wcK}BC>3m8|dcxmwwSaPpfhOZT$J?XnWISGsI6d4kypFDn?;pOLf z>^6?jyih?~R45J;SDfbRIgWzl8@Tp0Qhbis}zu>Q`1yW(rFLA3o=5l$*E@$b`a9H~|dxdwEaUPHx z;PAN`Pd21uMD}Clhgxg{0Cp?}+Gw={XR59t&Z^Vm2yfV3|98w8Y|0Zi!)MBqb%M=0 zpk&+2v~D~xG2dfmw4PFn)pIs~FlC;5dsr5@^Q`0*pI2r7>HFmU&30>X9iDsaQ+BDd zVszHKFOwl7OKBEwy}Pz0tfaiEi~RL565tFX_Ts>3x`N9^VgWue@Qvq|CDy~uOIc%5 z_&le>4agT>xv1ByO6B8W<$vhan-0P7*W@G3^1P!kFL*J&LwV1i{tCCLEf{|pcRO>? zwKNpg{zhW$Z}`G{bH2IFxeA!{+I+=vT-I-WUqD`b)h(D;HSpEY!xFL#(hIoqS{IfR zM4ASA*H*Yv2UI6j4a?|b@l#nry?#`A({9LL!FmM_JX=sj1VX?MkV zpHUEWJ96Y;a(=4+{OuyM6D)aEj=jp~j>01@-}(-|?Xs$h=e$(kSwJnxawE{n)?@zf z-w)d_vp<_rv$Nc({6GCKsljXz(0?yC>hoi`e~~sL>x7pIsry&Q?$a+k##qIlysxpH z$reG25B#1xgu@=TZUx&m4g&VD-0PfG+E1uEF{QUQ>hTV*6qmlfJlc?7VtyGWe_E$o z1)j>w5B(l2@=KGEk!-AFErlmx!{?;aG=M73bZ2myozErSP6)!$< zt6-@+6+Si?|k`(J{S(mUR(7C+i zqveE22hQiF!Lpg|Ntl1`YvgP9y5!pe+@)r;hsuQaHR6mRZqs=+a;NxbI~lhub5cCG z8nqRcut5|=B-7tD?B7R-OkiNGi}j7X*?!bdBusnTIeTE)=?mzO(GSnGx?}hA&&fdR zoh(*x)YSg~B$AkSWms{{t^IVlq^~R)#%3B-6aoWe7yCNPzMB4(_Vsu0`Uzczt%0WP zl7ARbq%CzmV_PE0LLu)VoV``!c7QDKr^!$l;3t({q#SQXC&5pF0|3UdGq~Cj%6D|gXDwB_c zw}@0>U}a2VRZhVYihSu;$Tb+yPC^L4;1*y|YWiz-TqtLsw+c9qTTPFiAN?6?e|46dJ0ALgSe#2jJBwDA`AOI>Hca- z#XDk`1}aA|o@vWFz7jUDt&0Dj#l*|3>E|IJez5LWS(X|1!Em?-qc-@sAd|sB-#qWh z+FuRFVnhhBzAcKtJmFS^ddFTEUdG?8hhyf4ll*BHUcY#|RD>0IP1R=f6+&_NA25a`Wg&nYIK(Xu|Qh39si)B~YEmB|l}lb@3rm>$H>6T1@9vNHL{5R{-u*cKIdm>Y;M zcfD1P=Y^eu)I!5dbY?|Atz6SI-LEL+^|q5%y1z0lXD@jJlgS*|yxWX<(w_p!Z^mLvJiRFei{potKe`3%J?C;GQ}~XM05A zUvF+DVF*+S*noi^P6ks7J}!`FH10zs-z8u4Sk7 zC#|PbfT%x3tA4NM5|BOQ+px^-7?O?LTCMg2IdrG}XgM>~#|p+Q#~}bBGd>Ko_3miU z!mB)tiu;w7efPO;4C&dnK<=Jmr)ArRqTN49HheO!stXibXYokfvR zAw8x9dSh`S8=Ku$^w%_8Vij?BkABc3_?T}F&rRWr2mLzR@UP!q%jx|o+}d3>(Ayb- zckyRMUWQo$tqQ%%G0rt>1}Ih*I%*4vDfkvuvX33`i)qPK0|iB|xwf3@XL|nB7B(NTjk>!cXK-t`IZr;khIXe@ z>nt;mYUWhB%;5+5FlQ|>v}d|xQIrZ|*2x2aF-dH!@np#s3W~wa)Ago()sxtLhSdy{ z8RhzKtSLR{y_v+aMQab8imYjcjU13I`_x`Be73FNUU6nEwG%Z2Q=I($0=LaaO2?llS1^oGUAG*1~uiyVm?>C9DL40DxW! zoFt`BNK$u*F}OraVLt5D;D6 zslUldi5Ls96OTUFiRYJ2(ct%SYzj_Sr8G}h@;26m-SmWQd;KmQcb(#cJ)CBMjU-09 zUjBss3o`C+Y$8vNUoSc%_+se%FF?OHtOVtvFH;E)8ChuE_cTp1{~Ka|;X6y3SPY>f zF#x}B8?&K}?mTXPjzxShm@X;RN3yLz?1S%e!^c!o_knedlyUT~E2w|cG4tzWOe5{V z?U-1VB2jumW&vZx)#fT+W^Q%aUPIB4!SbFHm55e8;|>%Nb|g(&%92=|HC4Uy>Xrol>Ldp zZw-~DQ?}8XwHWb&my{e_DSYy5Nu>f=b24#rc!wGon|1V>?F0Tay69vYW^BuE zW)@mo!J-~3?=7UjV7~L8g|t9$sIF}0K2F=u%la|H~b}J*_HUo9U**iFb2&l z7Dtl39(|tgVB?trM~>K^&fW65B%cRWYT%VNrgsB$4{^>pEI^o^!{E zWF0(j07{xKka#t=()@OkN&0}`A1aw)H0fXwK=ni*2e z7u1W^-;D}7Q`?7R6cYbv`K=|KgQJj?;L7wk^oGyZ)w1fPi!u!Jjmet@%N{GfJPvLe4USElD z(6MRR?bpcrfkRhCGkx{F5@`i8q&U`Z&s(WkRRubZq(<+*C|KD91Jqp04NK<2R-^{0 z-jRfQB#Gh!SBu?&xkGE{Z}!}kyg~-b*y0?4Qb^COYYh|%NP0}vm_l1Z_nFLZX^*r{ z@m7-INim=4_8Akre73m~Ht-9ucdgZ5;;BQ@aRz$N$ytBEyvIPB2Y7Bl^T_C@pPm+& zD=xKcV-Hh7R#M-gj(aFFs@2z{pPL90FFO9Ea|_r1j4#0RNVTfcC@1+*`vCGc#=hJ| z$8NI1{e@t*K$w8hBO}0%*i;lma#UKI)@pbfk=zpWXuV|J7D{EPUwA;qFb5k1SfI zCF@Sso0t^8(w(-JEEe%3`-YplE@_x{1H*l z11;Dr$m~CKxN<$|EA=9wz4W(S{UpZ!u}M1x>K2B`v1yIs49rhrwBFK6mWa|uD#A@i znzl!S8nKGxoM}P&jWH$}!`TOrDq6|Kj9RtGHjehJ-b<`+#NVIy=g0q^_so>Y2NlNG zCO_NN?U`+ssHreh8@}8l-kF%$@9nxWOJ*{u2!sFLMurjf=3Ltp=1}jqb|E7kU-6u4IDWyN9&8 z4%eL&H#_T`YnZs%bsG%-$Jdt#4+LhvP9g7FWNX99*t4ZFNF z7_YN)HRvYkvw7`=_i{ecF#Jx8@uq+;av${q_cf+$mjkXC$7)RpWIFpr%U$( zz6Q@P(QGg(RQ%;}>kR{Zt8~QteRy}^Dt}9gh)M2PjU`4K?EpQ>9()Wgzh$vK!p_w5 zF4@uIxn=tel4`WcxX)bWTFiOM4>>#0wdRqU9sg&u)(1_#I%0 za5)2#wrR-Mz_y~kh1`TRP&~xcbX&D9SMJa%6X$+7cozGy#Q7(-?vqiY=Sg#O-Y();$epU4NY?Mm*kKtgvRLTdGB+2J1)7WlZJ? zJX5n1KM5y$)E#K9LI;wZ4~qvhD~fpBhDJ^XZwU5^oTG*$d9D*oI6AYE zJI%#hrJSsjJyWsjNIhkx;%Wtss7U^QoFCOi61EG(T3(q2X+MG8faRDuhTwXzD z#a~ZJmQO~Q-)U?Dq)*w^JNj8f$mr)-O^KDUfW3{7-wID>@u;V?U<;TEq99o26;6-H8_|b}t&74Hvm{ zX*53n(~-tgB=fNIYE@$7r5Io;#LH{`zJsKkz|Jw})HLz$OU{R9mpd!RX`S{miV6;< z?Y-sB`R{lQ5yzQ_rl&U4bOsj(puV%zmpD_HjbxEp9K*xbYeYAe^*1Bykd;*a`&8?TO zkV|gD^MU>MYUa&~9l`p8cQIbp8lbde6uwL;?zmpck`sZ*CuQcTA4Q#|U&r17! zwqlpA*StnXB?E>NOl?ly=hVoZ7X@ot9Rj*WJo-tBw%%o@*4_qTHOx;(7}j}zc-DeZ z8IG2l!%oL7$oanLJAB3J!7g)>8@@=ys~3P@MFsDc8TeJdv0Hzg&Wc-( z=f~vte}o*r$Dxg4dJ+$wD#~MA&W6LvGrHC3;10Ls%Jh392mqLK=Bf_w{nXgb zXb^Z=eYeGCE5W2cnbb_)DShX?qQ9yE>7RycN~(4LbSNz29W;;I8BM>)8B=pP*?`_b z{_Ds;opib(%#sWqVE7d#0k^D7gl)7yI2jLhzonDGDWLkuE9`vTWasM{ljiFuGVZ*l zx8_Cz_RF6yAUWkj+|x~*w)_uMkov|8ADhL#9v9hige19CXodiYqf~WAPE7p(L7+VG2QAy3h2Y9B_0NmHu|JiqCD`OT|tVb zU(&m1c|C_a#Lh6HSyUyFeNZsJQmUmHHtx4%fVKR^v)Sy z%T4>!?kmpFy1g)4>{(vMGgt2>T@*S+hy07(exXw!MM6r^@~#+PQOu%Hd1+*=R@_)J zF8KZdu)(lYpA+bqf$8eLda^=WRd+5=SO^Yj-ftMUHtiDoVyj^GQvL^W^VxdPaWS*- zN{)v~$Bh3V#@YG0DKi-IfiF@G>e6Fe_oqW|tS00WC` zG2JJ6r@w!(ibt^)743y8ZtMR;`oX~3kgsho%{{4t?+9D2$&EAx&Jm|yne%S+X5Tmk z&#&<1F|0A>jTwpmrB#tHyqeLuelwjZ!2{hcqhl1|G63ka$om6Xn&5eH{r<9?8hiE$ z5(LP1`97lW2+hXy2?+44Jo8OX9U)UUaB17TP<-6GsXcJ}MGS%FCe&&HIt4G>%l3+| zxPQ|epCl#)ly`;rhQvIP?HTZanU_lnoc;bd>~L}}&wkG}xocZZWr(SP`ajHhIMV2X*bcRI;<_uvr_z;=fEu@x(h^^!?KVb2 zHaUvA5=e@AG)?+#ge$5>kxj)jNMsz4DgIIKa!9*R!VI6QGeN3NfLHmPWZtOaA67T5 z5DSe|kT?im?{|`*a;x;o&uNkqpI={lL*fsOKT#n8d;s3%v^>P%7#i=4b3K(`pEFMy ztB8%j({Qgb`osVUy_M}%b!Z`BuU4^5Ka*!e&(BSwqYAwJzQ0RlZYAslTAdb8O+6M8FANxA59Vy!ck1vTJ-sDZ5ufO|IH_a&E;c`&+g{zD~Q zaoa_nm(!G))FOT%9th~4@eIR-Z^d%_bKykOtSSvNA+)HOU$esUh~G#|55w@`)UT}7 ztXRw0^s8}W{#W`uQ=-HvxcoDjGsTur--L7u-3Va;Kb`2mt5vYUg2_RSsR?lxGld^o zn8>6@jZA>Q@aNT@MeEi-Cl+{ZxT=k-c>3uPUw1d1h<(Lk(+vsJv#B{ijIn_XD`w(D zC)6Z3T3msqnJV+?%9yAc*n6QQPeUAaaFJ5wOhuD`rr%WNu4mQ;`qBk!TzgI2;Puxp zglF$E?Qg|h4JHj9cJKeA{I#I~DloVtsZFb0fh{h(Y-y}H9C_HkzZUt` zU;&EbO-^RcI`e$!v_DwTXF-y_;Ls?vlGKp>$fr|Cv_m>2<`s4As(+w6T1tTZC)*!rM3@+UGI4*=E#5p};nlyH7YeQT z?RL2N10*q#-Js>?_H8?!+(UMa_A^uzNTWN>VFv*~hEzcBSw&a1?B>gRATJU<$(oGY^oD3804)Yd~RxkZ|K; z%hxEn)_w-+0HJ^ub7cH+Zz>E=gWFrrI{;JW{P7qTn`-?IU%p$#W5f|sa>COV=4^%4 zJNlPVY0T{_uN865bgbpa-$iWEcY?xPa@-+URrt#o=iS{1@h?U9tuz&tQPC1$_%`^;# z-8SSuHYZs~Y6ACL=qsX>VYN~t=EtN@LFlfg%55{;LvZbh7@J8iij@O{2%_qglB1@q zQG8XkU-E-T+|E;MLu%`1G=y0;d+;65CXuPmOCXl8DN`2SQqEIb2E(-A;QZ9x#z$+v02Na?*dTFuytLoL^& z*dy3uU})~oQ+tkdO;SpJ%U{Q-SO*U0F}Ip?PfOc zT&FHUOGs4tq1~M%7YnOl>3tHaNBIuxyqkZX3qyAy2x)JvVTw;NR{;cyQnYUjiaBzxt*M)`nEbH29ivyQ(FZtlUj(C+`4@pD85Z^IIVz6!K>!M zP&j&hWw&5nA#S#6lsYgf1+V>VuQRc-y5nKWaRg!ocy6QP?uvzs+Wb~+(0L_=T9BFd}`E6_|pOA>IC<4B}1evA8T)JuGvT`lLu}G_s zN%8$V6*dG~COGOwZ%#&f93|GAWlgC9R@J$u2Kh0D2SdPi&4V zjY??!deun^-o04$+fNs)z9E3_73I-V=647% zed|&4(?x+K1)XafRI5zB{-Y*X1pOcS$CZj22700RYXWQIe!9-z6kt}i<=wr)ppX|^ z^ZoAmI_CAyCBW){Ft_U)*yQ^TEB+P2dD&^`M`6{0(Q~FQHxZwt2&z>X zMO{cu!6tbPxjyHKeNnRE)$h1*L11PM%+u9JX=EW#dciZ?dpVf|Y;&=nxA8Q5qRRb~ z!0=*s-f{fv(Zp=_zIRuvbEMO8s{$H1=AAfg(88{fwBqv5-2%yd5X1maR@^;tIW3m0 z*oM9#=9J;uRsgY6@k#T5)f6@bs-AhwW#7?dr1hbv({Q(jc7$lVn}*U0Gyly1jCG3Q z)|bq!k!o`@JMrHampJWRqR|AqjsT_yS`ut#s2YgD>MNO3Q>=k?;fkFC=dn_M^ehV8 zr^REc(x)s#B$Y2mprDH-H9?|DWNdH1>b$t#tT02Dj3eiScwV5^|ygV4}1XdlGpJ z?MYx|EoM5e2U1evDx^r52p@B60De($*G-C^%PwmoC&NQH%6}roi%!PQ?J~d|akuyS zetuAjb>Ue-$JKZprHuwf!^;m$EcJ2@jEvM=Q`DJgLIuNU_ynm7U(1Wp>SAuA>K8fW zJRmtQ=xAKePb-}O!ivF{3=4_6CA(A{VOXcx(Q+2ns_x~<*LnlHo4pPB7>U+)HDfy+ zjsJdQh498rX#q(Wqtj_aQoDi-y>Hn%DChh&@Q`bozXUlfw4j4sC)NT>TSjKZ-SDi= zYjhyYfdu1j37rhJ!8-lEd(f+hcC6a>u(AwWrwg*Sl{T&AACYSyY5W9a*NFBI-+cA) zj#Jfk@d3y{27(=1tMa3~cqD?<^6Qzapc){C-_$CHOnEW{N@mZ1QqqaRk8RKS8ge@* z#m+*B!ii}Wc8JJM{_5Qin-j866X%vRE9J}z^yBp8_dbej3eOgZ5+O5*kb03OQ+b_^u z?cCbK8wHKVOK1(=NK3~b|qTthJVy$%A9q)CLUMGT*mf^rj z(Jusy7L>j>`Q!vW^MwB+ zBJFP4jn~z|xK-5s*AI*6w;{%xhzH^cNWaJBRy6GoBVlMT46?WM-f0QF2TVNBmX)u< z#U5cptjo`0zoVx~zKGm*A};WzZBOani7fm#9(ZW8Q0)FVNXctVhx396fV4gou*A*o zsmn3?sZbnvkrp_Mlj}y(266EW9ka2>%@GGb^?4FKH_aO%WBzV!&s9Ca&tB7hl8Jn` zmLDfmTq{%O>A3{;Qc< z<~Mt8;pq5EFF%pg?O>yv;d7m0TP@T_*}x@p60pB$nze+g=$&ob?aY)VeAaRKLPTZs zVs%RcWZ{Vj;fc)uVeNG!!1e_YKWIvQ$mYvH!dR_x@XXEaU5sY;lB`ll-dd z8`I6hw>`7?naH{Wm3E9=wEU5Pko6phO}QddsG}fFto8Bh{+cVRFR%@jpa}$e_mdm% z-UL<3Wv3#~d)fOS-!QsV)XS<-*hIM$FFUCoHO}rJ$MuLDjgxnU*9oGcOlI*!$K_V=&GRoM)cSLjO$fU!{W(|Jv2+Q) zq~Q|60zA)e&;jANU17L3k8s|AOrugg`>kd)PbBdy$9~!<_b`$8p)?v7_DJU2%ELwc ztp0lP;UVcF2~dEgteTv`UaY&+;4|1~TWt+9loXFygZT}~LC|khFPdsnbEOR`qP3$} zy0UMa_7eg`EIM)+@wGi3oyeX-F32CNCG#;YxV)iClSQWDpX(x09m|MkK4seb(TSV1 zmJ4k^nQYWN9@V!zuywZ{SWZUc1e5bFX3oknpF?=s7rxqFV9b_-z6J*skyRY5Al#30 z$ss3n4S8Z&!6Je|oWawxDDTrl&{k;OQYKheCP*95qa#I%0X5Z zWX3C$%Y_Rkd1GJ8;mKsq4J6K**lG@_*HTs?mB*FHHrNrM-!>8ic|@gl zD_6djhz>x5w&7g_1aiQsBP__BVKNplC%XXCp~PU+tm3TIY_L70u;pW_{&Bf2wSed6 zo1L{Z8sa5FIef!FUQHea%aYJVgp`Uk2*%vOJ{Xm;)q*Iy;2YM8@shQK=L$skAQ}~N zK?*%6hpFOn#~tbiDR?_Nqiv2B*rqh9f>XL?aSOnoUnkw&F1*@vinR=ESCn~-)0!pL z96$FFblGnSd6-q{mNi!xV%oQdHLib4{w$Vr|Cuhx)pNn~Ju>H~&U2tf#m_zgb9&HQ zgo#a0(_S9qT}K3FGGCaR8GsOz5T6~?us91M$zy?I3tKA+x>Dzx&HT!HcHB9;#YD`- zw{NkqO#CJD?WH75JJFrpv@97K^Ub5;{Q>0ddm{Hm} zyW-2$V!%wVKy{4>YeB$_fOUn_1z*0j^bvlzk;`>2|ATi4E%JLuNL}MKzkrX2zq`I7 z`#51`1DTv_FPM3mE|mSseZAAnqx_F=@d}|y_HK&}XG`*jmljI*&Iu^i>g+obgufuH zbW`>6=UI`y7`oizw9UA@bGW0@m=sa!wHMm%qy5haOEllwF3oyABW81b%(W4W(HOB5 z%i>DHj!LNc(ys?Pi}l|f;!C!zH5IGv$Z=jKV$5wJ2OHwZllXTk>5XG?AGz7+;$DC+OJrk37htz<;=$Y5(1dAK2eqi)S)mBWDX=kSwX_Y`&@D57F zkx8!&(Qo79XbzEDI^t-A|CNQ!GEX2RBgiQ|@-@_o*P!ieC z9vMAXpJku8oP65fvi=(`oq3pVSxL;w_-(^5_({osmx%;2n^f<%fqJ}FBJjlnw|$=R zO7L%&smz_g88_~A0TkPDgQr!8f3nzmo0)_@v0oyhW|t^1jNna6Up;}^2BkLC?7Rq0 ze##Dh|IfB?Mruf>NR*+UYGf>)1aWP$WE-ITjB)zUp0GfC@ z24m8OpxMP?)6bT#ciJfVV)J**KA_<2$%h&cI1wR497?Gl0l+T{3{iIy5B;IF#lZ~e zHTX$_c703B#5#cmZYq{~O4+p5VL#@@W2+R9o{s((9hn~IW92p z!F~Q6IERLZ7TRPontRY3N-O*=hRK+g14Y{Q#T5295FN%W{?FE`1$ z0(%NL^oEw57%-D@Y5I98$ZGSmCkooDL5xmn!2Wo~ehYZGPx=lXao;rT9OVL*+QFcK zllr^XmQdDfqhBMlmt?O+L8D<^3m|ajLS8;Mc2d7j{DwyNoIt}L@wQxdnQ>u!l686E zOk`Hu66m}9iFfAOwil>FuU^6oXW>-5*4NdP@;RdAAX2qKQLSZBTGZ?=$!8601S=kd zA7kct6!}6*X?3TpqDKBv>sfv(w&R39L1&j%h@--n7$6L(>{XK$Z0|%nV{&vm zov5}9Rx`#qNS^C|vw8c>aw-vf`E=Q{GJ27V?;bJ&U=!0CfglSgx~U;VmH-CzwN8+- zd&pC~QDl%4g%=^XAZfDd`F zOsmuE7nlO$l^4y!UNX`@x!yshqb>g-jh=YIZX19M0S4jiz3d85`|}JHJ<9+6BWl`v zW!OMu9||r@j|W}4TsNWZIAFGKH*pKT4875DQ;=s^FI7_NZ5{bAWo$?mdPlnrZDo9I zcKGdQE5`^c?vF*QHm;m-;myfbCRZ1QXAL`}2d^`Lbxc7W}X6`vcKWfC;#TtKN988y>5yzP2f$VG2 zCY>S&wPK`glK1PJ{NDe3C%b^yjRrPWpGh>2yi->mFV7=J2$pOV=LMSA@wuFJ$;e%C z=HW_O=!b|KjeLkW>EXwPzco7FCA~k^BODowapIl$I{wL#Eh|BkjWm+R;&Fy~9n*-n zJAg7x29(7(8o0TGiW1EHa>k9DpguzP2&*!{Y-B2eJFR{iGxcF24H~)cBgEt>5~`0G za{PsDk}ptpO^0G`?1NA*#?T{_RW;aPm8WeN~weE+wsbxP_s_j~gtT z{I~SMlpIED@-n!Bxk^wjq+N6{zJw@akcydxZhr*BfwaGNV(8umi9%ulC3WnP7SI2> z-x@t0g}-G-PI6{X?i$;){!7AgCGK|#OS4z^brqG47ni#!=-tkrFeeo08CX}hizj>n zdMa{CHGTno_s+nvfl))8P*SWl0fIww<{e z2`jQq=?9ut4o^Q9WaYT1DiFDx+2B20`P}x4ez8g3BA#Rsj4bW8d-%2j3`8|USBT>9 zpWKg`oH<}%P@dIfR`KM|n8})ZRu4-HzJA?*I4yB{b}J!;eNbDnK1(j<;;*!%vYBQU z0rRqn+sr++t|6_I7^bs*X@0U9Tm*lV zM@rf_uCI{wu>S-trkIGOeKKx4{l-#+hKb1$Q8ClNMEV_j^7{Ua|L>ammD&pr2Pr-0 ze9WZ;hdt?* z(VY7s0`NG~I^~u94dUM^Zlq7*2E1ozYz#6k4nNGERJKX0Yj4={AHk)eq1Glfeed}m z=4kh1H5;=Ant03reR-m+;fB#kflv*n0e%!H|JvpR)cD)Of}%s!kZczoEv}z)PY;V| zSJ9F~mA53A4(%cs*Q`|$QL;-FPoi;#omUOx=Lu4OGMyv1G(6PWe!ce9l+t-q$yD+2 z9-C-!1Jf@Z_UmnD8iKxd$RRB%ltz05sMH4UJs$R$C|xlT2}Bl=_Rct0sLM10^tCg! z7u-Q-lBsb-D&;gh$=f9pJ}1hi>8=J@`EyP{nVzYG^tc0jC(;?OW~er2?pV{+Rg@8` zE8GC`c=CC0)Q8A92`+sZ;tXDw>4`9!3U}?hRg<8XI&oDFD}_9B_-CyM>pT6ur;!i) zjt-EEf@~WYau2VXRJKhITI+xf?E6cTK!c0hzBAs%OpKDyZSnW6rCCdo$uS_j@G9xhA8yIJ zXJv#f7jrbKCBb~UdD#CNd&Yg@`x31CNo8CtctrVm(egl%zKImJH(HNR$K2I03CNm0 zr(j_Jo%lK3abn`@m^h@lG_9;4{jti@X60s^sbs#H@CJo8JukAHqa0pV28J|fwmEOw z>|y_;GSJCf>jg6r@yV?`N9?JC|))rjc?`#*7JoXrN4L#Z

aENb`TtgRD@!rDfCIteFBz?X6hpd26b#9R8%pAVPj5`p^t_nR)mlvbXPk zrz~?yej}K~!F%7(*SM#6KPhqG`Fk1TZ5L4d7jRsM;f4%j!q;z@#;|zW7)-A%Gza+-PyPQ0Uu4#^r$nqp>gwNQT@<^NJ*@k4V4 z>{*QOCL8TRnh4KA2O4J&7pYK}XJe6_f?lrJtv>FoQ23>A24TdLFgREeKahRxZ_+)S zv@=%!6FbUGgHFp0CERfpNm!Vv#IoS=b5zD}1<%ZLMa>{~#L}{z5&PAr^t$l>GD=Wc zt@we;4gK&Zq-FOE{zV+STC+{lA*V>anUBDdCVpr9Dg{{?-e>W%n!eEHe_pLtl8dPo zVcdt$uZiRp>a5g`PIS*te2h(k_;X$5|n>OWp|I=Fl8hPSQ8icR>N9<6Sk4c*~t!#oeHk#jD z8)lVtR(}_;K2rS6wG%|how!!AX2K268M~TJF8TMSRBiB0TOH3J^X(f6K(xe*JZ|hL zcBj`?F5rnL!QJD%B{+{M(xB^+m?547S<74@kwvED+dB;(LLq8V2Ip>5r+yCqd!_MA zhIBvkith6%^GOvn6w`|LGOi=r>K*jG=@Du;sFo-d1eH3{2^^lK8$ixuM0(>8P>g5f zx70A?i4(urDL_4Ytw0m9lBCbM0sqaK@4+J2M%W9X($7TAX~-gQrfS6xuXceUAHW9N zqU7r7sc_}laZUcZUMoiPfIjCE1+g2?|I4U9rC1#nCcvH|6MW?Bq(B$FIz6c9_Dgrszs^YAxj9Q3IVq-=k}h77cu_ud7~-tB`UV zXBAXjbIV=-#Et}a>7&MT?M_cW!mWR4QU3idqF`zB`N8^GjR)Aovh)3zd|Qe^zAu@_ zRd4EusN6m(DSFpARvt_BOW)~yy5sVen0SdMmt_|JMQzlsm5bUhKwl2Umi2_GEax&V zUCM%6vx*i|D={X~;Z!2b80Z|a;#RL5eXxT%8eXOX;n|QC*^b1i+uL$tVE^|eS|Ugf zS>6rx(K#Gs)h$~U>R#{v<~~ar$=jD=oRi&N)^!rr?+!mZ{lZTdr}C>HoiurBv`KqD zaj7o5LtIY!JucU);H&u)>Ums?=Kzv?2eiJ4Gzs{8ST%1s{sVe@4VnZ0NIj;;tmR{1 zX~2R-8j6F53cs4*GOwzs04NO7V!HU

  • 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 TLi%ZCK$TX1`fEpdTaVqO8nR_uL+V$qC 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%0Ak9Za-bBJ9m6 zfzc#ey(O0$QQW`#K~|9M*K^I_$Jt0+^Fz36A}6t($*cCY~f z;zTr=ns3mhQ5iW`V551$9(d=KO3uf&);AHtw%kbXiaz zvzf&C{)Heg#$EPe9R6%k*|uEY7QtdBLA(EiFWiRr(C`j&gKg`$+6&&n-X#wql?g!y z&cfsSf5f^b&mO8N2zB}OOdWe=ZttvI6&`!Dc^16XIN?kJqo zN96|BZwW*BlSYsgyjI}1bzqNFi|<-%{|0%(@*L-@=b!22T!$n2*!9Z~Tc>u|3oF

    Zdad=yFpe$sEfv1oaI+M^lp$_ZrGWjy;J92#o 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

    4#-aFMG$62( zROPhvTq5_m4|Q>hH)THa5=7E!_u*s4v!lz$KOPxC!6QKFTBf& zZWtDa_sj#1A%Ikiv7t75E6G&Sk{?X}@SENGXmt&{WiSg{>F5y(iC(2CSQdwGJZOn+ z+7w+huK$FNwKj^nK|@cv{gsz9UzKdid3JgEr`OL)!{!9aG^;n7y`FfO6eVZ6wwct# z>b?mA;N3@|iq-ypKYz4mB$QRX8sT?zeo}qWTrL~?6RB)7w)mIp&^Hm=sPRKgBo$i) z?fcH=DTfkUs28Pt-&r8G1UGy*yC#m5vWcATg@rn8izRc~aYv=ohmJb=$`D6HL=S7W z`8=dpO4#e7u|hfAxQ9O%zQCtFoEgsbSkr)nn6(;oH!*}qlcm+Zq1AS6XY1k9V+c1e zR0UVA9y~)#BYZx;cnye*fIycn!%BgZa(U!0luMFi6C9a)qO#&Xio9s5w`ch*j(OBV z6_Pn0(5%yOYaJP}EaA{^6=8EmNFf_}y2?(46JRwkEXo+$tWcN+M>|`-Md_yFG_3ge z8e;zX8`N|q48ACII%TEvalvx}2_3;-qt4aY_h7FhwN!M*+zKCSy(AeXHff46O;h#6 zy96-&D>sFhp^S5HCjIGcB0CZ*IH7dmotO1|KLY&tA?rx+L<M#|5hi%0DM?56X zijDtNV|%8wNgAHx)O0H8PSKB4qg(>5lA(K-$AMb>P=81>utzE5E=qmZ>=b?Gqp;Hn zXPgt7PLb_SxtE$A`cr)WJ9^kg1NZYQ2<_dVnGpL2NY6b;psb=AO>H1GWOVv!J@ZMK zSWftG)n=;D(QRun^`W7W~#dYqJmzfr8d{$T>2GHNAeeZ|VtArUpc54v20_)I{ z#=;9W3z#;alx+jJR_mfKB2x^flCGjl75z*Uho_&pEeGb6+_c|FROSpx=&{7nc(WIBZ8oF}b4oUEx{-?^TaV~2m(nK(vk6#-;-a#MRL=1MD^hiLYAtXJ6)fljCq=&dbk`G;hHCkfp^RIL4Wr46``K#ysmIih z++WH4eYeB_{PD8(MEv(+$M_uWzpLdPepcRvjj zMWPZ0CbJJ>y(O<75GKFdHq1Nu4O1rdD%B0U;_b?_Mk_54CC$4%@Y2hB3l-`(J4jRs zsVE&(bYuq3%^Zm6Tbw9zWw1W%T+lq7w8A1*%bk=c|B0C4wqDy7;PP|iBB*JKyB^zr zPc@@%d)%?hN@e6Px4K2UZqrO|Gg{{fRz1wfobxit*lF; zSj|br`uJGdid31*z3eL9mVP&gGk>y%JS9FRQ$zBtOk1MEeA{nOLJRoAzX($>?m!Xs9F6d-c?-r;#?t zWkwyTBG|VWk(yE^)bk_JB}gQ*ffT714zhY&Kz+-9U*vN%7&sd5j*C-uTA>HP>1nTk z=7qVj(h=Aj8yBAruaS&KMo-=$*VBjO$Os=C+5JMhDgM&pi6151G5#Q2<|Z{W`3=dQ zGwMlwC^8}^-hG{!Htz2E1zWCAFDS=xj+M;UxYVxJ-=#yM;n6gdF_MhQF7`){d^w#f z$w-ollVsd*i50et%S^rp_{rSE{bHa#cs<8`+E})9QXoyxL7K7c@`;Co@1Bc}A{nK` zoCnn8i?@?uY|_~4vp+@h^_lKEuM++3WXZ5eHMJ#yUD9W9mbTZhQj7XB4?tXMEh79Z zwIUqR=Db*lP%#;nN~s4Kk<>&V9HBSeI`(7fA?S7+E)osf4Aq4QRSYbGdY|46D)gHI z+*L^=1+2ia2jpn48zl~_DoPDe{w18L)*k?-DD{e}=lQwBk3_l*kFVOHrbn?5$q@9~ zziE_l{thSy;X?E8Zg}8QNN0F`?*jaqrxP!tX;Jh3-}ii#XH^dxNn!dLPtfj!{nbvM z(u5C%T$6pT%Yn)W%q z+6K6yW{W=Wc3SHD%me)jYB%-cZJJwr_Vn4XPqiH}@%GMsvcEqDJH^1rLj99-%3HKh zwrL}+x4Hdr^V5-c@Z@QB5GzqFcVkbZ{URNmVT!%jJDtZH4kYG zO3iNH4^JAxsfwMi?#T@i1Kd|yxv2OSrZnXfCWfkF!6R%@lge($K!^v+d3jDcKoZ}( zvhzsnhD?sM{rz7@P-c*lE!-E<{gt{U{fgn-A&2v-%=#A8E+qt#ld7CN_pc9b`#p^6 zJ(0#TA?Ht<=2J*MTP!}Z7AG^>XkDI^XF6yEr_Fy?-Y+p8$UTt#tG$bSOLE&{b^sCyY zP@876XkjX{$D`__=#jlir`!~$)SkUW4GtwY(^{Ahxg^k_>%daXMWO_Y$%!<0L;*lL zSAXNDK=@0b7HR5*aQ`Zyu{&YYEDR)#rxh2TdilfH!xf&I5+9P~>hU5b;>edRwiC<9 zn7p5A1(-VgVLm)U_NQdQWsC)ZY-N~p^xIs&O4D%SW1ltcrW> zNX|457mme0`3F>25btgMb>WpF35Bo4(3lHa2N8sx*7cVub>raTdb*v(q3Wh7L`+aj zRb{ismHJ_U1*wX<^ZYpUvBn(I`f;c3O{s5U3b%jpwPn<2IsCMwEYBsCyGopxC8_+# zTlhSj*+a!q>P?1hW~IsjWI3-%=uza!DTNDfcE7r@A@UG5C#q9At?p3maD!NW20iaFzEKPpsP5?abA_S#;}-y=s(EvA}t0-e|yCB94d^ny5v@rh3au7 z;=m+K1~WU;_E9(Gi&nNpES0!*y$vn;?&n{F=jTVN=Z7KGkD+2%ln=!cX#RD_9_44_ zN=o&vYORtQ$|!H?#PN$sde$hoo|&Xmc&UpO){GvqRYgbmGdKR)?6oLM9kOqPGptT@ zehOZK&!paB(jc7inZ(JD8%@D?dyM={xd-y@tiWefNwwk%!cdkNcY)^ZoiG?dR$QFG zz5Dlm<^^gf*WQ?8fA#^whvE!BxSW3gJ`I_|TrIgdeo#^p0 zj8P}UvB6^70UV$&A;&sSzRzFa*2@iDJP|hXE_*@GPEB#8BvRz>m1H1pp`s38+$*G~ zH3SfW-d-hfG;M-aA}uMm>0QjNNTf^p>NdTIVW`Kh{Z1JcVB0j8kH5Ki_b@djl6VFx z={ph0CoW`ugD#h>PsD@#$gWTVt5{_d3Z>g_4^U{Zag>R76E=D>qDKnHgAMGWg9%tY341`HniPB47M; z{lTXcLuJ&KpvSF{oCoP_|E8zcTe{#Z8~BBKaq4%Jl6i2ke4d*}^>xzPwyf@Hx$7xf zN8PhtCH+^b1@PFa9v#l6&_Remj?q&lL)Ahq_^l0-=i$le|7J^5C;9Ra%0Ql-1QVN?JS`;xWU zs@LHu#q{%2?wPt$!UnC%`jPU9m%g3@}cNn@D!Ayvf` zN7fkEdO_=MCu;BBo}|J9t`tN=5fCD$0LPiqoaZh)CE%zo_Q5CU0I5wm zKINg^ zlMS1uw^rS!`9jX_IHDrotbYB4^fO1hQ>*Er#s0L$7?dIBefS)t?d|`d`8_H8J5q3q zZxP!59^`VmLn#?qX%x$!6JEGo0iVg^GGaSF{<|X8o0!+4S@Z| z!pCKd!@QfxxRqhBybJzM*B+YOErrMx_7`oeD5MeM!!!#M#*+i3qzP!y6UFdTB-CJd zG^yXlu9tuf-|m^7Q}BYwgOE9VgfdQ|DES+Qd(zP#ZEEyRicFN!I^Pg659x!l%?SpG zBU2DvhH(@cmz(QQ6uruCz~SC1Iuty~P_X34=_JSO991CdeiT!w_}TW}A!nRzK%B{7 z?L$;6reOG+Y$sKhyISM~O&ZYud*oxuTSdRwwIjBc|wJj5Lo*t9rhf%`UxvM0A5ea zxt>!58)%3r?5)|V{oQ*i+NU0uVNHdC$eGpBr%<=y;YhkuKH(}Ia{JRbf2r8Zz$-!o z-$-%rwL_*{Ce{Ct>&UPgR#QuVkz4ceEmx?e|KmEjt~A&Xd%6urE+!kbd;wap6kq#Q z6_q12$abVeIb_)P`~#YW(i+S7C{YhX^AQuVuZskkz^s2*e$A_os)22jIL~*R_e7+q6?fyN3?I_WD52oO+kZ zpW6}c8A3nT$^#!OfEMouVJQo`gN-~#5 z*sv>hUJy|b423(>y4s1DoLsMGnhp4 zyi+vNG4s0iI*)Rv|1n?z%i|dx}IK>xs-O{3v3kMYs+jilOc+ikt z<2lY41-~r=3)!8P5EKHy`uZR3%iDhk9z!kXt!~E^Nd#cXt34=BbeRB-gn`R@xx4mK z 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

    86(K_{GM8w~sI6|t0&jXYR^)}O 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 z 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

    5>nUQMy(0PwcJ%EKG!PIT`@IA#}rq#ZPR!W4wH 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

    5hD`l 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�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

    qW_;b1 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 YmY@D5qiH`y`J;@QyzFgC!G|aPKhIp800000 literal 0 HcmV?d00001 diff --git a/dashboard/fixtures/dashboard_test_data.json b/dashboard/fixtures/dashboard_test_data.json new file mode 100644 index 000000000..43fa4a8e5 --- /dev/null +++ b/dashboard/fixtures/dashboard_test_data.json @@ -0,0 +1,246 @@ +[ + { + "fields": { + "position": 1, + "name": "Activity" + }, + "model": "dashboard.category", + "pk": 1 + }, + { + "fields": { + "position": 2, + "name": "Patches" + }, + "model": "dashboard.category", + "pk": 2 + }, + { + "fields": { + "position": 3, + "name": "Tickets by triage stage" + }, + "model": "dashboard.category", + "pk": 3 + }, + { + "fields": { + "position": 4, + "name": "Accepted tickets by type" + }, + "model": "dashboard.category", + "pk": 4 + }, + { + "fields": { + "category": 3, + "show_on_dashboard": true, + "name": "Unreviewed tickets", + "period": "instant", + "show_sparkline": true, + "query": "status=!closed&stage=Unreviewed", + "unit_plural": "tickets", + "position": 1, + "slug": "unreviewed", + "unit": "ticket" + }, + "model": "dashboard.tracticketmetric", + "pk": 1 + }, + { + "fields": { + "category": 2, + "show_on_dashboard": true, + "name": "Patches needing review", + "period": "instant", + "show_sparkline": true, + "query": "status=!closed&needs_better_patch=0&needs_tests=0&needs_docs=0&has_patch=1&stage=Accepted", + "unit_plural": "tickets", + "position": 1, + "slug": "patches", + "unit": "ticket" + }, + "model": "dashboard.tracticketmetric", + "pk": 2 + }, + { + "fields": { + "category": 2, + "show_on_dashboard": true, + "name": "Doc. patches needing review", + "period": "instant", + "show_sparkline": true, + "query": "status=!closed&needs_better_patch=0&component=Documentation&needs_tests=0&needs_docs=0&has_patch=1&stage=Accepted", + "unit_plural": "tickets", + "position": 1, + "slug": "doc-patches", + "unit": "ticket" + }, + "model": "dashboard.tracticketmetric", + "pk": 3 + }, + { + "fields": { + "category": 3, + "show_on_dashboard": true, + "name": "Tickets needing design decision", + "period": "instant", + "show_sparkline": true, + "query": "status=!closed&stage=Design decision needed", + "unit_plural": "tickets", + "position": 1, + "slug": "ddn", + "unit": "ticket" + }, + "model": "dashboard.tracticketmetric", + "pk": 4 + }, + { + "fields": { + "category": 3, + "show_on_dashboard": true, + "name": "Tickets ready for commit", + "period": "instant", + "show_sparkline": true, + "query": "status=!closed&stage=Ready for checkin", + "unit_plural": "tickets", + "position": 1, + "slug": "rfc", + "unit": "ticket" + }, + "model": "dashboard.tracticketmetric", + "pk": 5 + }, + { + "fields": { + "category": 1, + "show_on_dashboard": true, + "name": "Release blockers", + "period": "instant", + "show_sparkline": true, + "query": "status=!closed&severity=Release blocker", + "unit_plural": "tickets", + "position": 1, + "slug": "blockers", + "unit": "ticket" + }, + "model": "dashboard.tracticketmetric", + "pk": 6 + }, + { + "fields": { + "category": 1, + "show_on_dashboard": true, + "name": "New tickets this week", + "period": "weekly", + "show_sparkline": true, + "query": "time=thisweek..", + "unit_plural": "tickets", + "position": 1, + "slug": "new-tickets-week", + "unit": "ticket" + }, + "model": "dashboard.tracticketmetric", + "pk": 7 + }, + { + "fields": { + "category": 1, + "show_on_dashboard": true, + "name": "New tickets today", + "period": "daily", + "show_sparkline": true, + "query": "time=today..", + "unit_plural": "tickets", + "position": 1, + "slug": "new-tickets-today", + "unit": "ticket" + }, + "model": "dashboard.tracticketmetric", + "pk": 8 + }, + { + "fields": { + "category": 2, + "show_on_dashboard": true, + "name": "\"Easy\" tickets", + "period": "instant", + "show_sparkline": true, + "query": "status=!closed&easy=1&stage=Accepted", + "unit_plural": "tickets", + "position": 1, + "slug": "easy-tickets", + "unit": "ticket" + }, + "model": "dashboard.tracticketmetric", + "pk": 9 + }, + { + "fields": { + "category": 1, + "show_on_dashboard": true, + "name": "Commits today", + "feed_url": "http://code.djangoproject.com/timeline?changeset=on&max=0&daysback=0&format=rss", + "link_url": "http://code.djangoproject.com/timeline?changeset=on&max=0&daysback=0", + "period": "daily", + "show_sparkline": true, + "unit_plural": "commits", + "position": 1, + "slug": "commits-today", + "unit": "commit" + }, + "model": "dashboard.rssfeedmetric", + "pk": 1 + }, + { + "fields": { + "category": 1, + "show_on_dashboard": true, + "name": "Commits in the last week", + "feed_url": "http://code.djangoproject.com/timeline?changeset=on&max=0&daysback=7&format=rss", + "link_url": "http://code.djangoproject.com/timeline?changeset=on&max=0&daysback=7", + "period": "weekly", + "show_sparkline": true, + "unit_plural": "commits", + "position": 1, + "slug": "commits-week", + "unit": "commit" + }, + "model": "dashboard.rssfeedmetric", + "pk": 2 + }, + { + "fields": { + "category": 2, + "show_on_dashboard": true, + "name": "Pull Requests (Open)", + "link_url": "https://github.com/django/django/pulls", + "period": "instant", + "show_sparkline": true, + "unit_plural": "pull requests", + "position": 1, + "slug": "pull-requests-open", + "unit": "pull request", + "api_url": "https://api.github.com/repos/django/django/pulls?state=open" + }, + "model": "dashboard.githubitemcountmetric", + "pk": 1 + }, + { + "fields": { + "category": 2, + "show_on_dashboard": true, + "name": "Pull Requests (Closed)", + "link_url": "https://github.com/django/django/pulls", + "period": "instant", + "show_sparkline": true, + "unit_plural": "pull requests", + "position": 1, + "slug": "pull-requests-closed", + "unit": "pull request", + "api_url": "https://api.github.com/repos/django/django/pulls?state=closed" + }, + "model": "dashboard.githubitemcountmetric", + "pk": 2 + } +] diff --git a/dashboard/management/__init__.py b/dashboard/management/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/dashboard/management/commands/__init__.py b/dashboard/management/commands/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/dashboard/management/commands/update_metrics.py b/dashboard/management/commands/update_metrics.py new file mode 100644 index 000000000..8da0abaef --- /dev/null +++ b/dashboard/management/commands/update_metrics.py @@ -0,0 +1,17 @@ +from __future__ import absolute_import, print_function + +from django.core.management.base import NoArgsCommand + +from ...models import Metric + + +class Command(NoArgsCommand): + def handle_noargs(self, **options): + verbose = int(options.get('verbosity', 0)) + for MC in Metric.__subclasses__(): + for metric in MC.objects.all(): + if verbose: + print("Updating %s ... " % metric.name.lower(), end="") + datum = metric.data.create(measurement=metric.fetch()) + if verbose: + print(datum.measurement) diff --git a/dashboard/migrations/0001_initial.py b/dashboard/migrations/0001_initial.py new file mode 100644 index 000000000..b1f2ceafc --- /dev/null +++ b/dashboard/migrations/0001_initial.py @@ -0,0 +1,129 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations +import django.db.models.deletion +import datetime + + +class Migration(migrations.Migration): + + dependencies = [ + ('contenttypes', '0001_initial'), + ] + + operations = [ + migrations.CreateModel( + name='Category', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=300)), + ('position', models.PositiveSmallIntegerField(default=1)), + ], + options={ + 'verbose_name_plural': 'categories', + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='Datum', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('object_id', models.PositiveIntegerField()), + ('timestamp', models.DateTimeField(default=datetime.datetime.now)), + ('measurement', models.BigIntegerField()), + ('content_type', models.ForeignKey(related_name='+', to='contenttypes.ContentType')), + ], + options={ + 'ordering': ['-timestamp'], + 'get_latest_by': 'timestamp', + 'verbose_name_plural': 'data', + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='GithubItemCountMetric', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=300)), + ('slug', models.SlugField()), + ('position', models.PositiveSmallIntegerField(default=1)), + ('show_on_dashboard', models.BooleanField(default=True)), + ('show_sparkline', models.BooleanField(default=True)), + ('period', models.CharField(default=b'instant', max_length=15, choices=[(b'instant', b'Instant'), (b'daily', b'Daily'), (b'weekly', b'Weekly')])), + ('unit', models.CharField(max_length=100)), + ('unit_plural', models.CharField(max_length=100)), + ('api_url', models.URLField(max_length=1000)), + ('link_url', models.URLField(max_length=1000)), + ('category', models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, to='dashboard.Category', null=True)), + ], + options={ + 'abstract': False, + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='JenkinsFailuresMetric', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=300)), + ('slug', models.SlugField()), + ('position', models.PositiveSmallIntegerField(default=1)), + ('show_on_dashboard', models.BooleanField(default=True)), + ('show_sparkline', models.BooleanField(default=True)), + ('period', models.CharField(default=b'instant', max_length=15, choices=[(b'instant', b'Instant'), (b'daily', b'Daily'), (b'weekly', b'Weekly')])), + ('unit', models.CharField(max_length=100)), + ('unit_plural', models.CharField(max_length=100)), + ('jenkins_root_url', models.URLField(help_text=b'E.g. http://ci.djangoproject.com/', max_length=1000, verbose_name=b'Jenkins instance root URL')), + ('build_name', models.CharField(help_text=b'E.g. Django Python3', max_length=100)), + ('is_success_cnt', models.BooleanField(default=False, help_text=b'E.g. if there are 50 tests of which 30 are failing the value of this metric will be 20 (or 40%.)', verbose_name=b'Should the metric be a value representing success ratio?')), + ('is_percentage', models.BooleanField(default=False, help_text=b'E.g. if there are 50 tests of which 30 are failing the value of this metric will be 60%.', verbose_name=b'Should the metric be a percentage value?')), + ('category', models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, to='dashboard.Category', null=True)), + ], + options={ + 'abstract': False, + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='RSSFeedMetric', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=300)), + ('slug', models.SlugField()), + ('position', models.PositiveSmallIntegerField(default=1)), + ('show_on_dashboard', models.BooleanField(default=True)), + ('show_sparkline', models.BooleanField(default=True)), + ('period', models.CharField(default=b'instant', max_length=15, choices=[(b'instant', b'Instant'), (b'daily', b'Daily'), (b'weekly', b'Weekly')])), + ('unit', models.CharField(max_length=100)), + ('unit_plural', models.CharField(max_length=100)), + ('feed_url', models.URLField(max_length=1000)), + ('link_url', models.URLField(max_length=1000)), + ('category', models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, to='dashboard.Category', null=True)), + ], + options={ + 'abstract': False, + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='TracTicketMetric', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=300)), + ('slug', models.SlugField()), + ('position', models.PositiveSmallIntegerField(default=1)), + ('show_on_dashboard', models.BooleanField(default=True)), + ('show_sparkline', models.BooleanField(default=True)), + ('period', models.CharField(default=b'instant', max_length=15, choices=[(b'instant', b'Instant'), (b'daily', b'Daily'), (b'weekly', b'Weekly')])), + ('unit', models.CharField(max_length=100)), + ('unit_plural', models.CharField(max_length=100)), + ('query', models.TextField()), + ('category', models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, to='dashboard.Category', null=True)), + ], + options={ + 'abstract': False, + }, + bases=(models.Model,), + ), + ] diff --git a/dashboard/migrations/__init__.py b/dashboard/migrations/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/dashboard/models.py b/dashboard/models.py new file mode 100644 index 000000000..4fe2975af --- /dev/null +++ b/dashboard/models.py @@ -0,0 +1,245 @@ +import ast +import datetime +import xmlrpclib +import feedparser +import calendar +import requests +from django.conf import settings +from django.contrib.contenttypes.generic import GenericForeignKey, GenericRelation +from django.contrib.contenttypes.models import ContentType +from django.db import models, connections +from django_hosts.resolvers import reverse + +METRIC_PERIOD_INSTANT = 'instant' +METRIC_PERIOD_DAILY = 'daily' +METRIC_PERIOD_WEEKLY = 'weekly' +METRIC_PERIOD_CHOICES = ( + (METRIC_PERIOD_INSTANT, 'Instant'), + (METRIC_PERIOD_DAILY, 'Daily'), + (METRIC_PERIOD_WEEKLY, 'Weekly'), +) + + +class Category(models.Model): + name = models.CharField(max_length=300) + position = models.PositiveSmallIntegerField(default=1) + + class Meta: + verbose_name_plural = 'categories' + + def __unicode__(self): + return self.name + + +class Metric(models.Model): + name = models.CharField(max_length=300) + slug = models.SlugField() + category = models.ForeignKey(Category, blank=True, null=True, + on_delete=models.SET_NULL) + position = models.PositiveSmallIntegerField(default=1) + data = GenericRelation('Datum') + show_on_dashboard = models.BooleanField(default=True) + show_sparkline = models.BooleanField(default=True) + period = models.CharField(max_length=15, choices=METRIC_PERIOD_CHOICES, + default=METRIC_PERIOD_INSTANT) + unit = models.CharField(max_length=100) + unit_plural = models.CharField(max_length=100) + + class Meta: + abstract = True + + def __unicode__(self): + return self.name + + def get_absolute_url(self): + return reverse("metric-detail", args=[self.slug], host='dashboard') + + @property + def display_position(self): + cat_position = -1 if self.category is None else self.category.position + return cat_position, self.position + + def gather_data(self, since): + """ + Gather all the data from this metric since a given date. + + Returns a list of (timestamp, value) tuples. The timestamp is a Unix + timestamp, coverted from localtime to UTC. + """ + if self.period == METRIC_PERIOD_INSTANT: + return self._gather_data_instant(since) + elif self.period == METRIC_PERIOD_DAILY: + return self._gather_data_periodic(since, 'day') + elif self.period == METRIC_PERIOD_WEEKLY: + return self._gather_data_periodic(since, 'week') + else: + raise ValueError("Unknown period: %s", self.period) + + def _gather_data_instant(self, since): + """ + Gather data from an "instant" metric. + + Instant metrics change every time we measure them, so they're easy: + just return every single measurement. + """ + data = self.data.filter(timestamp__gt=since) \ + .order_by('timestamp') \ + .values_list('timestamp', 'measurement') + return [(calendar.timegm(t.timetuple()), m) for (t, m) in data] + + def _gather_data_periodic(self, since, period): + """ + Gather data from "periodic" merics. + + Period metrics are reset every day/week/month and count up as the period + goes on. Think "commits today" or "new tickets this week". + + XXX I'm not completely sure how to deal with this since time zones wreak + havoc, so there's right now a hard-coded offset which doesn't really + scale but works for now. + """ + OFFSET = "2 hours" # HACK! + ctid = ContentType.objects.get_for_model(self).id + + c = connections['default'].cursor() + c.execute('''SELECT + DATE_TRUNC(%s, timestamp - INTERVAL %s), + MAX(measurement) + FROM dashboard_datum + WHERE content_type_id = %s + AND object_id = %s + AND timestamp >= %s + GROUP BY 1;''', [period, OFFSET, ctid, self.id, since]) + return [(calendar.timegm(t.timetuple()), float(m)) for (t, m) in c.fetchall()] + + +class TracTicketMetric(Metric): + query = models.TextField() + + def __unicode__(self): + return self.name + + def fetch(self): + s = xmlrpclib.ServerProxy(settings.TRAC_RPC_URL) + return len(s.ticket.query(self.query + "&max=0")) + + def link(self): + return "%squery?%s&desc=1&order=changetime" % (settings.TRAC_URL, self.query) + + +class RSSFeedMetric(Metric): + feed_url = models.URLField(max_length=1000) + link_url = models.URLField(max_length=1000) + + def fetch(self): + return len(feedparser.parse(requests.get(self.feed_url).text).entries) + + def link(self): + return self.link_url + + +class GithubItemCountMetric(Metric): + """Example: https://api.github.com/repos/django/django/pulls?state=open""" + api_url = models.URLField(max_length=1000) + link_url = models.URLField(max_length=1000) + + def fetch(self): + """ + Request the specified GitHub API URL with 100 items per page. Loop over + the pages until no page left. Return total item count. + """ + count = 0 + page = 1 + number_of_items_on_page = 101 + while number_of_items_on_page >= 100: + r = requests.get(self.api_url, params={ + 'page': page, + 'per_page': 100 + }) + number_of_items_on_page = len(r.json()) + count += number_of_items_on_page + page += 1 + return count + + def link(self): + return self.link_url + + +class JenkinsFailuresMetric(Metric): + """ + Track failures of a job/build. Uses the Python flavor of the Jenkins REST + API. + """ + jenkins_root_url = models.URLField( + verbose_name='Jenkins instance root URL', + max_length=1000, + help_text='E.g. http://ci.djangoproject.com/', + ) + build_name = models.CharField( + max_length=100, + help_text='E.g. Django Python3', + ) + is_success_cnt = models.BooleanField( + default=False, + verbose_name='Should the metric be a value representing success ratio?', + help_text='E.g. if there are 50 tests of which 30 are failing the value of this metric ' + 'will be 20 (or 40%.)', + ) + is_percentage = models.BooleanField( + default=False, + verbose_name='Should the metric be a percentage value?', + help_text='E.g. if there are 50 tests of which 30 are failing the value of this metric ' + 'will be 60%.', + ) + + def urljoin(self, *parts): + return '/'.join(p.strip('/') for p in parts) + + def _fetch(self): + """ + Actually get the values we are interested in by using the Jenkins REST + API (https://wiki.jenkins-ci.org/display/JENKINS/Remote+access+API) + """ + api_url = self.urljoin(self.link(), 'api/python') + job_desc = requests.get(api_url) + job_dict = ast.literal_eval(job_desc.text) + build_ptr_dict = job_dict['lastCompletedBuild'] + build_url = self.urljoin(build_ptr_dict['url'], 'api/python') + build_desc = requests.get(build_url) + build_dict = ast.literal_eval(build_desc.text) + return (build_dict['actions'][4]['failCount'], build_dict['actions'][4]['totalCount']) + + def _calculate(self, failures, total): + """Calculate the metric value.""" + if self.is_success_cnt: + value = total - failures + else: + value = failures + if self.is_percentage: + if not total: + return 0 + value = (value * 100)/total + return value + + def fetch(self): + failures, total = self._fetch() + return self._calculate(failures, total) + + def link(self): + return self.urljoin(self.jenkins_root_url, 'job', self.build_name) + + +class Datum(models.Model): + metric = GenericForeignKey() + content_type = models.ForeignKey(ContentType, related_name='+') + object_id = models.PositiveIntegerField() + timestamp = models.DateTimeField(default=datetime.datetime.now) + measurement = models.BigIntegerField() + + class Meta: + ordering = ['-timestamp'] + get_latest_by = 'timestamp' + verbose_name_plural = 'data' + + def __unicode__(self): + return "%s at %s: %s" % (self.metric, self.timestamp, self.measurement) diff --git a/dashboard/tests.py b/dashboard/tests.py new file mode 100644 index 000000000..0ef9d2207 --- /dev/null +++ b/dashboard/tests.py @@ -0,0 +1,101 @@ +# -*- coding: utf-8 -*- +import json +from django.contrib.contenttypes.models import ContentType +from django.http import Http404 +from django.test import TestCase, RequestFactory +from django_hosts.resolvers import reverse +import mock +import rmoq + +from .models import TracTicketMetric, RSSFeedMetric, GithubItemCountMetric, Metric +from .views import index, metric_detail, metric_json + + +class ViewTests(TestCase): + fixtures = ['dashboard_test_data'] + + def setUp(self): + self.factory = RequestFactory() + + def test_index(self): + for MC in Metric.__subclasses__(): + for metric in MC.objects.filter(show_on_dashboard=True): + metric.data.create(measurement=42) + + request = self.factory.get(reverse('dashboard-index', host='dashboard')) + response = index(request) + self.assertContains(response, 'Django development dashboard') + self.assertEqual(response.content.count('

    li{position:relative}.icon-li{position:absolute;left:-2.14286em;width:2.14286em;top:0.14286em;text-align:center}.icon-li.icon-lg{left:-1.85714em}.icon-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.icon.pull-left{margin-right:.3em}.icon.pull-right{margin-left:.3em}.icon-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.icon-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.icon-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.icon-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.icon-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0);-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.icon-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .icon-rotate-90,:root .icon-rotate-180,:root .icon-rotate-270,:root .icon-flip-horizontal,:root .icon-flip-vertical{filter:none}.icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.icon-stack-1x,.icon-stack-2x{position:absolute;left:0;width:100%;text-align:center}.icon-stack-1x{line-height:inherit}.icon-stack-2x{font-size:2em}.icon-inverse{color:#fff}.icon-glass:before{content:""}.icon-music:before{content:""}.icon-search:before{content:""}.icon-envelope-o:before{content:""}.icon-heart:before{content:""}.icon-star:before{content:""}.icon-star-o:before{content:""}.icon-user:before{content:""}.icon-film:before{content:""}.icon-th-large:before{content:""}.icon-th:before{content:""}.icon-th-list:before{content:""}.icon-check:before{content:""}.icon-remove:before,.icon-close:before,.icon-times:before{content:""}.icon-search-plus:before{content:""}.icon-search-minus:before{content:""}.icon-power-off:before{content:""}.icon-signal:before{content:""}.icon-gear:before,.icon-cog:before{content:""}.icon-trash-o:before{content:""}.icon-home:before{content:""}.icon-file-o:before{content:""}.icon-clock-o:before{content:""}.icon-road:before{content:""}.icon-download:before{content:""}.icon-arrow-circle-o-down:before{content:""}.icon-arrow-circle-o-up:before{content:""}.icon-inbox:before{content:""}.icon-play-circle-o:before{content:""}.icon-rotate-right:before,.icon-repeat:before{content:""}.icon-refresh:before{content:""}.icon-list-alt:before{content:""}.icon-lock:before{content:""}.icon-flag:before{content:""}.icon-headphones:before{content:""}.icon-volume-off:before{content:""}.icon-volume-down:before{content:""}.icon-volume-up:before{content:""}.icon-qrcode:before{content:""}.icon-barcode:before{content:""}.icon-tag:before{content:""}.icon-tags:before{content:""}.icon-book:before{content:""}.icon-bookmark:before{content:""}.icon-print:before{content:""}.icon-camera:before{content:""}.icon-font:before{content:""}.icon-bold:before{content:""}.icon-italic:before{content:""}.icon-text-height:before{content:""}.icon-text-width:before{content:""}.icon-align-left:before{content:""}.icon-align-center:before{content:""}.icon-align-right:before{content:""}.icon-align-justify:before{content:""}.icon-list:before{content:""}.icon-dedent:before,.icon-outdent:before{content:""}.icon-indent:before{content:""}.icon-video-camera:before{content:""}.icon-photo:before,.icon-image:before,.icon-picture-o:before{content:""}.icon-pencil:before{content:""}.icon-map-marker:before{content:""}.icon-adjust:before{content:""}.icon-tint:before{content:""}.icon-edit:before,.icon-pencil-square-o:before{content:""}.icon-share-square-o:before{content:""}.icon-check-square-o:before{content:""}.icon-arrows:before{content:""}.icon-step-backward:before{content:""}.icon-fast-backward:before{content:""}.icon-backward:before{content:""}.icon-play:before{content:""}.icon-pause:before{content:""}.icon-stop:before{content:""}.icon-forward:before{content:""}.icon-fast-forward:before{content:""}.icon-step-forward:before{content:""}.icon-eject:before{content:""}.icon-chevron-left:before{content:""}.icon-chevron-right:before{content:""}.icon-plus-circle:before{content:""}.icon-minus-circle:before{content:""}.icon-times-circle:before{content:""}.icon-check-circle:before{content:""}.icon-question-circle:before{content:""}.icon-info-circle:before{content:""}.icon-crosshairs:before{content:""}.icon-times-circle-o:before{content:""}.icon-check-circle-o:before{content:""}.icon-ban:before{content:""}.icon-arrow-left:before{content:""}.icon-arrow-right:before{content:""}.icon-arrow-up:before{content:""}.icon-arrow-down:before{content:""}.icon-mail-forward:before,.icon-share:before{content:""}.icon-expand:before{content:""}.icon-compress:before{content:""}.icon-plus:before{content:""}.icon-minus:before{content:""}.icon-asterisk:before{content:""}.icon-exclamation-circle:before{content:""}.icon-gift:before{content:""}.icon-leaf:before{content:""}.icon-fire:before{content:""}.icon-eye:before{content:""}.icon-eye-slash:before{content:""}.icon-warning:before,.icon-exclamation-triangle:before{content:""}.icon-plane:before{content:""}.icon-calendar:before{content:""}.icon-random:before{content:""}.icon-comment:before{content:""}.icon-magnet:before{content:""}.icon-chevron-up:before{content:""}.icon-chevron-down:before{content:""}.icon-retweet:before{content:""}.icon-shopping-cart:before{content:""}.icon-folder:before{content:""}.icon-folder-open:before{content:""}.icon-arrows-v:before{content:""}.icon-arrows-h:before{content:""}.icon-bar-chart-o:before,.icon-bar-chart:before{content:""}.icon-twitter-square:before{content:""}.icon-facebook-square:before{content:""}.icon-camera-retro:before{content:""}.icon-key:before{content:""}.icon-gears:before,.icon-cogs:before{content:""}.icon-comments:before{content:""}.icon-thumbs-o-up:before{content:""}.icon-thumbs-o-down:before{content:""}.icon-star-half:before{content:""}.icon-heart-o:before{content:""}.icon-sign-out:before{content:""}.icon-linkedin-square:before{content:""}.icon-thumb-tack:before{content:""}.icon-external-link:before{content:""}.icon-sign-in:before{content:""}.icon-trophy:before{content:""}.icon-github-square:before{content:""}.icon-upload:before{content:""}.icon-lemon-o:before{content:""}.icon-phone:before{content:""}.icon-square-o:before{content:""}.icon-bookmark-o:before{content:""}.icon-phone-square:before{content:""}.icon-twitter:before{content:""}.icon-facebook:before{content:""}.icon-github:before{content:""}.icon-unlock:before{content:""}.icon-credit-card:before{content:""}.icon-rss:before{content:""}.icon-hdd-o:before{content:""}.icon-bullhorn:before{content:""}.icon-bell:before{content:""}.icon-certificate:before{content:""}.icon-hand-o-right:before{content:""}.icon-hand-o-left:before{content:""}.icon-hand-o-up:before{content:""}.icon-hand-o-down:before{content:""}.icon-arrow-circle-left:before{content:""}.icon-arrow-circle-right:before{content:""}.icon-arrow-circle-up:before{content:""}.icon-arrow-circle-down:before{content:""}.icon-globe:before{content:""}.icon-wrench:before{content:""}.icon-tasks:before{content:""}.icon-filter:before{content:""}.icon-briefcase:before{content:""}.icon-arrows-alt:before{content:""}.icon-group:before,.icon-users:before{content:""}.icon-chain:before,.icon-link:before{content:""}.icon-cloud:before{content:""}.icon-flask:before{content:""}.icon-cut:before,.icon-scissors:before{content:""}.icon-copy:before,.icon-files-o:before{content:""}.icon-paperclip:before{content:""}.icon-save:before,.icon-floppy-o:before{content:""}.icon-square:before{content:""}.icon-navicon:before,.icon-reorder:before,.icon-bars:before{content:""}.icon-list-ul:before{content:""}.icon-list-ol:before{content:""}.icon-strikethrough:before{content:""}.icon-underline:before{content:""}.icon-table:before{content:""}.icon-magic:before{content:""}.icon-truck:before{content:""}.icon-pinterest:before{content:""}.icon-pinterest-square:before{content:""}.icon-google-plus-square:before{content:""}.icon-google-plus:before{content:""}.icon-money:before{content:""}.icon-caret-down:before{content:""}.icon-caret-up:before{content:""}.icon-caret-left:before{content:""}.icon-caret-right:before{content:""}.icon-columns:before{content:""}.icon-unsorted:before,.icon-sort:before{content:""}.icon-sort-down:before,.icon-sort-desc:before{content:""}.icon-sort-up:before,.icon-sort-asc:before{content:""}.icon-envelope:before{content:""}.icon-linkedin:before{content:""}.icon-rotate-left:before,.icon-undo:before{content:""}.icon-legal:before,.icon-gavel:before{content:""}.icon-dashboard:before,.icon-tachometer:before{content:""}.icon-comment-o:before{content:""}.icon-comments-o:before{content:""}.icon-flash:before,.icon-bolt:before{content:""}.icon-sitemap:before{content:""}.icon-umbrella:before{content:""}.icon-paste:before,.icon-clipboard:before{content:""}.icon-lightbulb-o:before{content:""}.icon-exchange:before{content:""}.icon-cloud-download:before{content:""}.icon-cloud-upload:before{content:""}.icon-user-md:before{content:""}.icon-stethoscope:before{content:""}.icon-suitcase:before{content:""}.icon-bell-o:before{content:""}.icon-coffee:before{content:""}.icon-cutlery:before{content:""}.icon-file-text-o:before{content:""}.icon-building-o:before{content:""}.icon-hospital-o:before{content:""}.icon-ambulance:before{content:""}.icon-medkit:before{content:""}.icon-fighter-jet:before{content:""}.icon-beer:before{content:""}.icon-h-square:before{content:""}.icon-plus-square:before{content:""}.icon-angle-double-left:before{content:""}.icon-angle-double-right:before{content:""}.icon-angle-double-up:before{content:""}.icon-angle-double-down:before{content:""}.icon-angle-left:before{content:""}.icon-angle-right:before{content:""}.icon-angle-up:before{content:""}.icon-angle-down:before{content:""}.icon-desktop:before{content:""}.icon-laptop:before{content:""}.icon-tablet:before{content:""}.icon-mobile-phone:before,.icon-mobile:before{content:""}.icon-circle-o:before{content:""}.icon-quote-left:before{content:""}.icon-quote-right:before{content:""}.icon-spinner:before{content:""}.icon-circle:before{content:""}.icon-mail-reply:before,.icon-reply:before{content:""}.icon-github-alt:before{content:""}.icon-folder-o:before{content:""}.icon-folder-open-o:before{content:""}.icon-smile-o:before{content:""}.icon-frown-o:before{content:""}.icon-meh-o:before{content:""}.icon-gamepad:before{content:""}.icon-keyboard-o:before{content:""}.icon-flag-o:before{content:""}.icon-flag-checkered:before{content:""}.icon-terminal:before{content:""}.icon-code:before{content:""}.icon-mail-reply-all:before,.icon-reply-all:before{content:""}.icon-star-half-empty:before,.icon-star-half-full:before,.icon-star-half-o:before{content:""}.icon-location-arrow:before{content:""}.icon-crop:before{content:""}.icon-code-fork:before{content:""}.icon-unlink:before,.icon-chain-broken:before{content:""}.icon-question:before{content:""}.icon-info:before{content:""}.icon-exclamation:before{content:""}.icon-superscript:before{content:""}.icon-subscript:before{content:""}.icon-eraser:before{content:""}.icon-puzzle-piece:before{content:""}.icon-microphone:before{content:""}.icon-microphone-slash:before{content:""}.icon-shield:before{content:""}.icon-calendar-o:before{content:""}.icon-fire-extinguisher:before{content:""}.icon-rocket:before{content:""}.icon-maxcdn:before{content:""}.icon-chevron-circle-left:before{content:""}.icon-chevron-circle-right:before{content:""}.icon-chevron-circle-up:before{content:""}.icon-chevron-circle-down:before{content:""}.icon-html5:before{content:""}.icon-css3:before{content:""}.icon-anchor:before{content:""}.icon-unlock-alt:before{content:""}.icon-bullseye:before{content:""}.icon-ellipsis-h:before{content:""}.icon-ellipsis-v:before{content:""}.icon-rss-square:before{content:""}.icon-play-circle:before{content:""}.icon-ticket:before{content:""}.icon-minus-square:before{content:""}.icon-minus-square-o:before{content:""}.icon-level-up:before{content:""}.icon-level-down:before{content:""}.icon-check-square:before{content:""}.icon-pencil-square:before{content:""}.icon-external-link-square:before{content:""}.icon-share-square:before{content:""}.icon-compass:before{content:""}.icon-toggle-down:before,.icon-caret-square-o-down:before{content:""}.icon-toggle-up:before,.icon-caret-square-o-up:before{content:""}.icon-toggle-right:before,.icon-caret-square-o-right:before{content:""}.icon-euro:before,.icon-eur:before{content:""}.icon-gbp:before{content:""}.icon-dollar:before,.icon-usd:before{content:""}.icon-rupee:before,.icon-inr:before{content:""}.icon-cny:before,.icon-rmb:before,.icon-yen:before,.icon-jpy:before{content:""}.icon-ruble:before,.icon-rouble:before,.icon-rub:before{content:""}.icon-won:before,.icon-krw:before{content:""}.icon-bitcoin:before,.icon-btc:before{content:""}.icon-file:before{content:""}.icon-file-text:before{content:""}.icon-sort-alpha-asc:before{content:""}.icon-sort-alpha-desc:before{content:""}.icon-sort-amount-asc:before{content:""}.icon-sort-amount-desc:before{content:""}.icon-sort-numeric-asc:before{content:""}.icon-sort-numeric-desc:before{content:""}.icon-thumbs-up:before{content:""}.icon-thumbs-down:before{content:""}.icon-youtube-square:before{content:""}.icon-youtube:before{content:""}.icon-xing:before{content:""}.icon-xing-square:before{content:""}.icon-youtube-play:before{content:""}.icon-dropbox:before{content:""}.icon-stack-overflow:before{content:""}.icon-instagram:before{content:""}.icon-flickr:before{content:""}.icon-adn:before{content:""}.icon-bitbucket:before{content:""}.icon-bitbucket-square:before{content:""}.icon-tumblr:before{content:""}.icon-tumblr-square:before{content:""}.icon-long-arrow-down:before{content:""}.icon-long-arrow-up:before{content:""}.icon-long-arrow-left:before{content:""}.icon-long-arrow-right:before{content:""}.icon-apple:before{content:""}.icon-windows:before{content:""}.icon-android:before{content:""}.icon-linux:before{content:""}.icon-dribbble:before{content:""}.icon-skype:before{content:""}.icon-foursquare:before{content:""}.icon-trello:before{content:""}.icon-female:before{content:""}.icon-male:before{content:""}.icon-gittip:before{content:""}.icon-sun-o:before{content:""}.icon-moon-o:before{content:""}.icon-archive:before{content:""}.icon-bug:before{content:""}.icon-vk:before{content:""}.icon-weibo:before{content:""}.icon-renren:before{content:""}.icon-pagelines:before{content:""}.icon-stack-exchange:before{content:""}.icon-arrow-circle-o-right:before{content:""}.icon-arrow-circle-o-left:before{content:""}.icon-toggle-left:before,.icon-caret-square-o-left:before{content:""}.icon-dot-circle-o:before{content:""}.icon-wheelchair:before{content:""}.icon-vimeo-square:before{content:""}.icon-turkish-lira:before,.icon-try:before{content:""}.icon-plus-square-o:before{content:""}.icon-space-shuttle:before{content:""}.icon-slack:before{content:""}.icon-envelope-square:before{content:""}.icon-wordpress:before{content:""}.icon-openid:before{content:""}.icon-institution:before,.icon-bank:before,.icon-university:before{content:""}.icon-mortar-board:before,.icon-graduation-cap:before{content:""}.icon-yahoo:before{content:""}.icon-google:before{content:""}.icon-reddit:before{content:""}.icon-reddit-square:before{content:""}.icon-stumbleupon-circle:before{content:""}.icon-stumbleupon:before{content:""}.icon-delicious:before{content:""}.icon-digg:before{content:""}.icon-pied-piper:before{content:""}.icon-pied-piper-alt:before{content:""}.icon-drupal:before{content:""}.icon-joomla:before{content:""}.icon-language:before{content:""}.icon-fax:before{content:""}.icon-building:before{content:""}.icon-child:before{content:""}.icon-paw:before{content:""}.icon-spoon:before{content:""}.icon-cube:before{content:""}.icon-cubes:before{content:""}.icon-behance:before{content:""}.icon-behance-square:before{content:""}.icon-steam:before{content:""}.icon-steam-square:before{content:""}.icon-recycle:before{content:""}.icon-automobile:before,.icon-car:before{content:""}.icon-cab:before,.icon-taxi:before{content:""}.icon-tree:before{content:""}.icon-spotify:before{content:""}.icon-deviantart:before{content:""}.icon-soundcloud:before{content:""}.icon-database:before{content:""}.icon-file-pdf-o:before{content:""}.icon-file-word-o:before{content:""}.icon-file-excel-o:before{content:""}.icon-file-powerpoint-o:before{content:""}.icon-file-photo-o:before,.icon-file-picture-o:before,.icon-file-image-o:before{content:""}.icon-file-zip-o:before,.icon-file-archive-o:before{content:""}.icon-file-sound-o:before,.icon-file-audio-o:before{content:""}.icon-file-movie-o:before,.icon-file-video-o:before{content:""}.icon-file-code-o:before{content:""}.icon-vine:before{content:""}.icon-codepen:before{content:""}.icon-jsfiddle:before{content:""}.icon-life-bouy:before,.icon-life-buoy:before,.icon-life-saver:before,.icon-support:before,.icon-life-ring:before{content:""}.icon-circle-o-notch:before{content:""}.icon-ra:before,.icon-rebel:before{content:""}.icon-ge:before,.icon-empire:before{content:""}.icon-git-square:before{content:""}.icon-git:before{content:""}.icon-hacker-news:before{content:""}.icon-tencent-weibo:before{content:""}.icon-qq:before{content:""}.icon-wechat:before,.icon-weixin:before{content:""}.icon-send:before,.icon-paper-plane:before{content:""}.icon-send-o:before,.icon-paper-plane-o:before{content:""}.icon-history:before{content:""}.icon-circle-thin:before{content:""}.icon-header:before{content:""}.icon-paragraph:before{content:""}.icon-sliders:before{content:""}.icon-share-alt:before{content:""}.icon-share-alt-square:before{content:""}.icon-bomb:before{content:""}.icon-soccer-ball-o:before,.icon-futbol-o:before{content:""}.icon-tty:before{content:""}.icon-binoculars:before{content:""}.icon-plug:before{content:""}.icon-slideshare:before{content:""}.icon-twitch:before{content:""}.icon-yelp:before{content:""}.icon-newspaper-o:before{content:""}.icon-wifi:before{content:""}.icon-calculator:before{content:""}.icon-paypal:before{content:""}.icon-google-wallet:before{content:""}.icon-cc-visa:before{content:""}.icon-cc-mastercard:before{content:""}.icon-cc-discover:before{content:""}.icon-cc-amex:before{content:""}.icon-cc-paypal:before{content:""}.icon-cc-stripe:before{content:""}.icon-bell-slash:before{content:""}.icon-bell-slash-o:before{content:""}.icon-trash:before{content:""}.icon-copyright:before{content:""}.icon-at:before{content:""}.icon-eyedropper:before{content:""}.icon-paint-brush:before{content:""}.icon-birthday-cake:before{content:""}.icon-area-chart:before{content:""}.icon-pie-chart:before{content:""}.icon-line-chart:before{content:""}.icon-lastfm:before{content:""}.icon-lastfm-square:before{content:""}.icon-toggle-off:before{content:""}.icon-toggle-on:before{content:""}.icon-bicycle:before{content:""}.icon-bus:before{content:""}.icon-ioxhost:before{content:""}.icon-angellist:before{content:""}.icon-cc:before{content:""}.icon-shekel:before,.icon-sheqel:before,.icon-ils:before{content:""}.icon-meanpath:before{content:""}body{font-family:Palatino, "Palatino Linotype", "Book Antiqua", "Hoefler Text", Georgia, "Lucida Bright", Cambria, Times, "Times New Roman", serif;font-size:18px;font-size:1.8rem;background:#f8f8f8;color:#0C3C26;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-width:768px}body .layout-secondary,body [role="complementary"]{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif}a{color:#0C3C26;text-decoration:underline;-webkit-tap-highlight-color:transparent}a:visited{color:#156641}a:active,a:focus,a:hover{color:#1d915c}::selection{background:#C9F0DD}::-moz-selection{background:#C9F0DD}ol li,ul li{margin-top:10px}dl{margin:20px 0 10px}dl dt{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:400}dl dd{margin:0.2em 0 1.2em;padding:0}dl dd:last-of-type{margin-bottom:0}h1,h2,h3,h4,h5,h6{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:400}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{text-decoration:none;color:#20AA76;text-decoration:none}h1 a:visited,h2 a:visited,h3 a:visited,h4 a:visited,h5 a:visited,h6 a:visited{color:#20AA76}h1 a:hover,h1 a:active,h1 a:focus,h2 a:hover,h2 a:active,h2 a:focus,h3 a:hover,h3 a:active,h3 a:focus,h4 a:hover,h4 a:active,h4 a:focus,h5 a:hover,h5 a:active,h5 a:focus,h6 a:hover,h6 a:active,h6 a:focus{color:#25c488;text-decoration:none}h1{font-size:28px;font-size:2.8rem;color:#fff;letter-spacing:-1px;line-height:1.1;font-size:32px;font-size:3.2rem}.layout-secondary h1{color:#0C3C26}[role="main"] h1{font-size:32px;font-size:3.2rem;margin:40px 0px 30px;color:#0C3C26}[role="complementary"] h1{font-size:28px;font-size:2.8rem}h2{font-size:24px;font-size:2.4rem}[role="complementary"] h2,.layout-secondary h2{font-size:20px;font-size:2rem;border-bottom:1px solid #CFE3DC;font-weight:400;padding-bottom:15px;margin-top:30px}[role="complementary"] h2:first-of-type,.layout-secondary h2:first-of-type{margin-top:inherit}[role="complementary"] h2:first-child,.layout-secondary h2:first-child{margin-top:20px}.full-width [role="complementary"] h2,.full-width .layout-secondary h2{font-size:24px;font-size:2.4rem}[role="main"] h2{margin-top:40px;margin-bottom:15px}h3{font-size:20px;font-size:2rem;font-weight:700;color:#0C3C26;line-height:1.2;margin:35px 0 20px}[role="complementary"] h3,.layout-secondary h3{font-size:18px;font-size:1.8rem;font-weight:400;padding-bottom:15px}[role="complementary"] h3:first-child,.layout-secondary h3:first-child{margin-top:12px}[role="complementary"] h3{font-size:18px;font-size:1.8rem;border-bottom:1px solid #CFE3DC}h4{font-size:16px;font-size:1.6rem;color:#0C3C26;line-height:1.2;margin:35px 0 20px;font-weight:700}tt,code,kbd,pre,samp{font-family:"Fira Mono", Consolas, Menlo, Monaco, "Courier New", Courier, monospace;font-variant-ligatures:no-common-ligatures;text-rendering:optimizeSpeed;color:#0C4B33;font-size:1em}tt{font-weight:700}span.pre{font-family:"Fira Mono", Consolas, Menlo, Monaco, "Courier New", Courier, monospace;font-variant-ligatures:no-common-ligatures;text-rendering:optimizeSpeed}a:hover tt,a:active tt,a:focus tt{color:#1d915c}[role="main"]>p:first-child{margin-top:30px}ul{padding-left:20px}blockquote{background:#F1FFF7;padding:15px 20px 15px 70px;border:1px solid #C9F0DD;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin:25px 0;position:relative}blockquote p:first-child{margin-top:0}blockquote::before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;top:20px;left:20px;font-size:30px;width:34px;text-align:center;content:"";opacity:0.5}[role="main"]{background:#fff;padding:1px 10px 40px;min-height:800px;border:1px solid #ddd;float:right;margin:0;padding-bottom:80px;padding-left:3%;padding-right:3%;width:60%}.mdzr-boxshadow [role="main"]{border:none;-moz-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,460px 0 0 0 #fff,1000px 0 0 0 #fff,0px 600px 0 0px #fff,460px 600px 0 0px #fff;-webkit-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,460px 0 0 0 #fff,1000px 0 0 0 #fff,0px 600px 0 0px #fff,460px 600px 0 0px #fff;box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,460px 0 0 0 #fff,1000px 0 0 0 #fff,0px 600px 0 0px #fff,460px 600px 0 0px #fff;padding-left:4%;padding-right:0;width:63%}.sidebar-right [role="main"]{float:left}.mdzr-boxshadow .sidebar-right [role="main"]{border:none;-moz-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,-460px 0 0 0 #fff,-1000px 0 0 0 #fff,0px 600px 0 0px #fff,-460px 600px 0 0px #fff;-webkit-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,-460px 0 0 0 #fff,-1000px 0 0 0 #fff,0px 600px 0 0px #fff,-460px 600px 0 0px #fff;box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,-460px 0 0 0 #fff,-1000px 0 0 0 #fff,0px 600px 0 0px #fff,-460px 600px 0 0px #fff;padding-left:0;width:62%;padding-right:4%}.full-width [role="main"]{border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;float:none;margin:0 auto;padding:0 10px 40px;width:auto;max-width:740px;padding:20px 0 40px;width:91.66667%}[role="main"] .section{padding-bottom:40px;border-bottom:1px solid #CFE3DC}[role="main"] .section:last-of-type{padding-bottom:0;border-bottom:0}[role="main"] .section dd.last-child{padding-bottom:0}.full-width{zoom:1}.full-width.container{width:100%;padding:0;max-width:none;border-bottom:1px solid #ddd;background:#fff}.full-width:before,.full-width:after{content:"";display:table}.full-width:after{clear:both}.mdzr-boxshadow .full-width{border:none;-moz-box-shadow:0 4px 8px rgba(12,60,38,0.07);-webkit-box-shadow:0 4px 8px rgba(12,60,38,0.07);box-shadow:0 4px 8px rgba(12,60,38,0.07)}[role="complementary"]{padding:0 10px 20px;font-size:14px;font-size:1.4rem;float:right;margin:20px 0;margin-right:3%;padding:0 0 40px 0;width:30%}.sidebar-right [role="complementary"]{margin-left:3%;margin-right:0}[role="complementary"] span.form-controls{display:none}[role="complementary"] .list-collapsing{margin-top:0;border-bottom:0}[role="complementary"] .list-collapsing.active li{border-top:0}[role="complementary"] .list-collapsing.active h2{padding:10px 40px 10px 0;font-size:18px;border-bottom:0;color:#44B78B}[role="complementary"] .list-collapsing.active h2 .collapsing-icon{font-size:10px}[role="secondary"]{margin:0 10px;padding:40px 0 60px}.full-width [role="secondary"]{max-width:700px;margin:0 auto}.layout-secondary{padding:20px 10px 50px}.layout-tertiary{background:#fff;border-top:1px solid #ddd;padding:20px 10px 50px}.mdzr-boxshadow .layout-tertiary{border:none;-moz-box-shadow:0 -4px 8px rgba(12,60,38,0.07);-webkit-box-shadow:0 -4px 8px rgba(12,60,38,0.07);box-shadow:0 -4px 8px rgba(12,60,38,0.07)}.container{zoom:1;margin:0 auto;max-width:1400px;padding:0 4.16667%;min-width:768px}.container:before,.container:after{content:"";display:table}.container:after{clear:both}.mdzr-boxshadow .container.sidebar-right{-moz-box-shadow:-1200px 0 0 0px #fff;-webkit-box-shadow:-1200px 0 0 0px #fff;box-shadow:-1200px 0 0 0px #fff}[role="banner"]{zoom:1;background:#0C4B33;overflow:hidden;margin:0;padding:10px 0 6px;position:relative;z-index:0}[role="banner"]:before,[role="banner"]:after{content:"";display:table}[role="banner"]:after{clear:both}[role="banner"] .container{position:relative}[role="banner"] .meta,[role="banner"] .list-links dd,.list-links [role="banner"] dd{font-size:13px;font-size:1.3rem;color:#44B78B;font-weight:700;width:auto;float:left;margin:8px 0 0 10px;display:none}[role="banner"] .logo{font-size:40px;font-size:4rem;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;background:url(../img/logo-django.png) 0 0 no-repeat;color:#FFF;display:block;float:left;font-weight:700;margin:10px;overflow:hidden;text-decoration:none;text-indent:100%;width:104px;height:36px;margin-left:0}.mdzr-svg [role="banner"] .logo{background:url(../img/logo-django.svg) center center no-repeat}[role="banner"] .menu-button{font-size:20px;font-size:2rem;background:#0C4B33;-moz-border-radius:23px;-webkit-border-radius:23px;border-radius:23px;color:#fff;cursor:pointer;display:block;float:right;height:45px;line-height:48px;margin:4px 10px;text-align:center;text-decoration:none;width:45px;display:none}[role="banner"] .menu-button:active{color:#44B78B}[role="banner"] .menu-button span{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}[role="banner"] .menu-button.active{opacity:0.5}[role="banner"] .nav-menu-on{max-height:0;overflow:hidden;-moz-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;-webkit-transition:all 0.3s ease-out;transition:all 0.3s ease-out;max-height:none;-moz-transition:none;-o-transition:none;-webkit-transition:none;transition:none}[role="banner"] .nav-menu-on.active{max-height:500px}[role="banner"] [role="navigation"]{background:#0C4B33;width:100%;width:auto;float:right}[role="banner"] [role="navigation"] ul{margin:10px 0 0;padding:0;margin:0}[role="banner"] [role="navigation"] li{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:13px;font-size:1.3rem;display:block;font-weight:700;line-height:16px;text-align:left;text-transform:uppercase;margin:0 10px;border-top:1px solid #106142;margin:0;border:0;float:left;text-align:left}[role="banner"] [role="navigation"] li.active a{color:#44B78B}[role="banner"] [role="navigation"] a{color:#fff;display:block;padding:20px 0px;text-decoration:none;padding:20px 10px}[role="banner"] [role="navigation"] a:active,[role="banner"] [role="navigation"] a:hover{color:#C9F0DD}[role="banner"] [role="navigation"] .nav-primary{position:absolute;right:0;top:45px}.header{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;background:#0C4B33;margin:0;padding:11px 0px 8px;position:relative}.header h1{margin:0.4em 0}.header p{font-family:Palatino, "Palatino Linotype", "Book Antiqua", "Hoefler Text", Georgia, "Lucida Bright", Cambria, Times, "Times New Roman", serif;font-size:18px;font-size:1.8rem;color:#fff;left:-9999px;line-height:1.5;padding:0 0 10px;position:absolute;top:0;max-width:660px;position:static}.copy-banner{background:#44B78B;padding:1px 10px;padding:1px 0}.copy-banner p,.copy-banner h1{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:24px;font-size:2.4rem;color:#C9F0DD;font-weight:300;line-height:1.3;padding:1px 0 6px;margin:.45em 0 .35em;font-size:32px;font-size:3.2rem;margin:.35em 0 .35em;color:#C9F0DD;padding:1px 0 6px}.copy-banner p em,.copy-banner h1 em{font-style:normal;color:white}.copy-banner p a,.copy-banner h1 a{font-weight:300;color:#C9F0DD}.copy-banner p a.cta,.copy-banner p .cta,.copy-banner h1 a.cta,.copy-banner h1 .cta{margin:0;font-size:18px;font-size:1.8rem}.copy-banner a.cta,.copy-banner .cta{margin:15px 0;padding:0.4em 1.5em 0.5em;background:#2B8C67;background:none;border:1px solid #C9F0DD;color:#C9F0DD;font-weight:400}.copy-banner a.cta:hover,.copy-banner .cta:hover{background:#309c72}.copy-banner a.cta em,.copy-banner .cta em{color:white}.copy-banner a.cta:hover,.copy-banner .cta:hover{background:#F1FFF7;color:#20AA76;border-color:#F1FFF7}.copy-banner a.cta:hover em,.copy-banner .cta:hover em{color:#20AA76}.copy-banner a.cta.white,.copy-banner .cta.white{background:#F1FFF7;color:#20AA76;font-weight:700;border:0}.copy-banner a.cta.white:hover,.copy-banner .cta.white:hover{background:#fff}.homepage .copy-banner{padding:50px 0;background:white;text-align:center;border-bottom:1px solid #CFE3DC}.homepage .copy-banner p{max-width:700px;margin-left:auto;margin-right:auto;margin:1em auto .5em;color:#0C3C26;font-size:36px;font-size:3.6rem}.homepage .copy-banner p.small{color:#798780;margin:2em auto 1em;font-size:14px;font-size:1.4rem}.homepage .copy-banner p em{color:#0C3C26}.homepage .copy-banner a.cta,.homepage .copy-banner .cta{display:inline-block;padding:1em 50px 1.1em;margin-bottom:40px;background:#44B78B;color:white;border:0;font-weight:700}.homepage .copy-banner a.cta:hover,.homepage .copy-banner .cta:hover{background:#51be95}.homepage .copy-banner a.cta:active,.homepage .copy-banner .cta:active{background:#41b085}.homepage .copy-banner .django-companies{max-width:750px;margin:0 auto;list-style:none;padding:0 0 0 30px}.homepage .copy-banner .django-companies li{width:144px;display:inline-block;text-indent:-1000px;overflow:hidden;margin:0}.homepage .copy-banner .django-companies li a{display:block;height:46px;background-position:center;background-repeat:no-repeat}.homepage .copy-banner .django-companies li a.company-mozilla{background-image:url("../img/company-mozilla.png");background-position:center 7px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-mozilla{background-image:url("../img/company-mozilla.svg")}.homepage .copy-banner .django-companies li a.company-pinterest{background-image:url("../img/company-pinterest.png");background-position:center 7px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-pinterest{background-image:url("../img/company-pinterest.svg")}.homepage .copy-banner .django-companies li a.company-theguardian{background-image:url("../img/company-theguardian.png");background-position:center 14px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-theguardian{background-image:url("../img/company-theguardian.svg")}.homepage .copy-banner .django-companies li a.company-instagram{background-image:url("../img/company-instagram.png");background-position:center 10px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-instagram{background-image:url("../img/company-instagram.svg")}.homepage .copy-banner .django-companies li a.company-rdio{background-image:url("../img/company-rdio.png");background-position:15px 6px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-rdio{background-image:url("../img/company-rdio.svg")}[role="alert"]{clear:both;background:#F1FFF7;position:relative;-moz-box-shadow:0 -2px 8px 0 rgba(0,0,0,0.05);-webkit-box-shadow:0 -2px 8px 0 rgba(0,0,0,0.05);box-shadow:0 -2px 8px 0 rgba(0,0,0,0.05)}[role="alert"] a{color:#20AA76;text-decoration:none}[role="alert"] a:visited{color:#20AA76}[role="alert"] a:hover,[role="alert"] a:active,[role="alert"] a:focus{color:#25c488;text-decoration:none}[role="alert"] a.link-readmore{margin:0}[role="alert"] dl{margin:0 10px;padding:25px 0;zoom:1}[role="alert"] dl:before,[role="alert"] dl:after{content:"";display:table}[role="alert"] dl:after{clear:both}[role="alert"] dl dt i.icon{color:#20AA76;margin-right:8px}[role="alert"] dl dd{float:left;width:60%;margin-top:0;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif}[role="alert"] dl .link-readmore{margin-left:10px}[role="alert"] dt{float:left;width:31%;padding-right:2%}[role="alert"] dl{margin:0}[role="contentinfo"]{zoom:1;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;position:relative;background:#44B78B;clear:both;margin-top:0px}[role="contentinfo"]:before,[role="contentinfo"]:after{content:"";display:table}[role="contentinfo"]:after{clear:both}[role="contentinfo"] .container{overflow:hidden}[role="contentinfo"] .subfooter{zoom:1;padding:0 10px;padding:0}[role="contentinfo"] .subfooter:before,[role="contentinfo"] .subfooter:after{content:"";display:table}[role="contentinfo"] .subfooter:after{clear:both}[role="contentinfo"] .subfooter .col{float:left;margin-bottom:-999px;padding:0 3% 999px 0;width:30%}[role="contentinfo"] .subfooter .col:first-child h2{border-top:0}[role="contentinfo"] .subfooter .col:first-child{margin-left:0;padding-left:0}[role="contentinfo"] .subfooter .col.last-child{margin-right:0;padding-right:0}[role="contentinfo"] h2{font-size:16px;font-size:1.6rem;border-top:1px solid #CFE3DC;color:#fff;font-weight:700;margin-top:20px;padding:30px 0 10px;border:none;margin-top:0}[role="contentinfo"] ul{font-size:14px;font-size:1.4rem;font-weight:400;list-style:none;margin:15px 0 0 0;padding:0 0 30px}[role="contentinfo"] ul li{margin:10px 0 0;padding:0}[role="contentinfo"] ul a{color:#F1FFF7;text-decoration:none}[role="contentinfo"] ul a:hover,[role="contentinfo"] ul a:active,[role="contentinfo"] ul a:focus{text-decoration:underline}[role="contentinfo"] .footer{background:#0C4B33;margin-top:20px;padding:10px 0 30px;color:#2B8C67}[role="contentinfo"] .footer .footer-logo{float:left;width:33%}[role="contentinfo"] .footer .logo{margin-right:0;margin-top:28px}.mdzr-svg [role="contentinfo"] .footer .logo{background-position:left center;margin-right:0;margin-top:20px}[role="contentinfo"] .logo{font-size:40px;font-size:4rem;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;background:url(../img/logo-django.png) 0 0 no-repeat;color:#0C4B33;display:block;font-weight:700;height:50px;margin:10px;overflow:hidden;text-decoration:none;text-indent:100%;width:142px;float:left;margin:20px 90px 0 0}.mdzr-svg [role="contentinfo"] .logo{background:url(../img/logo-django.svg) center center no-repeat;height:39px;width:109px}[role="contentinfo"] .thanks{font-size:12px;font-size:1.2rem;color:#2B8C67;margin:0;padding:0;border:none}[role="contentinfo"] .thanks li{zoom:1;margin:0;padding:17px 10px 11px;display:block;clear:both;background:none;float:left;clear:none;padding:0 3% 0 0;width:30%}[role="contentinfo"] .thanks li:before,[role="contentinfo"] .thanks li:after{content:"";display:table}[role="contentinfo"] .thanks li:after{clear:both}[role="contentinfo"] .thanks li.design span.ampersand,[role="contentinfo"] .thanks li.design a{display:inline-block;vertical-align:top}[role="contentinfo"] .thanks li.design span.ampersand.threespot,[role="contentinfo"] .thanks li.design a.threespot{clear:both}[role="contentinfo"] .thanks li.design span.ampersand.ampersand,[role="contentinfo"] .thanks li.design a.ampersand{position:relative;top:6px;margin:0 6px;line-height:36px}[role="contentinfo"] .thanks li span.ampersand{line-height:24px}[role="contentinfo"] .thanks span{display:block;height:24px;line-height:36px;padding-right:12px;white-space:nowrap}[role="contentinfo"] .thanks a{display:block;height:33px;overflow:hidden;text-indent:-200px;width:94px;clear:both;margin-top:5px}[role="contentinfo"] .thanks a.rackspace{background:url(../img/logo-rackspace.png) no-repeat left center}.mdzr-svg [role="contentinfo"] .thanks a.rackspace{background:url(../img/logo-rackspace.svg) no-repeat left center}[role="contentinfo"] .thanks a.threespot{background:url(../img/logo-threespot.png) no-repeat left center}.mdzr-svg [role="contentinfo"] .thanks a.threespot{background:url(../img/logo-threespot.svg) no-repeat left center}[role="contentinfo"] .thanks a.andrevv{background:url(../img/logo-andrevv.png) no-repeat left center}.mdzr-svg [role="contentinfo"] .thanks a.andrevv{background:url(../img/logo-andrevv.svg) no-repeat left center}[role="contentinfo"] .copyright{font-size:12px;font-size:1.2rem;clear:both;margin:20px 0 0 10px;max-width:80%;padding-top:30px;margin:0}[role="contentinfo"] .copyright a{color:#2B8C67}.backtotop{color:#20AA76;text-decoration:none;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:block;font-weight:700;margin:10px 0;padding:10px 0;text-align:center;text-transform:uppercase;display:none}.backtotop:visited{color:#20AA76}.backtotop:hover,.backtotop:active,.backtotop:focus{color:#25c488;text-decoration:none}.cta,a.cta{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:700;-webkit-appearance:none;-moz-appearance:none;background:#44B78B;border:none;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;color:#fff;display:block;-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:auto;margin:30px auto 0;padding:1em 1.5em;text-align:center;text-decoration:none;margin:20px auto;max-width:400px}.cta em,a.cta em{color:#C9F0DD;font-style:normal}.cta:hover,.cta:focus,a.cta:hover,a.cta:focus{background:#51be95}.cta:active,a.cta:active{background:#41b085}[role="complementary"] .cta,[role="complementary"] a.cta{font-size:16px;font-size:1.6rem}[role="complementary"] .cta+.link-readmore,[role="complementary"] a.cta+.link-readmore{display:block;text-align:center;margin-top:-10px}.cta.outline,a.cta.outline{background:none;border:1px solid #CFE3DC;color:#859D94;font-weight:400}.cta.outline em,a.cta.outline em{color:#0C4B33}.cta.outline:hover,a.cta.outline:hover{border-color:#20AA76;color:#20AA76}.cta.outline:hover em,a.cta.outline:hover em{color:#20AA76}.cta.outline:active,a.cta.outline:active{border-color:#44B78B;color:#44B78B}.cta.outline:active em,a.cta.outline:active em{color:#44B78B}.link-green{color:#20AA76;text-decoration:none}.link-green:visited{color:#20AA76}.link-green:hover,.link-green:active,.link-green:focus{color:#25c488;text-decoration:none}.link-readmore{color:#20AA76;text-decoration:none;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:inline-block;margin:10px 0;display:inline;zoom:1;font-weight:700;text-transform:uppercase}.link-readmore:visited{color:#20AA76}.link-readmore:hover,.link-readmore:active,.link-readmore:focus{color:#25c488;text-decoration:none}.link-readmore:after{content:" ›";font-size:1.2em}.link-readmore.back-link:after{content:""}.link-readmore.back-link:before{content:"‹ ";font-size:1.2em}[role="complementary"] .link-readmore{font-size:12px;font-size:1.2rem}.meta,.list-links dd{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:block;line-height:1.3;margin:25px 0 20px}.meta a,.list-links dd a{color:#20AA76;text-decoration:none}.meta a:visited,.list-links dd a:visited{color:#20AA76}.meta a:hover,.list-links dd a:hover,.meta a:active,.list-links dd a:active,.meta a:focus,.list-links dd a:focus{color:#25c488;text-decoration:none}.layout-2col{margin:20px 0;zoom:1;margin:0}.layout-2col:before,.layout-2col:after{content:"";display:table}.layout-2col:after{clear:both}.layout-2col .col{float:left;width:46%;margin:0 4%}.layout-2col .col:first-child{margin-left:0}.layout-2col .col.last-child{margin-right:0}.layout-2col .one-third{width:29%}.layout-2col .two-third{width:62%}.blue{color:#20AA76}.label{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem;color:#cacfcc;display:block;font-weight:700;margin:20px 0 10px;text-transform:uppercase}.label.form-controls{font-size:14px;font-size:1.4rem;display:block;margin:0;position:relative;text-align:left}.label.form-controls span{cursor:pointer}.label.form-controls span:hover,.label.form-controls span:active,.label.form-controls span:focus{color:#afb7b3}.callout-right{float:right;margin:26px 0 0 35px;width:33%}.callout-right.two-thirds{width:60%}.callout-right img{display:block;max-width:100%}.callout-left{float:left;margin:26px 35px 0 0;width:33%}.callout-left.two-thirds{width:60%}.callout-left img{display:block;max-width:100%}.codedump{background:#f8f8f8;border:1px solid #CFE3DC;padding:10px;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;line-height:1.6em}.list-events{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;list-style:none;margin:0;padding:0}.list-events li{font-size:18px;font-size:1.8rem;border-top:1px solid #CFE3DC;display:block;line-height:1.3;margin:0;padding:20px 0 0 30px;position:relative}.list-events li i{font-size:16px;font-size:1.6rem;color:#93D7B7;display:block;left:0;line-height:20px;height:30px;position:absolute;text-align:center;top:20px;width:24px}.list-events li:first-child{border-top:0;padding-top:0}.list-events li:first-child i{top:0px}.list-events .meta,.list-events .list-links dd,.list-links .list-events dd{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:block;margin-top:10px}.list-events a{color:#20AA76;text-decoration:none}.list-events a:visited{color:#20AA76}.list-events a:hover,.list-events a:active,.list-events a:focus{color:#25c488;text-decoration:none}.list-tags{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:12px;font-size:1.2rem;font-weight:700;list-style:none;margin:0;padding:0;text-transform:uppercase}.list-tags li{margin-top:10px;display:block;line-height:28px}.list-tags a{background:#93D7B7;color:#F1FFF7;display:inline-block;display:block;line-height:1.2;margin:0;padding:8px 10px 5px;text-decoration:none}.list-tags a:hover,.list-tags a:active,.list-tags a:focus{background-color:#44B78B;color:#fff}.list-news{list-style:none;margin:0;padding:0}.list-news h2{font-weight:400;margin-bottom:5px}.list-news li{border-top:1px solid #CFE3DC;margin-top:35px;padding-top:10px}.list-news li:first-child{border:none;margin-top:0;padding-top:0}.list-news .meta,.list-news .list-links dd,.list-links .list-news dd{margin-top:10px;color:#859D94}.list-news .meta a:link,.list-news .list-links dd a:link,.list-links .list-news dd a:link{color:#798780;text-decoration:underline}.list-case-study{zoom:1;list-style:none;margin:0;padding:0 0 10px}.list-case-study:before,.list-case-study:after{content:"";display:table}.list-case-study:after{clear:both}.list-case-study p{font-size:14px;font-size:1.4rem;margin:10px 0 5px}.list-case-study li{border-top:1px solid #CFE3DC;margin-top:20px;padding-top:20px}.list-case-study li>a{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;color:#20AA76;text-decoration:none;font-size:12px;font-size:1.2rem;font-weight:700;margin-top:10px;text-transform:uppercase}.list-case-study li>a:visited{color:#20AA76}.list-case-study li>a:hover,.list-case-study li>a:active,.list-case-study li>a:focus{color:#25c488;text-decoration:none}.list-case-study li>a:after{content:" ›";font-size:1.2em}.list-case-study h3{margin:10px 0 20px;padding:0}.list-case-study h3.logo{text-indent:-1000%;overflow:hidden}.list-case-study [title="Knight Foundation"]{background:url(../img/logo-knight.png) no-repeat bottom left;height:25px;padding-top:7px;width:190px}.mdzr-svg .list-case-study [title="Knight Foundation"]{background:url(../img/logo-knight.svg) no-repeat bottom left}.list-case-study [title="Mozilla"]{background:url(../img/logo-mozilla.png) no-repeat bottom left;height:32px;width:120px}.mdzr-svg .list-case-study [title="Mozilla"]{background:url(../img/logo-mozilla.svg) no-repeat bottom left}.list-case-study [title="Disqus"]{background:url(../img/logo-disqus.png) no-repeat bottom left;height:28px;padding-top:4px;width:140px}.mdzr-svg .list-case-study [title="Disqus"]{background:url(../img/logo-disqus.svg) no-repeat bottom left}.list-case-study.single-col li{margin-top:0;margin-bottom:30px;width:auto}.list-case-study.single-col li p{font-size:18px;font-size:1.8rem;margin-right:40px}.list-case-study.single-col li h3{margin-top:20px}.case-study-logo{max-width:50%;max-height:70px;height:auto;margin:40px 0 0}.list-link-soup{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;zoom:1;font-size:16px;font-size:1.6rem;border-top:1px solid #CFE3DC;list-style:none;margin:20px 0 0;padding:20px 0 10px}.list-link-soup:before,.list-link-soup:after{content:"";display:table}.list-link-soup:after{clear:both}.list-link-soup li{float:left;margin:10px 5% 0 0;width:45%;margin-right:3%;width:30%}.list-link-soup a{color:#20AA76;text-decoration:none}.list-link-soup a:visited{color:#20AA76}.list-link-soup a:hover,.list-link-soup a:active,.list-link-soup a:focus{color:#25c488;text-decoration:none}[role="complementary"] .list-link-soup li{float:none}h2+.list-link-soup{border-top:0}.list-features{margin:50px 0 40px;padding-bottom:40px}.list-features dt{font-size:24px;font-size:2.4rem;border-top:1px solid #CFE3DC;padding-top:25px}.list-features i{color:#F1FFF7;margin-right:10px;width:40px;height:40px;-moz-border-radius:25px;-webkit-border-radius:25px;border-radius:25px;background:#20AA76;line-height:1.68em;display:inline-block;text-align:center}.list-features i.icon-briefcase{line-height:1.7em}.list-features i.icon-dashboard{line-height:1.5em}.list-features dt{margin-top:60px;padding:60px 0 0 245px;position:relative}.list-features dt:first-child{margin-top:20px}.list-features dt.even{padding-left:0;padding-right:245px}.list-features dt.even i{left:auto !important;right:0}.list-features dd{padding-left:245px;min-height:140px}.list-features dd.even{padding-left:0;padding-right:245px}.list-features i{font-size:120px;font-size:12rem;display:block;height:200px;left:0;position:absolute;text-align:center;top:60px;width:200px;margin-right:0}.mdzr-borderradius .list-features i{background:#44B78B;-moz-border-radius:100px;-webkit-border-radius:100px;border-radius:100px;color:#fff}.mdzr-svg .list-features i{background:url(../img/bg-features.svg) no-repeat center center}.mdzr-svg .list-features i.icon-bolt{background-position:-150px -269px}.mdzr-svg .list-features i.icon-briefcase{background-position:-354px -7px}.mdzr-svg .list-features i.icon-lock{background-position:-36px -96px}.mdzr-svg .list-features i.icon-dashboard{background-position:-270px -9px}.mdzr-svg .list-features i.icon-cogs{background-position:-334px -12px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i{-moz-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;-webkit-transition:all 0.3s ease-out;transition:all 0.3s ease-out;-moz-transform:rotate(0.5turn);-ms-transform:rotate(0.5turn);-webkit-transform:rotate(0.5turn);transform:rotate(0.5turn)}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.inview{-moz-transform:rotate(0turn);-ms-transform:rotate(0turn);-webkit-transform:rotate(0turn);transform:rotate(0turn)}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-bolt{background-position:40px -369px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-bolt.inview{background-position:-150px -269px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-briefcase{background-position:-494px 207px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-briefcase.inview{background-position:-354px -7px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-lock{background-position:144px -206px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-lock.inview{background-position:-36px -96px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-dashboard{background-position:-360px 201px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-dashboard.inview{background-position:-270px -9px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-cogs{background-position:-500px -180px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-cogs.inview{background-position:-334px -12px}.list-features i :-o-prefocus,.list-features i{background:#44B78B !important;-moz-transition:none !important;-o-transition:none !important;-webkit-transition:none !important;transition:none !important;-moz-transform:none !important;-ms-transform:none !important;-webkit-transform:none !important;transform:none !important}.homepage .list-features{padding-bottom:0}.homepage .list-features dl{padding-top:0}.homepage .list-features i{color:#F1FFF7;margin-right:10px;width:40px;height:40px;top:10px;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;background:#20AA76;display:inline-block;text-align:center;font-size:24px;font-size:2.4rem}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .homepage .list-features i{-moz-transition:none;-o-transition:none;-webkit-transition:none;transition:none;-moz-transform:rotate(0);-ms-transform:rotate(0);-webkit-transform:rotate(0);transform:rotate(0)}.homepage .list-features dt{padding:20px 0 0px 110px;font-size:18px;font-size:1.8rem;border-top:0;margin-top:0}.homepage .list-features dd{padding:0 60px 20px 110px;min-height:0}.homepage .list-features dd p{margin-top:0;font-size:18px;font-size:1.8rem}.homepage .list-features i{margin-right:10px;width:80px;height:80px;top:20px;-moz-border-radius:40px;-webkit-border-radius:40px;border-radius:40px;font-size:46px;font-size:4.6rem}.list-collapsing-header{float:left}.section .list-collapsing-header h2{margin:40px 0 20px}.list-collapsing-header+.form-controls.label{margin:50px 0 0;text-align:right}.form-controls.label{float:right}.list-collapsing{border-bottom:1px solid #CFE3DC;list-style:none;margin:30px 0;padding:0;clear:both}.list-collapsing.active>li{border-top:1px solid #CFE3DC;margin:0;padding:0}.list-collapsing.active>li.active h2 .collapsing-icon:before{content:"\f068"}.list-collapsing.active h2{font-size:18px;font-size:1.8rem;cursor:pointer;margin:0;padding:18px 40px 18px 0;position:relative}.list-collapsing.active h2:hover,.list-collapsing.active h2:focus,.list-collapsing.active h2:active{color:#1d915c;outline:none}.list-collapsing.active h2 .collapsing-icon{position:absolute;right:0;top:24px}.list-collapsing.active h2 .collapsing-icon:before{content:"\f067"}.list-collapsing.active h2.bullet-icon{padding-left:1.5em}.list-collapsing.active h2.bullet-icon>i:first-child{position:absolute;top:24px;left:0}.list-collapsing.active .collapsing-content{overflow:hidden;max-height:0px;-moz-transition:all 0.5s ease-out;-o-transition:all 0.5s ease-out;-webkit-transition:all 0.5s ease-out;transition:all 0.5s ease-out}.list-collapsing.active li.active .collapsing-content{max-height:1000px;overflow:auto}.list-image{list-style:none;margin:0;padding:0}.list-image li{border-top:1px solid #CFE3DC;margin-top:20px;padding-top:40px;zoom:1;margin-top:20px;padding-top:40px}.list-image li:before,.list-image li:after{content:"";display:table}.list-image li:after{clear:both}.list-image li:first-child{border:none;padding-top:0}.list-image a{text-decoration:none}.list-image a:hover,.list-image a:active,.list-image a:focus{color:#798780}.list-image a.link-readmore{margin:0}.list-image img{display:block;margin:0 auto 25px;max-width:100%}.list-image img{float:left;margin:0 40px 0 0;max-width:200px;max-height:200px}.list-image h2,.list-image h3,.list-image h4,.list-image p{padding-left:240px}.list-image h3{margin-top:10px}.layout-secondary .list-image img,[role="complementary"] .list-image img{float:left;max-width:40%;max-height:120px;margin:0 20px 10px 0}.layout-secondary .list-image h2,.layout-secondary .list-image h3,.layout-secondary .list-image h4,.layout-secondary .list-image p,[role="complementary"] .list-image h2,[role="complementary"] .list-image h3,[role="complementary"] .list-image h4,[role="complementary"] .list-image p{padding-left:0px;border:0}.layout-secondary .list-image h3,[role="complementary"] .list-image h3{font-size:14px;font-size:1.4rem;margin-top:0;margin-bottom:1em;padding-bottom:0;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:700}#s-django-documentation,#s-feed{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif}.list-outline{font-size:16px;font-size:1.6rem;line-height:1.3;list-style:none;margin:0;padding:0}.list-outline a{text-decoration:none}.list-outline>li>ul>li{margin-top:12px}.list-outline>li>ul>li:first-child{margin-top:6px}.list-outline>li>a{text-transform:uppercase;font-weight:700;color:#20AA76;text-decoration:none}.list-outline>li>a:visited{color:#20AA76}.list-outline>li>a:hover,.list-outline>li>a:active,.list-outline>li>a:focus{color:#25c488;text-decoration:none}.list-outline>li>ul{list-style:none;font-size:12px;font-size:1.2rem;padding:5px 0 0 10px}.list-outline>li>ul>li>a{font-weight:700;text-transform:uppercase;color:#20AA76;text-decoration:none}.list-outline>li>ul>li>a:visited{color:#20AA76}.list-outline>li>ul>li>a:hover,.list-outline>li>ul>li>a:active,.list-outline>li>ul>li>a:focus{color:#25c488;text-decoration:none}.list-outline>li>ul>li ul{font-size:14px;font-size:1.4rem;padding:0 0 0 20px}.section h2{margin:50px 0 30px}.section h3{margin:40px 0 20px}.headerlink{opacity:0;padding-left:10px;font-size:0.8em;position:relative;top:-0.17em;font-weight:700;text-decoration:none;-moz-transition:opacity 200ms ease-in-out;-o-transition:opacity 200ms ease-in-out;-webkit-transition:opacity 200ms ease-in-out;transition:opacity 200ms ease-in-out}h1:hover>.headerlink,h2:hover>.headerlink,h3:hover>.headerlink,h4:hover>.headerlink,h5:hover>.headerlink,h6:hover>.headerlink,dl:hover>.headerlink,dt:hover>.headerlink{opacity:1}.note,.admonition,.help-block{background:#F1FFF7;padding:15px 20px 15px 70px;border:1px solid #C9F0DD;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin:25px 0;position:relative}.note h1,.note h2,.note h3,.note h4,.admonition h1,.admonition h2,.admonition h3,.admonition h4,.help-block h1,.help-block h2,.help-block h3,.help-block h4{margin-top:20px}.note p,.admonition p,.help-block p{margin:0.8em 0}.note .first,.admonition .first,.help-block .first{margin-top:0}.note .admonition-title,.admonition .admonition-title,.help-block .admonition-title{font-weight:bold}.note .admonition-title::before,.admonition .admonition-title::before,.help-block .admonition-title::before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;top:20px;left:20px;font-size:30px;width:34px;text-align:center;content:"";opacity:0.5}.note.warning,.admonition.warning,.help-block.warning{background-color:#FFFDF1;border-color:#F5F1C7}.note.warning .admonition-title::before,.admonition.warning .admonition-title::before,.help-block.warning .admonition-title::before{color:#E9BD46;content:""}.note.admonition-philosophy .admonition-title::before,.admonition.admonition-philosophy .admonition-title::before,.help-block.admonition-philosophy .admonition-title::before{content:""}.note.admonition-behind-the-scenes .admonition-title::before,.admonition.admonition-behind-the-scenes .admonition-title::before,.help-block.admonition-behind-the-scenes .admonition-title::before{content:""}.note .last,.note .highlight,.admonition .last,.admonition .highlight,.help-block .last,.help-block .highlight{margin-bottom:0px}.browse-horizontal{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;zoom:1;font-weight:700;border-top:1px solid #CFE3DC;border-bottom:1px solid #CFE3DC;padding:20px 0;margin-top:2em}.browse-horizontal:before,.browse-horizontal:after{content:"";display:table}.browse-horizontal:after{clear:both}.browse-horizontal .left{float:left}.browse-horizontal .left .icon{margin-right:4px;font-size:12px;font-size:1.2rem}.browse-horizontal .right{float:right}.browse-horizontal .right .icon{margin-left:4px;font-size:12px;font-size:1.2rem}.browse-horizontal a{text-decoration:none}#doc-versions{position:fixed;right:15px;bottom:15px;margin:0;padding:0;z-index:1;list-style:none}#doc-versions .icon{margin-right:4px}#doc-versions li{display:none;background:#F1FFF7;margin:0 3px;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;color:#0C3C26;font-size:12px;font-size:1.2rem}#doc-versions li.current{display:inline-block;padding:8px 15px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}#doc-versions li a{display:inline-block;color:#44B78B;text-decoration:none;font-weight:700;padding:8px 15px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}#doc-versions li a:hover{color:#20AA76;border:1px solid #93D7B7}#doc-versions:hover li,#doc-versions .hover-on li{display:inline-block}#dev-warning,#outdated-warning{position:absolute;top:0;width:100%;padding:8px 20px 8px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;background-image:-webkit-linear-gradient(-45deg, rgba(0,0,0,0.04) 25%, transparent 25%, transparent 50%, rgba(0,0,0,0.04) 50%, rgba(0,0,0,0.04) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(-45deg, rgba(0,0,0,0.04) 25%, transparent 25%, transparent 50%, rgba(0,0,0,0.04) 50%, rgba(0,0,0,0.04) 75%, transparent 75%, transparent);background-image:linear-gradient(135deg, rgba(0,0,0,0.04) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(0,0,0,0.04) 50%,rgba(0,0,0,0.04) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;text-align:center;background-color:#ffe761;position:fixed;min-width:768px}#outdated-warning{background-color:#ffbaba;color:#6A0E0E}#s-getting-help{display:none}#docs-content{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;line-height:1.5em}#docs-content h1,#docs-content h2,#docs-content h3,#docs-content h4,#docs-content h5,#docs-content h6{margin:0.6em 0;line-height:1.1em}#docs-content .section{padding:10px 0 20px}#docs-content img{display:block;max-width:100%}#docs-content a.reference{color:#6A0E0E;text-decoration:none;border-bottom:1px dotted #798780}#docs-content a.reference:visited{border-color:#971414}#docs-content a.reference:active,#docs-content a.reference:focus,#docs-content a.reference:hover{background:#F1FFF7;color:#BA2121}#docs-content a.reference em{font-style:normal}.versionadded,.versionchanged,.deprecated,.versionmodified{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:bold;margin-bottom:20px;padding:10px 13px;border:1px solid #C9F0DD;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}.versionadded p,.versionchanged p,.deprecated p,.versionmodified p{font-weight:normal;margin-top:0.3em}.versionadded p:last-child,.versionchanged p:last-child,.deprecated p:last-child,.versionmodified p:last-child{margin-bottom:0}.deprecated .versionadded,.deprecated .versionchanged,.deprecated .deprecated,.deprecated .versionmodified{border:none;padding:0;margin-bottom:0;display:block}.deprecated p{font-weight:normal;margin-top:0}.deprecated p:last-child{margin-bottom:0}dl.function dt,dl.class dt,dl.method dt,dl.attribute dt{font-weight:700}dl.function dd,dl.class dd,dl.method dd,dl.attribute dd{padding-left:1.4em}table.docutils td,table.docutils th{border-bottom:1px solid #CFE3DC}#search-results span.highlighted{font-weight:700;color:#0C3C26}.list-links{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;list-style:none;margin:0;padding:10px 0 0}.list-links a{color:#20AA76;text-decoration:none}.list-links a:visited{color:#20AA76}.list-links a:hover,.list-links a:active,.list-links a:focus{color:#25c488;text-decoration:none}.list-links dt,.list-links li{font-size:16px;font-size:1.6rem;margin-top:15px;font-weight:400}.list-links dt:first-child,.list-links li:first-child{margin-top:0}.list-links dd{margin-top:0;margin-bottom:30px}[role="complementary"] .list-links{padding:0}[role="complementary"] .list-links dt,[role="complementary"] .list-links li{font-size:16px;font-size:1.6rem;border-top:1px solid #CFE3DC;margin-top:0;padding-top:20px}[role="complementary"] .list-links dt:first-child,[role="complementary"] .list-links li:first-child{border:none;padding-top:0}[role="complementary"] .list-links li{padding:14px 0 10px}[role="complementary"] .list-links dd{font-size:14px;font-size:1.4rem;margin-bottom:16px}.list-links+h2{margin-top:34px}.list-links-small{padding-left:0;list-style:none}.list-links-small a{color:#20AA76;text-decoration:none;text-decoration:none}.list-links-small a:visited{color:#20AA76}.list-links-small a:hover,.list-links-small a:active,.list-links-small a:focus{color:#25c488;text-decoration:none}.list-links-small li>a:before,.list-links-small dt>a:before{font-family:FontAwesome;font-weight:normal;font-style:normal;float:left;width:23px;height:20px}.list-links-small dt{font-weight:400}.list-links-small dd{color:#798780;padding-top:2px}.list-links-small.docs-list{list-style:none}.list-links-small.docs-list li>a:before,.list-links-small.docs-list dt>a:before{content:"\f0f6"}.list-links-small.docs-list dd{padding-left:24px}.list-links-small.news-list{list-style:none}.list-links-small.news-list li>a:before,.list-links-small.news-list dt>a:before{content:"\f0a1"}.list-links-small.news-list dt.event>a:before{content:"\f133"}.list-links-small.news-list dd{padding-left:24px}.list-links-small.resource-list{list-style:none}.list-links-small.resource-list li>a:before,.list-links-small.resource-list dt>a:before{content:"\f0c1"}.list-links-small.resource-list dd{padding-left:24px}.list-links-small.rss-list{list-style:none}.list-links-small.rss-list li>a:before,.list-links-small.rss-list dt>a:before{content:"\f09e"}.list-links-small.rss-list dd{padding-left:24px}form{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem}form input[type="search"],form input[type="text"],form input[type="email"],form input[type="password"],form input[type="url"],form textarea{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem;-webkit-appearance:none;-moz-appearance:none;background:#fff;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;cursor:auto;display:block;font-weight:400;height:30px;margin:10px 0px;padding:6px 14% 8px 10px;text-indent:0;vertical-align:middle;width:82%;padding:6px 18% 8px 10px;width:80%}form input[type="search"]::-ms-clear,form input[type="text"]::-ms-clear,form input[type="email"]::-ms-clear,form input[type="password"]::-ms-clear,form input[type="url"]::-ms-clear,form textarea::-ms-clear{display:none}form input[type="search"]:active,form input[type="search"]:focus,form input[type="text"]:active,form input[type="text"]:focus,form input[type="email"]:active,form input[type="email"]:focus,form input[type="password"]:active,form input[type="password"]:focus,form input[type="url"]:active,form input[type="url"]:focus,form textarea:active,form textarea:focus{outline:none;border-color:#20AA76}form textarea{height:auto}form input[type=checkbox],form input[type=radio]{margin-right:6px}form select{border:1px solid #CFE3DC;background:white;height:46px;padding:0 10px;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-size:16px;font-size:1.6rem}[role="complementary"] form select{height:36px;font-size:14px;font-size:1.4rem}form button{-moz-appearance:none;-webkit-appearance:none;background:#20AA76;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;color:white;border:0;height:46px;padding:0 15px;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem}form button:hover{background:#44B78B}.form-general fieldset{max-width:700px;border:0;padding:0;margin:15px 0}.form-general fieldset input[type="search"],.form-general fieldset input[type="text"],.form-general fieldset input[type="email"],.form-general fieldset input[type="password"],.form-general fieldset input[type="url"]{margin:10px 0}.form-input{min-height:40px;margin:30px 0 20px;position:relative}.form-input:focus{background:#000}.form-input button{background:none;border:none;color:#44B78B;height:40px;padding:0;position:absolute;right:2%;top:6%;width:40px;right:1%}.form-input button i{font-size:20px;font-size:2rem;line-height:1}.form-input button:hover,.form-input button:focus,.form-input button:active{background:none;color:#0C4B33;outline:none}[role="complementary"] .form-input{min-height:30px;margin:20px 0 30px}[role="complementary"] .form-input input[type="search"],[role="complementary"] .form-input input[type="text"],[role="complementary"] .form-input input[type="email"]{height:20px;font-size:14px;font-size:1.4rem}[role="complementary"] .form-input button{height:30px;width:30px;top:3px;right:0}[role="complementary"] .form-input button i{font-size:20px;font-size:2rem}form.donate{max-width:150px}form.donate label{position:absolute;left:0px;color:#2B8C67;padding-top:0.3em;padding-left:0.5em}form.donate input[type=text]{padding-left:20px;padding-right:9px}div[role=main] form.donate label{padding-top:0.7em}::-webkit-input-placeholder,:-moz-placeholder,::-moz-placeholder,:-ms-input-placeholder{color:#859D94}.form-email h3{font-size:18px;font-size:1.8rem;margin:10px 0}.form-email .meta,.form-email .list-links dd,.list-links .form-email dd{margin:0}.form-email form{margin:10px 0 30px}.nav-pagination{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;border-top:1px solid #CFE3DC;font-weight:700;line-height:31px;list-style:none;margin:30px 0;padding:30px 0 0;text-align:center}.nav-pagination li{display:inline-block;display:inline;zoom:1}.nav-pagination a{border:none;color:#798780;height:auto;width:auto;margin:0 5px;-moz-border-radius:15px;-webkit-border-radius:15px;border-radius:15px;display:block;text-decoration:none;background:#798780;color:#fff;height:30px;margin:0 2px;width:30px}.nav-pagination a.previous,.nav-pagination a.next{font-size:16px;font-size:1.6rem;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;height:40px;line-height:43px;width:40px}.nav-pagination a.previous{margin-right:10px;margin-right:70px}.nav-pagination a.next{margin-left:10px;text-indent:1px;margin-left:70px}.nav-pagination a:hover,.nav-pagination a:focus,.nav-pagination a:active,.nav-pagination a.active{background:none;color:#20AA76;background:#20AA76;color:white}.mdzr-no-borderradius .nav-pagination a{display:inline;background:none;color:#798780;height:auto;width:auto;margin:0 5px !important}.mdzr-no-borderradius .nav-pagination a:hover,.mdzr-no-borderradius .nav-pagination a:active,.mdzr-no-borderradius .nav-pagination a:focus,.mdzr-no-borderradius .nav-pagination a.active{background:none;color:#20AA76}hr{border:0;border-top:1px solid #CFE3DC}.badge{-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-size:12px;padding:2px 6px;margin:0 5px;letter-spacing:0px;position:relative;bottom:0.3em;color:#F1FFF7;background-color:#20AA76}.user-info .avatar{padding:20px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;float:right}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.clearfix,.group-container{zoom:1}.clearfix:before,.clearfix:after,.group-container:before,.group-container:after{content:"";display:table}.clearfix:after,.group-container:after{clear:both}.fundraising-index{margin-top:50px}.fundraising-index .fundraising-heart{width:100%;float:none;width:55%;float:left}.fundraising-index .fundraising-heart img,.fundraising-index .fundraising-heart svg{width:100%;height:auto}.fundraising-index .fundraising-heart rect{-moz-transition:opacity 250ms ease-out;-o-transition:opacity 250ms ease-out;-webkit-transition:opacity 250ms ease-out;transition:opacity 250ms ease-out}.fundraising-index .fundraising-heart rect.faded{opacity:0.05}.fundraising-index .fundraising-heart rect.faded:hover{opacity:0.9}.fundraising-index .description{margin-left:5%;width:100%;float:none;margin-top:30px;width:40%;float:left;margin-top:0px}.fundraising-index .description h2{margin-top:0;font-size:28px;font-size:2.8rem}.fundraising-index .donate select{width:80%;width:100%}.fundraising-index .donate .cta{margin:10px 0}.fundraising-index .donate .custom-donation{display:none}.fundraising-index .donate .prefix{float:left;font-size:19px;font-size:1.9rem;margin:8px 9px 0 3px}.fundraising-index .donate input[type="text"]{width:70%}.fundraising-index .cls{clear:both}.fundraising-donation select{width:100%}.fundraising-donation input.error{border:1px solid #BA2121 !important}.fundraising-donation p.validation-errors{color:#BA2121}.fundraising-donation .custom-donation{display:none;margin-top:10px}.fundraising-sidebar{clear:both}.fundraising-sidebar .small-heart{margin-top:20px;width:20%;float:left;margin-bottom:20px}.fundraising-sidebar .small-heart img{width:100%;max-width:64px}.fundraising-sidebar .small-cta{width:70%;float:left;vertical-align:top;margin-left:5%;margin-right:5%;margin-bottom:20px}.footnote{color:#859D94;font-size:14px;font-size:1.4rem;margin-top:20px;text-align:center}form .footnote{margin-top:10px;text-align:left}.heros-section{overflow:hidden}.heros-section .heros{clear:both}.heros-section .heros .hero{width:25%;position:relative;height:auto}.heros-section .heros .hero div{width:100%}.heros-section .heros .hero-logo{height:170px;line-height:170px}.heros-section .heros .hero-logo img{vertical-align:middle}.heros-section .heros .hero-name{height:92px;vertical-align:top}.heros-section .heros .no-logo-hero{min-height:60px;margin-right:24px}.heros-section .heros div{float:left;text-align:center;margin:15px 0}.heros-section .heros div img{max-width:90%;max-height:170px}.heros-section .pagination{clear:both}pre.literal-block,.literal-block{font-size:14px;font-size:1.4rem;border:1px solid #EAEAEA;background:#F4F4F4;background:#f8f8f8;overflow:auto;border-radius:4px;margin:25px 0;padding:10px 20px;color:#0C4B33}.snippet-filename{background:#C9F0DD;color:#0C4B33;font-family:"Fira Mono", Consolas, Menlo, Monaco, "Courier New", Courier, monospace;font-variant-ligatures:no-common-ligatures;text-rendering:optimizeSpeed;font-size:1em;padding:5px 20px;-moz-border-radius:4px 4px 0 0;-webkit-border-radius:4px;border-radius:4px 4px 0 0}.snippet-filename+.highlight{margin-top:0;-moz-border-radius:0 0 4px 4px;-webkit-border-radius:0;border-radius:0 0 4px 4px;border-top:0}.highlight{font-size:14px;font-size:1.4rem;border:1px solid #EAEAEA;background:#F4F4F4;background:#f8f8f8;overflow:auto;border-radius:4px;margin:25px 0}.highlight pre{margin:15px 20px}.highlight li{margin-top:0;border-left:1px solid #EAEAEA;padding:0 0 2px 15px}.highlight li:first-child{padding-top:2px}.highlight .hll{background-color:#ffc}.highlight .c{color:#408080;font-style:italic}.highlight .err{border:1px solid red}.highlight .k{color:#008000;font-weight:bold}.highlight .o{color:#666}.highlight .cm{color:#408080;font-style:italic}.highlight .cp{color:#BC7A00}.highlight .c1{color:#408080;font-style:italic}.highlight .cs{color:#408080;font-style:italic}.highlight .gd{color:#A00000}.highlight .ge{font-style:italic}.highlight .gr{color:red}.highlight .gh{color:#000080;font-weight:bold}.highlight .gi{color:#00A000}.highlight .go{color:gray}.highlight .gp{color:#000080;font-weight:bold}.highlight .gs{font-weight:bold}.highlight .gu{color:#800080;font-weight:bold}.highlight .gt{color:#0040D0}.highlight .kc{color:#008000;font-weight:bold}.highlight .kd{color:#008000;font-weight:bold}.highlight .kn{color:#008000;font-weight:bold}.highlight .kp{color:green}.highlight .kr{color:#008000;font-weight:bold}.highlight .kt{color:#B00040}.highlight .m{color:#666}.highlight .s{color:#BA2121}.highlight .na{color:#7D9029}.highlight .nb{color:green}.highlight .nc{color:#0000FF;font-weight:bold}.highlight .no{color:#800}.highlight .nd{color:#a2f}.highlight .ni{color:#999999;font-weight:bold}.highlight .ne{color:#D2413A;font-weight:bold}.highlight .nf{color:blue}.highlight .nl{color:#A0A000}.highlight .nn{color:#0000FF;font-weight:bold}.highlight .nt{color:#008000;font-weight:bold}.highlight .nv{color:#19177C}.highlight .ow{color:#AA22FF;font-weight:bold}.highlight .w{color:#bbb}.highlight .mf{color:#666}.highlight .mh{color:#666}.highlight .mi{color:#666}.highlight .mo{color:#666}.highlight .sb{color:#BA2121}.highlight .sc{color:#BA2121}.highlight .sd{color:#BA2121;font-style:italic}.highlight .s2{color:#BA2121}.highlight .se{color:#BB6622;font-weight:bold}.highlight .sh{color:#BA2121}.highlight .si{color:#BB6688;font-weight:bold}.highlight .sx{color:green}.highlight .sr{color:#b68}.highlight .s1{color:#BA2121}.highlight .ss{color:#19177C}.highlight .bp{color:green}.highlight .vc{color:#19177C}.highlight .vg{color:#19177C}.highlight .vi{color:#19177C}.highlight .il{color:#666}.highlight .lineno{color:#000000;background-color:#dddddd}.styleguide .example{padding:0 20px 20px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin-top:20px;margin-bottom:64px}.styleguide .example:before{content:"Example";font-size:16px;font-weight:700;display:block;color:#CFE3DC;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;text-align:left;padding:10px 0}.styleguide .example [role="complementary"]{float:none;width:auto;padding:0;margin:0}.styleguide .iframe{display:block;height:400px;cursor:zoom-in;border:1px solid #CFE3DC;overflow:hidden}.styleguide .iframe iframe{pointer-events:none;position:relative;width:200%;border:0;height:800px;-moz-transform:scale(0.5) translate(-50%, -50%);-ms-transform:scale(0.5) translate(-50%, -50%);-webkit-transform:scale(0.5) translate(-50%, -50%);transform:scale(0.5) translate(-50%, -50%);top:0;left:0;overflow:hidden}.styleguide .swatches{margin:0;padding:0;list-style:none;zoom:1;margin:30px 0}.styleguide .swatches:before,.styleguide .swatches:after{content:"";display:table}.styleguide .swatches:after{clear:both}.styleguide .swatches li{width:30%;height:30px;margin-right:2%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;float:left}.styleguide .swatches li.text{background:#0C3C26}.styleguide .swatches li.green-dark{background:#0C4B33}.styleguide .swatches li.green{background:#20AA76}.styleguide .swatches li.green-light{background:#93D7B7}.styleguide .swatches li.white{background:#F1FFF7;border:1px solid #CFE3DC}.styleguide .swatches li.red-dark{background:#6A0E0E}.styleguide .swatches li.text-light{background:#798780}.styleguide .swatches li.green-medium-dark{background:#2B8C67}.styleguide .swatches li.green-medium{background:#44B78B}.styleguide .swatches li.green-very-light{background:#C9F0DD}.styleguide .swatches li.gray-line{background:#CFE3DC}.styleguide .swatches li.red{background:#BA2121}.styleguide #layout{overflow:hidden}.styleguide #icons .icon{font-size:32px;font-size:3.2rem;color:#20AA76;padding:0 .2em}@media print{*{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}html{font-size:40%}.menu-button,.news-search,.backtotop,.nav-pagination,[role="contentinfo"]>.container,[role="contentinfo"] .logo,.thanks,[role="complementary"],[role="navigation"],.form-input{display:none !important}.logo{text-indent:0 !important}[role="contentinfo"],[role="contentinfo"] .copyright{margin:0 !important;padding:0 !important}.internal-container{float:none;width:auto}.list-news li{margin-top:0}} + */@font-face{font-family:'FontAwesome';src:url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.eot?v=4.2.0");src:url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0") format("embedded-opentype"),url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.woff?v=4.2.0") format("woff"),url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.ttf?v=4.2.0") format("truetype"),url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular") format("svg");font-weight:normal;font-style:normal}.icon{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-lg{font-size:1.33333em;line-height:0.75em;vertical-align:-15%}.icon-2x{font-size:2em}.icon-3x{font-size:3em}.icon-4x{font-size:4em}.icon-5x{font-size:5em}.icon-fw{width:1.28571em;text-align:center}.icon-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.icon-ul>li{position:relative}.icon-li{position:absolute;left:-2.14286em;width:2.14286em;top:0.14286em;text-align:center}.icon-li.icon-lg{left:-1.85714em}.icon-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.icon.pull-left{margin-right:.3em}.icon.pull-right{margin-left:.3em}.icon-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.icon-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.icon-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.icon-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.icon-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0);-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.icon-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .icon-rotate-90,:root .icon-rotate-180,:root .icon-rotate-270,:root .icon-flip-horizontal,:root .icon-flip-vertical{filter:none}.icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.icon-stack-1x,.icon-stack-2x{position:absolute;left:0;width:100%;text-align:center}.icon-stack-1x{line-height:inherit}.icon-stack-2x{font-size:2em}.icon-inverse{color:#fff}.icon-glass:before{content:""}.icon-music:before{content:""}.icon-search:before{content:""}.icon-envelope-o:before{content:""}.icon-heart:before{content:""}.icon-star:before{content:""}.icon-star-o:before{content:""}.icon-user:before{content:""}.icon-film:before{content:""}.icon-th-large:before{content:""}.icon-th:before{content:""}.icon-th-list:before{content:""}.icon-check:before{content:""}.icon-remove:before,.icon-close:before,.icon-times:before{content:""}.icon-search-plus:before{content:""}.icon-search-minus:before{content:""}.icon-power-off:before{content:""}.icon-signal:before{content:""}.icon-gear:before,.icon-cog:before{content:""}.icon-trash-o:before{content:""}.icon-home:before{content:""}.icon-file-o:before{content:""}.icon-clock-o:before{content:""}.icon-road:before{content:""}.icon-download:before{content:""}.icon-arrow-circle-o-down:before{content:""}.icon-arrow-circle-o-up:before{content:""}.icon-inbox:before{content:""}.icon-play-circle-o:before{content:""}.icon-rotate-right:before,.icon-repeat:before{content:""}.icon-refresh:before{content:""}.icon-list-alt:before{content:""}.icon-lock:before{content:""}.icon-flag:before{content:""}.icon-headphones:before{content:""}.icon-volume-off:before{content:""}.icon-volume-down:before{content:""}.icon-volume-up:before{content:""}.icon-qrcode:before{content:""}.icon-barcode:before{content:""}.icon-tag:before{content:""}.icon-tags:before{content:""}.icon-book:before{content:""}.icon-bookmark:before{content:""}.icon-print:before{content:""}.icon-camera:before{content:""}.icon-font:before{content:""}.icon-bold:before{content:""}.icon-italic:before{content:""}.icon-text-height:before{content:""}.icon-text-width:before{content:""}.icon-align-left:before{content:""}.icon-align-center:before{content:""}.icon-align-right:before{content:""}.icon-align-justify:before{content:""}.icon-list:before{content:""}.icon-dedent:before,.icon-outdent:before{content:""}.icon-indent:before{content:""}.icon-video-camera:before{content:""}.icon-photo:before,.icon-image:before,.icon-picture-o:before{content:""}.icon-pencil:before{content:""}.icon-map-marker:before{content:""}.icon-adjust:before{content:""}.icon-tint:before{content:""}.icon-edit:before,.icon-pencil-square-o:before{content:""}.icon-share-square-o:before{content:""}.icon-check-square-o:before{content:""}.icon-arrows:before{content:""}.icon-step-backward:before{content:""}.icon-fast-backward:before{content:""}.icon-backward:before{content:""}.icon-play:before{content:""}.icon-pause:before{content:""}.icon-stop:before{content:""}.icon-forward:before{content:""}.icon-fast-forward:before{content:""}.icon-step-forward:before{content:""}.icon-eject:before{content:""}.icon-chevron-left:before{content:""}.icon-chevron-right:before{content:""}.icon-plus-circle:before{content:""}.icon-minus-circle:before{content:""}.icon-times-circle:before{content:""}.icon-check-circle:before{content:""}.icon-question-circle:before{content:""}.icon-info-circle:before{content:""}.icon-crosshairs:before{content:""}.icon-times-circle-o:before{content:""}.icon-check-circle-o:before{content:""}.icon-ban:before{content:""}.icon-arrow-left:before{content:""}.icon-arrow-right:before{content:""}.icon-arrow-up:before{content:""}.icon-arrow-down:before{content:""}.icon-mail-forward:before,.icon-share:before{content:""}.icon-expand:before{content:""}.icon-compress:before{content:""}.icon-plus:before{content:""}.icon-minus:before{content:""}.icon-asterisk:before{content:""}.icon-exclamation-circle:before{content:""}.icon-gift:before{content:""}.icon-leaf:before{content:""}.icon-fire:before{content:""}.icon-eye:before{content:""}.icon-eye-slash:before{content:""}.icon-warning:before,.icon-exclamation-triangle:before{content:""}.icon-plane:before{content:""}.icon-calendar:before{content:""}.icon-random:before{content:""}.icon-comment:before{content:""}.icon-magnet:before{content:""}.icon-chevron-up:before{content:""}.icon-chevron-down:before{content:""}.icon-retweet:before{content:""}.icon-shopping-cart:before{content:""}.icon-folder:before{content:""}.icon-folder-open:before{content:""}.icon-arrows-v:before{content:""}.icon-arrows-h:before{content:""}.icon-bar-chart-o:before,.icon-bar-chart:before{content:""}.icon-twitter-square:before{content:""}.icon-facebook-square:before{content:""}.icon-camera-retro:before{content:""}.icon-key:before{content:""}.icon-gears:before,.icon-cogs:before{content:""}.icon-comments:before{content:""}.icon-thumbs-o-up:before{content:""}.icon-thumbs-o-down:before{content:""}.icon-star-half:before{content:""}.icon-heart-o:before{content:""}.icon-sign-out:before{content:""}.icon-linkedin-square:before{content:""}.icon-thumb-tack:before{content:""}.icon-external-link:before{content:""}.icon-sign-in:before{content:""}.icon-trophy:before{content:""}.icon-github-square:before{content:""}.icon-upload:before{content:""}.icon-lemon-o:before{content:""}.icon-phone:before{content:""}.icon-square-o:before{content:""}.icon-bookmark-o:before{content:""}.icon-phone-square:before{content:""}.icon-twitter:before{content:""}.icon-facebook:before{content:""}.icon-github:before{content:""}.icon-unlock:before{content:""}.icon-credit-card:before{content:""}.icon-rss:before{content:""}.icon-hdd-o:before{content:""}.icon-bullhorn:before{content:""}.icon-bell:before{content:""}.icon-certificate:before{content:""}.icon-hand-o-right:before{content:""}.icon-hand-o-left:before{content:""}.icon-hand-o-up:before{content:""}.icon-hand-o-down:before{content:""}.icon-arrow-circle-left:before{content:""}.icon-arrow-circle-right:before{content:""}.icon-arrow-circle-up:before{content:""}.icon-arrow-circle-down:before{content:""}.icon-globe:before{content:""}.icon-wrench:before{content:""}.icon-tasks:before{content:""}.icon-filter:before{content:""}.icon-briefcase:before{content:""}.icon-arrows-alt:before{content:""}.icon-group:before,.icon-users:before{content:""}.icon-chain:before,.icon-link:before{content:""}.icon-cloud:before{content:""}.icon-flask:before{content:""}.icon-cut:before,.icon-scissors:before{content:""}.icon-copy:before,.icon-files-o:before{content:""}.icon-paperclip:before{content:""}.icon-save:before,.icon-floppy-o:before{content:""}.icon-square:before{content:""}.icon-navicon:before,.icon-reorder:before,.icon-bars:before{content:""}.icon-list-ul:before{content:""}.icon-list-ol:before{content:""}.icon-strikethrough:before{content:""}.icon-underline:before{content:""}.icon-table:before{content:""}.icon-magic:before{content:""}.icon-truck:before{content:""}.icon-pinterest:before{content:""}.icon-pinterest-square:before{content:""}.icon-google-plus-square:before{content:""}.icon-google-plus:before{content:""}.icon-money:before{content:""}.icon-caret-down:before{content:""}.icon-caret-up:before{content:""}.icon-caret-left:before{content:""}.icon-caret-right:before{content:""}.icon-columns:before{content:""}.icon-unsorted:before,.icon-sort:before{content:""}.icon-sort-down:before,.icon-sort-desc:before{content:""}.icon-sort-up:before,.icon-sort-asc:before{content:""}.icon-envelope:before{content:""}.icon-linkedin:before{content:""}.icon-rotate-left:before,.icon-undo:before{content:""}.icon-legal:before,.icon-gavel:before{content:""}.icon-dashboard:before,.icon-tachometer:before{content:""}.icon-comment-o:before{content:""}.icon-comments-o:before{content:""}.icon-flash:before,.icon-bolt:before{content:""}.icon-sitemap:before{content:""}.icon-umbrella:before{content:""}.icon-paste:before,.icon-clipboard:before{content:""}.icon-lightbulb-o:before{content:""}.icon-exchange:before{content:""}.icon-cloud-download:before{content:""}.icon-cloud-upload:before{content:""}.icon-user-md:before{content:""}.icon-stethoscope:before{content:""}.icon-suitcase:before{content:""}.icon-bell-o:before{content:""}.icon-coffee:before{content:""}.icon-cutlery:before{content:""}.icon-file-text-o:before{content:""}.icon-building-o:before{content:""}.icon-hospital-o:before{content:""}.icon-ambulance:before{content:""}.icon-medkit:before{content:""}.icon-fighter-jet:before{content:""}.icon-beer:before{content:""}.icon-h-square:before{content:""}.icon-plus-square:before{content:""}.icon-angle-double-left:before{content:""}.icon-angle-double-right:before{content:""}.icon-angle-double-up:before{content:""}.icon-angle-double-down:before{content:""}.icon-angle-left:before{content:""}.icon-angle-right:before{content:""}.icon-angle-up:before{content:""}.icon-angle-down:before{content:""}.icon-desktop:before{content:""}.icon-laptop:before{content:""}.icon-tablet:before{content:""}.icon-mobile-phone:before,.icon-mobile:before{content:""}.icon-circle-o:before{content:""}.icon-quote-left:before{content:""}.icon-quote-right:before{content:""}.icon-spinner:before{content:""}.icon-circle:before{content:""}.icon-mail-reply:before,.icon-reply:before{content:""}.icon-github-alt:before{content:""}.icon-folder-o:before{content:""}.icon-folder-open-o:before{content:""}.icon-smile-o:before{content:""}.icon-frown-o:before{content:""}.icon-meh-o:before{content:""}.icon-gamepad:before{content:""}.icon-keyboard-o:before{content:""}.icon-flag-o:before{content:""}.icon-flag-checkered:before{content:""}.icon-terminal:before{content:""}.icon-code:before{content:""}.icon-mail-reply-all:before,.icon-reply-all:before{content:""}.icon-star-half-empty:before,.icon-star-half-full:before,.icon-star-half-o:before{content:""}.icon-location-arrow:before{content:""}.icon-crop:before{content:""}.icon-code-fork:before{content:""}.icon-unlink:before,.icon-chain-broken:before{content:""}.icon-question:before{content:""}.icon-info:before{content:""}.icon-exclamation:before{content:""}.icon-superscript:before{content:""}.icon-subscript:before{content:""}.icon-eraser:before{content:""}.icon-puzzle-piece:before{content:""}.icon-microphone:before{content:""}.icon-microphone-slash:before{content:""}.icon-shield:before{content:""}.icon-calendar-o:before{content:""}.icon-fire-extinguisher:before{content:""}.icon-rocket:before{content:""}.icon-maxcdn:before{content:""}.icon-chevron-circle-left:before{content:""}.icon-chevron-circle-right:before{content:""}.icon-chevron-circle-up:before{content:""}.icon-chevron-circle-down:before{content:""}.icon-html5:before{content:""}.icon-css3:before{content:""}.icon-anchor:before{content:""}.icon-unlock-alt:before{content:""}.icon-bullseye:before{content:""}.icon-ellipsis-h:before{content:""}.icon-ellipsis-v:before{content:""}.icon-rss-square:before{content:""}.icon-play-circle:before{content:""}.icon-ticket:before{content:""}.icon-minus-square:before{content:""}.icon-minus-square-o:before{content:""}.icon-level-up:before{content:""}.icon-level-down:before{content:""}.icon-check-square:before{content:""}.icon-pencil-square:before{content:""}.icon-external-link-square:before{content:""}.icon-share-square:before{content:""}.icon-compass:before{content:""}.icon-toggle-down:before,.icon-caret-square-o-down:before{content:""}.icon-toggle-up:before,.icon-caret-square-o-up:before{content:""}.icon-toggle-right:before,.icon-caret-square-o-right:before{content:""}.icon-euro:before,.icon-eur:before{content:""}.icon-gbp:before{content:""}.icon-dollar:before,.icon-usd:before{content:""}.icon-rupee:before,.icon-inr:before{content:""}.icon-cny:before,.icon-rmb:before,.icon-yen:before,.icon-jpy:before{content:""}.icon-ruble:before,.icon-rouble:before,.icon-rub:before{content:""}.icon-won:before,.icon-krw:before{content:""}.icon-bitcoin:before,.icon-btc:before{content:""}.icon-file:before{content:""}.icon-file-text:before{content:""}.icon-sort-alpha-asc:before{content:""}.icon-sort-alpha-desc:before{content:""}.icon-sort-amount-asc:before{content:""}.icon-sort-amount-desc:before{content:""}.icon-sort-numeric-asc:before{content:""}.icon-sort-numeric-desc:before{content:""}.icon-thumbs-up:before{content:""}.icon-thumbs-down:before{content:""}.icon-youtube-square:before{content:""}.icon-youtube:before{content:""}.icon-xing:before{content:""}.icon-xing-square:before{content:""}.icon-youtube-play:before{content:""}.icon-dropbox:before{content:""}.icon-stack-overflow:before{content:""}.icon-instagram:before{content:""}.icon-flickr:before{content:""}.icon-adn:before{content:""}.icon-bitbucket:before{content:""}.icon-bitbucket-square:before{content:""}.icon-tumblr:before{content:""}.icon-tumblr-square:before{content:""}.icon-long-arrow-down:before{content:""}.icon-long-arrow-up:before{content:""}.icon-long-arrow-left:before{content:""}.icon-long-arrow-right:before{content:""}.icon-apple:before{content:""}.icon-windows:before{content:""}.icon-android:before{content:""}.icon-linux:before{content:""}.icon-dribbble:before{content:""}.icon-skype:before{content:""}.icon-foursquare:before{content:""}.icon-trello:before{content:""}.icon-female:before{content:""}.icon-male:before{content:""}.icon-gittip:before{content:""}.icon-sun-o:before{content:""}.icon-moon-o:before{content:""}.icon-archive:before{content:""}.icon-bug:before{content:""}.icon-vk:before{content:""}.icon-weibo:before{content:""}.icon-renren:before{content:""}.icon-pagelines:before{content:""}.icon-stack-exchange:before{content:""}.icon-arrow-circle-o-right:before{content:""}.icon-arrow-circle-o-left:before{content:""}.icon-toggle-left:before,.icon-caret-square-o-left:before{content:""}.icon-dot-circle-o:before{content:""}.icon-wheelchair:before{content:""}.icon-vimeo-square:before{content:""}.icon-turkish-lira:before,.icon-try:before{content:""}.icon-plus-square-o:before{content:""}.icon-space-shuttle:before{content:""}.icon-slack:before{content:""}.icon-envelope-square:before{content:""}.icon-wordpress:before{content:""}.icon-openid:before{content:""}.icon-institution:before,.icon-bank:before,.icon-university:before{content:""}.icon-mortar-board:before,.icon-graduation-cap:before{content:""}.icon-yahoo:before{content:""}.icon-google:before{content:""}.icon-reddit:before{content:""}.icon-reddit-square:before{content:""}.icon-stumbleupon-circle:before{content:""}.icon-stumbleupon:before{content:""}.icon-delicious:before{content:""}.icon-digg:before{content:""}.icon-pied-piper:before{content:""}.icon-pied-piper-alt:before{content:""}.icon-drupal:before{content:""}.icon-joomla:before{content:""}.icon-language:before{content:""}.icon-fax:before{content:""}.icon-building:before{content:""}.icon-child:before{content:""}.icon-paw:before{content:""}.icon-spoon:before{content:""}.icon-cube:before{content:""}.icon-cubes:before{content:""}.icon-behance:before{content:""}.icon-behance-square:before{content:""}.icon-steam:before{content:""}.icon-steam-square:before{content:""}.icon-recycle:before{content:""}.icon-automobile:before,.icon-car:before{content:""}.icon-cab:before,.icon-taxi:before{content:""}.icon-tree:before{content:""}.icon-spotify:before{content:""}.icon-deviantart:before{content:""}.icon-soundcloud:before{content:""}.icon-database:before{content:""}.icon-file-pdf-o:before{content:""}.icon-file-word-o:before{content:""}.icon-file-excel-o:before{content:""}.icon-file-powerpoint-o:before{content:""}.icon-file-photo-o:before,.icon-file-picture-o:before,.icon-file-image-o:before{content:""}.icon-file-zip-o:before,.icon-file-archive-o:before{content:""}.icon-file-sound-o:before,.icon-file-audio-o:before{content:""}.icon-file-movie-o:before,.icon-file-video-o:before{content:""}.icon-file-code-o:before{content:""}.icon-vine:before{content:""}.icon-codepen:before{content:""}.icon-jsfiddle:before{content:""}.icon-life-bouy:before,.icon-life-buoy:before,.icon-life-saver:before,.icon-support:before,.icon-life-ring:before{content:""}.icon-circle-o-notch:before{content:""}.icon-ra:before,.icon-rebel:before{content:""}.icon-ge:before,.icon-empire:before{content:""}.icon-git-square:before{content:""}.icon-git:before{content:""}.icon-hacker-news:before{content:""}.icon-tencent-weibo:before{content:""}.icon-qq:before{content:""}.icon-wechat:before,.icon-weixin:before{content:""}.icon-send:before,.icon-paper-plane:before{content:""}.icon-send-o:before,.icon-paper-plane-o:before{content:""}.icon-history:before{content:""}.icon-circle-thin:before{content:""}.icon-header:before{content:""}.icon-paragraph:before{content:""}.icon-sliders:before{content:""}.icon-share-alt:before{content:""}.icon-share-alt-square:before{content:""}.icon-bomb:before{content:""}.icon-soccer-ball-o:before,.icon-futbol-o:before{content:""}.icon-tty:before{content:""}.icon-binoculars:before{content:""}.icon-plug:before{content:""}.icon-slideshare:before{content:""}.icon-twitch:before{content:""}.icon-yelp:before{content:""}.icon-newspaper-o:before{content:""}.icon-wifi:before{content:""}.icon-calculator:before{content:""}.icon-paypal:before{content:""}.icon-google-wallet:before{content:""}.icon-cc-visa:before{content:""}.icon-cc-mastercard:before{content:""}.icon-cc-discover:before{content:""}.icon-cc-amex:before{content:""}.icon-cc-paypal:before{content:""}.icon-cc-stripe:before{content:""}.icon-bell-slash:before{content:""}.icon-bell-slash-o:before{content:""}.icon-trash:before{content:""}.icon-copyright:before{content:""}.icon-at:before{content:""}.icon-eyedropper:before{content:""}.icon-paint-brush:before{content:""}.icon-birthday-cake:before{content:""}.icon-area-chart:before{content:""}.icon-pie-chart:before{content:""}.icon-line-chart:before{content:""}.icon-lastfm:before{content:""}.icon-lastfm-square:before{content:""}.icon-toggle-off:before{content:""}.icon-toggle-on:before{content:""}.icon-bicycle:before{content:""}.icon-bus:before{content:""}.icon-ioxhost:before{content:""}.icon-angellist:before{content:""}.icon-cc:before{content:""}.icon-shekel:before,.icon-sheqel:before,.icon-ils:before{content:""}.icon-meanpath:before{content:""}body{font-family:Palatino, "Palatino Linotype", "Book Antiqua", "Hoefler Text", Georgia, "Lucida Bright", Cambria, Times, "Times New Roman", serif;font-size:18px;font-size:1.8rem;background:#f8f8f8;color:#0C3C26;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-width:768px}body .layout-secondary,body [role="complementary"]{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif}a{color:#0C3C26;text-decoration:underline;-webkit-tap-highlight-color:transparent}a:visited{color:#156641}a:active,a:focus,a:hover{color:#1d915c}::selection{background:#C9F0DD}::-moz-selection{background:#C9F0DD}ol li,ul li{margin-top:10px}dl{margin:20px 0 10px}dl dt{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:400}dl dd{margin:0.2em 0 1.2em;padding:0}dl dd:last-of-type{margin-bottom:0}h1,h2,h3,h4,h5,h6{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:400}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{text-decoration:none;color:#20AA76;text-decoration:none}h1 a:visited,h2 a:visited,h3 a:visited,h4 a:visited,h5 a:visited,h6 a:visited{color:#20AA76}h1 a:hover,h1 a:active,h1 a:focus,h2 a:hover,h2 a:active,h2 a:focus,h3 a:hover,h3 a:active,h3 a:focus,h4 a:hover,h4 a:active,h4 a:focus,h5 a:hover,h5 a:active,h5 a:focus,h6 a:hover,h6 a:active,h6 a:focus{color:#25c488;text-decoration:none}h1{font-size:28px;font-size:2.8rem;color:#fff;letter-spacing:-1px;line-height:1.1;font-size:32px;font-size:3.2rem}.layout-secondary h1{color:#0C3C26}[role="main"] h1{font-size:32px;font-size:3.2rem;margin:40px 0px 30px;color:#0C3C26}[role="complementary"] h1{font-size:28px;font-size:2.8rem}h2{font-size:24px;font-size:2.4rem}[role="complementary"] h2,.layout-secondary h2{font-size:20px;font-size:2rem;border-bottom:1px solid #CFE3DC;font-weight:400;padding-bottom:15px;margin-top:30px}[role="complementary"] h2:first-of-type,.layout-secondary h2:first-of-type{margin-top:inherit}[role="complementary"] h2:first-child,.layout-secondary h2:first-child{margin-top:20px}.full-width [role="complementary"] h2,.full-width .layout-secondary h2{font-size:24px;font-size:2.4rem}[role="main"] h2{margin-top:40px;margin-bottom:15px}h3{font-size:20px;font-size:2rem;font-weight:700;color:#0C3C26;line-height:1.2;margin:35px 0 20px}[role="complementary"] h3,.layout-secondary h3{font-size:18px;font-size:1.8rem;font-weight:400;padding-bottom:15px}[role="complementary"] h3:first-child,.layout-secondary h3:first-child{margin-top:12px}[role="complementary"] h3{font-size:18px;font-size:1.8rem;border-bottom:1px solid #CFE3DC}h4{font-size:16px;font-size:1.6rem;color:#0C3C26;line-height:1.2;margin:35px 0 20px;font-weight:700}tt,code,kbd,pre,samp{font-family:"Fira Mono", Consolas, Menlo, Monaco, "Courier New", Courier, monospace;font-variant-ligatures:no-common-ligatures;text-rendering:optimizeSpeed;color:#0C4B33;font-size:1em}tt{font-weight:700}span.pre{font-family:"Fira Mono", Consolas, Menlo, Monaco, "Courier New", Courier, monospace;font-variant-ligatures:no-common-ligatures;text-rendering:optimizeSpeed}a:hover tt,a:active tt,a:focus tt{color:#1d915c}[role="main"]>p:first-child{margin-top:30px}ul{padding-left:20px}blockquote{background:#F1FFF7;padding:15px 20px 15px 70px;border:1px solid #C9F0DD;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin:25px 0;position:relative}blockquote p:first-child{margin-top:0}blockquote::before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;top:20px;left:20px;font-size:30px;width:34px;text-align:center;content:"";opacity:0.5}[role="main"]{background:#fff;padding:1px 10px 40px;min-height:800px;border:1px solid #ddd;float:right;margin:0;padding-bottom:80px;padding-left:3%;padding-right:3%;width:60%}.mdzr-boxshadow [role="main"]{border:none;-moz-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,460px 0 0 0 #fff,1000px 0 0 0 #fff,0px 600px 0 0px #fff,460px 600px 0 0px #fff;-webkit-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,460px 0 0 0 #fff,1000px 0 0 0 #fff,0px 600px 0 0px #fff,460px 600px 0 0px #fff;box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,460px 0 0 0 #fff,1000px 0 0 0 #fff,0px 600px 0 0px #fff,460px 600px 0 0px #fff;padding-left:4%;padding-right:0;width:63%}.sidebar-right [role="main"]{float:left}.mdzr-boxshadow .sidebar-right [role="main"]{border:none;-moz-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,-460px 0 0 0 #fff,-1000px 0 0 0 #fff,0px 600px 0 0px #fff,-460px 600px 0 0px #fff;-webkit-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,-460px 0 0 0 #fff,-1000px 0 0 0 #fff,0px 600px 0 0px #fff,-460px 600px 0 0px #fff;box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,-460px 0 0 0 #fff,-1000px 0 0 0 #fff,0px 600px 0 0px #fff,-460px 600px 0 0px #fff;padding-left:0;width:62%;padding-right:4%}.full-width [role="main"]{border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;float:none;margin:0 auto;padding:0 10px 40px;width:auto;max-width:740px;padding:20px 0 40px;width:91.66667%}[role="main"] .section{padding-bottom:40px;border-bottom:1px solid #CFE3DC}[role="main"] .section:last-of-type{padding-bottom:0;border-bottom:0}[role="main"] .section dd.last-child{padding-bottom:0}.full-width{zoom:1}.full-width.container{width:100%;padding:0;max-width:none;border-bottom:1px solid #ddd;background:#fff}.full-width:before,.full-width:after{content:"";display:table}.full-width:after{clear:both}.mdzr-boxshadow .full-width{border:none;-moz-box-shadow:0 4px 8px rgba(12,60,38,0.07);-webkit-box-shadow:0 4px 8px rgba(12,60,38,0.07);box-shadow:0 4px 8px rgba(12,60,38,0.07)}[role="complementary"]{padding:0 10px 20px;font-size:14px;font-size:1.4rem;float:right;margin:20px 0;margin-right:3%;padding:0 0 40px 0;width:30%}.sidebar-right [role="complementary"]{margin-left:3%;margin-right:0}[role="complementary"] span.form-controls{display:none}[role="complementary"] .list-collapsing{margin-top:0;border-bottom:0}[role="complementary"] .list-collapsing.active li{border-top:0}[role="complementary"] .list-collapsing.active h2{padding:10px 40px 10px 0;font-size:18px;border-bottom:0;color:#44B78B}[role="complementary"] .list-collapsing.active h2 .collapsing-icon{font-size:10px}[role="secondary"]{margin:0 10px;padding:40px 0 60px}.full-width [role="secondary"]{max-width:700px;margin:0 auto}.layout-secondary{padding:20px 10px 50px}.layout-tertiary{background:#fff;border-top:1px solid #ddd;padding:20px 10px 50px}.mdzr-boxshadow .layout-tertiary{border:none;-moz-box-shadow:0 -4px 8px rgba(12,60,38,0.07);-webkit-box-shadow:0 -4px 8px rgba(12,60,38,0.07);box-shadow:0 -4px 8px rgba(12,60,38,0.07)}.container{zoom:1;margin:0 auto;max-width:1400px;padding:0 4.16667%;min-width:768px}.container:before,.container:after{content:"";display:table}.container:after{clear:both}.mdzr-boxshadow .container.sidebar-right{-moz-box-shadow:-1200px 0 0 0px #fff;-webkit-box-shadow:-1200px 0 0 0px #fff;box-shadow:-1200px 0 0 0px #fff}[role="banner"]{zoom:1;background:#0C4B33;overflow:hidden;margin:0;padding:10px 0 6px;position:relative;z-index:0}[role="banner"]:before,[role="banner"]:after{content:"";display:table}[role="banner"]:after{clear:both}[role="banner"] .container{position:relative}[role="banner"] .meta,[role="banner"] .list-links dd,.list-links [role="banner"] dd{font-size:13px;font-size:1.3rem;color:#44B78B;font-weight:700;width:auto;float:left;margin:8px 0 0 10px;display:none}[role="banner"] .logo{font-size:40px;font-size:4rem;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;background:url(../img/logo-django.png) 0 0 no-repeat;color:#FFF;display:block;float:left;font-weight:700;margin:10px;overflow:hidden;text-decoration:none;text-indent:100%;width:104px;height:36px;margin-left:0}.mdzr-svg [role="banner"] .logo{background:url(../img/logo-django.svg) center center no-repeat}[role="banner"] .menu-button{font-size:20px;font-size:2rem;background:#0C4B33;-moz-border-radius:23px;-webkit-border-radius:23px;border-radius:23px;color:#fff;cursor:pointer;display:block;float:right;height:45px;line-height:48px;margin:4px 10px;text-align:center;text-decoration:none;width:45px;display:none}[role="banner"] .menu-button:active{color:#44B78B}[role="banner"] .menu-button span{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}[role="banner"] .menu-button.active{opacity:0.5}[role="banner"] .nav-menu-on{max-height:0;overflow:hidden;-moz-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;-webkit-transition:all 0.3s ease-out;transition:all 0.3s ease-out;max-height:none;-moz-transition:none;-o-transition:none;-webkit-transition:none;transition:none}[role="banner"] .nav-menu-on.active{max-height:500px}[role="banner"] [role="navigation"]{background:#0C4B33;width:100%;width:auto;float:right}[role="banner"] [role="navigation"] ul{margin:10px 0 0;padding:0;margin:0}[role="banner"] [role="navigation"] li{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:13px;font-size:1.3rem;display:block;font-weight:700;line-height:16px;text-align:left;text-transform:uppercase;margin:0 10px;border-top:1px solid #106142;margin:0;border:0;float:left;text-align:left}[role="banner"] [role="navigation"] li.active a{color:#44B78B}[role="banner"] [role="navigation"] a{color:#fff;display:block;padding:20px 0px;text-decoration:none;padding:20px 10px}[role="banner"] [role="navigation"] a:active,[role="banner"] [role="navigation"] a:hover{color:#C9F0DD}[role="banner"] [role="navigation"] .nav-primary{position:absolute;right:0;top:45px}.header{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;background:#0C4B33;margin:0;padding:11px 0px 8px;position:relative}.header h1{margin:0.4em 0}.header p{font-family:Palatino, "Palatino Linotype", "Book Antiqua", "Hoefler Text", Georgia, "Lucida Bright", Cambria, Times, "Times New Roman", serif;font-size:18px;font-size:1.8rem;color:#fff;left:-9999px;line-height:1.5;padding:0 0 10px;position:absolute;top:0;max-width:660px;position:static}.copy-banner{background:#44B78B;padding:1px 10px;padding:1px 0}.copy-banner p,.copy-banner h1{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:24px;font-size:2.4rem;color:#C9F0DD;font-weight:300;line-height:1.3;padding:1px 0 6px;margin:.45em 0 .35em;font-size:32px;font-size:3.2rem;margin:.35em 0 .35em;color:#C9F0DD;padding:1px 0 6px}.copy-banner p em,.copy-banner h1 em{font-style:normal;color:white}.copy-banner p a,.copy-banner h1 a{font-weight:300;color:#C9F0DD}.copy-banner p a.cta,.copy-banner p .cta,.copy-banner h1 a.cta,.copy-banner h1 .cta{margin:0;font-size:18px;font-size:1.8rem}.copy-banner a.cta,.copy-banner .cta{margin:15px 0;padding:0.4em 1.5em 0.5em;background:#2B8C67;background:none;border:1px solid #C9F0DD;color:#C9F0DD;font-weight:400}.copy-banner a.cta:hover,.copy-banner .cta:hover{background:#309c72}.copy-banner a.cta em,.copy-banner .cta em{color:white}.copy-banner a.cta:hover,.copy-banner .cta:hover{background:#F1FFF7;color:#20AA76;border-color:#F1FFF7}.copy-banner a.cta:hover em,.copy-banner .cta:hover em{color:#20AA76}.copy-banner a.cta.white,.copy-banner .cta.white{background:#F1FFF7;color:#20AA76;font-weight:700;border:0}.copy-banner a.cta.white:hover,.copy-banner .cta.white:hover{background:#fff}.homepage .copy-banner{padding:50px 0;background:white;text-align:center;border-bottom:1px solid #CFE3DC}.homepage .copy-banner p{max-width:700px;margin-left:auto;margin-right:auto;margin:1em auto .5em;color:#0C3C26;font-size:36px;font-size:3.6rem}.homepage .copy-banner p.small{color:#798780;margin:2em auto 1em;font-size:14px;font-size:1.4rem}.homepage .copy-banner p em{color:#0C3C26}.homepage .copy-banner a.cta,.homepage .copy-banner .cta{display:inline-block;padding:1em 50px 1.1em;margin-bottom:40px;background:#44B78B;color:white;border:0;font-weight:700}.homepage .copy-banner a.cta:hover,.homepage .copy-banner .cta:hover{background:#51be95}.homepage .copy-banner a.cta:active,.homepage .copy-banner .cta:active{background:#41b085}.homepage .copy-banner .django-companies{max-width:750px;margin:0 auto;list-style:none;padding:0 0 0 30px}.homepage .copy-banner .django-companies li{width:144px;display:inline-block;text-indent:-1000px;overflow:hidden;margin:0}.homepage .copy-banner .django-companies li a{display:block;height:46px;background-position:center;background-repeat:no-repeat}.homepage .copy-banner .django-companies li a.company-mozilla{background-image:url("../img/company-mozilla.png");background-position:center 7px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-mozilla{background-image:url("../img/company-mozilla.svg")}.homepage .copy-banner .django-companies li a.company-pinterest{background-image:url("../img/company-pinterest.png");background-position:center 7px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-pinterest{background-image:url("../img/company-pinterest.svg")}.homepage .copy-banner .django-companies li a.company-theguardian{background-image:url("../img/company-theguardian.png");background-position:center 14px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-theguardian{background-image:url("../img/company-theguardian.svg")}.homepage .copy-banner .django-companies li a.company-instagram{background-image:url("../img/company-instagram.png");background-position:center 10px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-instagram{background-image:url("../img/company-instagram.svg")}.homepage .copy-banner .django-companies li a.company-rdio{background-image:url("../img/company-rdio.png");background-position:15px 6px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-rdio{background-image:url("../img/company-rdio.svg")}[role="alert"]{clear:both;background:#F1FFF7;position:relative;-moz-box-shadow:0 -2px 8px 0 rgba(0,0,0,0.05);-webkit-box-shadow:0 -2px 8px 0 rgba(0,0,0,0.05);box-shadow:0 -2px 8px 0 rgba(0,0,0,0.05)}[role="alert"] a{color:#20AA76;text-decoration:none}[role="alert"] a:visited{color:#20AA76}[role="alert"] a:hover,[role="alert"] a:active,[role="alert"] a:focus{color:#25c488;text-decoration:none}[role="alert"] a.link-readmore{margin:0}[role="alert"] dl{margin:0 10px;padding:25px 0;zoom:1}[role="alert"] dl:before,[role="alert"] dl:after{content:"";display:table}[role="alert"] dl:after{clear:both}[role="alert"] dl dt i.icon{color:#20AA76;margin-right:8px}[role="alert"] dl dd{float:left;width:60%;margin-top:0;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif}[role="alert"] dl .link-readmore{margin-left:10px}[role="alert"] dt{float:left;width:31%;padding-right:2%}[role="alert"] dl{margin:0}[role="contentinfo"]{zoom:1;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;position:relative;background:#44B78B;clear:both;margin-top:0px}[role="contentinfo"]:before,[role="contentinfo"]:after{content:"";display:table}[role="contentinfo"]:after{clear:both}[role="contentinfo"] .container{overflow:hidden}[role="contentinfo"] .subfooter{zoom:1;padding:0 10px;padding:0}[role="contentinfo"] .subfooter:before,[role="contentinfo"] .subfooter:after{content:"";display:table}[role="contentinfo"] .subfooter:after{clear:both}[role="contentinfo"] .subfooter .col{float:left;margin-bottom:-999px;padding:0 3% 999px 0;width:30%}[role="contentinfo"] .subfooter .col:first-child h2{border-top:0}[role="contentinfo"] .subfooter .col:first-child{margin-left:0;padding-left:0}[role="contentinfo"] .subfooter .col.last-child{margin-right:0;padding-right:0}[role="contentinfo"] h2{font-size:16px;font-size:1.6rem;border-top:1px solid #CFE3DC;color:#fff;font-weight:700;margin-top:20px;padding:30px 0 10px;border:none;margin-top:0}[role="contentinfo"] ul{font-size:14px;font-size:1.4rem;font-weight:400;list-style:none;margin:15px 0 0 0;padding:0 0 30px}[role="contentinfo"] ul li{margin:10px 0 0;padding:0}[role="contentinfo"] ul a{color:#F1FFF7;text-decoration:none}[role="contentinfo"] ul a:hover,[role="contentinfo"] ul a:active,[role="contentinfo"] ul a:focus{text-decoration:underline}[role="contentinfo"] .footer{background:#0C4B33;margin-top:20px;padding:10px 0 30px;color:#2B8C67}[role="contentinfo"] .footer .footer-logo{float:left;width:33%}[role="contentinfo"] .footer .logo{margin-right:0;margin-top:28px}.mdzr-svg [role="contentinfo"] .footer .logo{background-position:left center;margin-right:0;margin-top:20px}[role="contentinfo"] .logo{font-size:40px;font-size:4rem;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;background:url(../img/logo-django.png) 0 0 no-repeat;color:#0C4B33;display:block;font-weight:700;height:50px;margin:10px;overflow:hidden;text-decoration:none;text-indent:100%;width:142px;float:left;margin:20px 90px 0 0}.mdzr-svg [role="contentinfo"] .logo{background:url(../img/logo-django.svg) center center no-repeat;height:39px;width:109px}[role="contentinfo"] .thanks{font-size:12px;font-size:1.2rem;color:#2B8C67;margin:0;padding:0;border:none}[role="contentinfo"] .thanks li{zoom:1;margin:0;padding:17px 10px 11px;display:block;clear:both;background:none;float:left;clear:none;padding:0 3% 0 0;width:30%}[role="contentinfo"] .thanks li:before,[role="contentinfo"] .thanks li:after{content:"";display:table}[role="contentinfo"] .thanks li:after{clear:both}[role="contentinfo"] .thanks li.design span.ampersand,[role="contentinfo"] .thanks li.design a{display:inline-block;vertical-align:top}[role="contentinfo"] .thanks li.design span.ampersand.threespot,[role="contentinfo"] .thanks li.design a.threespot{clear:both}[role="contentinfo"] .thanks li.design span.ampersand.ampersand,[role="contentinfo"] .thanks li.design a.ampersand{position:relative;top:6px;margin:0 6px;line-height:36px}[role="contentinfo"] .thanks li span.ampersand{line-height:24px}[role="contentinfo"] .thanks span{display:block;height:24px;line-height:36px;padding-right:12px;white-space:nowrap}[role="contentinfo"] .thanks a{display:block;height:33px;overflow:hidden;text-indent:-200px;width:94px;clear:both;margin-top:5px}[role="contentinfo"] .thanks a.rackspace{background:url(../img/logo-rackspace.png) no-repeat left center}.mdzr-svg [role="contentinfo"] .thanks a.rackspace{background:url(../img/logo-rackspace.svg) no-repeat left center}[role="contentinfo"] .thanks a.threespot{background:url(../img/logo-threespot.png) no-repeat left center}.mdzr-svg [role="contentinfo"] .thanks a.threespot{background:url(../img/logo-threespot.svg) no-repeat left center}[role="contentinfo"] .thanks a.andrevv{background:url(../img/logo-andrevv.png) no-repeat left center}.mdzr-svg [role="contentinfo"] .thanks a.andrevv{background:url(../img/logo-andrevv.svg) no-repeat left center}[role="contentinfo"] .copyright{font-size:12px;font-size:1.2rem;clear:both;margin:20px 0 0 10px;max-width:80%;padding-top:30px;margin:0}[role="contentinfo"] .copyright a{color:#2B8C67}.backtotop{color:#20AA76;text-decoration:none;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:block;font-weight:700;margin:10px 0;padding:10px 0;text-align:center;text-transform:uppercase;display:none}.backtotop:visited{color:#20AA76}.backtotop:hover,.backtotop:active,.backtotop:focus{color:#25c488;text-decoration:none}.cta,a.cta{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:700;-webkit-appearance:none;-moz-appearance:none;background:#44B78B;border:none;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;color:#fff;display:block;-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:auto;margin:30px auto 0;padding:1em 1.5em;text-align:center;text-decoration:none;margin:20px auto;max-width:400px}.cta em,a.cta em{color:#C9F0DD;font-style:normal}.cta:hover,.cta:focus,a.cta:hover,a.cta:focus{background:#51be95}.cta:active,a.cta:active{background:#41b085}[role="complementary"] .cta,[role="complementary"] a.cta{font-size:16px;font-size:1.6rem}[role="complementary"] .cta+.link-readmore,[role="complementary"] a.cta+.link-readmore{display:block;text-align:center;margin-top:-10px}.cta.outline,a.cta.outline{background:none;border:1px solid #CFE3DC;color:#859D94;font-weight:400}.cta.outline em,a.cta.outline em{color:#0C4B33}.cta.outline:hover,a.cta.outline:hover{border-color:#20AA76;color:#20AA76}.cta.outline:hover em,a.cta.outline:hover em{color:#20AA76}.cta.outline:active,a.cta.outline:active{border-color:#44B78B;color:#44B78B}.cta.outline:active em,a.cta.outline:active em{color:#44B78B}.link-green{color:#20AA76;text-decoration:none}.link-green:visited{color:#20AA76}.link-green:hover,.link-green:active,.link-green:focus{color:#25c488;text-decoration:none}.link-readmore{color:#20AA76;text-decoration:none;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:inline-block;margin:10px 0;display:inline;zoom:1;font-weight:700;text-transform:uppercase}.link-readmore:visited{color:#20AA76}.link-readmore:hover,.link-readmore:active,.link-readmore:focus{color:#25c488;text-decoration:none}.link-readmore:after{content:" ›";font-size:1.2em}.link-readmore.back-link:after{content:""}.link-readmore.back-link:before{content:"‹ ";font-size:1.2em}[role="complementary"] .link-readmore{font-size:12px;font-size:1.2rem}.meta,.list-links dd{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:block;line-height:1.3;margin:25px 0 20px}.meta a,.list-links dd a{color:#20AA76;text-decoration:none}.meta a:visited,.list-links dd a:visited{color:#20AA76}.meta a:hover,.list-links dd a:hover,.meta a:active,.list-links dd a:active,.meta a:focus,.list-links dd a:focus{color:#25c488;text-decoration:none}.layout-2col{margin:20px 0;zoom:1;margin:0}.layout-2col:before,.layout-2col:after{content:"";display:table}.layout-2col:after{clear:both}.layout-2col .col{float:left;width:46%;margin:0 4%}.layout-2col .col:first-child{margin-left:0}.layout-2col .col.last-child{margin-right:0}.layout-2col .one-third{width:29%}.layout-2col .two-third{width:62%}.blue{color:#20AA76}.label{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem;color:#cacfcc;display:block;font-weight:700;margin:20px 0 10px;text-transform:uppercase}.label.form-controls{font-size:14px;font-size:1.4rem;display:block;margin:0;position:relative;text-align:left}.label.form-controls span{cursor:pointer}.label.form-controls span:hover,.label.form-controls span:active,.label.form-controls span:focus{color:#afb7b3}.callout-right{float:right;margin:26px 0 0 35px;width:33%}.callout-right.two-thirds{width:60%}.callout-right img{display:block;max-width:100%}.callout-left{float:left;margin:26px 35px 0 0;width:33%}.callout-left.two-thirds{width:60%}.callout-left img{display:block;max-width:100%}.codedump{background:#f8f8f8;border:1px solid #CFE3DC;padding:10px;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;line-height:1.6em}.list-events{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;list-style:none;margin:0;padding:0}.list-events li{font-size:18px;font-size:1.8rem;border-top:1px solid #CFE3DC;display:block;line-height:1.3;margin:0;padding:20px 0 0 30px;position:relative}.list-events li i{font-size:16px;font-size:1.6rem;color:#93D7B7;display:block;left:0;line-height:20px;height:30px;position:absolute;text-align:center;top:20px;width:24px}.list-events li:first-child{border-top:0;padding-top:0}.list-events li:first-child i{top:0px}.list-events .meta,.list-events .list-links dd,.list-links .list-events dd{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:block;margin-top:10px}.list-events a{color:#20AA76;text-decoration:none}.list-events a:visited{color:#20AA76}.list-events a:hover,.list-events a:active,.list-events a:focus{color:#25c488;text-decoration:none}.list-tags{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:12px;font-size:1.2rem;font-weight:700;list-style:none;margin:0;padding:0;text-transform:uppercase}.list-tags li{margin-top:10px;display:block;line-height:28px}.list-tags a{background:#93D7B7;color:#F1FFF7;display:inline-block;display:block;line-height:1.2;margin:0;padding:8px 10px 5px;text-decoration:none}.list-tags a:hover,.list-tags a:active,.list-tags a:focus{background-color:#44B78B;color:#fff}.list-news{list-style:none;margin:0;padding:0}.list-news h2{font-weight:400;margin-bottom:5px}.list-news li{border-top:1px solid #CFE3DC;margin-top:35px;padding-top:10px}.list-news li:first-child{border:none;margin-top:0;padding-top:0}.list-news .meta,.list-news .list-links dd,.list-links .list-news dd{margin-top:10px;color:#859D94}.list-news .meta a:link,.list-news .list-links dd a:link,.list-links .list-news dd a:link{color:#798780;text-decoration:underline}.list-case-study{zoom:1;list-style:none;margin:0;padding:0 0 10px}.list-case-study:before,.list-case-study:after{content:"";display:table}.list-case-study:after{clear:both}.list-case-study p{font-size:14px;font-size:1.4rem;margin:10px 0 5px}.list-case-study li{border-top:1px solid #CFE3DC;margin-top:20px;padding-top:20px}.list-case-study li>a{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;color:#20AA76;text-decoration:none;font-size:12px;font-size:1.2rem;font-weight:700;margin-top:10px;text-transform:uppercase}.list-case-study li>a:visited{color:#20AA76}.list-case-study li>a:hover,.list-case-study li>a:active,.list-case-study li>a:focus{color:#25c488;text-decoration:none}.list-case-study li>a:after{content:" ›";font-size:1.2em}.list-case-study h3{margin:10px 0 20px;padding:0}.list-case-study h3.logo{text-indent:-1000%;overflow:hidden}.list-case-study [title="Knight Foundation"]{background:url(../img/logo-knight.png) no-repeat bottom left;height:25px;padding-top:7px;width:190px}.mdzr-svg .list-case-study [title="Knight Foundation"]{background:url(../img/logo-knight.svg) no-repeat bottom left}.list-case-study [title="Mozilla"]{background:url(../img/logo-mozilla.png) no-repeat bottom left;height:32px;width:120px}.mdzr-svg .list-case-study [title="Mozilla"]{background:url(../img/logo-mozilla.svg) no-repeat bottom left}.list-case-study [title="Disqus"]{background:url(../img/logo-disqus.png) no-repeat bottom left;height:28px;padding-top:4px;width:140px}.mdzr-svg .list-case-study [title="Disqus"]{background:url(../img/logo-disqus.svg) no-repeat bottom left}.list-case-study.single-col li{margin-top:0;margin-bottom:30px;width:auto}.list-case-study.single-col li p{font-size:18px;font-size:1.8rem;margin-right:40px}.list-case-study.single-col li h3{margin-top:20px}.case-study-logo{max-width:50%;max-height:70px;height:auto;margin:40px 0 0}.list-link-soup{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;zoom:1;font-size:16px;font-size:1.6rem;border-top:1px solid #CFE3DC;list-style:none;margin:20px 0 0;padding:20px 0 10px}.list-link-soup:before,.list-link-soup:after{content:"";display:table}.list-link-soup:after{clear:both}.list-link-soup li{float:left;margin:10px 5% 0 0;width:45%;margin-right:3%;width:30%}.list-link-soup a{color:#20AA76;text-decoration:none}.list-link-soup a:visited{color:#20AA76}.list-link-soup a:hover,.list-link-soup a:active,.list-link-soup a:focus{color:#25c488;text-decoration:none}[role="complementary"] .list-link-soup li{float:none}h2+.list-link-soup{border-top:0}.list-features{margin:50px 0 40px;padding-bottom:40px}.list-features dt{font-size:24px;font-size:2.4rem;border-top:1px solid #CFE3DC;padding-top:25px}.list-features i{color:#F1FFF7;margin-right:10px;width:40px;height:40px;-moz-border-radius:25px;-webkit-border-radius:25px;border-radius:25px;background:#20AA76;line-height:1.68em;display:inline-block;text-align:center}.list-features i.icon-briefcase{line-height:1.7em}.list-features i.icon-dashboard{line-height:1.5em}.list-features dt{margin-top:60px;padding:60px 0 0 245px;position:relative}.list-features dt:first-child{margin-top:20px}.list-features dt.even{padding-left:0;padding-right:245px}.list-features dt.even i{left:auto !important;right:0}.list-features dd{padding-left:245px;min-height:140px}.list-features dd.even{padding-left:0;padding-right:245px}.list-features i{font-size:120px;font-size:12rem;display:block;height:200px;left:0;position:absolute;text-align:center;top:60px;width:200px;margin-right:0}.mdzr-borderradius .list-features i{background:#44B78B;-moz-border-radius:100px;-webkit-border-radius:100px;border-radius:100px;color:#fff}.mdzr-svg .list-features i{background:url(../img/bg-features.svg) no-repeat center center}.mdzr-svg .list-features i.icon-bolt{background-position:-150px -269px}.mdzr-svg .list-features i.icon-briefcase{background-position:-354px -7px}.mdzr-svg .list-features i.icon-lock{background-position:-36px -96px}.mdzr-svg .list-features i.icon-dashboard{background-position:-270px -9px}.mdzr-svg .list-features i.icon-cogs{background-position:-334px -12px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i{-moz-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;-webkit-transition:all 0.3s ease-out;transition:all 0.3s ease-out;-moz-transform:rotate(0.5turn);-ms-transform:rotate(0.5turn);-webkit-transform:rotate(0.5turn);transform:rotate(0.5turn)}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.inview{-moz-transform:rotate(0turn);-ms-transform:rotate(0turn);-webkit-transform:rotate(0turn);transform:rotate(0turn)}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-bolt{background-position:40px -369px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-bolt.inview{background-position:-150px -269px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-briefcase{background-position:-494px 207px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-briefcase.inview{background-position:-354px -7px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-lock{background-position:144px -206px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-lock.inview{background-position:-36px -96px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-dashboard{background-position:-360px 201px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-dashboard.inview{background-position:-270px -9px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-cogs{background-position:-500px -180px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-cogs.inview{background-position:-334px -12px}.list-features i :-o-prefocus,.list-features i{background:#44B78B !important;-moz-transition:none !important;-o-transition:none !important;-webkit-transition:none !important;transition:none !important;-moz-transform:none !important;-ms-transform:none !important;-webkit-transform:none !important;transform:none !important}.homepage .list-features{padding-bottom:0}.homepage .list-features dl{padding-top:0}.homepage .list-features i{color:#F1FFF7;margin-right:10px;width:40px;height:40px;top:10px;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;background:#20AA76;display:inline-block;text-align:center;font-size:24px;font-size:2.4rem}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .homepage .list-features i{-moz-transition:none;-o-transition:none;-webkit-transition:none;transition:none;-moz-transform:rotate(0);-ms-transform:rotate(0);-webkit-transform:rotate(0);transform:rotate(0)}.homepage .list-features dt{padding:20px 0 0px 110px;font-size:18px;font-size:1.8rem;border-top:0;margin-top:0}.homepage .list-features dd{padding:0 60px 20px 110px;min-height:0}.homepage .list-features dd p{margin-top:0;font-size:18px;font-size:1.8rem}.homepage .list-features i{margin-right:10px;width:80px;height:80px;top:20px;-moz-border-radius:40px;-webkit-border-radius:40px;border-radius:40px;font-size:46px;font-size:4.6rem}.list-collapsing-header{float:left}.section .list-collapsing-header h2{margin:40px 0 20px}.list-collapsing-header+.form-controls.label{margin:50px 0 0;text-align:right}.form-controls.label{float:right}.list-collapsing{border-bottom:1px solid #CFE3DC;list-style:none;margin:30px 0;padding:0;clear:both}.list-collapsing.active>li{border-top:1px solid #CFE3DC;margin:0;padding:0}.list-collapsing.active>li.active h2 .collapsing-icon:before{content:"\f068"}.list-collapsing.active h2{font-size:18px;font-size:1.8rem;cursor:pointer;margin:0;padding:18px 40px 18px 0;position:relative}.list-collapsing.active h2:hover,.list-collapsing.active h2:focus,.list-collapsing.active h2:active{color:#1d915c;outline:none}.list-collapsing.active h2 .collapsing-icon{position:absolute;right:0;top:24px}.list-collapsing.active h2 .collapsing-icon:before{content:"\f067"}.list-collapsing.active h2.bullet-icon{padding-left:1.5em}.list-collapsing.active h2.bullet-icon>i:first-child{position:absolute;top:24px;left:0}.list-collapsing.active .collapsing-content{overflow:hidden;max-height:0px;-moz-transition:all 0.5s ease-out;-o-transition:all 0.5s ease-out;-webkit-transition:all 0.5s ease-out;transition:all 0.5s ease-out}.list-collapsing.active li.active .collapsing-content{max-height:1000px;overflow:auto}.list-image{list-style:none;margin:0;padding:0}.list-image li{border-top:1px solid #CFE3DC;margin-top:20px;padding-top:40px;zoom:1;margin-top:20px;padding-top:40px}.list-image li:before,.list-image li:after{content:"";display:table}.list-image li:after{clear:both}.list-image li:first-child{border:none;padding-top:0}.list-image a{text-decoration:none}.list-image a:hover,.list-image a:active,.list-image a:focus{color:#798780}.list-image a.link-readmore{margin:0}.list-image img{display:block;margin:0 auto 25px;max-width:100%}.list-image img{float:left;margin:0 40px 0 0;max-width:200px;max-height:200px}.list-image h2,.list-image h3,.list-image h4,.list-image p{padding-left:240px}.list-image h3{margin-top:10px}.layout-secondary .list-image img,[role="complementary"] .list-image img{float:left;max-width:40%;max-height:120px;margin:0 20px 10px 0}.layout-secondary .list-image h2,.layout-secondary .list-image h3,.layout-secondary .list-image h4,.layout-secondary .list-image p,[role="complementary"] .list-image h2,[role="complementary"] .list-image h3,[role="complementary"] .list-image h4,[role="complementary"] .list-image p{padding-left:0px;border:0}.layout-secondary .list-image h3,[role="complementary"] .list-image h3{font-size:14px;font-size:1.4rem;margin-top:0;margin-bottom:1em;padding-bottom:0;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:700}#s-django-documentation,#s-feed{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif}.list-outline{font-size:16px;font-size:1.6rem;line-height:1.3;list-style:none;margin:0;padding:0}.list-outline a{text-decoration:none}.list-outline>li>ul>li{margin-top:12px}.list-outline>li>ul>li:first-child{margin-top:6px}.list-outline>li>a{text-transform:uppercase;font-weight:700;color:#20AA76;text-decoration:none}.list-outline>li>a:visited{color:#20AA76}.list-outline>li>a:hover,.list-outline>li>a:active,.list-outline>li>a:focus{color:#25c488;text-decoration:none}.list-outline>li>ul{list-style:none;font-size:12px;font-size:1.2rem;padding:5px 0 0 10px}.list-outline>li>ul>li>a{font-weight:700;text-transform:uppercase;color:#20AA76;text-decoration:none}.list-outline>li>ul>li>a:visited{color:#20AA76}.list-outline>li>ul>li>a:hover,.list-outline>li>ul>li>a:active,.list-outline>li>ul>li>a:focus{color:#25c488;text-decoration:none}.list-outline>li>ul>li ul{font-size:14px;font-size:1.4rem;padding:0 0 0 20px}.section h2{margin:50px 0 30px}.section h3{margin:40px 0 20px}.headerlink{opacity:0;padding-left:10px;font-size:0.8em;position:relative;top:-0.17em;font-weight:700;text-decoration:none;-moz-transition:opacity 200ms ease-in-out;-o-transition:opacity 200ms ease-in-out;-webkit-transition:opacity 200ms ease-in-out;transition:opacity 200ms ease-in-out}h1:hover>.headerlink,h2:hover>.headerlink,h3:hover>.headerlink,h4:hover>.headerlink,h5:hover>.headerlink,h6:hover>.headerlink,dl:hover>.headerlink,dt:hover>.headerlink{opacity:1}.note,.admonition,.help-block{background:#F1FFF7;padding:15px 20px 15px 70px;border:1px solid #C9F0DD;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin:25px 0;position:relative}.note h1,.note h2,.note h3,.note h4,.admonition h1,.admonition h2,.admonition h3,.admonition h4,.help-block h1,.help-block h2,.help-block h3,.help-block h4{margin-top:20px}.note p,.admonition p,.help-block p{margin:0.8em 0}.note .first,.admonition .first,.help-block .first{margin-top:0}.note .admonition-title,.admonition .admonition-title,.help-block .admonition-title{font-weight:bold}.note .admonition-title::before,.admonition .admonition-title::before,.help-block .admonition-title::before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;top:20px;left:20px;font-size:30px;width:34px;text-align:center;content:"";opacity:0.5}.note.warning,.admonition.warning,.help-block.warning{background-color:#FFFDF1;border-color:#F5F1C7}.note.warning .admonition-title::before,.admonition.warning .admonition-title::before,.help-block.warning .admonition-title::before{color:#E9BD46;content:""}.note.admonition-philosophy .admonition-title::before,.admonition.admonition-philosophy .admonition-title::before,.help-block.admonition-philosophy .admonition-title::before{content:""}.note.admonition-behind-the-scenes .admonition-title::before,.admonition.admonition-behind-the-scenes .admonition-title::before,.help-block.admonition-behind-the-scenes .admonition-title::before{content:""}.note .last,.note .highlight,.admonition .last,.admonition .highlight,.help-block .last,.help-block .highlight{margin-bottom:0px}.browse-horizontal{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;zoom:1;font-weight:700;border-top:1px solid #CFE3DC;border-bottom:1px solid #CFE3DC;padding:20px 0;margin-top:2em}.browse-horizontal:before,.browse-horizontal:after{content:"";display:table}.browse-horizontal:after{clear:both}.browse-horizontal .left{float:left}.browse-horizontal .left .icon{margin-right:4px;font-size:12px;font-size:1.2rem}.browse-horizontal .right{float:right}.browse-horizontal .right .icon{margin-left:4px;font-size:12px;font-size:1.2rem}.browse-horizontal a{text-decoration:none}#doc-versions{position:fixed;right:15px;bottom:15px;margin:0;padding:0;z-index:1;list-style:none}#doc-versions .icon{margin-right:4px}#doc-versions li{display:none;background:#F1FFF7;margin:0 3px;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;color:#0C3C26;font-size:12px;font-size:1.2rem}#doc-versions li.current{display:inline-block;padding:8px 15px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}#doc-versions li a{display:inline-block;color:#44B78B;text-decoration:none;font-weight:700;padding:8px 15px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}#doc-versions li a:hover{color:#20AA76;border:1px solid #93D7B7}#doc-versions:hover li,#doc-versions .hover-on li{display:inline-block}#dev-warning,#outdated-warning{position:absolute;top:0;width:100%;padding:8px 20px 8px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;background-image:-webkit-linear-gradient(-45deg, rgba(0,0,0,0.04) 25%, transparent 25%, transparent 50%, rgba(0,0,0,0.04) 50%, rgba(0,0,0,0.04) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(-45deg, rgba(0,0,0,0.04) 25%, transparent 25%, transparent 50%, rgba(0,0,0,0.04) 50%, rgba(0,0,0,0.04) 75%, transparent 75%, transparent);background-image:linear-gradient(135deg, rgba(0,0,0,0.04) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(0,0,0,0.04) 50%,rgba(0,0,0,0.04) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;text-align:center;background-color:#ffe761;position:fixed;min-width:768px}#outdated-warning{background-color:#ffbaba;color:#6A0E0E}#s-getting-help{display:none}#docs-content{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;line-height:1.5em}#docs-content h1,#docs-content h2,#docs-content h3,#docs-content h4,#docs-content h5,#docs-content h6{margin:0.6em 0;line-height:1.1em}#docs-content .section{padding:10px 0 20px}#docs-content img{display:block;max-width:100%}#docs-content a.reference{color:#6A0E0E;text-decoration:none;border-bottom:1px dotted #798780}#docs-content a.reference:visited{border-color:#971414}#docs-content a.reference:active,#docs-content a.reference:focus,#docs-content a.reference:hover{background:#F1FFF7;color:#BA2121}#docs-content a.reference em{font-style:normal}.versionadded,.versionchanged,.deprecated,.versionmodified{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:bold;margin-bottom:20px;padding:10px 13px;border:1px solid #C9F0DD;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}.versionadded p,.versionchanged p,.deprecated p,.versionmodified p{font-weight:normal;margin-top:0.3em}.versionadded p:last-child,.versionchanged p:last-child,.deprecated p:last-child,.versionmodified p:last-child{margin-bottom:0}.deprecated .versionadded,.deprecated .versionchanged,.deprecated .deprecated,.deprecated .versionmodified{border:none;padding:0;margin-bottom:0;display:block}.deprecated p{font-weight:normal;margin-top:0}.deprecated p:last-child{margin-bottom:0}dl.function dt,dl.class dt,dl.method dt,dl.attribute dt{font-weight:700}dl.function dd,dl.class dd,dl.method dd,dl.attribute dd{padding-left:1.4em}table.docutils td,table.docutils th{border-bottom:1px solid #CFE3DC}#search-results span.highlighted{font-weight:700;color:#0C3C26}.list-links{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;list-style:none;margin:0;padding:10px 0 0}.list-links a{color:#20AA76;text-decoration:none}.list-links a:visited{color:#20AA76}.list-links a:hover,.list-links a:active,.list-links a:focus{color:#25c488;text-decoration:none}.list-links dt,.list-links li{font-size:16px;font-size:1.6rem;margin-top:15px;font-weight:400}.list-links dt:first-child,.list-links li:first-child{margin-top:0}.list-links dd{margin-top:0;margin-bottom:30px}[role="complementary"] .list-links{padding:0}[role="complementary"] .list-links dt,[role="complementary"] .list-links li{font-size:16px;font-size:1.6rem;border-top:1px solid #CFE3DC;margin-top:0;padding-top:20px}[role="complementary"] .list-links dt:first-child,[role="complementary"] .list-links li:first-child{border:none;padding-top:0}[role="complementary"] .list-links li{padding:14px 0 10px}[role="complementary"] .list-links dd{font-size:14px;font-size:1.4rem;margin-bottom:16px}.list-links+h2{margin-top:34px}.list-links-small{padding-left:0;list-style:none}.list-links-small a{color:#20AA76;text-decoration:none;text-decoration:none}.list-links-small a:visited{color:#20AA76}.list-links-small a:hover,.list-links-small a:active,.list-links-small a:focus{color:#25c488;text-decoration:none}.list-links-small li>a:before,.list-links-small dt>a:before{font-family:FontAwesome;font-weight:normal;font-style:normal;float:left;width:23px;height:20px}.list-links-small dt{font-weight:400}.list-links-small dd{color:#798780;padding-top:2px}.list-links-small.docs-list{list-style:none}.list-links-small.docs-list li>a:before,.list-links-small.docs-list dt>a:before{content:"\f0f6"}.list-links-small.docs-list dd{padding-left:24px}.list-links-small.news-list{list-style:none}.list-links-small.news-list li>a:before,.list-links-small.news-list dt>a:before{content:"\f0a1"}.list-links-small.news-list dt.event>a:before{content:"\f133"}.list-links-small.news-list dd{padding-left:24px}.list-links-small.resource-list{list-style:none}.list-links-small.resource-list li>a:before,.list-links-small.resource-list dt>a:before{content:"\f0c1"}.list-links-small.resource-list dd{padding-left:24px}.list-links-small.rss-list{list-style:none}.list-links-small.rss-list li>a:before,.list-links-small.rss-list dt>a:before{content:"\f09e"}.list-links-small.rss-list dd{padding-left:24px}form{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem}form input[type="search"],form input[type="text"],form input[type="email"],form input[type="password"],form input[type="url"],form textarea{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem;-webkit-appearance:none;-moz-appearance:none;background:#fff;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;cursor:auto;display:block;font-weight:400;height:30px;margin:10px 0px;padding:6px 14% 8px 10px;text-indent:0;vertical-align:middle;width:82%;padding:6px 18% 8px 10px;width:80%}form input[type="search"]::-ms-clear,form input[type="text"]::-ms-clear,form input[type="email"]::-ms-clear,form input[type="password"]::-ms-clear,form input[type="url"]::-ms-clear,form textarea::-ms-clear{display:none}form input[type="search"]:active,form input[type="search"]:focus,form input[type="text"]:active,form input[type="text"]:focus,form input[type="email"]:active,form input[type="email"]:focus,form input[type="password"]:active,form input[type="password"]:focus,form input[type="url"]:active,form input[type="url"]:focus,form textarea:active,form textarea:focus{outline:none;border-color:#20AA76}form textarea{height:auto}form input[type=checkbox],form input[type=radio]{margin-right:6px}form select{border:1px solid #CFE3DC;background:white;height:46px;padding:0 10px;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-size:16px;font-size:1.6rem}[role="complementary"] form select{height:36px;font-size:14px;font-size:1.4rem}form button{-moz-appearance:none;-webkit-appearance:none;background:#20AA76;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;color:white;border:0;height:46px;padding:0 15px;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem}form button:hover{background:#44B78B}.form-general fieldset{max-width:700px;border:0;padding:0;margin:15px 0}.form-general fieldset input[type="search"],.form-general fieldset input[type="text"],.form-general fieldset input[type="email"],.form-general fieldset input[type="password"],.form-general fieldset input[type="url"]{margin:10px 0}.form-input{min-height:40px;margin:30px 0 20px;position:relative}.form-input:focus{background:#000}.form-input button{background:none;border:none;color:#44B78B;height:40px;padding:0;position:absolute;right:2%;top:6%;width:40px;right:1%}.form-input button i{font-size:20px;font-size:2rem;line-height:1}.form-input button:hover,.form-input button:focus,.form-input button:active{background:none;color:#0C4B33;outline:none}[role="complementary"] .form-input{min-height:30px;margin:20px 0 30px}[role="complementary"] .form-input input[type="search"],[role="complementary"] .form-input input[type="text"],[role="complementary"] .form-input input[type="email"]{height:20px;font-size:14px;font-size:1.4rem}[role="complementary"] .form-input button{height:30px;width:30px;top:3px;right:0}[role="complementary"] .form-input button i{font-size:20px;font-size:2rem}form.donate{max-width:150px}form.donate label{position:absolute;left:0px;color:#2B8C67;padding-top:0.3em;padding-left:0.5em}form.donate input[type=text]{padding-left:20px;padding-right:9px}div[role=main] form.donate label{padding-top:0.7em}::-webkit-input-placeholder,:-moz-placeholder,::-moz-placeholder,:-ms-input-placeholder{color:#859D94}.form-email h3{font-size:18px;font-size:1.8rem;margin:10px 0}.form-email .meta,.form-email .list-links dd,.list-links .form-email dd{margin:0}.form-email form{margin:10px 0 30px}.nav-pagination{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;border-top:1px solid #CFE3DC;font-weight:700;line-height:31px;list-style:none;margin:30px 0;padding:30px 0 0;text-align:center}.nav-pagination li{display:inline-block;display:inline;zoom:1}.nav-pagination a{border:none;color:#798780;height:auto;width:auto;margin:0 5px;-moz-border-radius:15px;-webkit-border-radius:15px;border-radius:15px;display:block;text-decoration:none;background:#798780;color:#fff;height:30px;margin:0 2px;width:30px}.nav-pagination a.previous,.nav-pagination a.next{font-size:16px;font-size:1.6rem;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;height:40px;line-height:43px;width:40px}.nav-pagination a.previous{margin-right:10px;margin-right:70px}.nav-pagination a.next{margin-left:10px;text-indent:1px;margin-left:70px}.nav-pagination a:hover,.nav-pagination a:focus,.nav-pagination a:active,.nav-pagination a.active{background:none;color:#20AA76;background:#20AA76;color:white}.mdzr-no-borderradius .nav-pagination a{display:inline;background:none;color:#798780;height:auto;width:auto;margin:0 5px !important}.mdzr-no-borderradius .nav-pagination a:hover,.mdzr-no-borderradius .nav-pagination a:active,.mdzr-no-borderradius .nav-pagination a:focus,.mdzr-no-borderradius .nav-pagination a.active{background:none;color:#20AA76}hr{border:0;border-top:1px solid #CFE3DC}.badge{-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-size:12px;padding:2px 6px;margin:0 5px;letter-spacing:0px;position:relative;bottom:0.3em;color:#F1FFF7;background-color:#20AA76}.user-info .avatar{padding:20px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;float:right}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.clearfix,.group-container{zoom:1}.clearfix:before,.clearfix:after,.group-container:before,.group-container:after{content:"";display:table}.clearfix:after,.group-container:after{clear:both}.fundraising-index{margin-top:50px}.fundraising-index .fundraising-heart{width:100%;float:none;width:55%;float:left}.fundraising-index .fundraising-heart img,.fundraising-index .fundraising-heart svg{width:100%;height:auto}.fundraising-index .fundraising-heart rect{-moz-transition:opacity 250ms ease-out;-o-transition:opacity 250ms ease-out;-webkit-transition:opacity 250ms ease-out;transition:opacity 250ms ease-out}.fundraising-index .fundraising-heart rect.faded{opacity:0.05}.fundraising-index .fundraising-heart rect.faded:hover{opacity:0.9}.fundraising-index .description{margin-left:5%;width:100%;float:none;margin-top:30px;width:40%;float:left;margin-top:0px}.fundraising-index .description h2{margin-top:0;font-size:28px;font-size:2.8rem}.fundraising-index .donate select{width:80%;width:100%}.fundraising-index .donate .cta{margin:10px 0}.fundraising-index .donate .custom-donation{display:none}.fundraising-index .donate .prefix{float:left;font-size:19px;font-size:1.9rem;margin:8px 9px 0 3px}.fundraising-index .donate input[type="text"]{width:70%}.fundraising-index .cls{clear:both}.fundraising-donation select{width:100%}.fundraising-donation input.error{border:1px solid #BA2121 !important}.fundraising-donation p.validation-errors{color:#BA2121}.fundraising-donation .custom-donation{display:none;margin-top:10px}.fundraising-sidebar{clear:both}.fundraising-sidebar .small-heart{margin-top:20px;width:20%;float:left;margin-bottom:20px}.fundraising-sidebar .small-heart img{width:100%;max-width:64px}.fundraising-sidebar .small-cta{width:70%;float:left;vertical-align:top;margin-left:5%;margin-right:5%;margin-bottom:20px}.footnote{color:#859D94;font-size:14px;font-size:1.4rem;margin-top:20px;text-align:center}form .footnote{margin-top:10px;text-align:left}.heros-section{overflow:hidden}.heros-section .heros{clear:both}.heros-section .heros .hero{width:25%;position:relative;height:auto}.heros-section .heros .hero div{width:100%}.heros-section .heros .hero-logo{height:170px;line-height:170px}.heros-section .heros .hero-logo img{vertical-align:middle}.heros-section .heros .hero-name{height:92px;vertical-align:top}.heros-section .heros .no-logo-hero{min-height:60px;margin-right:24px}.heros-section .heros div{float:left;text-align:center;margin:15px 0}.heros-section .heros div img{max-width:90%;max-height:170px}.heros-section .pagination{clear:both}pre.literal-block,.literal-block{font-size:14px;font-size:1.4rem;border:1px solid #EAEAEA;background:#F4F4F4;background:#f8f8f8;overflow:auto;border-radius:4px;margin:25px 0;padding:10px 20px;color:#0C4B33}.snippet-filename{background:#C9F0DD;color:#0C4B33;font-family:"Fira Mono", Consolas, Menlo, Monaco, "Courier New", Courier, monospace;font-variant-ligatures:no-common-ligatures;text-rendering:optimizeSpeed;font-size:1em;padding:5px 20px;-moz-border-radius:4px 4px 0 0;-webkit-border-radius:4px;border-radius:4px 4px 0 0}.snippet-filename+.highlight{margin-top:0;-moz-border-radius:0 0 4px 4px;-webkit-border-radius:0;border-radius:0 0 4px 4px;border-top:0}.highlight{font-size:14px;font-size:1.4rem;border:1px solid #EAEAEA;background:#F4F4F4;background:#f8f8f8;overflow:auto;border-radius:4px;margin:25px 0}.highlight pre{margin:15px 20px}.highlight li{margin-top:0;border-left:1px solid #EAEAEA;padding:0 0 2px 15px}.highlight li:first-child{padding-top:2px}.highlight .hll{background-color:#ffc}.highlight .c{color:#408080;font-style:italic}.highlight .err{border:1px solid red}.highlight .k{color:#008000;font-weight:bold}.highlight .o{color:#666}.highlight .cm{color:#408080;font-style:italic}.highlight .cp{color:#BC7A00}.highlight .c1{color:#408080;font-style:italic}.highlight .cs{color:#408080;font-style:italic}.highlight .gd{color:#A00000}.highlight .ge{font-style:italic}.highlight .gr{color:red}.highlight .gh{color:#000080;font-weight:bold}.highlight .gi{color:#00A000}.highlight .go{color:gray}.highlight .gp{color:#000080;font-weight:bold}.highlight .gs{font-weight:bold}.highlight .gu{color:#800080;font-weight:bold}.highlight .gt{color:#0040D0}.highlight .kc{color:#008000;font-weight:bold}.highlight .kd{color:#008000;font-weight:bold}.highlight .kn{color:#008000;font-weight:bold}.highlight .kp{color:green}.highlight .kr{color:#008000;font-weight:bold}.highlight .kt{color:#B00040}.highlight .m{color:#666}.highlight .s{color:#BA2121}.highlight .na{color:#7D9029}.highlight .nb{color:green}.highlight .nc{color:#0000FF;font-weight:bold}.highlight .no{color:#800}.highlight .nd{color:#a2f}.highlight .ni{color:#999999;font-weight:bold}.highlight .ne{color:#D2413A;font-weight:bold}.highlight .nf{color:blue}.highlight .nl{color:#A0A000}.highlight .nn{color:#0000FF;font-weight:bold}.highlight .nt{color:#008000;font-weight:bold}.highlight .nv{color:#19177C}.highlight .ow{color:#AA22FF;font-weight:bold}.highlight .w{color:#bbb}.highlight .mf{color:#666}.highlight .mh{color:#666}.highlight .mi{color:#666}.highlight .mo{color:#666}.highlight .sb{color:#BA2121}.highlight .sc{color:#BA2121}.highlight .sd{color:#BA2121;font-style:italic}.highlight .s2{color:#BA2121}.highlight .se{color:#BB6622;font-weight:bold}.highlight .sh{color:#BA2121}.highlight .si{color:#BB6688;font-weight:bold}.highlight .sx{color:green}.highlight .sr{color:#b68}.highlight .s1{color:#BA2121}.highlight .ss{color:#19177C}.highlight .bp{color:green}.highlight .vc{color:#19177C}.highlight .vg{color:#19177C}.highlight .vi{color:#19177C}.highlight .il{color:#666}.highlight .lineno{color:#000000;background-color:#dddddd}.styleguide .example{padding:0 20px 20px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin-top:20px;margin-bottom:64px}.styleguide .example:before{content:"Example";font-size:16px;font-weight:700;display:block;color:#CFE3DC;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;text-align:left;padding:10px 0}.styleguide .example [role="complementary"]{float:none;width:auto;padding:0;margin:0}.styleguide .iframe{display:block;height:400px;cursor:zoom-in;border:1px solid #CFE3DC;overflow:hidden}.styleguide .iframe iframe{pointer-events:none;position:relative;width:200%;border:0;height:800px;-moz-transform:scale(0.5) translate(-50%, -50%);-ms-transform:scale(0.5) translate(-50%, -50%);-webkit-transform:scale(0.5) translate(-50%, -50%);transform:scale(0.5) translate(-50%, -50%);top:0;left:0;overflow:hidden}.styleguide .swatches{margin:0;padding:0;list-style:none;zoom:1;margin:30px 0}.styleguide .swatches:before,.styleguide .swatches:after{content:"";display:table}.styleguide .swatches:after{clear:both}.styleguide .swatches li{width:30%;height:30px;margin-right:2%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;float:left}.styleguide .swatches li.text{background:#0C3C26}.styleguide .swatches li.green-dark{background:#0C4B33}.styleguide .swatches li.green{background:#20AA76}.styleguide .swatches li.green-light{background:#93D7B7}.styleguide .swatches li.white{background:#F1FFF7;border:1px solid #CFE3DC}.styleguide .swatches li.red-dark{background:#6A0E0E}.styleguide .swatches li.text-light{background:#798780}.styleguide .swatches li.green-medium-dark{background:#2B8C67}.styleguide .swatches li.green-medium{background:#44B78B}.styleguide .swatches li.green-very-light{background:#C9F0DD}.styleguide .swatches li.gray-line{background:#CFE3DC}.styleguide .swatches li.red{background:#BA2121}.styleguide #layout{overflow:hidden}.styleguide #icons .icon{font-size:32px;font-size:3.2rem;color:#20AA76;padding:0 .2em}@media print{*{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}html{font-size:40%}.menu-button,.news-search,.backtotop,.nav-pagination,[role="contentinfo"]>.container,[role="contentinfo"] .logo,.thanks,[role="complementary"],[role="navigation"],.form-input{display:none !important}.logo{text-indent:0 !important}[role="contentinfo"],[role="contentinfo"] .copyright{margin:0 !important;padding:0 !important}.internal-container{float:none;width:auto}.list-news li{margin-top:0}}#dashboard .full-width [role="main"]{width:80%;max-width:1200px;margin:0 auto;text-align:center}.metric{height:8em;width:240px;padding:0 20px 10px 20px;margin:10px 10px 20px 10px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;display:inline-block;position:relative}.metric h3{padding:10px;margin:0 -20px;font-size:18px;font-size:1.8rem;font-weight:200;display:block;text-align:left;color:#C9F0DD;background:#44B78B}.metric h3 a{color:#C9F0DD}.metric .value{position:absolute;bottom:0;left:0;width:100%;height:80%;padding:0;margin:0;text-align:center;font-size:5em;line-height:1.5em;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;z-index:10;pointer-events:none}.metric .value a{text-decoration:none;z-index:10}.metric .value .timestamp{font-size:0.16em;line-height:1em}.metric .sparkline{position:absolute;bottom:0;left:0;width:100%;height:54px;z-index:1}.graph{width:100%;margin:0 auto;height:500px} diff --git a/djangoproject/static/css/output.css b/djangoproject/static/css/output.css index 133793ea1..d7d75ff62 100644 --- a/djangoproject/static/css/output.css +++ b/djangoproject/static/css/output.css @@ -1,4 +1,4 @@ /*! normalize.css v2.0.1 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}mark{background:#ff0;color:#000}code,kbd,pre,samp{font-family:monospace, serif;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}p{margin:1em 0}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}button,input{line-height:normal}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}@font-face{font-family:'Fira Mono';src:url("../fonts/fira-mono/FiraMono-Regular.eot");src:url("../fonts/fira-mono/FiraMono-Regular.eot") format("embedded-opentype"),url("../fonts/fira-mono/FiraMono-Regular.woff") format("woff"),url("../fonts/fira-mono/FiraMono-Regular.ttf") format("truetype");font-weight:400;font-style:normal}@font-face{font-family:'Fira Mono';src:url("../fonts/fira-mono/FiraMono-Bold.eot");src:url("../fonts/fira-mono/FiraMono-Bold.eot") format("embedded-opentype"),url("../fonts/fira-mono/FiraMono-Bold.woff") format("woff"),url("../fonts/fira-mono/FiraMono-Bold.ttf") format("truetype");font-weight:700;font-style:normal}html{font-size:62.5%}/*! * Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */@font-face{font-family:'FontAwesome';src:url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.eot?v=4.2.0");src:url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0") format("embedded-opentype"),url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.woff?v=4.2.0") format("woff"),url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.ttf?v=4.2.0") format("truetype"),url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular") format("svg");font-weight:normal;font-style:normal}.icon{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-lg{font-size:1.33333em;line-height:0.75em;vertical-align:-15%}.icon-2x{font-size:2em}.icon-3x{font-size:3em}.icon-4x{font-size:4em}.icon-5x{font-size:5em}.icon-fw{width:1.28571em;text-align:center}.icon-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.icon-ul>li{position:relative}.icon-li{position:absolute;left:-2.14286em;width:2.14286em;top:0.14286em;text-align:center}.icon-li.icon-lg{left:-1.85714em}.icon-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.icon.pull-left{margin-right:.3em}.icon.pull-right{margin-left:.3em}.icon-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.icon-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.icon-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.icon-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.icon-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0);-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.icon-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .icon-rotate-90,:root .icon-rotate-180,:root .icon-rotate-270,:root .icon-flip-horizontal,:root .icon-flip-vertical{filter:none}.icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.icon-stack-1x,.icon-stack-2x{position:absolute;left:0;width:100%;text-align:center}.icon-stack-1x{line-height:inherit}.icon-stack-2x{font-size:2em}.icon-inverse{color:#fff}.icon-glass:before{content:""}.icon-music:before{content:""}.icon-search:before{content:""}.icon-envelope-o:before{content:""}.icon-heart:before{content:""}.icon-star:before{content:""}.icon-star-o:before{content:""}.icon-user:before{content:""}.icon-film:before{content:""}.icon-th-large:before{content:""}.icon-th:before{content:""}.icon-th-list:before{content:""}.icon-check:before{content:""}.icon-remove:before,.icon-close:before,.icon-times:before{content:""}.icon-search-plus:before{content:""}.icon-search-minus:before{content:""}.icon-power-off:before{content:""}.icon-signal:before{content:""}.icon-gear:before,.icon-cog:before{content:""}.icon-trash-o:before{content:""}.icon-home:before{content:""}.icon-file-o:before{content:""}.icon-clock-o:before{content:""}.icon-road:before{content:""}.icon-download:before{content:""}.icon-arrow-circle-o-down:before{content:""}.icon-arrow-circle-o-up:before{content:""}.icon-inbox:before{content:""}.icon-play-circle-o:before{content:""}.icon-rotate-right:before,.icon-repeat:before{content:""}.icon-refresh:before{content:""}.icon-list-alt:before{content:""}.icon-lock:before{content:""}.icon-flag:before{content:""}.icon-headphones:before{content:""}.icon-volume-off:before{content:""}.icon-volume-down:before{content:""}.icon-volume-up:before{content:""}.icon-qrcode:before{content:""}.icon-barcode:before{content:""}.icon-tag:before{content:""}.icon-tags:before{content:""}.icon-book:before{content:""}.icon-bookmark:before{content:""}.icon-print:before{content:""}.icon-camera:before{content:""}.icon-font:before{content:""}.icon-bold:before{content:""}.icon-italic:before{content:""}.icon-text-height:before{content:""}.icon-text-width:before{content:""}.icon-align-left:before{content:""}.icon-align-center:before{content:""}.icon-align-right:before{content:""}.icon-align-justify:before{content:""}.icon-list:before{content:""}.icon-dedent:before,.icon-outdent:before{content:""}.icon-indent:before{content:""}.icon-video-camera:before{content:""}.icon-photo:before,.icon-image:before,.icon-picture-o:before{content:""}.icon-pencil:before{content:""}.icon-map-marker:before{content:""}.icon-adjust:before{content:""}.icon-tint:before{content:""}.icon-edit:before,.icon-pencil-square-o:before{content:""}.icon-share-square-o:before{content:""}.icon-check-square-o:before{content:""}.icon-arrows:before{content:""}.icon-step-backward:before{content:""}.icon-fast-backward:before{content:""}.icon-backward:before{content:""}.icon-play:before{content:""}.icon-pause:before{content:""}.icon-stop:before{content:""}.icon-forward:before{content:""}.icon-fast-forward:before{content:""}.icon-step-forward:before{content:""}.icon-eject:before{content:""}.icon-chevron-left:before{content:""}.icon-chevron-right:before{content:""}.icon-plus-circle:before{content:""}.icon-minus-circle:before{content:""}.icon-times-circle:before{content:""}.icon-check-circle:before{content:""}.icon-question-circle:before{content:""}.icon-info-circle:before{content:""}.icon-crosshairs:before{content:""}.icon-times-circle-o:before{content:""}.icon-check-circle-o:before{content:""}.icon-ban:before{content:""}.icon-arrow-left:before{content:""}.icon-arrow-right:before{content:""}.icon-arrow-up:before{content:""}.icon-arrow-down:before{content:""}.icon-mail-forward:before,.icon-share:before{content:""}.icon-expand:before{content:""}.icon-compress:before{content:""}.icon-plus:before{content:""}.icon-minus:before{content:""}.icon-asterisk:before{content:""}.icon-exclamation-circle:before{content:""}.icon-gift:before{content:""}.icon-leaf:before{content:""}.icon-fire:before{content:""}.icon-eye:before{content:""}.icon-eye-slash:before{content:""}.icon-warning:before,.icon-exclamation-triangle:before{content:""}.icon-plane:before{content:""}.icon-calendar:before{content:""}.icon-random:before{content:""}.icon-comment:before{content:""}.icon-magnet:before{content:""}.icon-chevron-up:before{content:""}.icon-chevron-down:before{content:""}.icon-retweet:before{content:""}.icon-shopping-cart:before{content:""}.icon-folder:before{content:""}.icon-folder-open:before{content:""}.icon-arrows-v:before{content:""}.icon-arrows-h:before{content:""}.icon-bar-chart-o:before,.icon-bar-chart:before{content:""}.icon-twitter-square:before{content:""}.icon-facebook-square:before{content:""}.icon-camera-retro:before{content:""}.icon-key:before{content:""}.icon-gears:before,.icon-cogs:before{content:""}.icon-comments:before{content:""}.icon-thumbs-o-up:before{content:""}.icon-thumbs-o-down:before{content:""}.icon-star-half:before{content:""}.icon-heart-o:before{content:""}.icon-sign-out:before{content:""}.icon-linkedin-square:before{content:""}.icon-thumb-tack:before{content:""}.icon-external-link:before{content:""}.icon-sign-in:before{content:""}.icon-trophy:before{content:""}.icon-github-square:before{content:""}.icon-upload:before{content:""}.icon-lemon-o:before{content:""}.icon-phone:before{content:""}.icon-square-o:before{content:""}.icon-bookmark-o:before{content:""}.icon-phone-square:before{content:""}.icon-twitter:before{content:""}.icon-facebook:before{content:""}.icon-github:before{content:""}.icon-unlock:before{content:""}.icon-credit-card:before{content:""}.icon-rss:before{content:""}.icon-hdd-o:before{content:""}.icon-bullhorn:before{content:""}.icon-bell:before{content:""}.icon-certificate:before{content:""}.icon-hand-o-right:before{content:""}.icon-hand-o-left:before{content:""}.icon-hand-o-up:before{content:""}.icon-hand-o-down:before{content:""}.icon-arrow-circle-left:before{content:""}.icon-arrow-circle-right:before{content:""}.icon-arrow-circle-up:before{content:""}.icon-arrow-circle-down:before{content:""}.icon-globe:before{content:""}.icon-wrench:before{content:""}.icon-tasks:before{content:""}.icon-filter:before{content:""}.icon-briefcase:before{content:""}.icon-arrows-alt:before{content:""}.icon-group:before,.icon-users:before{content:""}.icon-chain:before,.icon-link:before{content:""}.icon-cloud:before{content:""}.icon-flask:before{content:""}.icon-cut:before,.icon-scissors:before{content:""}.icon-copy:before,.icon-files-o:before{content:""}.icon-paperclip:before{content:""}.icon-save:before,.icon-floppy-o:before{content:""}.icon-square:before{content:""}.icon-navicon:before,.icon-reorder:before,.icon-bars:before{content:""}.icon-list-ul:before{content:""}.icon-list-ol:before{content:""}.icon-strikethrough:before{content:""}.icon-underline:before{content:""}.icon-table:before{content:""}.icon-magic:before{content:""}.icon-truck:before{content:""}.icon-pinterest:before{content:""}.icon-pinterest-square:before{content:""}.icon-google-plus-square:before{content:""}.icon-google-plus:before{content:""}.icon-money:before{content:""}.icon-caret-down:before{content:""}.icon-caret-up:before{content:""}.icon-caret-left:before{content:""}.icon-caret-right:before{content:""}.icon-columns:before{content:""}.icon-unsorted:before,.icon-sort:before{content:""}.icon-sort-down:before,.icon-sort-desc:before{content:""}.icon-sort-up:before,.icon-sort-asc:before{content:""}.icon-envelope:before{content:""}.icon-linkedin:before{content:""}.icon-rotate-left:before,.icon-undo:before{content:""}.icon-legal:before,.icon-gavel:before{content:""}.icon-dashboard:before,.icon-tachometer:before{content:""}.icon-comment-o:before{content:""}.icon-comments-o:before{content:""}.icon-flash:before,.icon-bolt:before{content:""}.icon-sitemap:before{content:""}.icon-umbrella:before{content:""}.icon-paste:before,.icon-clipboard:before{content:""}.icon-lightbulb-o:before{content:""}.icon-exchange:before{content:""}.icon-cloud-download:before{content:""}.icon-cloud-upload:before{content:""}.icon-user-md:before{content:""}.icon-stethoscope:before{content:""}.icon-suitcase:before{content:""}.icon-bell-o:before{content:""}.icon-coffee:before{content:""}.icon-cutlery:before{content:""}.icon-file-text-o:before{content:""}.icon-building-o:before{content:""}.icon-hospital-o:before{content:""}.icon-ambulance:before{content:""}.icon-medkit:before{content:""}.icon-fighter-jet:before{content:""}.icon-beer:before{content:""}.icon-h-square:before{content:""}.icon-plus-square:before{content:""}.icon-angle-double-left:before{content:""}.icon-angle-double-right:before{content:""}.icon-angle-double-up:before{content:""}.icon-angle-double-down:before{content:""}.icon-angle-left:before{content:""}.icon-angle-right:before{content:""}.icon-angle-up:before{content:""}.icon-angle-down:before{content:""}.icon-desktop:before{content:""}.icon-laptop:before{content:""}.icon-tablet:before{content:""}.icon-mobile-phone:before,.icon-mobile:before{content:""}.icon-circle-o:before{content:""}.icon-quote-left:before{content:""}.icon-quote-right:before{content:""}.icon-spinner:before{content:""}.icon-circle:before{content:""}.icon-mail-reply:before,.icon-reply:before{content:""}.icon-github-alt:before{content:""}.icon-folder-o:before{content:""}.icon-folder-open-o:before{content:""}.icon-smile-o:before{content:""}.icon-frown-o:before{content:""}.icon-meh-o:before{content:""}.icon-gamepad:before{content:""}.icon-keyboard-o:before{content:""}.icon-flag-o:before{content:""}.icon-flag-checkered:before{content:""}.icon-terminal:before{content:""}.icon-code:before{content:""}.icon-mail-reply-all:before,.icon-reply-all:before{content:""}.icon-star-half-empty:before,.icon-star-half-full:before,.icon-star-half-o:before{content:""}.icon-location-arrow:before{content:""}.icon-crop:before{content:""}.icon-code-fork:before{content:""}.icon-unlink:before,.icon-chain-broken:before{content:""}.icon-question:before{content:""}.icon-info:before{content:""}.icon-exclamation:before{content:""}.icon-superscript:before{content:""}.icon-subscript:before{content:""}.icon-eraser:before{content:""}.icon-puzzle-piece:before{content:""}.icon-microphone:before{content:""}.icon-microphone-slash:before{content:""}.icon-shield:before{content:""}.icon-calendar-o:before{content:""}.icon-fire-extinguisher:before{content:""}.icon-rocket:before{content:""}.icon-maxcdn:before{content:""}.icon-chevron-circle-left:before{content:""}.icon-chevron-circle-right:before{content:""}.icon-chevron-circle-up:before{content:""}.icon-chevron-circle-down:before{content:""}.icon-html5:before{content:""}.icon-css3:before{content:""}.icon-anchor:before{content:""}.icon-unlock-alt:before{content:""}.icon-bullseye:before{content:""}.icon-ellipsis-h:before{content:""}.icon-ellipsis-v:before{content:""}.icon-rss-square:before{content:""}.icon-play-circle:before{content:""}.icon-ticket:before{content:""}.icon-minus-square:before{content:""}.icon-minus-square-o:before{content:""}.icon-level-up:before{content:""}.icon-level-down:before{content:""}.icon-check-square:before{content:""}.icon-pencil-square:before{content:""}.icon-external-link-square:before{content:""}.icon-share-square:before{content:""}.icon-compass:before{content:""}.icon-toggle-down:before,.icon-caret-square-o-down:before{content:""}.icon-toggle-up:before,.icon-caret-square-o-up:before{content:""}.icon-toggle-right:before,.icon-caret-square-o-right:before{content:""}.icon-euro:before,.icon-eur:before{content:""}.icon-gbp:before{content:""}.icon-dollar:before,.icon-usd:before{content:""}.icon-rupee:before,.icon-inr:before{content:""}.icon-cny:before,.icon-rmb:before,.icon-yen:before,.icon-jpy:before{content:""}.icon-ruble:before,.icon-rouble:before,.icon-rub:before{content:""}.icon-won:before,.icon-krw:before{content:""}.icon-bitcoin:before,.icon-btc:before{content:""}.icon-file:before{content:""}.icon-file-text:before{content:""}.icon-sort-alpha-asc:before{content:""}.icon-sort-alpha-desc:before{content:""}.icon-sort-amount-asc:before{content:""}.icon-sort-amount-desc:before{content:""}.icon-sort-numeric-asc:before{content:""}.icon-sort-numeric-desc:before{content:""}.icon-thumbs-up:before{content:""}.icon-thumbs-down:before{content:""}.icon-youtube-square:before{content:""}.icon-youtube:before{content:""}.icon-xing:before{content:""}.icon-xing-square:before{content:""}.icon-youtube-play:before{content:""}.icon-dropbox:before{content:""}.icon-stack-overflow:before{content:""}.icon-instagram:before{content:""}.icon-flickr:before{content:""}.icon-adn:before{content:""}.icon-bitbucket:before{content:""}.icon-bitbucket-square:before{content:""}.icon-tumblr:before{content:""}.icon-tumblr-square:before{content:""}.icon-long-arrow-down:before{content:""}.icon-long-arrow-up:before{content:""}.icon-long-arrow-left:before{content:""}.icon-long-arrow-right:before{content:""}.icon-apple:before{content:""}.icon-windows:before{content:""}.icon-android:before{content:""}.icon-linux:before{content:""}.icon-dribbble:before{content:""}.icon-skype:before{content:""}.icon-foursquare:before{content:""}.icon-trello:before{content:""}.icon-female:before{content:""}.icon-male:before{content:""}.icon-gittip:before{content:""}.icon-sun-o:before{content:""}.icon-moon-o:before{content:""}.icon-archive:before{content:""}.icon-bug:before{content:""}.icon-vk:before{content:""}.icon-weibo:before{content:""}.icon-renren:before{content:""}.icon-pagelines:before{content:""}.icon-stack-exchange:before{content:""}.icon-arrow-circle-o-right:before{content:""}.icon-arrow-circle-o-left:before{content:""}.icon-toggle-left:before,.icon-caret-square-o-left:before{content:""}.icon-dot-circle-o:before{content:""}.icon-wheelchair:before{content:""}.icon-vimeo-square:before{content:""}.icon-turkish-lira:before,.icon-try:before{content:""}.icon-plus-square-o:before{content:""}.icon-space-shuttle:before{content:""}.icon-slack:before{content:""}.icon-envelope-square:before{content:""}.icon-wordpress:before{content:""}.icon-openid:before{content:""}.icon-institution:before,.icon-bank:before,.icon-university:before{content:""}.icon-mortar-board:before,.icon-graduation-cap:before{content:""}.icon-yahoo:before{content:""}.icon-google:before{content:""}.icon-reddit:before{content:""}.icon-reddit-square:before{content:""}.icon-stumbleupon-circle:before{content:""}.icon-stumbleupon:before{content:""}.icon-delicious:before{content:""}.icon-digg:before{content:""}.icon-pied-piper:before{content:""}.icon-pied-piper-alt:before{content:""}.icon-drupal:before{content:""}.icon-joomla:before{content:""}.icon-language:before{content:""}.icon-fax:before{content:""}.icon-building:before{content:""}.icon-child:before{content:""}.icon-paw:before{content:""}.icon-spoon:before{content:""}.icon-cube:before{content:""}.icon-cubes:before{content:""}.icon-behance:before{content:""}.icon-behance-square:before{content:""}.icon-steam:before{content:""}.icon-steam-square:before{content:""}.icon-recycle:before{content:""}.icon-automobile:before,.icon-car:before{content:""}.icon-cab:before,.icon-taxi:before{content:""}.icon-tree:before{content:""}.icon-spotify:before{content:""}.icon-deviantart:before{content:""}.icon-soundcloud:before{content:""}.icon-database:before{content:""}.icon-file-pdf-o:before{content:""}.icon-file-word-o:before{content:""}.icon-file-excel-o:before{content:""}.icon-file-powerpoint-o:before{content:""}.icon-file-photo-o:before,.icon-file-picture-o:before,.icon-file-image-o:before{content:""}.icon-file-zip-o:before,.icon-file-archive-o:before{content:""}.icon-file-sound-o:before,.icon-file-audio-o:before{content:""}.icon-file-movie-o:before,.icon-file-video-o:before{content:""}.icon-file-code-o:before{content:""}.icon-vine:before{content:""}.icon-codepen:before{content:""}.icon-jsfiddle:before{content:""}.icon-life-bouy:before,.icon-life-buoy:before,.icon-life-saver:before,.icon-support:before,.icon-life-ring:before{content:""}.icon-circle-o-notch:before{content:""}.icon-ra:before,.icon-rebel:before{content:""}.icon-ge:before,.icon-empire:before{content:""}.icon-git-square:before{content:""}.icon-git:before{content:""}.icon-hacker-news:before{content:""}.icon-tencent-weibo:before{content:""}.icon-qq:before{content:""}.icon-wechat:before,.icon-weixin:before{content:""}.icon-send:before,.icon-paper-plane:before{content:""}.icon-send-o:before,.icon-paper-plane-o:before{content:""}.icon-history:before{content:""}.icon-circle-thin:before{content:""}.icon-header:before{content:""}.icon-paragraph:before{content:""}.icon-sliders:before{content:""}.icon-share-alt:before{content:""}.icon-share-alt-square:before{content:""}.icon-bomb:before{content:""}.icon-soccer-ball-o:before,.icon-futbol-o:before{content:""}.icon-tty:before{content:""}.icon-binoculars:before{content:""}.icon-plug:before{content:""}.icon-slideshare:before{content:""}.icon-twitch:before{content:""}.icon-yelp:before{content:""}.icon-newspaper-o:before{content:""}.icon-wifi:before{content:""}.icon-calculator:before{content:""}.icon-paypal:before{content:""}.icon-google-wallet:before{content:""}.icon-cc-visa:before{content:""}.icon-cc-mastercard:before{content:""}.icon-cc-discover:before{content:""}.icon-cc-amex:before{content:""}.icon-cc-paypal:before{content:""}.icon-cc-stripe:before{content:""}.icon-bell-slash:before{content:""}.icon-bell-slash-o:before{content:""}.icon-trash:before{content:""}.icon-copyright:before{content:""}.icon-at:before{content:""}.icon-eyedropper:before{content:""}.icon-paint-brush:before{content:""}.icon-birthday-cake:before{content:""}.icon-area-chart:before{content:""}.icon-pie-chart:before{content:""}.icon-line-chart:before{content:""}.icon-lastfm:before{content:""}.icon-lastfm-square:before{content:""}.icon-toggle-off:before{content:""}.icon-toggle-on:before{content:""}.icon-bicycle:before{content:""}.icon-bus:before{content:""}.icon-ioxhost:before{content:""}.icon-angellist:before{content:""}.icon-cc:before{content:""}.icon-shekel:before,.icon-sheqel:before,.icon-ils:before{content:""}.icon-meanpath:before{content:""}body{font-family:Palatino, "Palatino Linotype", "Book Antiqua", "Hoefler Text", Georgia, "Lucida Bright", Cambria, Times, "Times New Roman", serif;font-size:18px;font-size:1.8rem;background:#f8f8f8;color:#0C3C26;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body .layout-secondary,body [role="complementary"]{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif}@media screen and (min-width: 768px){body{min-width:768px}}a{color:#0C3C26;text-decoration:underline;-webkit-tap-highlight-color:transparent}a:visited{color:#156641}a:active,a:focus,a:hover{color:#1d915c}::selection{background:#C9F0DD}::-moz-selection{background:#C9F0DD}ol li,ul li{margin-top:10px}dl{margin:20px 0 10px}dl dt{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:400}dl dd{margin:0.2em 0 1.2em;padding:0}dl dd:last-of-type{margin-bottom:0}h1,h2,h3,h4,h5,h6{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:400}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{text-decoration:none;color:#20AA76;text-decoration:none}h1 a:visited,h2 a:visited,h3 a:visited,h4 a:visited,h5 a:visited,h6 a:visited{color:#20AA76}h1 a:hover,h1 a:active,h1 a:focus,h2 a:hover,h2 a:active,h2 a:focus,h3 a:hover,h3 a:active,h3 a:focus,h4 a:hover,h4 a:active,h4 a:focus,h5 a:hover,h5 a:active,h5 a:focus,h6 a:hover,h6 a:active,h6 a:focus{color:#25c488;text-decoration:none}h1{font-size:28px;font-size:2.8rem;color:#fff;letter-spacing:-1px;line-height:1.1}@media screen and (min-width: 768px){h1{font-size:32px;font-size:3.2rem}}.layout-secondary h1{color:#0C3C26}[role="main"] h1{font-size:32px;font-size:3.2rem;margin:40px 0px 30px;color:#0C3C26}[role="complementary"] h1{font-size:28px;font-size:2.8rem}h2{font-size:24px;font-size:2.4rem}[role="complementary"] h2,.layout-secondary h2{font-size:20px;font-size:2rem;border-bottom:1px solid #CFE3DC;font-weight:400;padding-bottom:15px;margin-top:30px}[role="complementary"] h2:first-of-type,.layout-secondary h2:first-of-type{margin-top:inherit}@media screen and (min-width: 768px){[role="complementary"] h2:first-child,.layout-secondary h2:first-child{margin-top:20px}}.full-width [role="complementary"] h2,.full-width .layout-secondary h2{font-size:24px;font-size:2.4rem}[role="main"] h2{margin-top:40px;margin-bottom:15px}h3{font-size:20px;font-size:2rem;font-weight:700;color:#0C3C26;line-height:1.2;margin:35px 0 20px}[role="complementary"] h3,.layout-secondary h3{font-size:18px;font-size:1.8rem;font-weight:400;padding-bottom:15px}@media screen and (min-width: 768px){[role="complementary"] h3:first-child,.layout-secondary h3:first-child{margin-top:12px}}[role="complementary"] h3{font-size:18px;font-size:1.8rem;border-bottom:1px solid #CFE3DC}h4{font-size:16px;font-size:1.6rem;color:#0C3C26;line-height:1.2;margin:35px 0 20px;font-weight:700}tt,code,kbd,pre,samp{font-family:"Fira Mono", Consolas, Menlo, Monaco, "Courier New", Courier, monospace;font-variant-ligatures:no-common-ligatures;text-rendering:optimizeSpeed;color:#0C4B33;font-size:1em}tt{font-weight:700}span.pre{font-family:"Fira Mono", Consolas, Menlo, Monaco, "Courier New", Courier, monospace;font-variant-ligatures:no-common-ligatures;text-rendering:optimizeSpeed}a:hover tt,a:active tt,a:focus tt{color:#1d915c}[role="main"]>p:first-child{margin-top:30px}ul{padding-left:20px}blockquote{background:#F1FFF7;padding:15px 20px 15px 70px;border:1px solid #C9F0DD;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin:25px 0;position:relative}blockquote p:first-child{margin-top:0}blockquote::before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;top:20px;left:20px;font-size:30px;width:34px;text-align:center;content:"";opacity:0.5}[role="main"]{background:#fff;padding:1px 10px 40px}@media screen and (min-width: 768px){[role="main"]{min-height:800px;border:1px solid #ddd;float:right;margin:0;padding-bottom:80px;padding-left:3%;padding-right:3%;width:60%}.mdzr-boxshadow [role="main"]{border:none;-moz-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,460px 0 0 0 #fff,1000px 0 0 0 #fff,0px 600px 0 0px #fff,460px 600px 0 0px #fff;-webkit-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,460px 0 0 0 #fff,1000px 0 0 0 #fff,0px 600px 0 0px #fff,460px 600px 0 0px #fff;box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,460px 0 0 0 #fff,1000px 0 0 0 #fff,0px 600px 0 0px #fff,460px 600px 0 0px #fff;padding-left:4%;padding-right:0;width:63%}.sidebar-right [role="main"]{float:left}.mdzr-boxshadow .sidebar-right [role="main"]{border:none;-moz-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,-460px 0 0 0 #fff,-1000px 0 0 0 #fff,0px 600px 0 0px #fff,-460px 600px 0 0px #fff;-webkit-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,-460px 0 0 0 #fff,-1000px 0 0 0 #fff,0px 600px 0 0px #fff,-460px 600px 0 0px #fff;box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,-460px 0 0 0 #fff,-1000px 0 0 0 #fff,0px 600px 0 0px #fff,-460px 600px 0 0px #fff;padding-left:0;width:62%;padding-right:4%}}.full-width [role="main"]{border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;float:none;margin:0 auto;padding:0 10px 40px;width:auto}@media screen and (min-width: 768px){.full-width [role="main"]{max-width:740px;padding:20px 0 40px;width:91.66667%}}[role="main"] .section{padding-bottom:40px;border-bottom:1px solid #CFE3DC}[role="main"] .section:last-of-type{padding-bottom:0;border-bottom:0}[role="main"] .section dd.last-child{padding-bottom:0}.full-width.container{width:100%;padding:0;max-width:none;border-bottom:1px solid #ddd;background:#fff}.full-width:before,.full-width:after{content:"";display:table}.full-width:after{clear:both}.mdzr-boxshadow .full-width{border:none;-moz-box-shadow:0 4px 8px rgba(12,60,38,0.07);-webkit-box-shadow:0 4px 8px rgba(12,60,38,0.07);box-shadow:0 4px 8px rgba(12,60,38,0.07)}[role="complementary"]{padding:0 10px 20px;font-size:14px;font-size:1.4rem}@media screen and (min-width: 768px){[role="complementary"]{float:right;margin:20px 0;margin-right:3%;padding:0 0 40px 0;width:30%}.sidebar-right [role="complementary"]{margin-left:3%;margin-right:0}}[role="complementary"] span.form-controls{display:none}[role="complementary"] .list-collapsing{margin-top:0;border-bottom:0}[role="complementary"] .list-collapsing.active li{border-top:0}[role="complementary"] .list-collapsing.active h2{padding:10px 40px 10px 0;font-size:18px;border-bottom:0;color:#44B78B}[role="complementary"] .list-collapsing.active h2 .collapsing-icon{font-size:10px}[role="secondary"]{margin:0 10px;padding:40px 0 60px}@media screen and (min-width: 768px){.full-width [role="secondary"]{max-width:700px;margin:0 auto}}.layout-secondary{padding:20px 10px 50px}.layout-tertiary{background:#fff;border-top:1px solid #ddd;padding:20px 10px 50px}.mdzr-boxshadow .layout-tertiary{border:none;-moz-box-shadow:0 -4px 8px rgba(12,60,38,0.07);-webkit-box-shadow:0 -4px 8px rgba(12,60,38,0.07);box-shadow:0 -4px 8px rgba(12,60,38,0.07)}.container:before,.container:after{content:"";display:table}.container:after{clear:both}@media screen and (min-width: 768px){.container{margin:0 auto;max-width:1400px;padding:0 4.16667%}}.mdzr-boxshadow .container.sidebar-right{-moz-box-shadow:-1200px 0 0 0px #fff;-webkit-box-shadow:-1200px 0 0 0px #fff;box-shadow:-1200px 0 0 0px #fff}[role="banner"]{background:#0C4B33;overflow:hidden;margin:0;padding:10px 0 6px;position:relative;z-index:0}[role="banner"]:before,[role="banner"]:after{content:"";display:table}[role="banner"]:after{clear:both}@media screen and (min-width: 768px){[role="banner"] .container{position:relative}}[role="banner"] .meta,[role="banner"] .list-links dd,.list-links [role="banner"] dd{font-size:13px;font-size:1.3rem;color:#44B78B;font-weight:700;width:auto;float:left;margin:8px 0 0 10px;display:none}@media screen and (min-width: 1150px){[role="banner"] .meta,[role="banner"] .list-links dd,.list-links [role="banner"] dd{float:left;width:200px;display:block}}[role="banner"] .logo{font-size:40px;font-size:4rem;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;background:url(../img/logo-django.png) 0 0 no-repeat;color:#FFF;display:block;float:left;font-weight:700;margin:10px;overflow:hidden;text-decoration:none;text-indent:100%;width:104px;height:36px}.mdzr-svg [role="banner"] .logo{background:url(../img/logo-django.svg) center center no-repeat}@media screen and (min-width: 768px){[role="banner"] .logo{margin-left:0}}[role="banner"] .menu-button{font-size:20px;font-size:2rem;background:#0C4B33;-moz-border-radius:23px;-webkit-border-radius:23px;border-radius:23px;color:#fff;cursor:pointer;display:block;float:right;height:45px;line-height:48px;margin:4px 10px;text-align:center;text-decoration:none;width:45px}@media screen and (min-width: 768px){[role="banner"] .menu-button{display:none}}[role="banner"] .menu-button:active{color:#44B78B}[role="banner"] .menu-button span{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}[role="banner"] .menu-button.active{opacity:0.5}[role="banner"] .nav-menu-on{max-height:0;overflow:hidden;-moz-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;-webkit-transition:all 0.3s ease-out;transition:all 0.3s ease-out}@media screen and (min-width: 768px){[role="banner"] .nav-menu-on{max-height:none;-moz-transition:none;-o-transition:none;-webkit-transition:none;transition:none}}[role="banner"] .nav-menu-on.active{max-height:500px}[role="banner"] [role="navigation"]{background:#0C4B33;width:100%}@media screen and (min-width: 768px){[role="banner"] [role="navigation"]{width:auto;float:right}}[role="banner"] [role="navigation"] ul{margin:10px 0 0;padding:0}@media screen and (min-width: 768px){[role="banner"] [role="navigation"] ul{margin:0}}[role="banner"] [role="navigation"] li{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:13px;font-size:1.3rem;display:block;font-weight:700;line-height:16px;text-align:left;text-transform:uppercase;margin:0 10px;border-top:1px solid #106142}@media screen and (min-width: 768px){[role="banner"] [role="navigation"] li{margin:0;border:0;float:left;text-align:left}}[role="banner"] [role="navigation"] li.active a{color:#44B78B}[role="banner"] [role="navigation"] a{color:#fff;display:block;padding:20px 0px;text-decoration:none}[role="banner"] [role="navigation"] a:active,[role="banner"] [role="navigation"] a:hover{color:#C9F0DD}@media screen and (min-width: 768px){[role="banner"] [role="navigation"] a{padding:20px 10px}}@media screen and (min-width: 768px){[role="banner"] [role="navigation"] .nav-primary{position:absolute;right:0;top:45px}}.header{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;background:#0C4B33;margin:0;padding:11px 0px 8px;position:relative}.header h1{margin:0.4em 0}.header p{font-family:Palatino, "Palatino Linotype", "Book Antiqua", "Hoefler Text", Georgia, "Lucida Bright", Cambria, Times, "Times New Roman", serif;font-size:18px;font-size:1.8rem;color:#fff;left:-9999px;line-height:1.5;padding:0 0 10px;position:absolute;top:0;max-width:660px}@media screen and (min-width: 768px){.header p{position:static}}.copy-banner{background:#44B78B;padding:1px 10px}@media screen and (min-width: 768px){.copy-banner{padding:1px 0}}.copy-banner p,.copy-banner h1{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:24px;font-size:2.4rem;color:#C9F0DD;font-weight:300;line-height:1.3;padding:1px 0 6px;margin:.45em 0 .35em}.copy-banner p em,.copy-banner h1 em{font-style:normal;color:white}@media screen and (min-width: 768px){.copy-banner p,.copy-banner h1{font-size:32px;font-size:3.2rem;margin:.35em 0 .35em;color:#C9F0DD;padding:1px 0 6px}}.copy-banner p a,.copy-banner h1 a{font-weight:300;color:#C9F0DD}.copy-banner p a.cta,.copy-banner p .cta,.copy-banner h1 a.cta,.copy-banner h1 .cta{margin:0;font-size:18px;font-size:1.8rem}.copy-banner a.cta,.copy-banner .cta{margin:15px 0;padding:0.4em 1.5em 0.5em;background:#2B8C67;background:none;border:1px solid #C9F0DD;color:#C9F0DD;font-weight:400}.copy-banner a.cta:hover,.copy-banner .cta:hover{background:#309c72}.copy-banner a.cta em,.copy-banner .cta em{color:white}.copy-banner a.cta:hover,.copy-banner .cta:hover{background:#F1FFF7;color:#20AA76;border-color:#F1FFF7}.copy-banner a.cta:hover em,.copy-banner .cta:hover em{color:#20AA76}.copy-banner a.cta.white,.copy-banner .cta.white{background:#F1FFF7;color:#20AA76;font-weight:700;border:0}.copy-banner a.cta.white:hover,.copy-banner .cta.white:hover{background:#fff}.homepage .copy-banner{padding:50px 0;background:white;text-align:center;border-bottom:1px solid #CFE3DC}.homepage .copy-banner p{max-width:700px;margin-left:auto;margin-right:auto;margin:1em auto .5em;color:#0C3C26;font-size:36px;font-size:3.6rem}.homepage .copy-banner p.small{color:#798780;margin:2em auto 1em;font-size:14px;font-size:1.4rem}.homepage .copy-banner p em{color:#0C3C26}.homepage .copy-banner a.cta,.homepage .copy-banner .cta{display:inline-block;padding:1em 50px 1.1em;margin-bottom:40px;background:#44B78B;color:white;border:0;font-weight:700}.homepage .copy-banner a.cta:hover,.homepage .copy-banner .cta:hover{background:#51be95}.homepage .copy-banner a.cta:active,.homepage .copy-banner .cta:active{background:#41b085}.homepage .copy-banner .django-companies{max-width:750px;margin:0 auto;list-style:none;padding:0 0 0 30px}.homepage .copy-banner .django-companies li{width:144px;display:inline-block;text-indent:-1000px;overflow:hidden;margin:0}.homepage .copy-banner .django-companies li a{display:block;height:46px;background-position:center;background-repeat:no-repeat}.homepage .copy-banner .django-companies li a.company-mozilla{background-image:url("../img/company-mozilla.png");background-position:center 7px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-mozilla{background-image:url("../img/company-mozilla.svg")}.homepage .copy-banner .django-companies li a.company-pinterest{background-image:url("../img/company-pinterest.png");background-position:center 7px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-pinterest{background-image:url("../img/company-pinterest.svg")}.homepage .copy-banner .django-companies li a.company-theguardian{background-image:url("../img/company-theguardian.png");background-position:center 14px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-theguardian{background-image:url("../img/company-theguardian.svg")}.homepage .copy-banner .django-companies li a.company-instagram{background-image:url("../img/company-instagram.png");background-position:center 10px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-instagram{background-image:url("../img/company-instagram.svg")}.homepage .copy-banner .django-companies li a.company-rdio{background-image:url("../img/company-rdio.png");background-position:15px 6px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-rdio{background-image:url("../img/company-rdio.svg")}[role="alert"]{clear:both;background:#F1FFF7;position:relative;-moz-box-shadow:0 -2px 8px 0 rgba(0,0,0,0.05);-webkit-box-shadow:0 -2px 8px 0 rgba(0,0,0,0.05);box-shadow:0 -2px 8px 0 rgba(0,0,0,0.05)}[role="alert"] a{color:#20AA76;text-decoration:none}[role="alert"] a:visited{color:#20AA76}[role="alert"] a:hover,[role="alert"] a:active,[role="alert"] a:focus{color:#25c488;text-decoration:none}[role="alert"] a.link-readmore{margin:0}[role="alert"] dl{margin:0 10px;padding:25px 0}[role="alert"] dl:before,[role="alert"] dl:after{content:"";display:table}[role="alert"] dl:after{clear:both}[role="alert"] dl dt i.icon{color:#20AA76;margin-right:8px}[role="alert"] dl dd{float:left;width:60%;margin-top:0;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif}[role="alert"] dl .link-readmore{margin-left:10px}@media screen and (min-width: 768px){[role="alert"] dt{float:left;width:31%;padding-right:2%}[role="alert"] dl{margin:0}}[role="contentinfo"]{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;position:relative;background:#44B78B;clear:both;margin-top:0px}[role="contentinfo"]:before,[role="contentinfo"]:after{content:"";display:table}[role="contentinfo"]:after{clear:both}[role="contentinfo"] .container{overflow:hidden}[role="contentinfo"] .subfooter{padding:0 10px}[role="contentinfo"] .subfooter:before,[role="contentinfo"] .subfooter:after{content:"";display:table}[role="contentinfo"] .subfooter:after{clear:both}@media screen and (min-width: 768px){[role="contentinfo"] .subfooter{padding:0}}[role="contentinfo"] .subfooter .col:first-child h2{border-top:0}@media screen and (min-width: 768px){[role="contentinfo"] .subfooter .col{float:left;margin-bottom:-999px;padding:0 3% 999px 0;width:30%}}[role="contentinfo"] .subfooter .col:first-child{margin-left:0;padding-left:0}[role="contentinfo"] .subfooter .col.last-child{margin-right:0;padding-right:0}[role="contentinfo"] h2{font-size:16px;font-size:1.6rem;border-top:1px solid #CFE3DC;color:#fff;font-weight:700;margin-top:20px;padding:30px 0 10px}@media screen and (min-width: 768px){[role="contentinfo"] h2{border:none;margin-top:0}}[role="contentinfo"] ul{font-size:14px;font-size:1.4rem;font-weight:400;list-style:none;margin:15px 0 0 0;padding:0 0 30px}[role="contentinfo"] ul li{margin:10px 0 0;padding:0}[role="contentinfo"] ul a{color:#F1FFF7;text-decoration:none}[role="contentinfo"] ul a:hover,[role="contentinfo"] ul a:active,[role="contentinfo"] ul a:focus{text-decoration:underline}[role="contentinfo"] .footer{background:#0C4B33;margin-top:20px;padding:10px 0 30px;color:#2B8C67}[role="contentinfo"] .footer .footer-logo{float:left;width:33%}[role="contentinfo"] .footer .logo{margin-right:0;margin-top:28px}.mdzr-svg [role="contentinfo"] .footer .logo{background-position:left center;margin-right:0;margin-top:20px}[role="contentinfo"] .logo{font-size:40px;font-size:4rem;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;background:url(../img/logo-django.png) 0 0 no-repeat;color:#0C4B33;display:block;font-weight:700;height:50px;margin:10px;overflow:hidden;text-decoration:none;text-indent:100%;width:142px}@media screen and (min-width: 768px){[role="contentinfo"] .logo{float:left;margin:20px 90px 0 0}}.mdzr-svg [role="contentinfo"] .logo{background:url(../img/logo-django.svg) center center no-repeat;height:39px;width:109px}[role="contentinfo"] .thanks{font-size:12px;font-size:1.2rem;color:#2B8C67;margin:0;padding:0}@media screen and (min-width: 768px){[role="contentinfo"] .thanks{border:none}}[role="contentinfo"] .thanks li{margin:0;padding:17px 10px 11px;display:block;clear:both}[role="contentinfo"] .thanks li:before,[role="contentinfo"] .thanks li:after{content:"";display:table}[role="contentinfo"] .thanks li:after{clear:both}@media screen and (min-width: 768px){[role="contentinfo"] .thanks li{background:none;float:left;clear:none;padding:0 3% 0 0;width:30%}[role="contentinfo"] .thanks li.design span.ampersand,[role="contentinfo"] .thanks li.design a{display:inline-block;vertical-align:top}[role="contentinfo"] .thanks li.design span.ampersand.threespot,[role="contentinfo"] .thanks li.design a.threespot{clear:both}[role="contentinfo"] .thanks li.design span.ampersand.ampersand,[role="contentinfo"] .thanks li.design a.ampersand{position:relative;top:6px;margin:0 6px;line-height:36px}}[role="contentinfo"] .thanks li span.ampersand{line-height:24px}[role="contentinfo"] .thanks span{display:block;height:24px;line-height:36px;padding-right:12px;white-space:nowrap}[role="contentinfo"] .thanks a{display:block;height:33px;overflow:hidden;text-indent:-200px;width:94px}@media screen and (min-width: 768px){[role="contentinfo"] .thanks a{clear:both;margin-top:5px}}[role="contentinfo"] .thanks a.rackspace{background:url(../img/logo-rackspace.png) no-repeat left center}.mdzr-svg [role="contentinfo"] .thanks a.rackspace{background:url(../img/logo-rackspace.svg) no-repeat left center}[role="contentinfo"] .thanks a.threespot{background:url(../img/logo-threespot.png) no-repeat left center}.mdzr-svg [role="contentinfo"] .thanks a.threespot{background:url(../img/logo-threespot.svg) no-repeat left center}[role="contentinfo"] .thanks a.andrevv{background:url(../img/logo-andrevv.png) no-repeat left center}.mdzr-svg [role="contentinfo"] .thanks a.andrevv{background:url(../img/logo-andrevv.svg) no-repeat left center}[role="contentinfo"] .copyright{font-size:12px;font-size:1.2rem;clear:both;margin:20px 0 0 10px}@media screen and (min-width: 768px){[role="contentinfo"] .copyright{max-width:80%;padding-top:30px;margin:0}}[role="contentinfo"] .copyright a{color:#2B8C67}.backtotop{color:#20AA76;text-decoration:none;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:block;font-weight:700;margin:10px 0;padding:10px 0;text-align:center;text-transform:uppercase}.backtotop:visited{color:#20AA76}.backtotop:hover,.backtotop:active,.backtotop:focus{color:#25c488;text-decoration:none}@media screen and (min-width: 768px){.backtotop{display:none}}.cta,a.cta{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:700;-webkit-appearance:none;-moz-appearance:none;background:#44B78B;border:none;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;color:#fff;display:block;-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:auto;margin:30px auto 0;padding:1em 1.5em;text-align:center;text-decoration:none}@media screen and (min-width: 768px){.cta,a.cta{margin:20px auto;max-width:400px}}.cta em,a.cta em{color:#C9F0DD;font-style:normal}.cta:hover,.cta:focus,a.cta:hover,a.cta:focus{background:#51be95}.cta:active,a.cta:active{background:#41b085}[role="complementary"] .cta,[role="complementary"] a.cta{font-size:16px;font-size:1.6rem}[role="complementary"] .cta+.link-readmore,[role="complementary"] a.cta+.link-readmore{display:block;text-align:center}@media screen and (min-width: 768px){[role="complementary"] .cta+.link-readmore,[role="complementary"] a.cta+.link-readmore{margin-top:-10px}}.cta.outline,a.cta.outline{background:none;border:1px solid #CFE3DC;color:#859D94;font-weight:400}.cta.outline em,a.cta.outline em{color:#0C4B33}.cta.outline:hover,a.cta.outline:hover{border-color:#20AA76;color:#20AA76}.cta.outline:hover em,a.cta.outline:hover em{color:#20AA76}.cta.outline:active,a.cta.outline:active{border-color:#44B78B;color:#44B78B}.cta.outline:active em,a.cta.outline:active em{color:#44B78B}.link-green{color:#20AA76;text-decoration:none}.link-green:visited{color:#20AA76}.link-green:hover,.link-green:active,.link-green:focus{color:#25c488;text-decoration:none}.link-readmore{color:#20AA76;text-decoration:none;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:inline-block;margin:10px 0;font-weight:700;text-transform:uppercase}.link-readmore:visited{color:#20AA76}.link-readmore:hover,.link-readmore:active,.link-readmore:focus{color:#25c488;text-decoration:none}.link-readmore:after{content:" ›";font-size:1.2em}.link-readmore.back-link:after{content:""}.link-readmore.back-link:before{content:"‹ ";font-size:1.2em}[role="complementary"] .link-readmore{font-size:12px;font-size:1.2rem}.meta,.list-links dd{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:block;line-height:1.3;margin:25px 0 20px}.meta a,.list-links dd a{color:#20AA76;text-decoration:none}.meta a:visited,.list-links dd a:visited{color:#20AA76}.meta a:hover,.list-links dd a:hover,.meta a:active,.list-links dd a:active,.meta a:focus,.list-links dd a:focus{color:#25c488;text-decoration:none}.layout-2col{margin:20px 0}@media screen and (min-width: 768px){.layout-2col{margin:0}.layout-2col:before,.layout-2col:after{content:"";display:table}.layout-2col:after{clear:both}.layout-2col .col{float:left;width:46%;margin:0 4%}.layout-2col .col:first-child{margin-left:0}.layout-2col .col.last-child{margin-right:0}.layout-2col .one-third{width:29%}.layout-2col .two-third{width:62%}}.blue{color:#20AA76}.label{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem;color:#cacfcc;display:block;font-weight:700;margin:20px 0 10px;text-transform:uppercase}.label.form-controls{font-size:14px;font-size:1.4rem;display:block;margin:0;position:relative;text-align:left}.label.form-controls span{cursor:pointer}.label.form-controls span:hover,.label.form-controls span:active,.label.form-controls span:focus{color:#afb7b3}@media screen and (min-width: 768px){.callout-right{float:right;margin:26px 0 0 35px;width:33%}.callout-right.two-thirds{width:60%}}.callout-right img{display:block;max-width:100%}@media screen and (min-width: 768px){.callout-left{float:left;margin:26px 35px 0 0;width:33%}.callout-left.two-thirds{width:60%}}.callout-left img{display:block;max-width:100%}.codedump{background:#f8f8f8;border:1px solid #CFE3DC;padding:10px;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;line-height:1.6em}.list-events{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;list-style:none;margin:0;padding:0}.list-events li{font-size:18px;font-size:1.8rem;border-top:1px solid #CFE3DC;display:block;line-height:1.3;margin:0;padding:20px 0 0 30px;position:relative}.list-events li i{font-size:16px;font-size:1.6rem;color:#93D7B7;display:block;left:0;line-height:20px;height:30px;position:absolute;text-align:center;top:20px;width:24px}.list-events li:first-child{border-top:0;padding-top:0}.list-events li:first-child i{top:0px}.list-events .meta,.list-events .list-links dd,.list-links .list-events dd{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:block;margin-top:10px}.list-events a{color:#20AA76;text-decoration:none}.list-events a:visited{color:#20AA76}.list-events a:hover,.list-events a:active,.list-events a:focus{color:#25c488;text-decoration:none}.list-tags{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:12px;font-size:1.2rem;font-weight:700;list-style:none;margin:0;padding:0;text-transform:uppercase}.list-tags li{margin-top:10px}.list-tags a{background:#93D7B7;color:#F1FFF7;display:inline-block;line-height:1.2;margin:0;padding:8px 10px 5px;text-decoration:none}.list-tags a:hover,.list-tags a:active,.list-tags a:focus{background-color:#44B78B;color:#fff}.list-news{list-style:none;margin:0;padding:0}.list-news h2{font-weight:400;margin-bottom:5px}.list-news li{border-top:1px solid #CFE3DC;margin-top:35px;padding-top:10px}.list-news li:first-child{border:none;margin-top:0;padding-top:0}.list-news .meta,.list-news .list-links dd,.list-links .list-news dd{margin-top:10px;color:#859D94}.list-news .meta a:link,.list-news .list-links dd a:link,.list-links .list-news dd a:link{color:#798780;text-decoration:underline}.list-case-study{list-style:none;margin:0;padding:0 0 10px}.list-case-study:before,.list-case-study:after{content:"";display:table}.list-case-study:after{clear:both}.list-case-study p{font-size:14px;font-size:1.4rem;margin:10px 0 5px}.list-case-study li{border-top:1px solid #CFE3DC;margin-top:20px;padding-top:20px}@media screen and (min-width: 1024px){.list-case-study li{border:none;float:left;padding-right:5%;padding-top:0;width:28%}.list-case-study li:nth-child(3):after{clear:both;content:"";display:block;margin-bottom:30px}}.list-case-study li>a{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;color:#20AA76;text-decoration:none;font-size:12px;font-size:1.2rem;font-weight:700;margin-top:10px;text-transform:uppercase}.list-case-study li>a:visited{color:#20AA76}.list-case-study li>a:hover,.list-case-study li>a:active,.list-case-study li>a:focus{color:#25c488;text-decoration:none}.list-case-study li>a:after{content:" ›";font-size:1.2em}.list-case-study h3{margin:10px 0 20px;padding:0}.list-case-study h3.logo{text-indent:-1000%;overflow:hidden}.list-case-study [title="Knight Foundation"]{background:url(../img/logo-knight.png) no-repeat bottom left;height:25px;padding-top:7px;width:190px}.mdzr-svg .list-case-study [title="Knight Foundation"]{background:url(../img/logo-knight.svg) no-repeat bottom left}.list-case-study [title="Mozilla"]{background:url(../img/logo-mozilla.png) no-repeat bottom left;height:32px;width:120px}.mdzr-svg .list-case-study [title="Mozilla"]{background:url(../img/logo-mozilla.svg) no-repeat bottom left}.list-case-study [title="Disqus"]{background:url(../img/logo-disqus.png) no-repeat bottom left;height:28px;padding-top:4px;width:140px}.mdzr-svg .list-case-study [title="Disqus"]{background:url(../img/logo-disqus.svg) no-repeat bottom left}.list-case-study.single-col li{margin-top:0;margin-bottom:30px;width:auto}.list-case-study.single-col li p{font-size:18px;font-size:1.8rem;margin-right:40px}.list-case-study.single-col li h3{margin-top:20px}.case-study-logo{max-width:50%;max-height:70px;height:auto;margin:40px 0 0}.list-link-soup{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem;border-top:1px solid #CFE3DC;list-style:none;margin:20px 0 0;padding:20px 0 10px}.list-link-soup:before,.list-link-soup:after{content:"";display:table}.list-link-soup:after{clear:both}.list-link-soup li{float:left;margin:10px 5% 0 0;width:45%}@media screen and (min-width: 768px){.list-link-soup li{margin-right:3%;width:30%}}.list-link-soup a{color:#20AA76;text-decoration:none}.list-link-soup a:visited{color:#20AA76}.list-link-soup a:hover,.list-link-soup a:active,.list-link-soup a:focus{color:#25c488;text-decoration:none}[role="complementary"] .list-link-soup li{float:none}h2+.list-link-soup{border-top:0}.list-features{margin:50px 0 40px}.list-features dt{font-size:24px;font-size:2.4rem;border-top:1px solid #CFE3DC;padding-top:25px}.list-features i{color:#F1FFF7;margin-right:10px;width:40px;height:40px;-moz-border-radius:25px;-webkit-border-radius:25px;border-radius:25px;background:#20AA76;line-height:1.68em;display:inline-block;text-align:center}.list-features i.icon-briefcase{line-height:1.7em}.list-features i.icon-dashboard{line-height:1.5em}@media screen and (min-width: 768px){.list-features{padding-bottom:40px}.list-features dt{margin-top:60px;padding:60px 0 0 245px;position:relative}.list-features dt:first-child{margin-top:20px}.list-features dt.even{padding-left:0;padding-right:245px}.list-features dt.even i{left:auto !important;right:0}.list-features dd{padding-left:245px;min-height:140px}.list-features dd.even{padding-left:0;padding-right:245px}.list-features i{font-size:120px;font-size:12rem;display:block;height:200px;left:0;position:absolute;text-align:center;top:60px;width:200px;margin-right:0}.mdzr-borderradius .list-features i{background:#44B78B;-moz-border-radius:100px;-webkit-border-radius:100px;border-radius:100px;color:#fff}.mdzr-svg .list-features i{background:url(../img/bg-features.svg) no-repeat center center}.mdzr-svg .list-features i.icon-bolt{background-position:-150px -269px}.mdzr-svg .list-features i.icon-briefcase{background-position:-354px -7px}.mdzr-svg .list-features i.icon-lock{background-position:-36px -96px}.mdzr-svg .list-features i.icon-dashboard{background-position:-270px -9px}.mdzr-svg .list-features i.icon-cogs{background-position:-334px -12px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i{-moz-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;-webkit-transition:all 0.3s ease-out;transition:all 0.3s ease-out;-moz-transform:rotate(0.5turn);-ms-transform:rotate(0.5turn);-webkit-transform:rotate(0.5turn);transform:rotate(0.5turn)}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.inview{-moz-transform:rotate(0turn);-ms-transform:rotate(0turn);-webkit-transform:rotate(0turn);transform:rotate(0turn)}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-bolt{background-position:40px -369px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-bolt.inview{background-position:-150px -269px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-briefcase{background-position:-494px 207px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-briefcase.inview{background-position:-354px -7px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-lock{background-position:144px -206px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-lock.inview{background-position:-36px -96px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-dashboard{background-position:-360px 201px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-dashboard.inview{background-position:-270px -9px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-cogs{background-position:-500px -180px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-cogs.inview{background-position:-334px -12px}.list-features i :-o-prefocus,.list-features i{background:#44B78B !important;-moz-transition:none !important;-o-transition:none !important;-webkit-transition:none !important;transition:none !important;-moz-transform:none !important;-ms-transform:none !important;-webkit-transform:none !important;transform:none !important}}.homepage .list-features{padding-bottom:0}.homepage .list-features dl{padding-top:0}.homepage .list-features i{color:#F1FFF7;margin-right:10px;width:40px;height:40px;top:10px;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;background:#20AA76;display:inline-block;text-align:center;font-size:24px;font-size:2.4rem}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .homepage .list-features i{-moz-transition:none;-o-transition:none;-webkit-transition:none;transition:none;-moz-transform:rotate(0);-ms-transform:rotate(0);-webkit-transform:rotate(0);transform:rotate(0)}@media screen and (min-width: 768px){.homepage .list-features dt{padding:20px 0 0px 110px;font-size:18px;font-size:1.8rem;border-top:0;margin-top:0}.homepage .list-features dd{padding:0 60px 20px 110px;min-height:0}.homepage .list-features dd p{margin-top:0;font-size:18px;font-size:1.8rem}.homepage .list-features i{margin-right:10px;width:80px;height:80px;top:20px;-moz-border-radius:40px;-webkit-border-radius:40px;border-radius:40px;font-size:46px;font-size:4.6rem}}@media screen and (min-width: 768px){.list-collapsing-header{float:left}.section .list-collapsing-header h2{margin:40px 0 20px}.list-collapsing-header+.form-controls.label{margin:50px 0 0;text-align:right}.form-controls.label{float:right}}.list-collapsing{border-bottom:1px solid #CFE3DC;list-style:none;margin:30px 0;padding:0;clear:both}.list-collapsing.active>li{border-top:1px solid #CFE3DC;margin:0;padding:0}.list-collapsing.active>li.active h2 .collapsing-icon:before{content:"\f068"}.list-collapsing.active h2{font-size:18px;font-size:1.8rem;cursor:pointer;margin:0;padding:18px 40px 18px 0;position:relative}.list-collapsing.active h2:hover,.list-collapsing.active h2:focus,.list-collapsing.active h2:active{color:#1d915c;outline:none}.list-collapsing.active h2 .collapsing-icon{position:absolute;right:0;top:24px}.list-collapsing.active h2 .collapsing-icon:before{content:"\f067"}.list-collapsing.active h2.bullet-icon{padding-left:1.5em}.list-collapsing.active h2.bullet-icon>i:first-child{position:absolute;top:24px;left:0}.list-collapsing.active .collapsing-content{overflow:hidden;max-height:0px;-moz-transition:all 0.5s ease-out;-o-transition:all 0.5s ease-out;-webkit-transition:all 0.5s ease-out;transition:all 0.5s ease-out}.list-collapsing.active li.active .collapsing-content{max-height:1000px;overflow:auto}.list-image{list-style:none;margin:0;padding:0}.list-image li{border-top:1px solid #CFE3DC;margin-top:20px;padding-top:40px}@media screen and (min-width: 768px){.list-image li{margin-top:20px;padding-top:40px}.list-image li:before,.list-image li:after{content:"";display:table}.list-image li:after{clear:both}}.list-image li:first-child{border:none;padding-top:0}.list-image a{text-decoration:none}.list-image a:hover,.list-image a:active,.list-image a:focus{color:#798780}.list-image a.link-readmore{margin:0}.list-image img{display:block;margin:0 auto 25px;max-width:100%}@media screen and (min-width: 768px){.list-image img{float:left;margin:0 40px 0 0;max-width:200px;max-height:200px}.list-image h2,.list-image h3,.list-image h4,.list-image p{padding-left:240px}.list-image h3{margin-top:10px}}.layout-secondary .list-image img,[role="complementary"] .list-image img{float:left;max-width:40%;max-height:120px;margin:0 20px 10px 0}.layout-secondary .list-image h2,.layout-secondary .list-image h3,.layout-secondary .list-image h4,.layout-secondary .list-image p,[role="complementary"] .list-image h2,[role="complementary"] .list-image h3,[role="complementary"] .list-image h4,[role="complementary"] .list-image p{padding-left:0px;border:0}.layout-secondary .list-image h3,[role="complementary"] .list-image h3{font-size:14px;font-size:1.4rem;margin-top:0;margin-bottom:1em;padding-bottom:0;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:700}#s-django-documentation,#s-feed{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif}.list-outline{font-size:16px;font-size:1.6rem;line-height:1.3;list-style:none;margin:0;padding:0}.list-outline a{text-decoration:none}.list-outline>li>ul>li{margin-top:12px}.list-outline>li>ul>li:first-child{margin-top:6px}.list-outline>li>a{text-transform:uppercase;font-weight:700;color:#20AA76;text-decoration:none}.list-outline>li>a:visited{color:#20AA76}.list-outline>li>a:hover,.list-outline>li>a:active,.list-outline>li>a:focus{color:#25c488;text-decoration:none}.list-outline>li>ul{list-style:none;font-size:12px;font-size:1.2rem;padding:5px 0 0 10px}.list-outline>li>ul>li>a{font-weight:700;text-transform:uppercase;color:#20AA76;text-decoration:none}.list-outline>li>ul>li>a:visited{color:#20AA76}.list-outline>li>ul>li>a:hover,.list-outline>li>ul>li>a:active,.list-outline>li>ul>li>a:focus{color:#25c488;text-decoration:none}.list-outline>li>ul>li ul{font-size:14px;font-size:1.4rem;padding:0 0 0 20px}.section h2{margin:50px 0 30px}.section h3{margin:40px 0 20px}.headerlink{opacity:0;padding-left:10px;font-size:0.8em;position:relative;top:-0.17em;font-weight:700;text-decoration:none;-moz-transition:opacity 200ms ease-in-out;-o-transition:opacity 200ms ease-in-out;-webkit-transition:opacity 200ms ease-in-out;transition:opacity 200ms ease-in-out}h1:hover>.headerlink,h2:hover>.headerlink,h3:hover>.headerlink,h4:hover>.headerlink,h5:hover>.headerlink,h6:hover>.headerlink,dl:hover>.headerlink,dt:hover>.headerlink{opacity:1}.note,.admonition,.help-block{background:#F1FFF7;padding:15px 20px 15px 70px;border:1px solid #C9F0DD;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin:25px 0;position:relative}.note h1,.note h2,.note h3,.note h4,.admonition h1,.admonition h2,.admonition h3,.admonition h4,.help-block h1,.help-block h2,.help-block h3,.help-block h4{margin-top:20px}.note p,.admonition p,.help-block p{margin:0.8em 0}.note .first,.admonition .first,.help-block .first{margin-top:0}.note .admonition-title,.admonition .admonition-title,.help-block .admonition-title{font-weight:bold}.note .admonition-title::before,.admonition .admonition-title::before,.help-block .admonition-title::before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;top:20px;left:20px;font-size:30px;width:34px;text-align:center;content:"";opacity:0.5}.note.warning,.admonition.warning,.help-block.warning{background-color:#FFFDF1;border-color:#F5F1C7}.note.warning .admonition-title::before,.admonition.warning .admonition-title::before,.help-block.warning .admonition-title::before{color:#E9BD46;content:""}.note.admonition-philosophy .admonition-title::before,.admonition.admonition-philosophy .admonition-title::before,.help-block.admonition-philosophy .admonition-title::before{content:""}.note.admonition-behind-the-scenes .admonition-title::before,.admonition.admonition-behind-the-scenes .admonition-title::before,.help-block.admonition-behind-the-scenes .admonition-title::before{content:""}.note .last,.note .highlight,.admonition .last,.admonition .highlight,.help-block .last,.help-block .highlight{margin-bottom:0px}.browse-horizontal{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;font-weight:700;border-top:1px solid #CFE3DC;border-bottom:1px solid #CFE3DC;padding:20px 0;margin-top:2em}.browse-horizontal:before,.browse-horizontal:after{content:"";display:table}.browse-horizontal:after{clear:both}.browse-horizontal .left{float:left}.browse-horizontal .left .icon{margin-right:4px;font-size:12px;font-size:1.2rem}.browse-horizontal .right{float:right}.browse-horizontal .right .icon{margin-left:4px;font-size:12px;font-size:1.2rem}.browse-horizontal a{text-decoration:none}#doc-versions{position:fixed;right:15px;bottom:15px;margin:0;padding:0;z-index:1;list-style:none}#doc-versions .icon{margin-right:4px}#doc-versions li{display:none;background:#F1FFF7;margin:0 3px;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;color:#0C3C26;font-size:12px;font-size:1.2rem}#doc-versions li.current{display:inline-block;padding:8px 15px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}#doc-versions li a{display:inline-block;color:#44B78B;text-decoration:none;font-weight:700;padding:8px 15px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}#doc-versions li a:hover{color:#20AA76;border:1px solid #93D7B7}#doc-versions:hover li,#doc-versions .hover-on li{display:inline-block}#dev-warning,#outdated-warning{position:absolute;top:0;width:100%;padding:8px 20px 8px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;background-image:-webkit-linear-gradient(-45deg, rgba(0,0,0,0.04) 25%, transparent 25%, transparent 50%, rgba(0,0,0,0.04) 50%, rgba(0,0,0,0.04) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(-45deg, rgba(0,0,0,0.04) 25%, transparent 25%, transparent 50%, rgba(0,0,0,0.04) 50%, rgba(0,0,0,0.04) 75%, transparent 75%, transparent);background-image:linear-gradient(135deg, rgba(0,0,0,0.04) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(0,0,0,0.04) 50%,rgba(0,0,0,0.04) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;text-align:center;background-color:#ffe761}@media screen and (min-width: 768px){#dev-warning,#outdated-warning{position:fixed;min-width:768px}}#outdated-warning{background-color:#ffbaba;color:#6A0E0E}#s-getting-help{display:none}#docs-content{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;line-height:1.5em}#docs-content h1,#docs-content h2,#docs-content h3,#docs-content h4,#docs-content h5,#docs-content h6{margin:0.6em 0;line-height:1.1em}#docs-content .section{padding:10px 0 20px}#docs-content img{display:block;max-width:100%}#docs-content a.reference{color:#6A0E0E;text-decoration:none;border-bottom:1px dotted #798780}#docs-content a.reference:visited{border-color:#971414}#docs-content a.reference:active,#docs-content a.reference:focus,#docs-content a.reference:hover{background:#F1FFF7;color:#BA2121}#docs-content a.reference em{font-style:normal}.versionadded,.versionchanged,.deprecated,.versionmodified{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:bold;margin-bottom:20px;padding:10px 13px;border:1px solid #C9F0DD;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}.versionadded p,.versionchanged p,.deprecated p,.versionmodified p{font-weight:normal;margin-top:0.3em}.versionadded p:last-child,.versionchanged p:last-child,.deprecated p:last-child,.versionmodified p:last-child{margin-bottom:0}.deprecated .versionadded,.deprecated .versionchanged,.deprecated .deprecated,.deprecated .versionmodified{border:none;padding:0;margin-bottom:0;display:block}.deprecated p{font-weight:normal;margin-top:0}.deprecated p:last-child{margin-bottom:0}dl.function dt,dl.class dt,dl.method dt,dl.attribute dt{font-weight:700}dl.function dd,dl.class dd,dl.method dd,dl.attribute dd{padding-left:1.4em}table.docutils td,table.docutils th{border-bottom:1px solid #CFE3DC}#search-results span.highlighted{font-weight:700;color:#0C3C26}.list-links{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;list-style:none;margin:0;padding:10px 0 0}.list-links a{color:#20AA76;text-decoration:none}.list-links a:visited{color:#20AA76}.list-links a:hover,.list-links a:active,.list-links a:focus{color:#25c488;text-decoration:none}.list-links dt,.list-links li{font-size:16px;font-size:1.6rem;margin-top:15px;font-weight:400}.list-links dt:first-child,.list-links li:first-child{margin-top:0}.list-links dd{margin-top:0;margin-bottom:30px}[role="complementary"] .list-links{padding:0}[role="complementary"] .list-links dt,[role="complementary"] .list-links li{font-size:16px;font-size:1.6rem;border-top:1px solid #CFE3DC;margin-top:0;padding-top:20px}[role="complementary"] .list-links dt:first-child,[role="complementary"] .list-links li:first-child{border:none;padding-top:0}[role="complementary"] .list-links li{padding:14px 0 10px}[role="complementary"] .list-links dd{font-size:14px;font-size:1.4rem;margin-bottom:16px}.list-links+h2{margin-top:34px}.list-links-small{padding-left:0;list-style:none}.list-links-small a{color:#20AA76;text-decoration:none;text-decoration:none}.list-links-small a:visited{color:#20AA76}.list-links-small a:hover,.list-links-small a:active,.list-links-small a:focus{color:#25c488;text-decoration:none}.list-links-small li>a:before,.list-links-small dt>a:before{font-family:FontAwesome;font-weight:normal;font-style:normal;float:left;width:23px;height:20px}.list-links-small dt{font-weight:400}.list-links-small dd{color:#798780;padding-top:2px}.list-links-small.docs-list{list-style:none}.list-links-small.docs-list li>a:before,.list-links-small.docs-list dt>a:before{content:"\f0f6"}.list-links-small.docs-list dd{padding-left:24px}.list-links-small.news-list{list-style:none}.list-links-small.news-list li>a:before,.list-links-small.news-list dt>a:before{content:"\f0a1"}.list-links-small.news-list dt.event>a:before{content:"\f133"}.list-links-small.news-list dd{padding-left:24px}.list-links-small.resource-list{list-style:none}.list-links-small.resource-list li>a:before,.list-links-small.resource-list dt>a:before{content:"\f0c1"}.list-links-small.resource-list dd{padding-left:24px}.list-links-small.rss-list{list-style:none}.list-links-small.rss-list li>a:before,.list-links-small.rss-list dt>a:before{content:"\f09e"}.list-links-small.rss-list dd{padding-left:24px}form{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem}form input[type="search"],form input[type="text"],form input[type="email"],form input[type="password"],form input[type="url"],form textarea{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem;-webkit-appearance:none;-moz-appearance:none;background:#fff;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;cursor:auto;display:block;font-weight:400;height:30px;margin:10px 0px;padding:6px 14% 8px 10px;text-indent:0;vertical-align:middle;width:82%}@media screen and (min-width: 768px){form input[type="search"],form input[type="text"],form input[type="email"],form input[type="password"],form input[type="url"],form textarea{padding:6px 18% 8px 10px;width:80%}}form input[type="search"]::-ms-clear,form input[type="text"]::-ms-clear,form input[type="email"]::-ms-clear,form input[type="password"]::-ms-clear,form input[type="url"]::-ms-clear,form textarea::-ms-clear{display:none}form input[type="search"]:active,form input[type="search"]:focus,form input[type="text"]:active,form input[type="text"]:focus,form input[type="email"]:active,form input[type="email"]:focus,form input[type="password"]:active,form input[type="password"]:focus,form input[type="url"]:active,form input[type="url"]:focus,form textarea:active,form textarea:focus{outline:none;border-color:#20AA76}form textarea{height:auto}form input[type=checkbox],form input[type=radio]{margin-right:6px}form select{border:1px solid #CFE3DC;background:white;height:46px;padding:0 10px;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-size:16px;font-size:1.6rem}[role="complementary"] form select{height:36px;font-size:14px;font-size:1.4rem}form button{-moz-appearance:none;-webkit-appearance:none;background:#20AA76;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;color:white;border:0;height:46px;padding:0 15px;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem}form button:hover{background:#44B78B}.form-general fieldset{max-width:700px;border:0;padding:0;margin:15px 0}.form-general fieldset input[type="search"],.form-general fieldset input[type="text"],.form-general fieldset input[type="email"],.form-general fieldset input[type="password"],.form-general fieldset input[type="url"]{margin:10px 0}.form-input{min-height:40px;margin:30px 0 20px;position:relative}.form-input:focus{background:#000}.form-input button{background:none;border:none;color:#44B78B;height:40px;padding:0;position:absolute;right:2%;top:6%;width:40px}@media screen and (min-width: 768px){.form-input button{right:1%}}.form-input button i{font-size:20px;font-size:2rem;line-height:1}.form-input button:hover,.form-input button:focus,.form-input button:active{background:none;color:#0C4B33;outline:none}[role="complementary"] .form-input{min-height:30px;margin:20px 0 30px}[role="complementary"] .form-input input[type="search"],[role="complementary"] .form-input input[type="text"],[role="complementary"] .form-input input[type="email"]{height:20px;font-size:14px;font-size:1.4rem}[role="complementary"] .form-input button{height:30px;width:30px;top:3px}@media screen and (min-width: 768px){[role="complementary"] .form-input button{right:0}}[role="complementary"] .form-input button i{font-size:20px;font-size:2rem}form.donate{max-width:150px}form.donate label{position:absolute;left:0px;color:#2B8C67;padding-top:0.3em;padding-left:0.5em}form.donate input[type=text]{padding-left:20px;padding-right:9px}div[role=main] form.donate label{padding-top:0.7em}::-webkit-input-placeholder,:-moz-placeholder,::-moz-placeholder,:-ms-input-placeholder{color:#859D94}.form-email h3{font-size:18px;font-size:1.8rem;margin:10px 0}.form-email .meta,.form-email .list-links dd,.list-links .form-email dd{margin:0}.form-email form{margin:10px 0 30px}.nav-pagination{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;border-top:1px solid #CFE3DC;font-weight:700;line-height:31px;list-style:none;margin:30px 0;padding:30px 0 0;text-align:center}.nav-pagination li{display:inline-block}.nav-pagination a{border:none;color:#798780;height:auto;width:auto;margin:0 5px;-moz-border-radius:15px;-webkit-border-radius:15px;border-radius:15px;display:block;text-decoration:none}@media screen and (min-device-width: 320px){.nav-pagination a{background:#798780;color:#fff;height:30px;margin:0 2px;width:30px}}.nav-pagination a.previous,.nav-pagination a.next{font-size:16px;font-size:1.6rem}@media screen and (min-device-width: 320px){.nav-pagination a.previous,.nav-pagination a.next{-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;height:40px;line-height:43px;width:40px}}.nav-pagination a.previous{margin-right:10px}@media screen and (min-width: 768px){.nav-pagination a.previous{margin-right:70px}}.nav-pagination a.next{margin-left:10px;text-indent:1px}@media screen and (min-width: 768px){.nav-pagination a.next{margin-left:70px}}.nav-pagination a:hover,.nav-pagination a:focus,.nav-pagination a:active,.nav-pagination a.active{background:none;color:#20AA76}@media screen and (min-device-width: 320px){.nav-pagination a:hover,.nav-pagination a:focus,.nav-pagination a:active,.nav-pagination a.active{background:#20AA76;color:white}}.mdzr-no-borderradius .nav-pagination a{display:inline;background:none;color:#798780;height:auto;width:auto;margin:0 5px !important}.mdzr-no-borderradius .nav-pagination a:hover,.mdzr-no-borderradius .nav-pagination a:active,.mdzr-no-borderradius .nav-pagination a:focus,.mdzr-no-borderradius .nav-pagination a.active{background:none;color:#20AA76}hr{border:0;border-top:1px solid #CFE3DC}.badge{-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-size:12px;padding:2px 6px;margin:0 5px;letter-spacing:0px;position:relative;bottom:0.3em;color:#F1FFF7;background-color:#20AA76}.user-info .avatar{padding:20px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;float:right}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.clearfix:before,.clearfix:after,.group-container:before,.group-container:after{content:"";display:table}.clearfix:after,.group-container:after{clear:both}.fundraising-index{margin-top:50px}.fundraising-index .fundraising-heart{width:100%;float:none}.fundraising-index .fundraising-heart img,.fundraising-index .fundraising-heart svg{width:100%;height:auto}.fundraising-index .fundraising-heart rect{-moz-transition:opacity 250ms ease-out;-o-transition:opacity 250ms ease-out;-webkit-transition:opacity 250ms ease-out;transition:opacity 250ms ease-out}.fundraising-index .fundraising-heart rect.faded{opacity:0.05}.fundraising-index .fundraising-heart rect.faded:hover{opacity:0.9}@media screen and (min-width: 768px){.fundraising-index .fundraising-heart{width:55%;float:left}}.fundraising-index .description{margin-left:5%;width:100%;float:none;margin-top:30px}@media screen and (min-width: 768px){.fundraising-index .description{width:40%;float:left;margin-top:0px}}.fundraising-index .description h2{margin-top:0;font-size:28px;font-size:2.8rem}.fundraising-index .donate select{width:80%}@media screen and (min-width: 768px){.fundraising-index .donate select{width:100%}}.fundraising-index .donate .cta{margin:10px 0}.fundraising-index .donate .custom-donation{display:none}.fundraising-index .donate .prefix{float:left;font-size:19px;font-size:1.9rem;margin:8px 9px 0 3px}.fundraising-index .donate input[type="text"]{width:70%}.fundraising-index .cls{clear:both}.fundraising-donation select{width:100%}.fundraising-donation input.error{border:1px solid #BA2121 !important}.fundraising-donation p.validation-errors{color:#BA2121}.fundraising-donation .custom-donation{display:none;margin-top:10px}.fundraising-sidebar{clear:both}.fundraising-sidebar .small-heart{margin-top:20px;width:20%;float:left;margin-bottom:20px}.fundraising-sidebar .small-heart img{width:100%;max-width:64px}.fundraising-sidebar .small-cta{width:70%;float:left;vertical-align:top;margin-left:5%;margin-right:5%;margin-bottom:20px}.footnote{color:#859D94;font-size:14px;font-size:1.4rem;margin-top:20px;text-align:center}form .footnote{margin-top:10px;text-align:left}.heros-section{overflow:hidden}.heros-section .heros{clear:both}.heros-section .heros .hero{width:25%;position:relative;height:auto}.heros-section .heros .hero div{width:100%}.heros-section .heros .hero-logo{height:170px;line-height:170px}.heros-section .heros .hero-logo img{vertical-align:middle}.heros-section .heros .hero-name{height:92px;vertical-align:top}.heros-section .heros .no-logo-hero{min-height:60px;margin-right:24px}.heros-section .heros div{float:left;text-align:center;margin:15px 0}.heros-section .heros div img{max-width:90%;max-height:170px}.heros-section .pagination{clear:both}pre.literal-block,.literal-block{font-size:14px;font-size:1.4rem;border:1px solid #EAEAEA;background:#F4F4F4;background:#f8f8f8;overflow:auto;border-radius:4px;margin:25px 0;padding:10px 20px;color:#0C4B33}.snippet-filename{background:#C9F0DD;color:#0C4B33;font-family:"Fira Mono", Consolas, Menlo, Monaco, "Courier New", Courier, monospace;font-variant-ligatures:no-common-ligatures;text-rendering:optimizeSpeed;font-size:1em;padding:5px 20px;-moz-border-radius:4px 4px 0 0;-webkit-border-radius:4px;border-radius:4px 4px 0 0}.snippet-filename+.highlight{margin-top:0;-moz-border-radius:0 0 4px 4px;-webkit-border-radius:0;border-radius:0 0 4px 4px;border-top:0}.highlight{font-size:14px;font-size:1.4rem;border:1px solid #EAEAEA;background:#F4F4F4;background:#f8f8f8;overflow:auto;border-radius:4px;margin:25px 0}.highlight pre{margin:15px 20px}.highlight li{margin-top:0;border-left:1px solid #EAEAEA;padding:0 0 2px 15px}.highlight li:first-child{padding-top:2px}.highlight .hll{background-color:#ffc}.highlight .c{color:#408080;font-style:italic}.highlight .err{border:1px solid red}.highlight .k{color:#008000;font-weight:bold}.highlight .o{color:#666}.highlight .cm{color:#408080;font-style:italic}.highlight .cp{color:#BC7A00}.highlight .c1{color:#408080;font-style:italic}.highlight .cs{color:#408080;font-style:italic}.highlight .gd{color:#A00000}.highlight .ge{font-style:italic}.highlight .gr{color:red}.highlight .gh{color:#000080;font-weight:bold}.highlight .gi{color:#00A000}.highlight .go{color:gray}.highlight .gp{color:#000080;font-weight:bold}.highlight .gs{font-weight:bold}.highlight .gu{color:#800080;font-weight:bold}.highlight .gt{color:#0040D0}.highlight .kc{color:#008000;font-weight:bold}.highlight .kd{color:#008000;font-weight:bold}.highlight .kn{color:#008000;font-weight:bold}.highlight .kp{color:green}.highlight .kr{color:#008000;font-weight:bold}.highlight .kt{color:#B00040}.highlight .m{color:#666}.highlight .s{color:#BA2121}.highlight .na{color:#7D9029}.highlight .nb{color:green}.highlight .nc{color:#0000FF;font-weight:bold}.highlight .no{color:#800}.highlight .nd{color:#a2f}.highlight .ni{color:#999999;font-weight:bold}.highlight .ne{color:#D2413A;font-weight:bold}.highlight .nf{color:blue}.highlight .nl{color:#A0A000}.highlight .nn{color:#0000FF;font-weight:bold}.highlight .nt{color:#008000;font-weight:bold}.highlight .nv{color:#19177C}.highlight .ow{color:#AA22FF;font-weight:bold}.highlight .w{color:#bbb}.highlight .mf{color:#666}.highlight .mh{color:#666}.highlight .mi{color:#666}.highlight .mo{color:#666}.highlight .sb{color:#BA2121}.highlight .sc{color:#BA2121}.highlight .sd{color:#BA2121;font-style:italic}.highlight .s2{color:#BA2121}.highlight .se{color:#BB6622;font-weight:bold}.highlight .sh{color:#BA2121}.highlight .si{color:#BB6688;font-weight:bold}.highlight .sx{color:green}.highlight .sr{color:#b68}.highlight .s1{color:#BA2121}.highlight .ss{color:#19177C}.highlight .bp{color:green}.highlight .vc{color:#19177C}.highlight .vg{color:#19177C}.highlight .vi{color:#19177C}.highlight .il{color:#666}.highlight .lineno{color:#000000;background-color:#dddddd}.styleguide .example{padding:0 20px 20px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin-top:20px;margin-bottom:64px}.styleguide .example:before{content:"Example";font-size:16px;font-weight:700;display:block;color:#CFE3DC;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;text-align:left;padding:10px 0}.styleguide .example [role="complementary"]{float:none;width:auto;padding:0;margin:0}.styleguide .iframe{display:block;height:400px;cursor:zoom-in;border:1px solid #CFE3DC;overflow:hidden}.styleguide .iframe iframe{pointer-events:none;position:relative;width:200%;border:0;height:800px;-moz-transform:scale(0.5) translate(-50%, -50%);-ms-transform:scale(0.5) translate(-50%, -50%);-webkit-transform:scale(0.5) translate(-50%, -50%);transform:scale(0.5) translate(-50%, -50%);top:0;left:0;overflow:hidden}.styleguide .swatches{margin:0;padding:0;list-style:none;margin:30px 0}.styleguide .swatches:before,.styleguide .swatches:after{content:"";display:table}.styleguide .swatches:after{clear:both}.styleguide .swatches li{width:30%;height:30px;margin-right:2%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;float:left}.styleguide .swatches li.text{background:#0C3C26}.styleguide .swatches li.green-dark{background:#0C4B33}.styleguide .swatches li.green{background:#20AA76}.styleguide .swatches li.green-light{background:#93D7B7}.styleguide .swatches li.white{background:#F1FFF7;border:1px solid #CFE3DC}.styleguide .swatches li.red-dark{background:#6A0E0E}.styleguide .swatches li.text-light{background:#798780}.styleguide .swatches li.green-medium-dark{background:#2B8C67}.styleguide .swatches li.green-medium{background:#44B78B}.styleguide .swatches li.green-very-light{background:#C9F0DD}.styleguide .swatches li.gray-line{background:#CFE3DC}.styleguide .swatches li.red{background:#BA2121}.styleguide #layout{overflow:hidden}.styleguide #icons .icon{font-size:32px;font-size:3.2rem;color:#20AA76;padding:0 .2em}@media print{*{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}html{font-size:40%}.menu-button,.news-search,.backtotop,.nav-pagination,[role="contentinfo"]>.container,[role="contentinfo"] .logo,.thanks,[role="complementary"],[role="navigation"],.form-input{display:none !important}.logo{text-indent:0 !important}[role="contentinfo"],[role="contentinfo"] .copyright{margin:0 !important;padding:0 !important}.internal-container{float:none;width:auto}.list-news li{margin-top:0}} + */@font-face{font-family:'FontAwesome';src:url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.eot?v=4.2.0");src:url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0") format("embedded-opentype"),url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.woff?v=4.2.0") format("woff"),url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.ttf?v=4.2.0") format("truetype"),url("//netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular") format("svg");font-weight:normal;font-style:normal}.icon{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-lg{font-size:1.33333em;line-height:0.75em;vertical-align:-15%}.icon-2x{font-size:2em}.icon-3x{font-size:3em}.icon-4x{font-size:4em}.icon-5x{font-size:5em}.icon-fw{width:1.28571em;text-align:center}.icon-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.icon-ul>li{position:relative}.icon-li{position:absolute;left:-2.14286em;width:2.14286em;top:0.14286em;text-align:center}.icon-li.icon-lg{left:-1.85714em}.icon-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.icon.pull-left{margin-right:.3em}.icon.pull-right{margin-left:.3em}.icon-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.icon-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.icon-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.icon-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.icon-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0);-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.icon-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .icon-rotate-90,:root .icon-rotate-180,:root .icon-rotate-270,:root .icon-flip-horizontal,:root .icon-flip-vertical{filter:none}.icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.icon-stack-1x,.icon-stack-2x{position:absolute;left:0;width:100%;text-align:center}.icon-stack-1x{line-height:inherit}.icon-stack-2x{font-size:2em}.icon-inverse{color:#fff}.icon-glass:before{content:""}.icon-music:before{content:""}.icon-search:before{content:""}.icon-envelope-o:before{content:""}.icon-heart:before{content:""}.icon-star:before{content:""}.icon-star-o:before{content:""}.icon-user:before{content:""}.icon-film:before{content:""}.icon-th-large:before{content:""}.icon-th:before{content:""}.icon-th-list:before{content:""}.icon-check:before{content:""}.icon-remove:before,.icon-close:before,.icon-times:before{content:""}.icon-search-plus:before{content:""}.icon-search-minus:before{content:""}.icon-power-off:before{content:""}.icon-signal:before{content:""}.icon-gear:before,.icon-cog:before{content:""}.icon-trash-o:before{content:""}.icon-home:before{content:""}.icon-file-o:before{content:""}.icon-clock-o:before{content:""}.icon-road:before{content:""}.icon-download:before{content:""}.icon-arrow-circle-o-down:before{content:""}.icon-arrow-circle-o-up:before{content:""}.icon-inbox:before{content:""}.icon-play-circle-o:before{content:""}.icon-rotate-right:before,.icon-repeat:before{content:""}.icon-refresh:before{content:""}.icon-list-alt:before{content:""}.icon-lock:before{content:""}.icon-flag:before{content:""}.icon-headphones:before{content:""}.icon-volume-off:before{content:""}.icon-volume-down:before{content:""}.icon-volume-up:before{content:""}.icon-qrcode:before{content:""}.icon-barcode:before{content:""}.icon-tag:before{content:""}.icon-tags:before{content:""}.icon-book:before{content:""}.icon-bookmark:before{content:""}.icon-print:before{content:""}.icon-camera:before{content:""}.icon-font:before{content:""}.icon-bold:before{content:""}.icon-italic:before{content:""}.icon-text-height:before{content:""}.icon-text-width:before{content:""}.icon-align-left:before{content:""}.icon-align-center:before{content:""}.icon-align-right:before{content:""}.icon-align-justify:before{content:""}.icon-list:before{content:""}.icon-dedent:before,.icon-outdent:before{content:""}.icon-indent:before{content:""}.icon-video-camera:before{content:""}.icon-photo:before,.icon-image:before,.icon-picture-o:before{content:""}.icon-pencil:before{content:""}.icon-map-marker:before{content:""}.icon-adjust:before{content:""}.icon-tint:before{content:""}.icon-edit:before,.icon-pencil-square-o:before{content:""}.icon-share-square-o:before{content:""}.icon-check-square-o:before{content:""}.icon-arrows:before{content:""}.icon-step-backward:before{content:""}.icon-fast-backward:before{content:""}.icon-backward:before{content:""}.icon-play:before{content:""}.icon-pause:before{content:""}.icon-stop:before{content:""}.icon-forward:before{content:""}.icon-fast-forward:before{content:""}.icon-step-forward:before{content:""}.icon-eject:before{content:""}.icon-chevron-left:before{content:""}.icon-chevron-right:before{content:""}.icon-plus-circle:before{content:""}.icon-minus-circle:before{content:""}.icon-times-circle:before{content:""}.icon-check-circle:before{content:""}.icon-question-circle:before{content:""}.icon-info-circle:before{content:""}.icon-crosshairs:before{content:""}.icon-times-circle-o:before{content:""}.icon-check-circle-o:before{content:""}.icon-ban:before{content:""}.icon-arrow-left:before{content:""}.icon-arrow-right:before{content:""}.icon-arrow-up:before{content:""}.icon-arrow-down:before{content:""}.icon-mail-forward:before,.icon-share:before{content:""}.icon-expand:before{content:""}.icon-compress:before{content:""}.icon-plus:before{content:""}.icon-minus:before{content:""}.icon-asterisk:before{content:""}.icon-exclamation-circle:before{content:""}.icon-gift:before{content:""}.icon-leaf:before{content:""}.icon-fire:before{content:""}.icon-eye:before{content:""}.icon-eye-slash:before{content:""}.icon-warning:before,.icon-exclamation-triangle:before{content:""}.icon-plane:before{content:""}.icon-calendar:before{content:""}.icon-random:before{content:""}.icon-comment:before{content:""}.icon-magnet:before{content:""}.icon-chevron-up:before{content:""}.icon-chevron-down:before{content:""}.icon-retweet:before{content:""}.icon-shopping-cart:before{content:""}.icon-folder:before{content:""}.icon-folder-open:before{content:""}.icon-arrows-v:before{content:""}.icon-arrows-h:before{content:""}.icon-bar-chart-o:before,.icon-bar-chart:before{content:""}.icon-twitter-square:before{content:""}.icon-facebook-square:before{content:""}.icon-camera-retro:before{content:""}.icon-key:before{content:""}.icon-gears:before,.icon-cogs:before{content:""}.icon-comments:before{content:""}.icon-thumbs-o-up:before{content:""}.icon-thumbs-o-down:before{content:""}.icon-star-half:before{content:""}.icon-heart-o:before{content:""}.icon-sign-out:before{content:""}.icon-linkedin-square:before{content:""}.icon-thumb-tack:before{content:""}.icon-external-link:before{content:""}.icon-sign-in:before{content:""}.icon-trophy:before{content:""}.icon-github-square:before{content:""}.icon-upload:before{content:""}.icon-lemon-o:before{content:""}.icon-phone:before{content:""}.icon-square-o:before{content:""}.icon-bookmark-o:before{content:""}.icon-phone-square:before{content:""}.icon-twitter:before{content:""}.icon-facebook:before{content:""}.icon-github:before{content:""}.icon-unlock:before{content:""}.icon-credit-card:before{content:""}.icon-rss:before{content:""}.icon-hdd-o:before{content:""}.icon-bullhorn:before{content:""}.icon-bell:before{content:""}.icon-certificate:before{content:""}.icon-hand-o-right:before{content:""}.icon-hand-o-left:before{content:""}.icon-hand-o-up:before{content:""}.icon-hand-o-down:before{content:""}.icon-arrow-circle-left:before{content:""}.icon-arrow-circle-right:before{content:""}.icon-arrow-circle-up:before{content:""}.icon-arrow-circle-down:before{content:""}.icon-globe:before{content:""}.icon-wrench:before{content:""}.icon-tasks:before{content:""}.icon-filter:before{content:""}.icon-briefcase:before{content:""}.icon-arrows-alt:before{content:""}.icon-group:before,.icon-users:before{content:""}.icon-chain:before,.icon-link:before{content:""}.icon-cloud:before{content:""}.icon-flask:before{content:""}.icon-cut:before,.icon-scissors:before{content:""}.icon-copy:before,.icon-files-o:before{content:""}.icon-paperclip:before{content:""}.icon-save:before,.icon-floppy-o:before{content:""}.icon-square:before{content:""}.icon-navicon:before,.icon-reorder:before,.icon-bars:before{content:""}.icon-list-ul:before{content:""}.icon-list-ol:before{content:""}.icon-strikethrough:before{content:""}.icon-underline:before{content:""}.icon-table:before{content:""}.icon-magic:before{content:""}.icon-truck:before{content:""}.icon-pinterest:before{content:""}.icon-pinterest-square:before{content:""}.icon-google-plus-square:before{content:""}.icon-google-plus:before{content:""}.icon-money:before{content:""}.icon-caret-down:before{content:""}.icon-caret-up:before{content:""}.icon-caret-left:before{content:""}.icon-caret-right:before{content:""}.icon-columns:before{content:""}.icon-unsorted:before,.icon-sort:before{content:""}.icon-sort-down:before,.icon-sort-desc:before{content:""}.icon-sort-up:before,.icon-sort-asc:before{content:""}.icon-envelope:before{content:""}.icon-linkedin:before{content:""}.icon-rotate-left:before,.icon-undo:before{content:""}.icon-legal:before,.icon-gavel:before{content:""}.icon-dashboard:before,.icon-tachometer:before{content:""}.icon-comment-o:before{content:""}.icon-comments-o:before{content:""}.icon-flash:before,.icon-bolt:before{content:""}.icon-sitemap:before{content:""}.icon-umbrella:before{content:""}.icon-paste:before,.icon-clipboard:before{content:""}.icon-lightbulb-o:before{content:""}.icon-exchange:before{content:""}.icon-cloud-download:before{content:""}.icon-cloud-upload:before{content:""}.icon-user-md:before{content:""}.icon-stethoscope:before{content:""}.icon-suitcase:before{content:""}.icon-bell-o:before{content:""}.icon-coffee:before{content:""}.icon-cutlery:before{content:""}.icon-file-text-o:before{content:""}.icon-building-o:before{content:""}.icon-hospital-o:before{content:""}.icon-ambulance:before{content:""}.icon-medkit:before{content:""}.icon-fighter-jet:before{content:""}.icon-beer:before{content:""}.icon-h-square:before{content:""}.icon-plus-square:before{content:""}.icon-angle-double-left:before{content:""}.icon-angle-double-right:before{content:""}.icon-angle-double-up:before{content:""}.icon-angle-double-down:before{content:""}.icon-angle-left:before{content:""}.icon-angle-right:before{content:""}.icon-angle-up:before{content:""}.icon-angle-down:before{content:""}.icon-desktop:before{content:""}.icon-laptop:before{content:""}.icon-tablet:before{content:""}.icon-mobile-phone:before,.icon-mobile:before{content:""}.icon-circle-o:before{content:""}.icon-quote-left:before{content:""}.icon-quote-right:before{content:""}.icon-spinner:before{content:""}.icon-circle:before{content:""}.icon-mail-reply:before,.icon-reply:before{content:""}.icon-github-alt:before{content:""}.icon-folder-o:before{content:""}.icon-folder-open-o:before{content:""}.icon-smile-o:before{content:""}.icon-frown-o:before{content:""}.icon-meh-o:before{content:""}.icon-gamepad:before{content:""}.icon-keyboard-o:before{content:""}.icon-flag-o:before{content:""}.icon-flag-checkered:before{content:""}.icon-terminal:before{content:""}.icon-code:before{content:""}.icon-mail-reply-all:before,.icon-reply-all:before{content:""}.icon-star-half-empty:before,.icon-star-half-full:before,.icon-star-half-o:before{content:""}.icon-location-arrow:before{content:""}.icon-crop:before{content:""}.icon-code-fork:before{content:""}.icon-unlink:before,.icon-chain-broken:before{content:""}.icon-question:before{content:""}.icon-info:before{content:""}.icon-exclamation:before{content:""}.icon-superscript:before{content:""}.icon-subscript:before{content:""}.icon-eraser:before{content:""}.icon-puzzle-piece:before{content:""}.icon-microphone:before{content:""}.icon-microphone-slash:before{content:""}.icon-shield:before{content:""}.icon-calendar-o:before{content:""}.icon-fire-extinguisher:before{content:""}.icon-rocket:before{content:""}.icon-maxcdn:before{content:""}.icon-chevron-circle-left:before{content:""}.icon-chevron-circle-right:before{content:""}.icon-chevron-circle-up:before{content:""}.icon-chevron-circle-down:before{content:""}.icon-html5:before{content:""}.icon-css3:before{content:""}.icon-anchor:before{content:""}.icon-unlock-alt:before{content:""}.icon-bullseye:before{content:""}.icon-ellipsis-h:before{content:""}.icon-ellipsis-v:before{content:""}.icon-rss-square:before{content:""}.icon-play-circle:before{content:""}.icon-ticket:before{content:""}.icon-minus-square:before{content:""}.icon-minus-square-o:before{content:""}.icon-level-up:before{content:""}.icon-level-down:before{content:""}.icon-check-square:before{content:""}.icon-pencil-square:before{content:""}.icon-external-link-square:before{content:""}.icon-share-square:before{content:""}.icon-compass:before{content:""}.icon-toggle-down:before,.icon-caret-square-o-down:before{content:""}.icon-toggle-up:before,.icon-caret-square-o-up:before{content:""}.icon-toggle-right:before,.icon-caret-square-o-right:before{content:""}.icon-euro:before,.icon-eur:before{content:""}.icon-gbp:before{content:""}.icon-dollar:before,.icon-usd:before{content:""}.icon-rupee:before,.icon-inr:before{content:""}.icon-cny:before,.icon-rmb:before,.icon-yen:before,.icon-jpy:before{content:""}.icon-ruble:before,.icon-rouble:before,.icon-rub:before{content:""}.icon-won:before,.icon-krw:before{content:""}.icon-bitcoin:before,.icon-btc:before{content:""}.icon-file:before{content:""}.icon-file-text:before{content:""}.icon-sort-alpha-asc:before{content:""}.icon-sort-alpha-desc:before{content:""}.icon-sort-amount-asc:before{content:""}.icon-sort-amount-desc:before{content:""}.icon-sort-numeric-asc:before{content:""}.icon-sort-numeric-desc:before{content:""}.icon-thumbs-up:before{content:""}.icon-thumbs-down:before{content:""}.icon-youtube-square:before{content:""}.icon-youtube:before{content:""}.icon-xing:before{content:""}.icon-xing-square:before{content:""}.icon-youtube-play:before{content:""}.icon-dropbox:before{content:""}.icon-stack-overflow:before{content:""}.icon-instagram:before{content:""}.icon-flickr:before{content:""}.icon-adn:before{content:""}.icon-bitbucket:before{content:""}.icon-bitbucket-square:before{content:""}.icon-tumblr:before{content:""}.icon-tumblr-square:before{content:""}.icon-long-arrow-down:before{content:""}.icon-long-arrow-up:before{content:""}.icon-long-arrow-left:before{content:""}.icon-long-arrow-right:before{content:""}.icon-apple:before{content:""}.icon-windows:before{content:""}.icon-android:before{content:""}.icon-linux:before{content:""}.icon-dribbble:before{content:""}.icon-skype:before{content:""}.icon-foursquare:before{content:""}.icon-trello:before{content:""}.icon-female:before{content:""}.icon-male:before{content:""}.icon-gittip:before{content:""}.icon-sun-o:before{content:""}.icon-moon-o:before{content:""}.icon-archive:before{content:""}.icon-bug:before{content:""}.icon-vk:before{content:""}.icon-weibo:before{content:""}.icon-renren:before{content:""}.icon-pagelines:before{content:""}.icon-stack-exchange:before{content:""}.icon-arrow-circle-o-right:before{content:""}.icon-arrow-circle-o-left:before{content:""}.icon-toggle-left:before,.icon-caret-square-o-left:before{content:""}.icon-dot-circle-o:before{content:""}.icon-wheelchair:before{content:""}.icon-vimeo-square:before{content:""}.icon-turkish-lira:before,.icon-try:before{content:""}.icon-plus-square-o:before{content:""}.icon-space-shuttle:before{content:""}.icon-slack:before{content:""}.icon-envelope-square:before{content:""}.icon-wordpress:before{content:""}.icon-openid:before{content:""}.icon-institution:before,.icon-bank:before,.icon-university:before{content:""}.icon-mortar-board:before,.icon-graduation-cap:before{content:""}.icon-yahoo:before{content:""}.icon-google:before{content:""}.icon-reddit:before{content:""}.icon-reddit-square:before{content:""}.icon-stumbleupon-circle:before{content:""}.icon-stumbleupon:before{content:""}.icon-delicious:before{content:""}.icon-digg:before{content:""}.icon-pied-piper:before{content:""}.icon-pied-piper-alt:before{content:""}.icon-drupal:before{content:""}.icon-joomla:before{content:""}.icon-language:before{content:""}.icon-fax:before{content:""}.icon-building:before{content:""}.icon-child:before{content:""}.icon-paw:before{content:""}.icon-spoon:before{content:""}.icon-cube:before{content:""}.icon-cubes:before{content:""}.icon-behance:before{content:""}.icon-behance-square:before{content:""}.icon-steam:before{content:""}.icon-steam-square:before{content:""}.icon-recycle:before{content:""}.icon-automobile:before,.icon-car:before{content:""}.icon-cab:before,.icon-taxi:before{content:""}.icon-tree:before{content:""}.icon-spotify:before{content:""}.icon-deviantart:before{content:""}.icon-soundcloud:before{content:""}.icon-database:before{content:""}.icon-file-pdf-o:before{content:""}.icon-file-word-o:before{content:""}.icon-file-excel-o:before{content:""}.icon-file-powerpoint-o:before{content:""}.icon-file-photo-o:before,.icon-file-picture-o:before,.icon-file-image-o:before{content:""}.icon-file-zip-o:before,.icon-file-archive-o:before{content:""}.icon-file-sound-o:before,.icon-file-audio-o:before{content:""}.icon-file-movie-o:before,.icon-file-video-o:before{content:""}.icon-file-code-o:before{content:""}.icon-vine:before{content:""}.icon-codepen:before{content:""}.icon-jsfiddle:before{content:""}.icon-life-bouy:before,.icon-life-buoy:before,.icon-life-saver:before,.icon-support:before,.icon-life-ring:before{content:""}.icon-circle-o-notch:before{content:""}.icon-ra:before,.icon-rebel:before{content:""}.icon-ge:before,.icon-empire:before{content:""}.icon-git-square:before{content:""}.icon-git:before{content:""}.icon-hacker-news:before{content:""}.icon-tencent-weibo:before{content:""}.icon-qq:before{content:""}.icon-wechat:before,.icon-weixin:before{content:""}.icon-send:before,.icon-paper-plane:before{content:""}.icon-send-o:before,.icon-paper-plane-o:before{content:""}.icon-history:before{content:""}.icon-circle-thin:before{content:""}.icon-header:before{content:""}.icon-paragraph:before{content:""}.icon-sliders:before{content:""}.icon-share-alt:before{content:""}.icon-share-alt-square:before{content:""}.icon-bomb:before{content:""}.icon-soccer-ball-o:before,.icon-futbol-o:before{content:""}.icon-tty:before{content:""}.icon-binoculars:before{content:""}.icon-plug:before{content:""}.icon-slideshare:before{content:""}.icon-twitch:before{content:""}.icon-yelp:before{content:""}.icon-newspaper-o:before{content:""}.icon-wifi:before{content:""}.icon-calculator:before{content:""}.icon-paypal:before{content:""}.icon-google-wallet:before{content:""}.icon-cc-visa:before{content:""}.icon-cc-mastercard:before{content:""}.icon-cc-discover:before{content:""}.icon-cc-amex:before{content:""}.icon-cc-paypal:before{content:""}.icon-cc-stripe:before{content:""}.icon-bell-slash:before{content:""}.icon-bell-slash-o:before{content:""}.icon-trash:before{content:""}.icon-copyright:before{content:""}.icon-at:before{content:""}.icon-eyedropper:before{content:""}.icon-paint-brush:before{content:""}.icon-birthday-cake:before{content:""}.icon-area-chart:before{content:""}.icon-pie-chart:before{content:""}.icon-line-chart:before{content:""}.icon-lastfm:before{content:""}.icon-lastfm-square:before{content:""}.icon-toggle-off:before{content:""}.icon-toggle-on:before{content:""}.icon-bicycle:before{content:""}.icon-bus:before{content:""}.icon-ioxhost:before{content:""}.icon-angellist:before{content:""}.icon-cc:before{content:""}.icon-shekel:before,.icon-sheqel:before,.icon-ils:before{content:""}.icon-meanpath:before{content:""}body{font-family:Palatino, "Palatino Linotype", "Book Antiqua", "Hoefler Text", Georgia, "Lucida Bright", Cambria, Times, "Times New Roman", serif;font-size:18px;font-size:1.8rem;background:#f8f8f8;color:#0C3C26;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body .layout-secondary,body [role="complementary"]{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif}@media screen and (min-width: 768px){body{min-width:768px}}a{color:#0C3C26;text-decoration:underline;-webkit-tap-highlight-color:transparent}a:visited{color:#156641}a:active,a:focus,a:hover{color:#1d915c}::selection{background:#C9F0DD}::-moz-selection{background:#C9F0DD}ol li,ul li{margin-top:10px}dl{margin:20px 0 10px}dl dt{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:400}dl dd{margin:0.2em 0 1.2em;padding:0}dl dd:last-of-type{margin-bottom:0}h1,h2,h3,h4,h5,h6{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:400}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{text-decoration:none;color:#20AA76;text-decoration:none}h1 a:visited,h2 a:visited,h3 a:visited,h4 a:visited,h5 a:visited,h6 a:visited{color:#20AA76}h1 a:hover,h1 a:active,h1 a:focus,h2 a:hover,h2 a:active,h2 a:focus,h3 a:hover,h3 a:active,h3 a:focus,h4 a:hover,h4 a:active,h4 a:focus,h5 a:hover,h5 a:active,h5 a:focus,h6 a:hover,h6 a:active,h6 a:focus{color:#25c488;text-decoration:none}h1{font-size:28px;font-size:2.8rem;color:#fff;letter-spacing:-1px;line-height:1.1}@media screen and (min-width: 768px){h1{font-size:32px;font-size:3.2rem}}.layout-secondary h1{color:#0C3C26}[role="main"] h1{font-size:32px;font-size:3.2rem;margin:40px 0px 30px;color:#0C3C26}[role="complementary"] h1{font-size:28px;font-size:2.8rem}h2{font-size:24px;font-size:2.4rem}[role="complementary"] h2,.layout-secondary h2{font-size:20px;font-size:2rem;border-bottom:1px solid #CFE3DC;font-weight:400;padding-bottom:15px;margin-top:30px}[role="complementary"] h2:first-of-type,.layout-secondary h2:first-of-type{margin-top:inherit}@media screen and (min-width: 768px){[role="complementary"] h2:first-child,.layout-secondary h2:first-child{margin-top:20px}}.full-width [role="complementary"] h2,.full-width .layout-secondary h2{font-size:24px;font-size:2.4rem}[role="main"] h2{margin-top:40px;margin-bottom:15px}h3{font-size:20px;font-size:2rem;font-weight:700;color:#0C3C26;line-height:1.2;margin:35px 0 20px}[role="complementary"] h3,.layout-secondary h3{font-size:18px;font-size:1.8rem;font-weight:400;padding-bottom:15px}@media screen and (min-width: 768px){[role="complementary"] h3:first-child,.layout-secondary h3:first-child{margin-top:12px}}[role="complementary"] h3{font-size:18px;font-size:1.8rem;border-bottom:1px solid #CFE3DC}h4{font-size:16px;font-size:1.6rem;color:#0C3C26;line-height:1.2;margin:35px 0 20px;font-weight:700}tt,code,kbd,pre,samp{font-family:"Fira Mono", Consolas, Menlo, Monaco, "Courier New", Courier, monospace;font-variant-ligatures:no-common-ligatures;text-rendering:optimizeSpeed;color:#0C4B33;font-size:1em}tt{font-weight:700}span.pre{font-family:"Fira Mono", Consolas, Menlo, Monaco, "Courier New", Courier, monospace;font-variant-ligatures:no-common-ligatures;text-rendering:optimizeSpeed}a:hover tt,a:active tt,a:focus tt{color:#1d915c}[role="main"]>p:first-child{margin-top:30px}ul{padding-left:20px}blockquote{background:#F1FFF7;padding:15px 20px 15px 70px;border:1px solid #C9F0DD;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin:25px 0;position:relative}blockquote p:first-child{margin-top:0}blockquote::before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;top:20px;left:20px;font-size:30px;width:34px;text-align:center;content:"";opacity:0.5}[role="main"]{background:#fff;padding:1px 10px 40px}@media screen and (min-width: 768px){[role="main"]{min-height:800px;border:1px solid #ddd;float:right;margin:0;padding-bottom:80px;padding-left:3%;padding-right:3%;width:60%}.mdzr-boxshadow [role="main"]{border:none;-moz-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,460px 0 0 0 #fff,1000px 0 0 0 #fff,0px 600px 0 0px #fff,460px 600px 0 0px #fff;-webkit-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,460px 0 0 0 #fff,1000px 0 0 0 #fff,0px 600px 0 0px #fff,460px 600px 0 0px #fff;box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,460px 0 0 0 #fff,1000px 0 0 0 #fff,0px 600px 0 0px #fff,460px 600px 0 0px #fff;padding-left:4%;padding-right:0;width:63%}.sidebar-right [role="main"]{float:left}.mdzr-boxshadow .sidebar-right [role="main"]{border:none;-moz-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,-460px 0 0 0 #fff,-1000px 0 0 0 #fff,0px 600px 0 0px #fff,-460px 600px 0 0px #fff;-webkit-box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,-460px 0 0 0 #fff,-1000px 0 0 0 #fff,0px 600px 0 0px #fff,-460px 600px 0 0px #fff;box-shadow:0px 0px 0 0 #fff,0px 0px 0 0 #fff,-460px 0 0 0 #fff,-1000px 0 0 0 #fff,0px 600px 0 0px #fff,-460px 600px 0 0px #fff;padding-left:0;width:62%;padding-right:4%}}.full-width [role="main"]{border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;float:none;margin:0 auto;padding:0 10px 40px;width:auto}@media screen and (min-width: 768px){.full-width [role="main"]{max-width:740px;padding:20px 0 40px;width:91.66667%}}[role="main"] .section{padding-bottom:40px;border-bottom:1px solid #CFE3DC}[role="main"] .section:last-of-type{padding-bottom:0;border-bottom:0}[role="main"] .section dd.last-child{padding-bottom:0}.full-width.container{width:100%;padding:0;max-width:none;border-bottom:1px solid #ddd;background:#fff}.full-width:before,.full-width:after{content:"";display:table}.full-width:after{clear:both}.mdzr-boxshadow .full-width{border:none;-moz-box-shadow:0 4px 8px rgba(12,60,38,0.07);-webkit-box-shadow:0 4px 8px rgba(12,60,38,0.07);box-shadow:0 4px 8px rgba(12,60,38,0.07)}[role="complementary"]{padding:0 10px 20px;font-size:14px;font-size:1.4rem}@media screen and (min-width: 768px){[role="complementary"]{float:right;margin:20px 0;margin-right:3%;padding:0 0 40px 0;width:30%}.sidebar-right [role="complementary"]{margin-left:3%;margin-right:0}}[role="complementary"] span.form-controls{display:none}[role="complementary"] .list-collapsing{margin-top:0;border-bottom:0}[role="complementary"] .list-collapsing.active li{border-top:0}[role="complementary"] .list-collapsing.active h2{padding:10px 40px 10px 0;font-size:18px;border-bottom:0;color:#44B78B}[role="complementary"] .list-collapsing.active h2 .collapsing-icon{font-size:10px}[role="secondary"]{margin:0 10px;padding:40px 0 60px}@media screen and (min-width: 768px){.full-width [role="secondary"]{max-width:700px;margin:0 auto}}.layout-secondary{padding:20px 10px 50px}.layout-tertiary{background:#fff;border-top:1px solid #ddd;padding:20px 10px 50px}.mdzr-boxshadow .layout-tertiary{border:none;-moz-box-shadow:0 -4px 8px rgba(12,60,38,0.07);-webkit-box-shadow:0 -4px 8px rgba(12,60,38,0.07);box-shadow:0 -4px 8px rgba(12,60,38,0.07)}.container:before,.container:after{content:"";display:table}.container:after{clear:both}@media screen and (min-width: 768px){.container{margin:0 auto;max-width:1400px;padding:0 4.16667%}}.mdzr-boxshadow .container.sidebar-right{-moz-box-shadow:-1200px 0 0 0px #fff;-webkit-box-shadow:-1200px 0 0 0px #fff;box-shadow:-1200px 0 0 0px #fff}[role="banner"]{background:#0C4B33;overflow:hidden;margin:0;padding:10px 0 6px;position:relative;z-index:0}[role="banner"]:before,[role="banner"]:after{content:"";display:table}[role="banner"]:after{clear:both}@media screen and (min-width: 768px){[role="banner"] .container{position:relative}}[role="banner"] .meta,[role="banner"] .list-links dd,.list-links [role="banner"] dd{font-size:13px;font-size:1.3rem;color:#44B78B;font-weight:700;width:auto;float:left;margin:8px 0 0 10px;display:none}@media screen and (min-width: 1150px){[role="banner"] .meta,[role="banner"] .list-links dd,.list-links [role="banner"] dd{float:left;width:200px;display:block}}[role="banner"] .logo{font-size:40px;font-size:4rem;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;background:url(../img/logo-django.png) 0 0 no-repeat;color:#FFF;display:block;float:left;font-weight:700;margin:10px;overflow:hidden;text-decoration:none;text-indent:100%;width:104px;height:36px}.mdzr-svg [role="banner"] .logo{background:url(../img/logo-django.svg) center center no-repeat}@media screen and (min-width: 768px){[role="banner"] .logo{margin-left:0}}[role="banner"] .menu-button{font-size:20px;font-size:2rem;background:#0C4B33;-moz-border-radius:23px;-webkit-border-radius:23px;border-radius:23px;color:#fff;cursor:pointer;display:block;float:right;height:45px;line-height:48px;margin:4px 10px;text-align:center;text-decoration:none;width:45px}@media screen and (min-width: 768px){[role="banner"] .menu-button{display:none}}[role="banner"] .menu-button:active{color:#44B78B}[role="banner"] .menu-button span{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}[role="banner"] .menu-button.active{opacity:0.5}[role="banner"] .nav-menu-on{max-height:0;overflow:hidden;-moz-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;-webkit-transition:all 0.3s ease-out;transition:all 0.3s ease-out}@media screen and (min-width: 768px){[role="banner"] .nav-menu-on{max-height:none;-moz-transition:none;-o-transition:none;-webkit-transition:none;transition:none}}[role="banner"] .nav-menu-on.active{max-height:500px}[role="banner"] [role="navigation"]{background:#0C4B33;width:100%}@media screen and (min-width: 768px){[role="banner"] [role="navigation"]{width:auto;float:right}}[role="banner"] [role="navigation"] ul{margin:10px 0 0;padding:0}@media screen and (min-width: 768px){[role="banner"] [role="navigation"] ul{margin:0}}[role="banner"] [role="navigation"] li{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:13px;font-size:1.3rem;display:block;font-weight:700;line-height:16px;text-align:left;text-transform:uppercase;margin:0 10px;border-top:1px solid #106142}@media screen and (min-width: 768px){[role="banner"] [role="navigation"] li{margin:0;border:0;float:left;text-align:left}}[role="banner"] [role="navigation"] li.active a{color:#44B78B}[role="banner"] [role="navigation"] a{color:#fff;display:block;padding:20px 0px;text-decoration:none}[role="banner"] [role="navigation"] a:active,[role="banner"] [role="navigation"] a:hover{color:#C9F0DD}@media screen and (min-width: 768px){[role="banner"] [role="navigation"] a{padding:20px 10px}}@media screen and (min-width: 768px){[role="banner"] [role="navigation"] .nav-primary{position:absolute;right:0;top:45px}}.header{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;background:#0C4B33;margin:0;padding:11px 0px 8px;position:relative}.header h1{margin:0.4em 0}.header p{font-family:Palatino, "Palatino Linotype", "Book Antiqua", "Hoefler Text", Georgia, "Lucida Bright", Cambria, Times, "Times New Roman", serif;font-size:18px;font-size:1.8rem;color:#fff;left:-9999px;line-height:1.5;padding:0 0 10px;position:absolute;top:0;max-width:660px}@media screen and (min-width: 768px){.header p{position:static}}.copy-banner{background:#44B78B;padding:1px 10px}@media screen and (min-width: 768px){.copy-banner{padding:1px 0}}.copy-banner p,.copy-banner h1{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:24px;font-size:2.4rem;color:#C9F0DD;font-weight:300;line-height:1.3;padding:1px 0 6px;margin:.45em 0 .35em}.copy-banner p em,.copy-banner h1 em{font-style:normal;color:white}@media screen and (min-width: 768px){.copy-banner p,.copy-banner h1{font-size:32px;font-size:3.2rem;margin:.35em 0 .35em;color:#C9F0DD;padding:1px 0 6px}}.copy-banner p a,.copy-banner h1 a{font-weight:300;color:#C9F0DD}.copy-banner p a.cta,.copy-banner p .cta,.copy-banner h1 a.cta,.copy-banner h1 .cta{margin:0;font-size:18px;font-size:1.8rem}.copy-banner a.cta,.copy-banner .cta{margin:15px 0;padding:0.4em 1.5em 0.5em;background:#2B8C67;background:none;border:1px solid #C9F0DD;color:#C9F0DD;font-weight:400}.copy-banner a.cta:hover,.copy-banner .cta:hover{background:#309c72}.copy-banner a.cta em,.copy-banner .cta em{color:white}.copy-banner a.cta:hover,.copy-banner .cta:hover{background:#F1FFF7;color:#20AA76;border-color:#F1FFF7}.copy-banner a.cta:hover em,.copy-banner .cta:hover em{color:#20AA76}.copy-banner a.cta.white,.copy-banner .cta.white{background:#F1FFF7;color:#20AA76;font-weight:700;border:0}.copy-banner a.cta.white:hover,.copy-banner .cta.white:hover{background:#fff}.homepage .copy-banner{padding:50px 0;background:white;text-align:center;border-bottom:1px solid #CFE3DC}.homepage .copy-banner p{max-width:700px;margin-left:auto;margin-right:auto;margin:1em auto .5em;color:#0C3C26;font-size:36px;font-size:3.6rem}.homepage .copy-banner p.small{color:#798780;margin:2em auto 1em;font-size:14px;font-size:1.4rem}.homepage .copy-banner p em{color:#0C3C26}.homepage .copy-banner a.cta,.homepage .copy-banner .cta{display:inline-block;padding:1em 50px 1.1em;margin-bottom:40px;background:#44B78B;color:white;border:0;font-weight:700}.homepage .copy-banner a.cta:hover,.homepage .copy-banner .cta:hover{background:#51be95}.homepage .copy-banner a.cta:active,.homepage .copy-banner .cta:active{background:#41b085}.homepage .copy-banner .django-companies{max-width:750px;margin:0 auto;list-style:none;padding:0 0 0 30px}.homepage .copy-banner .django-companies li{width:144px;display:inline-block;text-indent:-1000px;overflow:hidden;margin:0}.homepage .copy-banner .django-companies li a{display:block;height:46px;background-position:center;background-repeat:no-repeat}.homepage .copy-banner .django-companies li a.company-mozilla{background-image:url("../img/company-mozilla.png");background-position:center 7px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-mozilla{background-image:url("../img/company-mozilla.svg")}.homepage .copy-banner .django-companies li a.company-pinterest{background-image:url("../img/company-pinterest.png");background-position:center 7px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-pinterest{background-image:url("../img/company-pinterest.svg")}.homepage .copy-banner .django-companies li a.company-theguardian{background-image:url("../img/company-theguardian.png");background-position:center 14px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-theguardian{background-image:url("../img/company-theguardian.svg")}.homepage .copy-banner .django-companies li a.company-instagram{background-image:url("../img/company-instagram.png");background-position:center 10px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-instagram{background-image:url("../img/company-instagram.svg")}.homepage .copy-banner .django-companies li a.company-rdio{background-image:url("../img/company-rdio.png");background-position:15px 6px}.mdzr-svg .homepage .copy-banner .django-companies li a.company-rdio{background-image:url("../img/company-rdio.svg")}[role="alert"]{clear:both;background:#F1FFF7;position:relative;-moz-box-shadow:0 -2px 8px 0 rgba(0,0,0,0.05);-webkit-box-shadow:0 -2px 8px 0 rgba(0,0,0,0.05);box-shadow:0 -2px 8px 0 rgba(0,0,0,0.05)}[role="alert"] a{color:#20AA76;text-decoration:none}[role="alert"] a:visited{color:#20AA76}[role="alert"] a:hover,[role="alert"] a:active,[role="alert"] a:focus{color:#25c488;text-decoration:none}[role="alert"] a.link-readmore{margin:0}[role="alert"] dl{margin:0 10px;padding:25px 0}[role="alert"] dl:before,[role="alert"] dl:after{content:"";display:table}[role="alert"] dl:after{clear:both}[role="alert"] dl dt i.icon{color:#20AA76;margin-right:8px}[role="alert"] dl dd{float:left;width:60%;margin-top:0;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif}[role="alert"] dl .link-readmore{margin-left:10px}@media screen and (min-width: 768px){[role="alert"] dt{float:left;width:31%;padding-right:2%}[role="alert"] dl{margin:0}}[role="contentinfo"]{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;position:relative;background:#44B78B;clear:both;margin-top:0px}[role="contentinfo"]:before,[role="contentinfo"]:after{content:"";display:table}[role="contentinfo"]:after{clear:both}[role="contentinfo"] .container{overflow:hidden}[role="contentinfo"] .subfooter{padding:0 10px}[role="contentinfo"] .subfooter:before,[role="contentinfo"] .subfooter:after{content:"";display:table}[role="contentinfo"] .subfooter:after{clear:both}@media screen and (min-width: 768px){[role="contentinfo"] .subfooter{padding:0}}[role="contentinfo"] .subfooter .col:first-child h2{border-top:0}@media screen and (min-width: 768px){[role="contentinfo"] .subfooter .col{float:left;margin-bottom:-999px;padding:0 3% 999px 0;width:30%}}[role="contentinfo"] .subfooter .col:first-child{margin-left:0;padding-left:0}[role="contentinfo"] .subfooter .col.last-child{margin-right:0;padding-right:0}[role="contentinfo"] h2{font-size:16px;font-size:1.6rem;border-top:1px solid #CFE3DC;color:#fff;font-weight:700;margin-top:20px;padding:30px 0 10px}@media screen and (min-width: 768px){[role="contentinfo"] h2{border:none;margin-top:0}}[role="contentinfo"] ul{font-size:14px;font-size:1.4rem;font-weight:400;list-style:none;margin:15px 0 0 0;padding:0 0 30px}[role="contentinfo"] ul li{margin:10px 0 0;padding:0}[role="contentinfo"] ul a{color:#F1FFF7;text-decoration:none}[role="contentinfo"] ul a:hover,[role="contentinfo"] ul a:active,[role="contentinfo"] ul a:focus{text-decoration:underline}[role="contentinfo"] .footer{background:#0C4B33;margin-top:20px;padding:10px 0 30px;color:#2B8C67}[role="contentinfo"] .footer .footer-logo{float:left;width:33%}[role="contentinfo"] .footer .logo{margin-right:0;margin-top:28px}.mdzr-svg [role="contentinfo"] .footer .logo{background-position:left center;margin-right:0;margin-top:20px}[role="contentinfo"] .logo{font-size:40px;font-size:4rem;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;background:url(../img/logo-django.png) 0 0 no-repeat;color:#0C4B33;display:block;font-weight:700;height:50px;margin:10px;overflow:hidden;text-decoration:none;text-indent:100%;width:142px}@media screen and (min-width: 768px){[role="contentinfo"] .logo{float:left;margin:20px 90px 0 0}}.mdzr-svg [role="contentinfo"] .logo{background:url(../img/logo-django.svg) center center no-repeat;height:39px;width:109px}[role="contentinfo"] .thanks{font-size:12px;font-size:1.2rem;color:#2B8C67;margin:0;padding:0}@media screen and (min-width: 768px){[role="contentinfo"] .thanks{border:none}}[role="contentinfo"] .thanks li{margin:0;padding:17px 10px 11px;display:block;clear:both}[role="contentinfo"] .thanks li:before,[role="contentinfo"] .thanks li:after{content:"";display:table}[role="contentinfo"] .thanks li:after{clear:both}@media screen and (min-width: 768px){[role="contentinfo"] .thanks li{background:none;float:left;clear:none;padding:0 3% 0 0;width:30%}[role="contentinfo"] .thanks li.design span.ampersand,[role="contentinfo"] .thanks li.design a{display:inline-block;vertical-align:top}[role="contentinfo"] .thanks li.design span.ampersand.threespot,[role="contentinfo"] .thanks li.design a.threespot{clear:both}[role="contentinfo"] .thanks li.design span.ampersand.ampersand,[role="contentinfo"] .thanks li.design a.ampersand{position:relative;top:6px;margin:0 6px;line-height:36px}}[role="contentinfo"] .thanks li span.ampersand{line-height:24px}[role="contentinfo"] .thanks span{display:block;height:24px;line-height:36px;padding-right:12px;white-space:nowrap}[role="contentinfo"] .thanks a{display:block;height:33px;overflow:hidden;text-indent:-200px;width:94px}@media screen and (min-width: 768px){[role="contentinfo"] .thanks a{clear:both;margin-top:5px}}[role="contentinfo"] .thanks a.rackspace{background:url(../img/logo-rackspace.png) no-repeat left center}.mdzr-svg [role="contentinfo"] .thanks a.rackspace{background:url(../img/logo-rackspace.svg) no-repeat left center}[role="contentinfo"] .thanks a.threespot{background:url(../img/logo-threespot.png) no-repeat left center}.mdzr-svg [role="contentinfo"] .thanks a.threespot{background:url(../img/logo-threespot.svg) no-repeat left center}[role="contentinfo"] .thanks a.andrevv{background:url(../img/logo-andrevv.png) no-repeat left center}.mdzr-svg [role="contentinfo"] .thanks a.andrevv{background:url(../img/logo-andrevv.svg) no-repeat left center}[role="contentinfo"] .copyright{font-size:12px;font-size:1.2rem;clear:both;margin:20px 0 0 10px}@media screen and (min-width: 768px){[role="contentinfo"] .copyright{max-width:80%;padding-top:30px;margin:0}}[role="contentinfo"] .copyright a{color:#2B8C67}.backtotop{color:#20AA76;text-decoration:none;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:block;font-weight:700;margin:10px 0;padding:10px 0;text-align:center;text-transform:uppercase}.backtotop:visited{color:#20AA76}.backtotop:hover,.backtotop:active,.backtotop:focus{color:#25c488;text-decoration:none}@media screen and (min-width: 768px){.backtotop{display:none}}.cta,a.cta{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:700;-webkit-appearance:none;-moz-appearance:none;background:#44B78B;border:none;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;color:#fff;display:block;-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:auto;margin:30px auto 0;padding:1em 1.5em;text-align:center;text-decoration:none}@media screen and (min-width: 768px){.cta,a.cta{margin:20px auto;max-width:400px}}.cta em,a.cta em{color:#C9F0DD;font-style:normal}.cta:hover,.cta:focus,a.cta:hover,a.cta:focus{background:#51be95}.cta:active,a.cta:active{background:#41b085}[role="complementary"] .cta,[role="complementary"] a.cta{font-size:16px;font-size:1.6rem}[role="complementary"] .cta+.link-readmore,[role="complementary"] a.cta+.link-readmore{display:block;text-align:center}@media screen and (min-width: 768px){[role="complementary"] .cta+.link-readmore,[role="complementary"] a.cta+.link-readmore{margin-top:-10px}}.cta.outline,a.cta.outline{background:none;border:1px solid #CFE3DC;color:#859D94;font-weight:400}.cta.outline em,a.cta.outline em{color:#0C4B33}.cta.outline:hover,a.cta.outline:hover{border-color:#20AA76;color:#20AA76}.cta.outline:hover em,a.cta.outline:hover em{color:#20AA76}.cta.outline:active,a.cta.outline:active{border-color:#44B78B;color:#44B78B}.cta.outline:active em,a.cta.outline:active em{color:#44B78B}.link-green{color:#20AA76;text-decoration:none}.link-green:visited{color:#20AA76}.link-green:hover,.link-green:active,.link-green:focus{color:#25c488;text-decoration:none}.link-readmore{color:#20AA76;text-decoration:none;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:inline-block;margin:10px 0;font-weight:700;text-transform:uppercase}.link-readmore:visited{color:#20AA76}.link-readmore:hover,.link-readmore:active,.link-readmore:focus{color:#25c488;text-decoration:none}.link-readmore:after{content:" ›";font-size:1.2em}.link-readmore.back-link:after{content:""}.link-readmore.back-link:before{content:"‹ ";font-size:1.2em}[role="complementary"] .link-readmore{font-size:12px;font-size:1.2rem}.meta,.list-links dd{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:block;line-height:1.3;margin:25px 0 20px}.meta a,.list-links dd a{color:#20AA76;text-decoration:none}.meta a:visited,.list-links dd a:visited{color:#20AA76}.meta a:hover,.list-links dd a:hover,.meta a:active,.list-links dd a:active,.meta a:focus,.list-links dd a:focus{color:#25c488;text-decoration:none}.layout-2col{margin:20px 0}@media screen and (min-width: 768px){.layout-2col{margin:0}.layout-2col:before,.layout-2col:after{content:"";display:table}.layout-2col:after{clear:both}.layout-2col .col{float:left;width:46%;margin:0 4%}.layout-2col .col:first-child{margin-left:0}.layout-2col .col.last-child{margin-right:0}.layout-2col .one-third{width:29%}.layout-2col .two-third{width:62%}}.blue{color:#20AA76}.label{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem;color:#cacfcc;display:block;font-weight:700;margin:20px 0 10px;text-transform:uppercase}.label.form-controls{font-size:14px;font-size:1.4rem;display:block;margin:0;position:relative;text-align:left}.label.form-controls span{cursor:pointer}.label.form-controls span:hover,.label.form-controls span:active,.label.form-controls span:focus{color:#afb7b3}@media screen and (min-width: 768px){.callout-right{float:right;margin:26px 0 0 35px;width:33%}.callout-right.two-thirds{width:60%}}.callout-right img{display:block;max-width:100%}@media screen and (min-width: 768px){.callout-left{float:left;margin:26px 35px 0 0;width:33%}.callout-left.two-thirds{width:60%}}.callout-left img{display:block;max-width:100%}.codedump{background:#f8f8f8;border:1px solid #CFE3DC;padding:10px;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;line-height:1.6em}.list-events{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;list-style:none;margin:0;padding:0}.list-events li{font-size:18px;font-size:1.8rem;border-top:1px solid #CFE3DC;display:block;line-height:1.3;margin:0;padding:20px 0 0 30px;position:relative}.list-events li i{font-size:16px;font-size:1.6rem;color:#93D7B7;display:block;left:0;line-height:20px;height:30px;position:absolute;text-align:center;top:20px;width:24px}.list-events li:first-child{border-top:0;padding-top:0}.list-events li:first-child i{top:0px}.list-events .meta,.list-events .list-links dd,.list-links .list-events dd{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;display:block;margin-top:10px}.list-events a{color:#20AA76;text-decoration:none}.list-events a:visited{color:#20AA76}.list-events a:hover,.list-events a:active,.list-events a:focus{color:#25c488;text-decoration:none}.list-tags{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:12px;font-size:1.2rem;font-weight:700;list-style:none;margin:0;padding:0;text-transform:uppercase}.list-tags li{margin-top:10px}.list-tags a{background:#93D7B7;color:#F1FFF7;display:inline-block;line-height:1.2;margin:0;padding:8px 10px 5px;text-decoration:none}.list-tags a:hover,.list-tags a:active,.list-tags a:focus{background-color:#44B78B;color:#fff}.list-news{list-style:none;margin:0;padding:0}.list-news h2{font-weight:400;margin-bottom:5px}.list-news li{border-top:1px solid #CFE3DC;margin-top:35px;padding-top:10px}.list-news li:first-child{border:none;margin-top:0;padding-top:0}.list-news .meta,.list-news .list-links dd,.list-links .list-news dd{margin-top:10px;color:#859D94}.list-news .meta a:link,.list-news .list-links dd a:link,.list-links .list-news dd a:link{color:#798780;text-decoration:underline}.list-case-study{list-style:none;margin:0;padding:0 0 10px}.list-case-study:before,.list-case-study:after{content:"";display:table}.list-case-study:after{clear:both}.list-case-study p{font-size:14px;font-size:1.4rem;margin:10px 0 5px}.list-case-study li{border-top:1px solid #CFE3DC;margin-top:20px;padding-top:20px}@media screen and (min-width: 1024px){.list-case-study li{border:none;float:left;padding-right:5%;padding-top:0;width:28%}.list-case-study li:nth-child(3):after{clear:both;content:"";display:block;margin-bottom:30px}}.list-case-study li>a{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;color:#20AA76;text-decoration:none;font-size:12px;font-size:1.2rem;font-weight:700;margin-top:10px;text-transform:uppercase}.list-case-study li>a:visited{color:#20AA76}.list-case-study li>a:hover,.list-case-study li>a:active,.list-case-study li>a:focus{color:#25c488;text-decoration:none}.list-case-study li>a:after{content:" ›";font-size:1.2em}.list-case-study h3{margin:10px 0 20px;padding:0}.list-case-study h3.logo{text-indent:-1000%;overflow:hidden}.list-case-study [title="Knight Foundation"]{background:url(../img/logo-knight.png) no-repeat bottom left;height:25px;padding-top:7px;width:190px}.mdzr-svg .list-case-study [title="Knight Foundation"]{background:url(../img/logo-knight.svg) no-repeat bottom left}.list-case-study [title="Mozilla"]{background:url(../img/logo-mozilla.png) no-repeat bottom left;height:32px;width:120px}.mdzr-svg .list-case-study [title="Mozilla"]{background:url(../img/logo-mozilla.svg) no-repeat bottom left}.list-case-study [title="Disqus"]{background:url(../img/logo-disqus.png) no-repeat bottom left;height:28px;padding-top:4px;width:140px}.mdzr-svg .list-case-study [title="Disqus"]{background:url(../img/logo-disqus.svg) no-repeat bottom left}.list-case-study.single-col li{margin-top:0;margin-bottom:30px;width:auto}.list-case-study.single-col li p{font-size:18px;font-size:1.8rem;margin-right:40px}.list-case-study.single-col li h3{margin-top:20px}.case-study-logo{max-width:50%;max-height:70px;height:auto;margin:40px 0 0}.list-link-soup{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem;border-top:1px solid #CFE3DC;list-style:none;margin:20px 0 0;padding:20px 0 10px}.list-link-soup:before,.list-link-soup:after{content:"";display:table}.list-link-soup:after{clear:both}.list-link-soup li{float:left;margin:10px 5% 0 0;width:45%}@media screen and (min-width: 768px){.list-link-soup li{margin-right:3%;width:30%}}.list-link-soup a{color:#20AA76;text-decoration:none}.list-link-soup a:visited{color:#20AA76}.list-link-soup a:hover,.list-link-soup a:active,.list-link-soup a:focus{color:#25c488;text-decoration:none}[role="complementary"] .list-link-soup li{float:none}h2+.list-link-soup{border-top:0}.list-features{margin:50px 0 40px}.list-features dt{font-size:24px;font-size:2.4rem;border-top:1px solid #CFE3DC;padding-top:25px}.list-features i{color:#F1FFF7;margin-right:10px;width:40px;height:40px;-moz-border-radius:25px;-webkit-border-radius:25px;border-radius:25px;background:#20AA76;line-height:1.68em;display:inline-block;text-align:center}.list-features i.icon-briefcase{line-height:1.7em}.list-features i.icon-dashboard{line-height:1.5em}@media screen and (min-width: 768px){.list-features{padding-bottom:40px}.list-features dt{margin-top:60px;padding:60px 0 0 245px;position:relative}.list-features dt:first-child{margin-top:20px}.list-features dt.even{padding-left:0;padding-right:245px}.list-features dt.even i{left:auto !important;right:0}.list-features dd{padding-left:245px;min-height:140px}.list-features dd.even{padding-left:0;padding-right:245px}.list-features i{font-size:120px;font-size:12rem;display:block;height:200px;left:0;position:absolute;text-align:center;top:60px;width:200px;margin-right:0}.mdzr-borderradius .list-features i{background:#44B78B;-moz-border-radius:100px;-webkit-border-radius:100px;border-radius:100px;color:#fff}.mdzr-svg .list-features i{background:url(../img/bg-features.svg) no-repeat center center}.mdzr-svg .list-features i.icon-bolt{background-position:-150px -269px}.mdzr-svg .list-features i.icon-briefcase{background-position:-354px -7px}.mdzr-svg .list-features i.icon-lock{background-position:-36px -96px}.mdzr-svg .list-features i.icon-dashboard{background-position:-270px -9px}.mdzr-svg .list-features i.icon-cogs{background-position:-334px -12px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i{-moz-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;-webkit-transition:all 0.3s ease-out;transition:all 0.3s ease-out;-moz-transform:rotate(0.5turn);-ms-transform:rotate(0.5turn);-webkit-transform:rotate(0.5turn);transform:rotate(0.5turn)}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.inview{-moz-transform:rotate(0turn);-ms-transform:rotate(0turn);-webkit-transform:rotate(0turn);transform:rotate(0turn)}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-bolt{background-position:40px -369px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-bolt.inview{background-position:-150px -269px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-briefcase{background-position:-494px 207px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-briefcase.inview{background-position:-354px -7px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-lock{background-position:144px -206px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-lock.inview{background-position:-36px -96px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-dashboard{background-position:-360px 201px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-dashboard.inview{background-position:-270px -9px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-cogs{background-position:-500px -180px}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .list-features i.icon-cogs.inview{background-position:-334px -12px}.list-features i :-o-prefocus,.list-features i{background:#44B78B !important;-moz-transition:none !important;-o-transition:none !important;-webkit-transition:none !important;transition:none !important;-moz-transform:none !important;-ms-transform:none !important;-webkit-transform:none !important;transform:none !important}}.homepage .list-features{padding-bottom:0}.homepage .list-features dl{padding-top:0}.homepage .list-features i{color:#F1FFF7;margin-right:10px;width:40px;height:40px;top:10px;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;background:#20AA76;display:inline-block;text-align:center;font-size:24px;font-size:2.4rem}.mdzr-svg.mdzr-borderradius.mdzr-cssanimations .homepage .list-features i{-moz-transition:none;-o-transition:none;-webkit-transition:none;transition:none;-moz-transform:rotate(0);-ms-transform:rotate(0);-webkit-transform:rotate(0);transform:rotate(0)}@media screen and (min-width: 768px){.homepage .list-features dt{padding:20px 0 0px 110px;font-size:18px;font-size:1.8rem;border-top:0;margin-top:0}.homepage .list-features dd{padding:0 60px 20px 110px;min-height:0}.homepage .list-features dd p{margin-top:0;font-size:18px;font-size:1.8rem}.homepage .list-features i{margin-right:10px;width:80px;height:80px;top:20px;-moz-border-radius:40px;-webkit-border-radius:40px;border-radius:40px;font-size:46px;font-size:4.6rem}}@media screen and (min-width: 768px){.list-collapsing-header{float:left}.section .list-collapsing-header h2{margin:40px 0 20px}.list-collapsing-header+.form-controls.label{margin:50px 0 0;text-align:right}.form-controls.label{float:right}}.list-collapsing{border-bottom:1px solid #CFE3DC;list-style:none;margin:30px 0;padding:0;clear:both}.list-collapsing.active>li{border-top:1px solid #CFE3DC;margin:0;padding:0}.list-collapsing.active>li.active h2 .collapsing-icon:before{content:"\f068"}.list-collapsing.active h2{font-size:18px;font-size:1.8rem;cursor:pointer;margin:0;padding:18px 40px 18px 0;position:relative}.list-collapsing.active h2:hover,.list-collapsing.active h2:focus,.list-collapsing.active h2:active{color:#1d915c;outline:none}.list-collapsing.active h2 .collapsing-icon{position:absolute;right:0;top:24px}.list-collapsing.active h2 .collapsing-icon:before{content:"\f067"}.list-collapsing.active h2.bullet-icon{padding-left:1.5em}.list-collapsing.active h2.bullet-icon>i:first-child{position:absolute;top:24px;left:0}.list-collapsing.active .collapsing-content{overflow:hidden;max-height:0px;-moz-transition:all 0.5s ease-out;-o-transition:all 0.5s ease-out;-webkit-transition:all 0.5s ease-out;transition:all 0.5s ease-out}.list-collapsing.active li.active .collapsing-content{max-height:1000px;overflow:auto}.list-image{list-style:none;margin:0;padding:0}.list-image li{border-top:1px solid #CFE3DC;margin-top:20px;padding-top:40px}@media screen and (min-width: 768px){.list-image li{margin-top:20px;padding-top:40px}.list-image li:before,.list-image li:after{content:"";display:table}.list-image li:after{clear:both}}.list-image li:first-child{border:none;padding-top:0}.list-image a{text-decoration:none}.list-image a:hover,.list-image a:active,.list-image a:focus{color:#798780}.list-image a.link-readmore{margin:0}.list-image img{display:block;margin:0 auto 25px;max-width:100%}@media screen and (min-width: 768px){.list-image img{float:left;margin:0 40px 0 0;max-width:200px;max-height:200px}.list-image h2,.list-image h3,.list-image h4,.list-image p{padding-left:240px}.list-image h3{margin-top:10px}}.layout-secondary .list-image img,[role="complementary"] .list-image img{float:left;max-width:40%;max-height:120px;margin:0 20px 10px 0}.layout-secondary .list-image h2,.layout-secondary .list-image h3,.layout-secondary .list-image h4,.layout-secondary .list-image p,[role="complementary"] .list-image h2,[role="complementary"] .list-image h3,[role="complementary"] .list-image h4,[role="complementary"] .list-image p{padding-left:0px;border:0}.layout-secondary .list-image h3,[role="complementary"] .list-image h3{font-size:14px;font-size:1.4rem;margin-top:0;margin-bottom:1em;padding-bottom:0;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:700}#s-django-documentation,#s-feed{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif}.list-outline{font-size:16px;font-size:1.6rem;line-height:1.3;list-style:none;margin:0;padding:0}.list-outline a{text-decoration:none}.list-outline>li>ul>li{margin-top:12px}.list-outline>li>ul>li:first-child{margin-top:6px}.list-outline>li>a{text-transform:uppercase;font-weight:700;color:#20AA76;text-decoration:none}.list-outline>li>a:visited{color:#20AA76}.list-outline>li>a:hover,.list-outline>li>a:active,.list-outline>li>a:focus{color:#25c488;text-decoration:none}.list-outline>li>ul{list-style:none;font-size:12px;font-size:1.2rem;padding:5px 0 0 10px}.list-outline>li>ul>li>a{font-weight:700;text-transform:uppercase;color:#20AA76;text-decoration:none}.list-outline>li>ul>li>a:visited{color:#20AA76}.list-outline>li>ul>li>a:hover,.list-outline>li>ul>li>a:active,.list-outline>li>ul>li>a:focus{color:#25c488;text-decoration:none}.list-outline>li>ul>li ul{font-size:14px;font-size:1.4rem;padding:0 0 0 20px}.section h2{margin:50px 0 30px}.section h3{margin:40px 0 20px}.headerlink{opacity:0;padding-left:10px;font-size:0.8em;position:relative;top:-0.17em;font-weight:700;text-decoration:none;-moz-transition:opacity 200ms ease-in-out;-o-transition:opacity 200ms ease-in-out;-webkit-transition:opacity 200ms ease-in-out;transition:opacity 200ms ease-in-out}h1:hover>.headerlink,h2:hover>.headerlink,h3:hover>.headerlink,h4:hover>.headerlink,h5:hover>.headerlink,h6:hover>.headerlink,dl:hover>.headerlink,dt:hover>.headerlink{opacity:1}.note,.admonition,.help-block{background:#F1FFF7;padding:15px 20px 15px 70px;border:1px solid #C9F0DD;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin:25px 0;position:relative}.note h1,.note h2,.note h3,.note h4,.admonition h1,.admonition h2,.admonition h3,.admonition h4,.help-block h1,.help-block h2,.help-block h3,.help-block h4{margin-top:20px}.note p,.admonition p,.help-block p{margin:0.8em 0}.note .first,.admonition .first,.help-block .first{margin-top:0}.note .admonition-title,.admonition .admonition-title,.help-block .admonition-title{font-weight:bold}.note .admonition-title::before,.admonition .admonition-title::before,.help-block .admonition-title::before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;top:20px;left:20px;font-size:30px;width:34px;text-align:center;content:"";opacity:0.5}.note.warning,.admonition.warning,.help-block.warning{background-color:#FFFDF1;border-color:#F5F1C7}.note.warning .admonition-title::before,.admonition.warning .admonition-title::before,.help-block.warning .admonition-title::before{color:#E9BD46;content:""}.note.admonition-philosophy .admonition-title::before,.admonition.admonition-philosophy .admonition-title::before,.help-block.admonition-philosophy .admonition-title::before{content:""}.note.admonition-behind-the-scenes .admonition-title::before,.admonition.admonition-behind-the-scenes .admonition-title::before,.help-block.admonition-behind-the-scenes .admonition-title::before{content:""}.note .last,.note .highlight,.admonition .last,.admonition .highlight,.help-block .last,.help-block .highlight{margin-bottom:0px}.browse-horizontal{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;font-weight:700;border-top:1px solid #CFE3DC;border-bottom:1px solid #CFE3DC;padding:20px 0;margin-top:2em}.browse-horizontal:before,.browse-horizontal:after{content:"";display:table}.browse-horizontal:after{clear:both}.browse-horizontal .left{float:left}.browse-horizontal .left .icon{margin-right:4px;font-size:12px;font-size:1.2rem}.browse-horizontal .right{float:right}.browse-horizontal .right .icon{margin-left:4px;font-size:12px;font-size:1.2rem}.browse-horizontal a{text-decoration:none}#doc-versions{position:fixed;right:15px;bottom:15px;margin:0;padding:0;z-index:1;list-style:none}#doc-versions .icon{margin-right:4px}#doc-versions li{display:none;background:#F1FFF7;margin:0 3px;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;color:#0C3C26;font-size:12px;font-size:1.2rem}#doc-versions li.current{display:inline-block;padding:8px 15px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}#doc-versions li a{display:inline-block;color:#44B78B;text-decoration:none;font-weight:700;padding:8px 15px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}#doc-versions li a:hover{color:#20AA76;border:1px solid #93D7B7}#doc-versions:hover li,#doc-versions .hover-on li{display:inline-block}#dev-warning,#outdated-warning{position:absolute;top:0;width:100%;padding:8px 20px 8px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;background-image:-webkit-linear-gradient(-45deg, rgba(0,0,0,0.04) 25%, transparent 25%, transparent 50%, rgba(0,0,0,0.04) 50%, rgba(0,0,0,0.04) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(-45deg, rgba(0,0,0,0.04) 25%, transparent 25%, transparent 50%, rgba(0,0,0,0.04) 50%, rgba(0,0,0,0.04) 75%, transparent 75%, transparent);background-image:linear-gradient(135deg, rgba(0,0,0,0.04) 25%,rgba(0,0,0,0) 25%,rgba(0,0,0,0) 50%,rgba(0,0,0,0.04) 50%,rgba(0,0,0,0.04) 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0));font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;text-align:center;background-color:#ffe761}@media screen and (min-width: 768px){#dev-warning,#outdated-warning{position:fixed;min-width:768px}}#outdated-warning{background-color:#ffbaba;color:#6A0E0E}#s-getting-help{display:none}#docs-content{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;line-height:1.5em}#docs-content h1,#docs-content h2,#docs-content h3,#docs-content h4,#docs-content h5,#docs-content h6{margin:0.6em 0;line-height:1.1em}#docs-content .section{padding:10px 0 20px}#docs-content img{display:block;max-width:100%}#docs-content a.reference{color:#6A0E0E;text-decoration:none;border-bottom:1px dotted #798780}#docs-content a.reference:visited{border-color:#971414}#docs-content a.reference:active,#docs-content a.reference:focus,#docs-content a.reference:hover{background:#F1FFF7;color:#BA2121}#docs-content a.reference em{font-style:normal}.versionadded,.versionchanged,.deprecated,.versionmodified{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-weight:bold;margin-bottom:20px;padding:10px 13px;border:1px solid #C9F0DD;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}.versionadded p,.versionchanged p,.deprecated p,.versionmodified p{font-weight:normal;margin-top:0.3em}.versionadded p:last-child,.versionchanged p:last-child,.deprecated p:last-child,.versionmodified p:last-child{margin-bottom:0}.deprecated .versionadded,.deprecated .versionchanged,.deprecated .deprecated,.deprecated .versionmodified{border:none;padding:0;margin-bottom:0;display:block}.deprecated p{font-weight:normal;margin-top:0}.deprecated p:last-child{margin-bottom:0}dl.function dt,dl.class dt,dl.method dt,dl.attribute dt{font-weight:700}dl.function dd,dl.class dd,dl.method dd,dl.attribute dd{padding-left:1.4em}table.docutils td,table.docutils th{border-bottom:1px solid #CFE3DC}#search-results span.highlighted{font-weight:700;color:#0C3C26}.list-links{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;list-style:none;margin:0;padding:10px 0 0}.list-links a{color:#20AA76;text-decoration:none}.list-links a:visited{color:#20AA76}.list-links a:hover,.list-links a:active,.list-links a:focus{color:#25c488;text-decoration:none}.list-links dt,.list-links li{font-size:16px;font-size:1.6rem;margin-top:15px;font-weight:400}.list-links dt:first-child,.list-links li:first-child{margin-top:0}.list-links dd{margin-top:0;margin-bottom:30px}[role="complementary"] .list-links{padding:0}[role="complementary"] .list-links dt,[role="complementary"] .list-links li{font-size:16px;font-size:1.6rem;border-top:1px solid #CFE3DC;margin-top:0;padding-top:20px}[role="complementary"] .list-links dt:first-child,[role="complementary"] .list-links li:first-child{border:none;padding-top:0}[role="complementary"] .list-links li{padding:14px 0 10px}[role="complementary"] .list-links dd{font-size:14px;font-size:1.4rem;margin-bottom:16px}.list-links+h2{margin-top:34px}.list-links-small{padding-left:0;list-style:none}.list-links-small a{color:#20AA76;text-decoration:none;text-decoration:none}.list-links-small a:visited{color:#20AA76}.list-links-small a:hover,.list-links-small a:active,.list-links-small a:focus{color:#25c488;text-decoration:none}.list-links-small li>a:before,.list-links-small dt>a:before{font-family:FontAwesome;font-weight:normal;font-style:normal;float:left;width:23px;height:20px}.list-links-small dt{font-weight:400}.list-links-small dd{color:#798780;padding-top:2px}.list-links-small.docs-list{list-style:none}.list-links-small.docs-list li>a:before,.list-links-small.docs-list dt>a:before{content:"\f0f6"}.list-links-small.docs-list dd{padding-left:24px}.list-links-small.news-list{list-style:none}.list-links-small.news-list li>a:before,.list-links-small.news-list dt>a:before{content:"\f0a1"}.list-links-small.news-list dt.event>a:before{content:"\f133"}.list-links-small.news-list dd{padding-left:24px}.list-links-small.resource-list{list-style:none}.list-links-small.resource-list li>a:before,.list-links-small.resource-list dt>a:before{content:"\f0c1"}.list-links-small.resource-list dd{padding-left:24px}.list-links-small.rss-list{list-style:none}.list-links-small.rss-list li>a:before,.list-links-small.rss-list dt>a:before{content:"\f09e"}.list-links-small.rss-list dd{padding-left:24px}form{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem}form input[type="search"],form input[type="text"],form input[type="email"],form input[type="password"],form input[type="url"],form textarea{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem;-webkit-appearance:none;-moz-appearance:none;background:#fff;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;cursor:auto;display:block;font-weight:400;height:30px;margin:10px 0px;padding:6px 14% 8px 10px;text-indent:0;vertical-align:middle;width:82%}@media screen and (min-width: 768px){form input[type="search"],form input[type="text"],form input[type="email"],form input[type="password"],form input[type="url"],form textarea{padding:6px 18% 8px 10px;width:80%}}form input[type="search"]::-ms-clear,form input[type="text"]::-ms-clear,form input[type="email"]::-ms-clear,form input[type="password"]::-ms-clear,form input[type="url"]::-ms-clear,form textarea::-ms-clear{display:none}form input[type="search"]:active,form input[type="search"]:focus,form input[type="text"]:active,form input[type="text"]:focus,form input[type="email"]:active,form input[type="email"]:focus,form input[type="password"]:active,form input[type="password"]:focus,form input[type="url"]:active,form input[type="url"]:focus,form textarea:active,form textarea:focus{outline:none;border-color:#20AA76}form textarea{height:auto}form input[type=checkbox],form input[type=radio]{margin-right:6px}form select{border:1px solid #CFE3DC;background:white;height:46px;padding:0 10px;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-size:16px;font-size:1.6rem}[role="complementary"] form select{height:36px;font-size:14px;font-size:1.4rem}form button{-moz-appearance:none;-webkit-appearance:none;background:#20AA76;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;color:white;border:0;height:46px;padding:0 15px;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:16px;font-size:1.6rem}form button:hover{background:#44B78B}.form-general fieldset{max-width:700px;border:0;padding:0;margin:15px 0}.form-general fieldset input[type="search"],.form-general fieldset input[type="text"],.form-general fieldset input[type="email"],.form-general fieldset input[type="password"],.form-general fieldset input[type="url"]{margin:10px 0}.form-input{min-height:40px;margin:30px 0 20px;position:relative}.form-input:focus{background:#000}.form-input button{background:none;border:none;color:#44B78B;height:40px;padding:0;position:absolute;right:2%;top:6%;width:40px}@media screen and (min-width: 768px){.form-input button{right:1%}}.form-input button i{font-size:20px;font-size:2rem;line-height:1}.form-input button:hover,.form-input button:focus,.form-input button:active{background:none;color:#0C4B33;outline:none}[role="complementary"] .form-input{min-height:30px;margin:20px 0 30px}[role="complementary"] .form-input input[type="search"],[role="complementary"] .form-input input[type="text"],[role="complementary"] .form-input input[type="email"]{height:20px;font-size:14px;font-size:1.4rem}[role="complementary"] .form-input button{height:30px;width:30px;top:3px}@media screen and (min-width: 768px){[role="complementary"] .form-input button{right:0}}[role="complementary"] .form-input button i{font-size:20px;font-size:2rem}form.donate{max-width:150px}form.donate label{position:absolute;left:0px;color:#2B8C67;padding-top:0.3em;padding-left:0.5em}form.donate input[type=text]{padding-left:20px;padding-right:9px}div[role=main] form.donate label{padding-top:0.7em}::-webkit-input-placeholder,:-moz-placeholder,::-moz-placeholder,:-ms-input-placeholder{color:#859D94}.form-email h3{font-size:18px;font-size:1.8rem;margin:10px 0}.form-email .meta,.form-email .list-links dd,.list-links .form-email dd{margin:0}.form-email form{margin:10px 0 30px}.nav-pagination{font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;font-size:14px;font-size:1.4rem;border-top:1px solid #CFE3DC;font-weight:700;line-height:31px;list-style:none;margin:30px 0;padding:30px 0 0;text-align:center}.nav-pagination li{display:inline-block}.nav-pagination a{border:none;color:#798780;height:auto;width:auto;margin:0 5px;-moz-border-radius:15px;-webkit-border-radius:15px;border-radius:15px;display:block;text-decoration:none}@media screen and (min-device-width: 320px){.nav-pagination a{background:#798780;color:#fff;height:30px;margin:0 2px;width:30px}}.nav-pagination a.previous,.nav-pagination a.next{font-size:16px;font-size:1.6rem}@media screen and (min-device-width: 320px){.nav-pagination a.previous,.nav-pagination a.next{-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px;height:40px;line-height:43px;width:40px}}.nav-pagination a.previous{margin-right:10px}@media screen and (min-width: 768px){.nav-pagination a.previous{margin-right:70px}}.nav-pagination a.next{margin-left:10px;text-indent:1px}@media screen and (min-width: 768px){.nav-pagination a.next{margin-left:70px}}.nav-pagination a:hover,.nav-pagination a:focus,.nav-pagination a:active,.nav-pagination a.active{background:none;color:#20AA76}@media screen and (min-device-width: 320px){.nav-pagination a:hover,.nav-pagination a:focus,.nav-pagination a:active,.nav-pagination a.active{background:#20AA76;color:white}}.mdzr-no-borderradius .nav-pagination a{display:inline;background:none;color:#798780;height:auto;width:auto;margin:0 5px !important}.mdzr-no-borderradius .nav-pagination a:hover,.mdzr-no-borderradius .nav-pagination a:active,.mdzr-no-borderradius .nav-pagination a:focus,.mdzr-no-borderradius .nav-pagination a.active{background:none;color:#20AA76}hr{border:0;border-top:1px solid #CFE3DC}.badge{-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-size:12px;padding:2px 6px;margin:0 5px;letter-spacing:0px;position:relative;bottom:0.3em;color:#F1FFF7;background-color:#20AA76}.user-info .avatar{padding:20px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;float:right}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.clearfix:before,.clearfix:after,.group-container:before,.group-container:after{content:"";display:table}.clearfix:after,.group-container:after{clear:both}.fundraising-index{margin-top:50px}.fundraising-index .fundraising-heart{width:100%;float:none}.fundraising-index .fundraising-heart img,.fundraising-index .fundraising-heart svg{width:100%;height:auto}.fundraising-index .fundraising-heart rect{-moz-transition:opacity 250ms ease-out;-o-transition:opacity 250ms ease-out;-webkit-transition:opacity 250ms ease-out;transition:opacity 250ms ease-out}.fundraising-index .fundraising-heart rect.faded{opacity:0.05}.fundraising-index .fundraising-heart rect.faded:hover{opacity:0.9}@media screen and (min-width: 768px){.fundraising-index .fundraising-heart{width:55%;float:left}}.fundraising-index .description{margin-left:5%;width:100%;float:none;margin-top:30px}@media screen and (min-width: 768px){.fundraising-index .description{width:40%;float:left;margin-top:0px}}.fundraising-index .description h2{margin-top:0;font-size:28px;font-size:2.8rem}.fundraising-index .donate select{width:80%}@media screen and (min-width: 768px){.fundraising-index .donate select{width:100%}}.fundraising-index .donate .cta{margin:10px 0}.fundraising-index .donate .custom-donation{display:none}.fundraising-index .donate .prefix{float:left;font-size:19px;font-size:1.9rem;margin:8px 9px 0 3px}.fundraising-index .donate input[type="text"]{width:70%}.fundraising-index .cls{clear:both}.fundraising-donation select{width:100%}.fundraising-donation input.error{border:1px solid #BA2121 !important}.fundraising-donation p.validation-errors{color:#BA2121}.fundraising-donation .custom-donation{display:none;margin-top:10px}.fundraising-sidebar{clear:both}.fundraising-sidebar .small-heart{margin-top:20px;width:20%;float:left;margin-bottom:20px}.fundraising-sidebar .small-heart img{width:100%;max-width:64px}.fundraising-sidebar .small-cta{width:70%;float:left;vertical-align:top;margin-left:5%;margin-right:5%;margin-bottom:20px}.footnote{color:#859D94;font-size:14px;font-size:1.4rem;margin-top:20px;text-align:center}form .footnote{margin-top:10px;text-align:left}.heros-section{overflow:hidden}.heros-section .heros{clear:both}.heros-section .heros .hero{width:25%;position:relative;height:auto}.heros-section .heros .hero div{width:100%}.heros-section .heros .hero-logo{height:170px;line-height:170px}.heros-section .heros .hero-logo img{vertical-align:middle}.heros-section .heros .hero-name{height:92px;vertical-align:top}.heros-section .heros .no-logo-hero{min-height:60px;margin-right:24px}.heros-section .heros div{float:left;text-align:center;margin:15px 0}.heros-section .heros div img{max-width:90%;max-height:170px}.heros-section .pagination{clear:both}pre.literal-block,.literal-block{font-size:14px;font-size:1.4rem;border:1px solid #EAEAEA;background:#F4F4F4;background:#f8f8f8;overflow:auto;border-radius:4px;margin:25px 0;padding:10px 20px;color:#0C4B33}.snippet-filename{background:#C9F0DD;color:#0C4B33;font-family:"Fira Mono", Consolas, Menlo, Monaco, "Courier New", Courier, monospace;font-variant-ligatures:no-common-ligatures;text-rendering:optimizeSpeed;font-size:1em;padding:5px 20px;-moz-border-radius:4px 4px 0 0;-webkit-border-radius:4px;border-radius:4px 4px 0 0}.snippet-filename+.highlight{margin-top:0;-moz-border-radius:0 0 4px 4px;-webkit-border-radius:0;border-radius:0 0 4px 4px;border-top:0}.highlight{font-size:14px;font-size:1.4rem;border:1px solid #EAEAEA;background:#F4F4F4;background:#f8f8f8;overflow:auto;border-radius:4px;margin:25px 0}.highlight pre{margin:15px 20px}.highlight li{margin-top:0;border-left:1px solid #EAEAEA;padding:0 0 2px 15px}.highlight li:first-child{padding-top:2px}.highlight .hll{background-color:#ffc}.highlight .c{color:#408080;font-style:italic}.highlight .err{border:1px solid red}.highlight .k{color:#008000;font-weight:bold}.highlight .o{color:#666}.highlight .cm{color:#408080;font-style:italic}.highlight .cp{color:#BC7A00}.highlight .c1{color:#408080;font-style:italic}.highlight .cs{color:#408080;font-style:italic}.highlight .gd{color:#A00000}.highlight .ge{font-style:italic}.highlight .gr{color:red}.highlight .gh{color:#000080;font-weight:bold}.highlight .gi{color:#00A000}.highlight .go{color:gray}.highlight .gp{color:#000080;font-weight:bold}.highlight .gs{font-weight:bold}.highlight .gu{color:#800080;font-weight:bold}.highlight .gt{color:#0040D0}.highlight .kc{color:#008000;font-weight:bold}.highlight .kd{color:#008000;font-weight:bold}.highlight .kn{color:#008000;font-weight:bold}.highlight .kp{color:green}.highlight .kr{color:#008000;font-weight:bold}.highlight .kt{color:#B00040}.highlight .m{color:#666}.highlight .s{color:#BA2121}.highlight .na{color:#7D9029}.highlight .nb{color:green}.highlight .nc{color:#0000FF;font-weight:bold}.highlight .no{color:#800}.highlight .nd{color:#a2f}.highlight .ni{color:#999999;font-weight:bold}.highlight .ne{color:#D2413A;font-weight:bold}.highlight .nf{color:blue}.highlight .nl{color:#A0A000}.highlight .nn{color:#0000FF;font-weight:bold}.highlight .nt{color:#008000;font-weight:bold}.highlight .nv{color:#19177C}.highlight .ow{color:#AA22FF;font-weight:bold}.highlight .w{color:#bbb}.highlight .mf{color:#666}.highlight .mh{color:#666}.highlight .mi{color:#666}.highlight .mo{color:#666}.highlight .sb{color:#BA2121}.highlight .sc{color:#BA2121}.highlight .sd{color:#BA2121;font-style:italic}.highlight .s2{color:#BA2121}.highlight .se{color:#BB6622;font-weight:bold}.highlight .sh{color:#BA2121}.highlight .si{color:#BB6688;font-weight:bold}.highlight .sx{color:green}.highlight .sr{color:#b68}.highlight .s1{color:#BA2121}.highlight .ss{color:#19177C}.highlight .bp{color:green}.highlight .vc{color:#19177C}.highlight .vg{color:#19177C}.highlight .vi{color:#19177C}.highlight .il{color:#666}.highlight .lineno{color:#000000;background-color:#dddddd}.styleguide .example{padding:0 20px 20px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin-top:20px;margin-bottom:64px}.styleguide .example:before{content:"Example";font-size:16px;font-weight:700;display:block;color:#CFE3DC;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;text-align:left;padding:10px 0}.styleguide .example [role="complementary"]{float:none;width:auto;padding:0;margin:0}.styleguide .iframe{display:block;height:400px;cursor:zoom-in;border:1px solid #CFE3DC;overflow:hidden}.styleguide .iframe iframe{pointer-events:none;position:relative;width:200%;border:0;height:800px;-moz-transform:scale(0.5) translate(-50%, -50%);-ms-transform:scale(0.5) translate(-50%, -50%);-webkit-transform:scale(0.5) translate(-50%, -50%);transform:scale(0.5) translate(-50%, -50%);top:0;left:0;overflow:hidden}.styleguide .swatches{margin:0;padding:0;list-style:none;margin:30px 0}.styleguide .swatches:before,.styleguide .swatches:after{content:"";display:table}.styleguide .swatches:after{clear:both}.styleguide .swatches li{width:30%;height:30px;margin-right:2%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;float:left}.styleguide .swatches li.text{background:#0C3C26}.styleguide .swatches li.green-dark{background:#0C4B33}.styleguide .swatches li.green{background:#20AA76}.styleguide .swatches li.green-light{background:#93D7B7}.styleguide .swatches li.white{background:#F1FFF7;border:1px solid #CFE3DC}.styleguide .swatches li.red-dark{background:#6A0E0E}.styleguide .swatches li.text-light{background:#798780}.styleguide .swatches li.green-medium-dark{background:#2B8C67}.styleguide .swatches li.green-medium{background:#44B78B}.styleguide .swatches li.green-very-light{background:#C9F0DD}.styleguide .swatches li.gray-line{background:#CFE3DC}.styleguide .swatches li.red{background:#BA2121}.styleguide #layout{overflow:hidden}.styleguide #icons .icon{font-size:32px;font-size:3.2rem;color:#20AA76;padding:0 .2em}@media print{*{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a,a:visited{text-decoration:underline}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}html{font-size:40%}.menu-button,.news-search,.backtotop,.nav-pagination,[role="contentinfo"]>.container,[role="contentinfo"] .logo,.thanks,[role="complementary"],[role="navigation"],.form-input{display:none !important}.logo{text-indent:0 !important}[role="contentinfo"],[role="contentinfo"] .copyright{margin:0 !important;padding:0 !important}.internal-container{float:none;width:auto}.list-news li{margin-top:0}}#dashboard .full-width [role="main"]{width:80%;max-width:1200px;margin:0 auto;text-align:center}.metric{height:8em;width:240px;padding:0 20px 10px 20px;margin:10px 10px 20px 10px;border:1px solid #CFE3DC;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;display:inline-block;position:relative}.metric h3{padding:10px;margin:0 -20px;font-size:18px;font-size:1.8rem;font-weight:200;display:block;text-align:left;color:#C9F0DD;background:#44B78B}.metric h3 a{color:#C9F0DD}.metric .value{position:absolute;bottom:0;left:0;width:100%;height:80%;padding:0;margin:0;text-align:center;font-size:5em;line-height:1.5em;font-family:"Roboto", Corbel, Avenir, "Lucida Grande", "Lucida Sans", sans-serif;z-index:10;pointer-events:none}.metric .value a{text-decoration:none;z-index:10}.metric .value .timestamp{font-size:0.16em;line-height:1em}.metric .sparkline{position:absolute;bottom:0;left:0;width:100%;height:54px;z-index:1}.graph{width:100%;margin:0 auto;height:500px} diff --git a/djangoproject/static/js/dashboard/dddash.js b/djangoproject/static/js/dashboard/dddash.js new file mode 100644 index 000000000..6366e10cd --- /dev/null +++ b/djangoproject/static/js/dashboard/dddash.js @@ -0,0 +1,27 @@ +define('dashboard/dddash', ['jquery'], function ($) { + return { + formatTimestamp: function formatTimestamp(timestamp, period) { + var d = new Date(timestamp); + if (period == 'instant') { + return $.plot.formatDate(d, "%b %d, %h:%M%p"); + + } else if (period == 'daily') { + return $.plot.formatDate(d, "%b %d"); + + } else if (period == 'weekly') { + // A bit more complicated than the above: the timestamp is in the + // middle of the week, so we have to bracket the date. This is + // something of a fudge here, but it works well enough. + var start = new Date(d.getTime() - (3 * 24 * 60 * 60 * 1000)); + var end = new Date(d.getTime() + (3 * 24 * 60 * 60 * 1000)); + return $.plot.formatDate(start, "%b %d") + ' - ' + $.plot.formatDate(end, "%b %d"); + } + }, + convertSecondsToMilliseconds: function convertSecondsToMilliseconds(data) { + for (var i = 0; i < data.length; i++) { + data[i][0] = data[i][0] * 1000; + } + return data; + } + } +}); diff --git a/djangoproject/static/js/dashboard/detail.js b/djangoproject/static/js/dashboard/detail.js new file mode 100644 index 000000000..fac7f945b --- /dev/null +++ b/djangoproject/static/js/dashboard/detail.js @@ -0,0 +1,76 @@ +define('dashboard/detail', ['jquery', 'jquery.flot', 'dashboard/dddash'], function ($, plot, dddash) { + $(function () { + var e = $("#graph"); + var url = "/metric/" + e.data('metric') + ".json?days=365"; + var hover = { + show: function (x, y, message) { + $('
    ').html(message) + .css({top: y, left: x}) + .appendTo('body') + .show(); + }, + hide: function () { + $("#hover").remove(); + } + }; + + $.getJSON(url, function (response) { + for (var i = 0; i < response.data.length; i++) { + response.data[i][0] = response.data[i][0] * 1000; + } + ; + var options = { + xaxis: { + mode: "time", + tickColor: "rgba(0,0,0,0)", + minTickSize: [1, "day"] + }, + yaxis: {min: 0, ticks: 4}, + grid: {borderWidth: 0, hoverable: true, color: "#0C3C26"}, + colors: ["#0C4B33"], + }; + if (response.period == "daily") { + options.bars = { + show: true, + barWidth: 22 * 60 * 60 * 1000, + align: "center", + }; + } else if (response.period == 'weekly') { + options.bars = { + show: true, + barWidth: 22 * 60 * 60 * 7 * 1000, + align: "center" + }; + } + var plot = $.plot(e, [response.data], options); + + var format_message = function (timestamp, measurement) { + var unit = measurement == 1 ? response.unit : response.unit_plural; + return dddash.formatTimestamp(timestamp, response.period) + '
    ' + measurement + ' ' + unit; + }; + + var previousPoint = null; + e.bind("plothover", function (event, pos, item) { + if (item) { + if (previousPoint != item.dataIndex) { + previousPoint = item.dataIndex; + hover.hide(); + var message = format_message.apply(null, item.datapoint); + if (response.period == 'instant') { + var x = item.pageX + 10, y = item.pageY + 10; + } else { + // I'd like this hover to be centered over the bar. This + // simple math sorta works, but it assumes a *lot* about + // the plot and basically won't scale. Grr. + var x = item.pageX - 40, y = item.pageY - 50; + } + hover.show(x, y, message); + } + } else { + hover.hide(); + previousPoint = null; + } + }); + }); + }); +}); diff --git a/djangoproject/static/js/dashboard/index.js b/djangoproject/static/js/dashboard/index.js new file mode 100644 index 000000000..e5636bf59 --- /dev/null +++ b/djangoproject/static/js/dashboard/index.js @@ -0,0 +1,43 @@ +define('dashboard/index', ['jquery', 'jquery.flot', 'dashboard/dddash'], function ($, flot, dddash) { + $(function () { + $(".metric .sparkline").each(function (index, elem) { + var e = $(elem); + var valueElement = e.parent().find('.value a'); + var timestampElement = e.parent().find('.timestamp'); + var originalValue = valueElement.html(); + var green = '#93D7B7'; + + var url = "/metric/" + e.data('metric') + ".json"; + $.getJSON(url, function (response) { + response.data = dddash.convertSecondsToMilliseconds(response.data); + $.plot(e, [response.data], { + xaxis: {show: false, mode: "time"}, + yaxis: {show: false, min: 0}, + grid: {borderWidth: 0, hoverable: true}, + colors: [green], + bars: { + show: true, + barWidth: (response.period == 'daily' ? 24 * 60 * 60 * 1000 : 24 * 60 * 60 * 7 * 1000), + fillColor: green, + lineWidth: 1, + align: "center" + } + }); + + e.bind('plothover', function (event, pos, item) { + if (item) { + valueElement.html(item.datapoint[1]); + timestampElement.html(dddash.formatTimestamp(item.datapoint[0], response.period)); + } else { + valueElement.html(originalValue); + timestampElement.html(' '); + } + }); + }); + + e.click(function () { + window.location = "/metric/" + e.data('metric') + '/'; + }) + }); + }); +}); diff --git a/djangoproject/static/js/lib/jquery-flot/.bower.json b/djangoproject/static/js/lib/jquery-flot/.bower.json new file mode 100644 index 000000000..2755dca37 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/.bower.json @@ -0,0 +1,18 @@ +{ + "name": "Flot", + "version": "0.8.3", + "main": "jquery.flot.js", + "dependencies": { + "jquery": ">= 1.2.6" + }, + "homepage": "https://github.com/flot/flot", + "_release": "0.8.3", + "_resolution": { + "type": "version", + "tag": "v0.8.3", + "commit": "453b017cc5acfd75e252b93e8635f57f4196d45d" + }, + "_source": "git://github.com/flot/flot.git", + "_target": "~0.8.3", + "_originalSource": "jquery-flot" +} \ No newline at end of file diff --git a/djangoproject/static/js/lib/jquery-flot/.gitignore b/djangoproject/static/js/lib/jquery-flot/.gitignore new file mode 100644 index 000000000..477d588c1 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/.gitignore @@ -0,0 +1,3 @@ +*.min.js +!excanvas.min.js +node_modules/ diff --git a/djangoproject/static/js/lib/jquery-flot/.travis.yml b/djangoproject/static/js/lib/jquery-flot/.travis.yml new file mode 100644 index 000000000..baa0031d5 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/.travis.yml @@ -0,0 +1,3 @@ +language: node_js +node_js: + - 0.8 diff --git a/djangoproject/static/js/lib/jquery-flot/API.md b/djangoproject/static/js/lib/jquery-flot/API.md new file mode 100644 index 000000000..e08b44cf1 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/API.md @@ -0,0 +1,1498 @@ +# Flot Reference # + +**Table of Contents** + +[Introduction](#introduction) +| [Data Format](#data-format) +| [Plot Options](#plot-options) +| [Customizing the legend](#customizing-the-legend) +| [Customizing the axes](#customizing-the-axes) +| [Multiple axes](#multiple-axes) +| [Time series data](#time-series-data) +| [Customizing the data series](#customizing-the-data-series) +| [Customizing the grid](#customizing-the-grid) +| [Specifying gradients](#specifying-gradients) +| [Plot Methods](#plot-methods) +| [Hooks](#hooks) +| [Plugins](#plugins) +| [Version number](#version-number) + +--- + +## Introduction ## + +Consider a call to the plot function: + +```js +var plot = $.plot(placeholder, data, options) +``` + +The placeholder is a jQuery object or DOM element or jQuery expression +that the plot will be put into. This placeholder needs to have its +width and height set as explained in the [README](README.md) (go read that now if +you haven't, it's short). The plot will modify some properties of the +placeholder so it's recommended you simply pass in a div that you +don't use for anything else. Make sure you check any fancy styling +you apply to the div, e.g. background images have been reported to be a +problem on IE 7. + +The plot function can also be used as a jQuery chainable property. This form +naturally can't return the plot object directly, but you can still access it +via the 'plot' data key, like this: + +```js +var plot = $("#placeholder").plot(data, options).data("plot"); +``` + +The format of the data is documented below, as is the available +options. The plot object returned from the call has some methods you +can call. These are documented separately below. + +Note that in general Flot gives no guarantees if you change any of the +objects you pass in to the plot function or get out of it since +they're not necessarily deep-copied. + + +## Data Format ## + +The data is an array of data series: + +```js +[ series1, series2, ... ] +``` + +A series can either be raw data or an object with properties. The raw +data format is an array of points: + +```js +[ [x1, y1], [x2, y2], ... ] +``` + +E.g. + +```js +[ [1, 3], [2, 14.01], [3.5, 3.14] ] +``` + +Note that to simplify the internal logic in Flot both the x and y +values must be numbers (even if specifying time series, see below for +how to do this). This is a common problem because you might retrieve +data from the database and serialize them directly to JSON without +noticing the wrong type. If you're getting mysterious errors, double +check that you're inputting numbers and not strings. + +If a null is specified as a point or if one of the coordinates is null +or couldn't be converted to a number, the point is ignored when +drawing. As a special case, a null value for lines is interpreted as a +line segment end, i.e. the points before and after the null value are +not connected. + +Lines and points take two coordinates. For filled lines and bars, you +can specify a third coordinate which is the bottom of the filled +area/bar (defaults to 0). + +The format of a single series object is as follows: + +```js +{ + color: color or number + data: rawdata + label: string + lines: specific lines options + bars: specific bars options + points: specific points options + xaxis: number + yaxis: number + clickable: boolean + hoverable: boolean + shadowSize: number + highlightColor: color or number +} +``` + +You don't have to specify any of them except the data, the rest are +options that will get default values. Typically you'd only specify +label and data, like this: + +```js +{ + label: "y = 3", + data: [[0, 3], [10, 3]] +} +``` + +The label is used for the legend, if you don't specify one, the series +will not show up in the legend. + +If you don't specify color, the series will get a color from the +auto-generated colors. The color is either a CSS color specification +(like "rgb(255, 100, 123)") or an integer that specifies which of +auto-generated colors to select, e.g. 0 will get color no. 0, etc. + +The latter is mostly useful if you let the user add and remove series, +in which case you can hard-code the color index to prevent the colors +from jumping around between the series. + +The "xaxis" and "yaxis" options specify which axis to use. The axes +are numbered from 1 (default), so { yaxis: 2} means that the series +should be plotted against the second y axis. + +"clickable" and "hoverable" can be set to false to disable +interactivity for specific series if interactivity is turned on in +the plot, see below. + +The rest of the options are all documented below as they are the same +as the default options passed in via the options parameter in the plot +commmand. When you specify them for a specific data series, they will +override the default options for the plot for that data series. + +Here's a complete example of a simple data specification: + +```js +[ { label: "Foo", data: [ [10, 1], [17, -14], [30, 5] ] }, + { label: "Bar", data: [ [11, 13], [19, 11], [30, -7] ] } +] +``` + + +## Plot Options ## + +All options are completely optional. They are documented individually +below, to change them you just specify them in an object, e.g. + +```js +var options = { + series: { + lines: { show: true }, + points: { show: true } + } +}; + +$.plot(placeholder, data, options); +``` + + +## Customizing the legend ## + +```js +legend: { + show: boolean + labelFormatter: null or (fn: string, series object -> string) + labelBoxBorderColor: color + noColumns: number + position: "ne" or "nw" or "se" or "sw" + margin: number of pixels or [x margin, y margin] + backgroundColor: null or color + backgroundOpacity: number between 0 and 1 + container: null or jQuery object/DOM element/jQuery expression + sorted: null/false, true, "ascending", "descending", "reverse", or a comparator +} +``` + +The legend is generated as a table with the data series labels and +small label boxes with the color of the series. If you want to format +the labels in some way, e.g. make them to links, you can pass in a +function for "labelFormatter". Here's an example that makes them +clickable: + +```js +labelFormatter: function(label, series) { + // series is the series object for the label + return '
    ' + label + ''; +} +``` + +To prevent a series from showing up in the legend, simply have the function +return null. + +"noColumns" is the number of columns to divide the legend table into. +"position" specifies the overall placement of the legend within the +plot (top-right, top-left, etc.) and margin the distance to the plot +edge (this can be either a number or an array of two numbers like [x, +y]). "backgroundColor" and "backgroundOpacity" specifies the +background. The default is a partly transparent auto-detected +background. + +If you want the legend to appear somewhere else in the DOM, you can +specify "container" as a jQuery object/expression to put the legend +table into. The "position" and "margin" etc. options will then be +ignored. Note that Flot will overwrite the contents of the container. + +Legend entries appear in the same order as their series by default. If "sorted" +is "reverse" then they appear in the opposite order from their series. To sort +them alphabetically, you can specify true, "ascending" or "descending", where +true and "ascending" are equivalent. + +You can also provide your own comparator function that accepts two +objects with "label" and "color" properties, and returns zero if they +are equal, a positive value if the first is greater than the second, +and a negative value if the first is less than the second. + +```js +sorted: function(a, b) { + // sort alphabetically in ascending order + return a.label == b.label ? 0 : ( + a.label > b.label ? 1 : -1 + ) +} +``` + + +## Customizing the axes ## + +```js +xaxis, yaxis: { + show: null or true/false + position: "bottom" or "top" or "left" or "right" + mode: null or "time" ("time" requires jquery.flot.time.js plugin) + timezone: null, "browser" or timezone (only makes sense for mode: "time") + + color: null or color spec + tickColor: null or color spec + font: null or font spec object + + min: null or number + max: null or number + autoscaleMargin: null or number + + transform: null or fn: number -> number + inverseTransform: null or fn: number -> number + + ticks: null or number or ticks array or (fn: axis -> ticks array) + tickSize: number or array + minTickSize: number or array + tickFormatter: (fn: number, object -> string) or string + tickDecimals: null or number + + labelWidth: null or number + labelHeight: null or number + reserveSpace: null or true + + tickLength: null or number + + alignTicksWithAxis: null or number +} +``` + +All axes have the same kind of options. The following describes how to +configure one axis, see below for what to do if you've got more than +one x axis or y axis. + +If you don't set the "show" option (i.e. it is null), visibility is +auto-detected, i.e. the axis will show up if there's data associated +with it. You can override this by setting the "show" option to true or +false. + +The "position" option specifies where the axis is placed, bottom or +top for x axes, left or right for y axes. The "mode" option determines +how the data is interpreted, the default of null means as decimal +numbers. Use "time" for time series data; see the time series data +section. The time plugin (jquery.flot.time.js) is required for time +series support. + +The "color" option determines the color of the line and ticks for the axis, and +defaults to the grid color with transparency. For more fine-grained control you +can also set the color of the ticks separately with "tickColor". + +You can customize the font and color used to draw the axis tick labels with CSS +or directly via the "font" option. When "font" is null - the default - each +tick label is given the 'flot-tick-label' class. For compatibility with Flot +0.7 and earlier the labels are also given the 'tickLabel' class, but this is +deprecated and scheduled to be removed with the release of version 1.0.0. + +To enable more granular control over styles, labels are divided between a set +of text containers, with each holding the labels for one axis. These containers +are given the classes 'flot-[x|y]-axis', and 'flot-[x|y]#-axis', where '#' is +the number of the axis when there are multiple axes. For example, the x-axis +labels for a simple plot with only a single x-axis might look like this: + +```html +
    +
    January 2013
    + ... +
    +``` + +For direct control over label styles you can also provide "font" as an object +with this format: + +```js +{ + size: 11, + lineHeight: 13, + style: "italic", + weight: "bold", + family: "sans-serif", + variant: "small-caps", + color: "#545454" +} +``` + +The size and lineHeight must be expressed in pixels; CSS units such as 'em' +or 'smaller' are not allowed. + +The options "min"/"max" are the precise minimum/maximum value on the +scale. If you don't specify either of them, a value will automatically +be chosen based on the minimum/maximum data values. Note that Flot +always examines all the data values you feed to it, even if a +restriction on another axis may make some of them invisible (this +makes interactive use more stable). + +The "autoscaleMargin" is a bit esoteric: it's the fraction of margin +that the scaling algorithm will add to avoid that the outermost points +ends up on the grid border. Note that this margin is only applied when +a min or max value is not explicitly set. If a margin is specified, +the plot will furthermore extend the axis end-point to the nearest +whole tick. The default value is "null" for the x axes and 0.02 for y +axes which seems appropriate for most cases. + +"transform" and "inverseTransform" are callbacks you can put in to +change the way the data is drawn. You can design a function to +compress or expand certain parts of the axis non-linearly, e.g. +suppress weekends or compress far away points with a logarithm or some +other means. When Flot draws the plot, each value is first put through +the transform function. Here's an example, the x axis can be turned +into a natural logarithm axis with the following code: + +```js +xaxis: { + transform: function (v) { return Math.log(v); }, + inverseTransform: function (v) { return Math.exp(v); } +} +``` + +Similarly, for reversing the y axis so the values appear in inverse +order: + +```js +yaxis: { + transform: function (v) { return -v; }, + inverseTransform: function (v) { return -v; } +} +``` + +Note that for finding extrema, Flot assumes that the transform +function does not reorder values (it should be monotone). + +The inverseTransform is simply the inverse of the transform function +(so v == inverseTransform(transform(v)) for all relevant v). It is +required for converting from canvas coordinates to data coordinates, +e.g. for a mouse interaction where a certain pixel is clicked. If you +don't use any interactive features of Flot, you may not need it. + + +The rest of the options deal with the ticks. + +If you don't specify any ticks, a tick generator algorithm will make +some for you. The algorithm has two passes. It first estimates how +many ticks would be reasonable and uses this number to compute a nice +round tick interval size. Then it generates the ticks. + +You can specify how many ticks the algorithm aims for by setting +"ticks" to a number. The algorithm always tries to generate reasonably +round tick values so even if you ask for three ticks, you might get +five if that fits better with the rounding. If you don't want any +ticks at all, set "ticks" to 0 or an empty array. + +Another option is to skip the rounding part and directly set the tick +interval size with "tickSize". If you set it to 2, you'll get ticks at +2, 4, 6, etc. Alternatively, you can specify that you just don't want +ticks at a size less than a specific tick size with "minTickSize". +Note that for time series, the format is an array like [2, "month"], +see the next section. + +If you want to completely override the tick algorithm, you can specify +an array for "ticks", either like this: + +```js +ticks: [0, 1.2, 2.4] +``` + +Or like this where the labels are also customized: + +```js +ticks: [[0, "zero"], [1.2, "one mark"], [2.4, "two marks"]] +``` + +You can mix the two if you like. + +For extra flexibility you can specify a function as the "ticks" +parameter. The function will be called with an object with the axis +min and max and should return a ticks array. Here's a simplistic tick +generator that spits out intervals of pi, suitable for use on the x +axis for trigonometric functions: + +```js +function piTickGenerator(axis) { + var res = [], i = Math.floor(axis.min / Math.PI); + do { + var v = i * Math.PI; + res.push([v, i + "\u03c0"]); + ++i; + } while (v < axis.max); + return res; +} +``` + +You can control how the ticks look like with "tickDecimals", the +number of decimals to display (default is auto-detected). + +Alternatively, for ultimate control over how ticks are formatted you can +provide a function to "tickFormatter". The function is passed two +parameters, the tick value and an axis object with information, and +should return a string. The default formatter looks like this: + +```js +function formatter(val, axis) { + return val.toFixed(axis.tickDecimals); +} +``` + +The axis object has "min" and "max" with the range of the axis, +"tickDecimals" with the number of decimals to round the value to and +"tickSize" with the size of the interval between ticks as calculated +by the automatic axis scaling algorithm (or specified by you). Here's +an example of a custom formatter: + +```js +function suffixFormatter(val, axis) { + if (val > 1000000) + return (val / 1000000).toFixed(axis.tickDecimals) + " MB"; + else if (val > 1000) + return (val / 1000).toFixed(axis.tickDecimals) + " kB"; + else + return val.toFixed(axis.tickDecimals) + " B"; +} +``` + +"labelWidth" and "labelHeight" specifies a fixed size of the tick +labels in pixels. They're useful in case you need to align several +plots. "reserveSpace" means that even if an axis isn't shown, Flot +should reserve space for it - it is useful in combination with +labelWidth and labelHeight for aligning multi-axis charts. + +"tickLength" is the length of the tick lines in pixels. By default, the +innermost axes will have ticks that extend all across the plot, while +any extra axes use small ticks. A value of null means use the default, +while a number means small ticks of that length - set it to 0 to hide +the lines completely. + +If you set "alignTicksWithAxis" to the number of another axis, e.g. +alignTicksWithAxis: 1, Flot will ensure that the autogenerated ticks +of this axis are aligned with the ticks of the other axis. This may +improve the looks, e.g. if you have one y axis to the left and one to +the right, because the grid lines will then match the ticks in both +ends. The trade-off is that the forced ticks won't necessarily be at +natural places. + + +## Multiple axes ## + +If you need more than one x axis or y axis, you need to specify for +each data series which axis they are to use, as described under the +format of the data series, e.g. { data: [...], yaxis: 2 } specifies +that a series should be plotted against the second y axis. + +To actually configure that axis, you can't use the xaxis/yaxis options +directly - instead there are two arrays in the options: + +```js +xaxes: [] +yaxes: [] +``` + +Here's an example of configuring a single x axis and two y axes (we +can leave options of the first y axis empty as the defaults are fine): + +```js +{ + xaxes: [ { position: "top" } ], + yaxes: [ { }, { position: "right", min: 20 } ] +} +``` + +The arrays get their default values from the xaxis/yaxis settings, so +say you want to have all y axes start at zero, you can simply specify +yaxis: { min: 0 } instead of adding a min parameter to all the axes. + +Generally, the various interfaces in Flot dealing with data points +either accept an xaxis/yaxis parameter to specify which axis number to +use (starting from 1), or lets you specify the coordinate directly as +x2/x3/... or x2axis/x3axis/... instead of "x" or "xaxis". + + +## Time series data ## + +Please note that it is now required to include the time plugin, +jquery.flot.time.js, for time series support. + +Time series are a bit more difficult than scalar data because +calendars don't follow a simple base 10 system. For many cases, Flot +abstracts most of this away, but it can still be a bit difficult to +get the data into Flot. So we'll first discuss the data format. + +The time series support in Flot is based on Javascript timestamps, +i.e. everywhere a time value is expected or handed over, a Javascript +timestamp number is used. This is a number, not a Date object. A +Javascript timestamp is the number of milliseconds since January 1, +1970 00:00:00 UTC. This is almost the same as Unix timestamps, except it's +in milliseconds, so remember to multiply by 1000! + +You can see a timestamp like this + +```js +alert((new Date()).getTime()) +``` + +There are different schools of thought when it comes to display of +timestamps. Many will want the timestamps to be displayed according to +a certain time zone, usually the time zone in which the data has been +produced. Some want the localized experience, where the timestamps are +displayed according to the local time of the visitor. Flot supports +both. Optionally you can include a third-party library to get +additional timezone support. + +Default behavior is that Flot always displays timestamps according to +UTC. The reason being that the core Javascript Date object does not +support other fixed time zones. Often your data is at another time +zone, so it may take a little bit of tweaking to work around this +limitation. + +The easiest way to think about it is to pretend that the data +production time zone is UTC, even if it isn't. So if you have a +datapoint at 2002-02-20 08:00, you can generate a timestamp for eight +o'clock UTC even if it really happened eight o'clock UTC+0200. + +In PHP you can get an appropriate timestamp with: + +```php +strtotime("2002-02-20 UTC") * 1000 +``` + +In Python you can get it with something like: + +```python +calendar.timegm(datetime_object.timetuple()) * 1000 +``` +In Ruby you can get it using the `#to_i` method on the +[`Time`](http://apidock.com/ruby/Time/to_i) object. If you're using the +`active_support` gem (default for Ruby on Rails applications) `#to_i` is also +available on the `DateTime` and `ActiveSupport::TimeWithZone` objects. You +simply need to multiply the result by 1000: + +```ruby +Time.now.to_i * 1000 # => 1383582043000 +# ActiveSupport examples: +DateTime.now.to_i * 1000 # => 1383582043000 +ActiveSupport::TimeZone.new('Asia/Shanghai').now.to_i * 1000 +# => 1383582043000 +``` + +In .NET you can get it with something like: + +```aspx +public static int GetJavascriptTimestamp(System.DateTime input) +{ + System.TimeSpan span = new System.TimeSpan(System.DateTime.Parse("1/1/1970").Ticks); + System.DateTime time = input.Subtract(span); + return (long)(time.Ticks / 10000); +} +``` + +Javascript also has some support for parsing date strings, so it is +possible to generate the timestamps manually client-side. + +If you've already got the real UTC timestamp, it's too late to use the +pretend trick described above. But you can fix up the timestamps by +adding the time zone offset, e.g. for UTC+0200 you would add 2 hours +to the UTC timestamp you got. Then it'll look right on the plot. Most +programming environments have some means of getting the timezone +offset for a specific date (note that you need to get the offset for +each individual timestamp to account for daylight savings). + +The alternative with core Javascript is to interpret the timestamps +according to the time zone that the visitor is in, which means that +the ticks will shift with the time zone and daylight savings of each +visitor. This behavior is enabled by setting the axis option +"timezone" to the value "browser". + +If you need more time zone functionality than this, there is still +another option. If you include the "timezone-js" library + in the page and set axis.timezone +to a value recognized by said library, Flot will use timezone-js to +interpret the timestamps according to that time zone. + +Once you've gotten the timestamps into the data and specified "time" +as the axis mode, Flot will automatically generate relevant ticks and +format them. As always, you can tweak the ticks via the "ticks" option +- just remember that the values should be timestamps (numbers), not +Date objects. + +Tick generation and formatting can also be controlled separately +through the following axis options: + +```js +minTickSize: array +timeformat: null or format string +monthNames: null or array of size 12 of strings +dayNames: null or array of size 7 of strings +twelveHourClock: boolean +``` + +Here "timeformat" is a format string to use. You might use it like +this: + +```js +xaxis: { + mode: "time", + timeformat: "%Y/%m/%d" +} +``` + +This will result in tick labels like "2000/12/24". A subset of the +standard strftime specifiers are supported (plus the nonstandard %q): + +```js +%a: weekday name (customizable) +%b: month name (customizable) +%d: day of month, zero-padded (01-31) +%e: day of month, space-padded ( 1-31) +%H: hours, 24-hour time, zero-padded (00-23) +%I: hours, 12-hour time, zero-padded (01-12) +%m: month, zero-padded (01-12) +%M: minutes, zero-padded (00-59) +%q: quarter (1-4) +%S: seconds, zero-padded (00-59) +%y: year (two digits) +%Y: year (four digits) +%p: am/pm +%P: AM/PM (uppercase version of %p) +%w: weekday as number (0-6, 0 being Sunday) +``` + +Flot 0.8 switched from %h to the standard %H hours specifier. The %h specifier +is still available, for backwards-compatibility, but is deprecated and +scheduled to be removed permanently with the release of version 1.0. + +You can customize the month names with the "monthNames" option. For +instance, for Danish you might specify: + +```js +monthNames: ["jan", "feb", "mar", "apr", "maj", "jun", "jul", "aug", "sep", "okt", "nov", "dec"] +``` + +Similarly you can customize the weekday names with the "dayNames" +option. An example in French: + +```js +dayNames: ["dim", "lun", "mar", "mer", "jeu", "ven", "sam"] +``` + +If you set "twelveHourClock" to true, the autogenerated timestamps +will use 12 hour AM/PM timestamps instead of 24 hour. This only +applies if you have not set "timeformat". Use the "%I" and "%p" or +"%P" options if you want to build your own format string with 12-hour +times. + +If the Date object has a strftime property (and it is a function), it +will be used instead of the built-in formatter. Thus you can include +a strftime library such as http://hacks.bluesmoon.info/strftime/ for +more powerful date/time formatting. + +If everything else fails, you can control the formatting by specifying +a custom tick formatter function as usual. Here's a simple example +which will format December 24 as 24/12: + +```js +tickFormatter: function (val, axis) { + var d = new Date(val); + return d.getUTCDate() + "/" + (d.getUTCMonth() + 1); +} +``` + +Note that for the time mode "tickSize" and "minTickSize" are a bit +special in that they are arrays on the form "[value, unit]" where unit +is one of "second", "minute", "hour", "day", "month" and "year". So +you can specify + +```js +minTickSize: [1, "month"] +``` + +to get a tick interval size of at least 1 month and correspondingly, +if axis.tickSize is [2, "day"] in the tick formatter, the ticks have +been produced with two days in-between. + + +## Customizing the data series ## + +```js +series: { + lines, points, bars: { + show: boolean + lineWidth: number + fill: boolean or number + fillColor: null or color/gradient + } + + lines, bars: { + zero: boolean + } + + points: { + radius: number + symbol: "circle" or function + } + + bars: { + barWidth: number + align: "left", "right" or "center" + horizontal: boolean + } + + lines: { + steps: boolean + } + + shadowSize: number + highlightColor: color or number +} + +colors: [ color1, color2, ... ] +``` + +The options inside "series: {}" are copied to each of the series. So +you can specify that all series should have bars by putting it in the +global options, or override it for individual series by specifying +bars in a particular the series object in the array of data. + +The most important options are "lines", "points" and "bars" that +specify whether and how lines, points and bars should be shown for +each data series. In case you don't specify anything at all, Flot will +default to showing lines (you can turn this off with +lines: { show: false }). You can specify the various types +independently of each other, and Flot will happily draw each of them +in turn (this is probably only useful for lines and points), e.g. + +```js +var options = { + series: { + lines: { show: true, fill: true, fillColor: "rgba(255, 255, 255, 0.8)" }, + points: { show: true, fill: false } + } +}; +``` + +"lineWidth" is the thickness of the line or outline in pixels. You can +set it to 0 to prevent a line or outline from being drawn; this will +also hide the shadow. + +"fill" is whether the shape should be filled. For lines, this produces +area graphs. You can use "fillColor" to specify the color of the fill. +If "fillColor" evaluates to false (default for everything except +points which are filled with white), the fill color is auto-set to the +color of the data series. You can adjust the opacity of the fill by +setting fill to a number between 0 (fully transparent) and 1 (fully +opaque). + +For bars, fillColor can be a gradient, see the gradient documentation +below. "barWidth" is the width of the bars in units of the x axis (or +the y axis if "horizontal" is true), contrary to most other measures +that are specified in pixels. For instance, for time series the unit +is milliseconds so 24 * 60 * 60 * 1000 produces bars with the width of +a day. "align" specifies whether a bar should be left-aligned +(default), right-aligned or centered on top of the value it represents. +When "horizontal" is on, the bars are drawn horizontally, i.e. from the +y axis instead of the x axis; note that the bar end points are still +defined in the same way so you'll probably want to swap the +coordinates if you've been plotting vertical bars first. + +Area and bar charts normally start from zero, regardless of the data's range. +This is because they convey information through size, and starting from a +different value would distort their meaning. In cases where the fill is purely +for decorative purposes, however, "zero" allows you to override this behavior. +It defaults to true for filled lines and bars; setting it to false tells the +series to use the same automatic scaling as an un-filled line. + +For lines, "steps" specifies whether two adjacent data points are +connected with a straight (possibly diagonal) line or with first a +horizontal and then a vertical line. Note that this transforms the +data by adding extra points. + +For points, you can specify the radius and the symbol. The only +built-in symbol type is circles, for other types you can use a plugin +or define them yourself by specifying a callback: + +```js +function cross(ctx, x, y, radius, shadow) { + var size = radius * Math.sqrt(Math.PI) / 2; + ctx.moveTo(x - size, y - size); + ctx.lineTo(x + size, y + size); + ctx.moveTo(x - size, y + size); + ctx.lineTo(x + size, y - size); +} +``` + +The parameters are the drawing context, x and y coordinates of the +center of the point, a radius which corresponds to what the circle +would have used and whether the call is to draw a shadow (due to +limited canvas support, shadows are currently faked through extra +draws). It's good practice to ensure that the area covered by the +symbol is the same as for the circle with the given radius, this +ensures that all symbols have approximately the same visual weight. + +"shadowSize" is the default size of shadows in pixels. Set it to 0 to +remove shadows. + +"highlightColor" is the default color of the translucent overlay used +to highlight the series when the mouse hovers over it. + +The "colors" array specifies a default color theme to get colors for +the data series from. You can specify as many colors as you like, like +this: + +```js +colors: ["#d18b2c", "#dba255", "#919733"] +``` + +If there are more data series than colors, Flot will try to generate +extra colors by lightening and darkening colors in the theme. + + +## Customizing the grid ## + +```js +grid: { + show: boolean + aboveData: boolean + color: color + backgroundColor: color/gradient or null + margin: number or margin object + labelMargin: number + axisMargin: number + markings: array of markings or (fn: axes -> array of markings) + borderWidth: number or object with "top", "right", "bottom" and "left" properties with different widths + borderColor: color or null or object with "top", "right", "bottom" and "left" properties with different colors + minBorderMargin: number or null + clickable: boolean + hoverable: boolean + autoHighlight: boolean + mouseActiveRadius: number +} + +interaction: { + redrawOverlayInterval: number or -1 +} +``` + +The grid is the thing with the axes and a number of ticks. Many of the +things in the grid are configured under the individual axes, but not +all. "color" is the color of the grid itself whereas "backgroundColor" +specifies the background color inside the grid area, here null means +that the background is transparent. You can also set a gradient, see +the gradient documentation below. + +You can turn off the whole grid including tick labels by setting +"show" to false. "aboveData" determines whether the grid is drawn +above the data or below (below is default). + +"margin" is the space in pixels between the canvas edge and the grid, +which can be either a number or an object with individual margins for +each side, in the form: + +```js +margin: { + top: top margin in pixels + left: left margin in pixels + bottom: bottom margin in pixels + right: right margin in pixels +} +``` + +"labelMargin" is the space in pixels between tick labels and axis +line, and "axisMargin" is the space in pixels between axes when there +are two next to each other. + +"borderWidth" is the width of the border around the plot. Set it to 0 +to disable the border. Set it to an object with "top", "right", +"bottom" and "left" properties to use different widths. You can +also set "borderColor" if you want the border to have a different color +than the grid lines. Set it to an object with "top", "right", "bottom" +and "left" properties to use different colors. "minBorderMargin" controls +the default minimum margin around the border - it's used to make sure +that points aren't accidentally clipped by the canvas edge so by default +the value is computed from the point radius. + +"markings" is used to draw simple lines and rectangular areas in the +background of the plot. You can either specify an array of ranges on +the form { xaxis: { from, to }, yaxis: { from, to } } (with multiple +axes, you can specify coordinates for other axes instead, e.g. as +x2axis/x3axis/...) or with a function that returns such an array given +the axes for the plot in an object as the first parameter. + +You can set the color of markings by specifying "color" in the ranges +object. Here's an example array: + +```js +markings: [ { xaxis: { from: 0, to: 2 }, yaxis: { from: 10, to: 10 }, color: "#bb0000" }, ... ] +``` + +If you leave out one of the values, that value is assumed to go to the +border of the plot. So for example if you only specify { xaxis: { +from: 0, to: 2 } } it means an area that extends from the top to the +bottom of the plot in the x range 0-2. + +A line is drawn if from and to are the same, e.g. + +```js +markings: [ { yaxis: { from: 1, to: 1 } }, ... ] +``` + +would draw a line parallel to the x axis at y = 1. You can control the +line width with "lineWidth" in the range object. + +An example function that makes vertical stripes might look like this: + +```js +markings: function (axes) { + var markings = []; + for (var x = Math.floor(axes.xaxis.min); x < axes.xaxis.max; x += 2) + markings.push({ xaxis: { from: x, to: x + 1 } }); + return markings; +} +``` + +If you set "clickable" to true, the plot will listen for click events +on the plot area and fire a "plotclick" event on the placeholder with +a position and a nearby data item object as parameters. The coordinates +are available both in the unit of the axes (not in pixels) and in +global screen coordinates. + +Likewise, if you set "hoverable" to true, the plot will listen for +mouse move events on the plot area and fire a "plothover" event with +the same parameters as the "plotclick" event. If "autoHighlight" is +true (the default), nearby data items are highlighted automatically. +If needed, you can disable highlighting and control it yourself with +the highlight/unhighlight plot methods described elsewhere. + +You can use "plotclick" and "plothover" events like this: + +```js +$.plot($("#placeholder"), [ d ], { grid: { clickable: true } }); + +$("#placeholder").bind("plotclick", function (event, pos, item) { + alert("You clicked at " + pos.x + ", " + pos.y); + // axis coordinates for other axes, if present, are in pos.x2, pos.x3, ... + // if you need global screen coordinates, they are pos.pageX, pos.pageY + + if (item) { + highlight(item.series, item.datapoint); + alert("You clicked a point!"); + } +}); +``` + +The item object in this example is either null or a nearby object on the form: + +```js +item: { + datapoint: the point, e.g. [0, 2] + dataIndex: the index of the point in the data array + series: the series object + seriesIndex: the index of the series + pageX, pageY: the global screen coordinates of the point +} +``` + +For instance, if you have specified the data like this + +```js +$.plot($("#placeholder"), [ { label: "Foo", data: [[0, 10], [7, 3]] } ], ...); +``` + +and the mouse is near the point (7, 3), "datapoint" is [7, 3], +"dataIndex" will be 1, "series" is a normalized series object with +among other things the "Foo" label in series.label and the color in +series.color, and "seriesIndex" is 0. Note that plugins and options +that transform the data can shift the indexes from what you specified +in the original data array. + +If you use the above events to update some other information and want +to clear out that info in case the mouse goes away, you'll probably +also need to listen to "mouseout" events on the placeholder div. + +"mouseActiveRadius" specifies how far the mouse can be from an item +and still activate it. If there are two or more points within this +radius, Flot chooses the closest item. For bars, the top-most bar +(from the latest specified data series) is chosen. + +If you want to disable interactivity for a specific data series, you +can set "hoverable" and "clickable" to false in the options for that +series, like this: + +```js +{ data: [...], label: "Foo", clickable: false } +``` + +"redrawOverlayInterval" specifies the maximum time to delay a redraw +of interactive things (this works as a rate limiting device). The +default is capped to 60 frames per second. You can set it to -1 to +disable the rate limiting. + + +## Specifying gradients ## + +A gradient is specified like this: + +```js +{ colors: [ color1, color2, ... ] } +``` + +For instance, you might specify a background on the grid going from +black to gray like this: + +```js +grid: { + backgroundColor: { colors: ["#000", "#999"] } +} +``` + +For the series you can specify the gradient as an object that +specifies the scaling of the brightness and the opacity of the series +color, e.g. + +```js +{ colors: [{ opacity: 0.8 }, { brightness: 0.6, opacity: 0.8 } ] } +``` + +where the first color simply has its alpha scaled, whereas the second +is also darkened. For instance, for bars the following makes the bars +gradually disappear, without outline: + +```js +bars: { + show: true, + lineWidth: 0, + fill: true, + fillColor: { colors: [ { opacity: 0.8 }, { opacity: 0.1 } ] } +} +``` + +Flot currently only supports vertical gradients drawn from top to +bottom because that's what works with IE. + + +## Plot Methods ## + +The Plot object returned from the plot function has some methods you +can call: + + - highlight(series, datapoint) + + Highlight a specific datapoint in the data series. You can either + specify the actual objects, e.g. if you got them from a + "plotclick" event, or you can specify the indices, e.g. + highlight(1, 3) to highlight the fourth point in the second series + (remember, zero-based indexing). + + - unhighlight(series, datapoint) or unhighlight() + + Remove the highlighting of the point, same parameters as + highlight. + + If you call unhighlight with no parameters, e.g. as + plot.unhighlight(), all current highlights are removed. + + - setData(data) + + You can use this to reset the data used. Note that axis scaling, + ticks, legend etc. will not be recomputed (use setupGrid() to do + that). You'll probably want to call draw() afterwards. + + You can use this function to speed up redrawing a small plot if + you know that the axes won't change. Put in the new data with + setData(newdata), call draw(), and you're good to go. Note that + for large datasets, almost all the time is consumed in draw() + plotting the data so in this case don't bother. + + - setupGrid() + + Recalculate and set axis scaling, ticks, legend etc. + + Note that because of the drawing model of the canvas, this + function will immediately redraw (actually reinsert in the DOM) + the labels and the legend, but not the actual tick lines because + they're drawn on the canvas. You need to call draw() to get the + canvas redrawn. + + - draw() + + Redraws the plot canvas. + + - triggerRedrawOverlay() + + Schedules an update of an overlay canvas used for drawing + interactive things like a selection and point highlights. This + is mostly useful for writing plugins. The redraw doesn't happen + immediately, instead a timer is set to catch multiple successive + redraws (e.g. from a mousemove). You can get to the overlay by + setting up a drawOverlay hook. + + - width()/height() + + Gets the width and height of the plotting area inside the grid. + This is smaller than the canvas or placeholder dimensions as some + extra space is needed (e.g. for labels). + + - offset() + + Returns the offset of the plotting area inside the grid relative + to the document, useful for instance for calculating mouse + positions (event.pageX/Y minus this offset is the pixel position + inside the plot). + + - pointOffset({ x: xpos, y: ypos }) + + Returns the calculated offset of the data point at (x, y) in data + space within the placeholder div. If you are working with multiple + axes, you can specify the x and y axis references, e.g. + + ```js + o = pointOffset({ x: xpos, y: ypos, xaxis: 2, yaxis: 3 }) + // o.left and o.top now contains the offset within the div + ```` + + - resize() + + Tells Flot to resize the drawing canvas to the size of the + placeholder. You need to run setupGrid() and draw() afterwards as + canvas resizing is a destructive operation. This is used + internally by the resize plugin. + + - shutdown() + + Cleans up any event handlers Flot has currently registered. This + is used internally. + +There are also some members that let you peek inside the internal +workings of Flot which is useful in some cases. Note that if you change +something in the objects returned, you're changing the objects used by +Flot to keep track of its state, so be careful. + + - getData() + + Returns an array of the data series currently used in normalized + form with missing settings filled in according to the global + options. So for instance to find out what color Flot has assigned + to the data series, you could do this: + + ```js + var series = plot.getData(); + for (var i = 0; i < series.length; ++i) + alert(series[i].color); + ``` + + A notable other interesting field besides color is datapoints + which has a field "points" with the normalized data points in a + flat array (the field "pointsize" is the increment in the flat + array to get to the next point so for a dataset consisting only of + (x,y) pairs it would be 2). + + - getAxes() + + Gets an object with the axes. The axes are returned as the + attributes of the object, so for instance getAxes().xaxis is the + x axis. + + Various things are stuffed inside an axis object, e.g. you could + use getAxes().xaxis.ticks to find out what the ticks are for the + xaxis. Two other useful attributes are p2c and c2p, functions for + transforming from data point space to the canvas plot space and + back. Both returns values that are offset with the plot offset. + Check the Flot source code for the complete set of attributes (or + output an axis with console.log() and inspect it). + + With multiple axes, the extra axes are returned as x2axis, x3axis, + etc., e.g. getAxes().y2axis is the second y axis. You can check + y2axis.used to see whether the axis is associated with any data + points and y2axis.show to see if it is currently shown. + + - getPlaceholder() + + Returns placeholder that the plot was put into. This can be useful + for plugins for adding DOM elements or firing events. + + - getCanvas() + + Returns the canvas used for drawing in case you need to hack on it + yourself. You'll probably need to get the plot offset too. + + - getPlotOffset() + + Gets the offset that the grid has within the canvas as an object + with distances from the canvas edges as "left", "right", "top", + "bottom". I.e., if you draw a circle on the canvas with the center + placed at (left, top), its center will be at the top-most, left + corner of the grid. + + - getOptions() + + Gets the options for the plot, normalized, with default values + filled in. You get a reference to actual values used by Flot, so + if you modify the values in here, Flot will use the new values. + If you change something, you probably have to call draw() or + setupGrid() or triggerRedrawOverlay() to see the change. + + +## Hooks ## + +In addition to the public methods, the Plot object also has some hooks +that can be used to modify the plotting process. You can install a +callback function at various points in the process, the function then +gets access to the internal data structures in Flot. + +Here's an overview of the phases Flot goes through: + + 1. Plugin initialization, parsing options + + 2. Constructing the canvases used for drawing + + 3. Set data: parsing data specification, calculating colors, + copying raw data points into internal format, + normalizing them, finding max/min for axis auto-scaling + + 4. Grid setup: calculating axis spacing, ticks, inserting tick + labels, the legend + + 5. Draw: drawing the grid, drawing each of the series in turn + + 6. Setting up event handling for interactive features + + 7. Responding to events, if any + + 8. Shutdown: this mostly happens in case a plot is overwritten + +Each hook is simply a function which is put in the appropriate array. +You can add them through the "hooks" option, and they are also available +after the plot is constructed as the "hooks" attribute on the returned +plot object, e.g. + +```js + // define a simple draw hook + function hellohook(plot, canvascontext) { alert("hello!"); }; + + // pass it in, in an array since we might want to specify several + var plot = $.plot(placeholder, data, { hooks: { draw: [hellohook] } }); + + // we can now find it again in plot.hooks.draw[0] unless a plugin + // has added other hooks +``` + +The available hooks are described below. All hook callbacks get the +plot object as first parameter. You can find some examples of defined +hooks in the plugins bundled with Flot. + + - processOptions [phase 1] + + ```function(plot, options)``` + + Called after Flot has parsed and merged options. Useful in the + instance where customizations beyond simple merging of default + values is needed. A plugin might use it to detect that it has been + enabled and then turn on or off other options. + + + - processRawData [phase 3] + + ```function(plot, series, data, datapoints)``` + + Called before Flot copies and normalizes the raw data for the given + series. If the function fills in datapoints.points with normalized + points and sets datapoints.pointsize to the size of the points, + Flot will skip the copying/normalization step for this series. + + In any case, you might be interested in setting datapoints.format, + an array of objects for specifying how a point is normalized and + how it interferes with axis scaling. It accepts the following options: + + ```js + { + x, y: boolean, + number: boolean, + required: boolean, + defaultValue: value, + autoscale: boolean + } + ``` + + "x" and "y" specify whether the value is plotted against the x or y axis, + and is currently used only to calculate axis min-max ranges. The default + format array, for example, looks like this: + + ```js + [ + { x: true, number: true, required: true }, + { y: true, number: true, required: true } + ] + ``` + + This indicates that a point, i.e. [0, 25], consists of two values, with the + first being plotted on the x axis and the second on the y axis. + + If "number" is true, then the value must be numeric, and is set to null if + it cannot be converted to a number. + + "defaultValue" provides a fallback in case the original value is null. This + is for instance handy for bars, where one can omit the third coordinate + (the bottom of the bar), which then defaults to zero. + + If "required" is true, then the value must exist (be non-null) for the + point as a whole to be valid. If no value is provided, then the entire + point is cleared out with nulls, turning it into a gap in the series. + + "autoscale" determines whether the value is considered when calculating an + automatic min-max range for the axes that the value is plotted against. + + - processDatapoints [phase 3] + + ```function(plot, series, datapoints)``` + + Called after normalization of the given series but before finding + min/max of the data points. This hook is useful for implementing data + transformations. "datapoints" contains the normalized data points in + a flat array as datapoints.points with the size of a single point + given in datapoints.pointsize. Here's a simple transform that + multiplies all y coordinates by 2: + + ```js + function multiply(plot, series, datapoints) { + var points = datapoints.points, ps = datapoints.pointsize; + for (var i = 0; i < points.length; i += ps) + points[i + 1] *= 2; + } + ``` + + Note that you must leave datapoints in a good condition as Flot + doesn't check it or do any normalization on it afterwards. + + - processOffset [phase 4] + + ```function(plot, offset)``` + + Called after Flot has initialized the plot's offset, but before it + draws any axes or plot elements. This hook is useful for customizing + the margins between the grid and the edge of the canvas. "offset" is + an object with attributes "top", "bottom", "left" and "right", + corresponding to the margins on the four sides of the plot. + + - drawBackground [phase 5] + + ```function(plot, canvascontext)``` + + Called before all other drawing operations. Used to draw backgrounds + or other custom elements before the plot or axes have been drawn. + + - drawSeries [phase 5] + + ```function(plot, canvascontext, series)``` + + Hook for custom drawing of a single series. Called just before the + standard drawing routine has been called in the loop that draws + each series. + + - draw [phase 5] + + ```function(plot, canvascontext)``` + + Hook for drawing on the canvas. Called after the grid is drawn + (unless it's disabled or grid.aboveData is set) and the series have + been plotted (in case any points, lines or bars have been turned + on). For examples of how to draw things, look at the source code. + + - bindEvents [phase 6] + + ```function(plot, eventHolder)``` + + Called after Flot has setup its event handlers. Should set any + necessary event handlers on eventHolder, a jQuery object with the + canvas, e.g. + + ```js + function (plot, eventHolder) { + eventHolder.mousedown(function (e) { + alert("You pressed the mouse at " + e.pageX + " " + e.pageY); + }); + } + ``` + + Interesting events include click, mousemove, mouseup/down. You can + use all jQuery events. Usually, the event handlers will update the + state by drawing something (add a drawOverlay hook and call + triggerRedrawOverlay) or firing an externally visible event for + user code. See the crosshair plugin for an example. + + Currently, eventHolder actually contains both the static canvas + used for the plot itself and the overlay canvas used for + interactive features because some versions of IE get the stacking + order wrong. The hook only gets one event, though (either for the + overlay or for the static canvas). + + Note that custom plot events generated by Flot are not generated on + eventHolder, but on the div placeholder supplied as the first + argument to the plot call. You can get that with + plot.getPlaceholder() - that's probably also the one you should use + if you need to fire a custom event. + + - drawOverlay [phase 7] + + ```function (plot, canvascontext)``` + + The drawOverlay hook is used for interactive things that need a + canvas to draw on. The model currently used by Flot works the way + that an extra overlay canvas is positioned on top of the static + canvas. This overlay is cleared and then completely redrawn + whenever something interesting happens. This hook is called when + the overlay canvas is to be redrawn. + + "canvascontext" is the 2D context of the overlay canvas. You can + use this to draw things. You'll most likely need some of the + metrics computed by Flot, e.g. plot.width()/plot.height(). See the + crosshair plugin for an example. + + - shutdown [phase 8] + + ```function (plot, eventHolder)``` + + Run when plot.shutdown() is called, which usually only happens in + case a plot is overwritten by a new plot. If you're writing a + plugin that adds extra DOM elements or event handlers, you should + add a callback to clean up after you. Take a look at the section in + the [PLUGINS](PLUGINS.md) document for more info. + + +## Plugins ## + +Plugins extend the functionality of Flot. To use a plugin, simply +include its Javascript file after Flot in the HTML page. + +If you're worried about download size/latency, you can concatenate all +the plugins you use, and Flot itself for that matter, into one big file +(make sure you get the order right), then optionally run it through a +Javascript minifier such as YUI Compressor. + +Here's a brief explanation of how the plugin plumbings work: + +Each plugin registers itself in the global array $.plot.plugins. When +you make a new plot object with $.plot, Flot goes through this array +calling the "init" function of each plugin and merging default options +from the "option" attribute of the plugin. The init function gets a +reference to the plot object created and uses this to register hooks +and add new public methods if needed. + +See the [PLUGINS](PLUGINS.md) document for details on how to write a plugin. As the +above description hints, it's actually pretty easy. + + +## Version number ## + +The version number of Flot is available in ```$.plot.version```. diff --git a/djangoproject/static/js/lib/jquery-flot/CONTRIBUTING.md b/djangoproject/static/js/lib/jquery-flot/CONTRIBUTING.md new file mode 100644 index 000000000..3e6e43a0f --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/CONTRIBUTING.md @@ -0,0 +1,98 @@ +## Contributing to Flot ## + +We welcome all contributions, but following these guidelines results in less +work for us, and a faster and better response. + +### Issues ### + +Issues are not a way to ask general questions about Flot. If you see unexpected +behavior but are not 100% certain that it is a bug, please try posting to the +[forum](http://groups.google.com/group/flot-graphs) first, and confirm that +what you see is really a Flot problem before creating a new issue for it. When +reporting a bug, please include a working demonstration of the problem, if +possible, or at least a clear description of the options you're using and the +environment (browser and version, jQuery version, other libraries) that you're +running under. + +If you have suggestions for new features, or changes to existing ones, we'd +love to hear them! Please submit each suggestion as a separate new issue. + +If you would like to work on an existing issue, please make sure it is not +already assigned to someone else. If an issue is assigned to someone, that +person has already started working on it. So, pick unassigned issues to prevent +duplicated effort. + +### Pull Requests ### + +To make merging as easy as possible, please keep these rules in mind: + + 1. Submit new features or architectural changes to the *<version>-work* + branch for the next major release. Submit bug fixes to the master branch. + + 2. Divide larger changes into a series of small, logical commits with + descriptive messages. + + 3. Rebase, if necessary, before submitting your pull request, to reduce the + work we need to do to merge it. + + 4. Format your code according to the style guidelines below. + +### Flot Style Guidelines ### + +Flot follows the [jQuery Core Style Guidelines](http://docs.jquery.com/JQuery_Core_Style_Guidelines), +with the following updates and exceptions: + +#### Spacing #### + +Use four-space indents, no tabs. Do not add horizontal space around parameter +lists, loop definitions, or array/object indices. For example: + +```js + for ( var i = 0; i < data.length; i++ ) { // This block is wrong! + if ( data[ i ] > 1 ) { + data[ i ] = 2; + } + } + + for (var i = 0; i < data.length; i++) { // This block is correct! + if (data[i] > 1) { + data[i] = 2; + } + } +``` + +#### Comments #### + +Use [jsDoc](http://usejsdoc.org) comments for all file and function headers. +Use // for all inline and block comments, regardless of length. + +All // comment blocks should have an empty line above *and* below them. For +example: + +```js + var a = 5; + + // We're going to loop here + // TODO: Make this loop faster, better, stronger! + + for (var x = 0; x < 10; x++) {} +``` + +#### Wrapping #### + +Block comments should be wrapped at 80 characters. + +Code should attempt to wrap at 80 characters, but may run longer if wrapping +would hurt readability more than having to scroll horizontally. This is a +judgement call made on a situational basis. + +Statements containing complex logic should not be wrapped arbitrarily if they +do not exceed 80 characters. For example: + +```js + if (a == 1 && // This block is wrong! + b == 2 && + c == 3) {} + + if (a == 1 && b == 2 && c == 3) {} // This block is correct! +``` diff --git a/djangoproject/static/js/lib/jquery-flot/FAQ.md b/djangoproject/static/js/lib/jquery-flot/FAQ.md new file mode 100644 index 000000000..9131e0439 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/FAQ.md @@ -0,0 +1,75 @@ +## Frequently asked questions ## + +#### How much data can Flot cope with? #### + +Flot will happily draw everything you send to it so the answer +depends on the browser. The excanvas emulation used for IE (built with +VML) makes IE by far the slowest browser so be sure to test with that +if IE users are in your target group (for large plots in IE, you can +also check out Flashcanvas which may be faster). + +1000 points is not a problem, but as soon as you start having more +points than the pixel width, you should probably start thinking about +downsampling/aggregation as this is near the resolution limit of the +chart anyway. If you downsample server-side, you also save bandwidth. + + +#### Flot isn't working when I'm using JSON data as source! #### + +Actually, Flot loves JSON data, you just got the format wrong. +Double check that you're not inputting strings instead of numbers, +like [["0", "-2.13"], ["5", "4.3"]]. This is most common mistake, and +the error might not show up immediately because Javascript can do some +conversion automatically. + + +#### Can I export the graph? #### + +You can grab the image rendered by the canvas element used by Flot +as a PNG or JPEG (remember to set a background). Note that it won't +include anything not drawn in the canvas (such as the legend). And it +doesn't work with excanvas which uses VML, but you could try +Flashcanvas. + + +#### The bars are all tiny in time mode? #### + +It's not really possible to determine the bar width automatically. +So you have to set the width with the barWidth option which is NOT in +pixels, but in the units of the x axis (or the y axis for horizontal +bars). For time mode that's milliseconds so the default value of 1 +makes the bars 1 millisecond wide. + + +#### Can I use Flot with libraries like Mootools or Prototype? #### + +Yes, Flot supports it out of the box and it's easy! Just use jQuery +instead of $, e.g. call jQuery.plot instead of $.plot and use +jQuery(something) instead of $(something). As a convenience, you can +put in a DOM element for the graph placeholder where the examples and +the API documentation are using jQuery objects. + +Depending on how you include jQuery, you may have to add one line of +code to prevent jQuery from overwriting functions from the other +libraries, see the documentation in jQuery ("Using jQuery with other +libraries") for details. + + +#### Flot doesn't work with [insert name of Javascript UI framework]! #### + +Flot is using standard HTML to make charts. If this is not working, +it's probably because the framework you're using is doing something +weird with the DOM or with the CSS that is interfering with Flot. + +A common problem is that there's display:none on a container until the +user does something. Many tab widgets work this way, and there's +nothing wrong with it - you just can't call Flot inside a display:none +container as explained in the README so you need to hold off the Flot +call until the container is actually displayed (or use +visibility:hidden instead of display:none or move the container +off-screen). + +If you find there's a specific thing we can do to Flot to help, feel +free to submit a bug report. Otherwise, you're welcome to ask for help +on the forum/mailing list, but please don't submit a bug report to +Flot. diff --git a/djangoproject/static/js/lib/jquery-flot/LICENSE.txt b/djangoproject/static/js/lib/jquery-flot/LICENSE.txt new file mode 100644 index 000000000..719da064f --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/LICENSE.txt @@ -0,0 +1,22 @@ +Copyright (c) 2007-2014 IOLA and Ole Laursen + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. diff --git a/djangoproject/static/js/lib/jquery-flot/Makefile b/djangoproject/static/js/lib/jquery-flot/Makefile new file mode 100644 index 000000000..2e070d0c3 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/Makefile @@ -0,0 +1,12 @@ +# Makefile for generating minified files + +.PHONY: all + +# we cheat and process all .js files instead of an exhaustive list +all: $(patsubst %.js,%.min.js,$(filter-out %.min.js,$(wildcard *.js))) + +%.min.js: %.js + yui-compressor $< -o $@ + +test: + ./node_modules/.bin/jshint *jquery.flot.js diff --git a/djangoproject/static/js/lib/jquery-flot/NEWS.md b/djangoproject/static/js/lib/jquery-flot/NEWS.md new file mode 100644 index 000000000..ad0303d74 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/NEWS.md @@ -0,0 +1,1026 @@ +## Flot 0.8.3 ## + +### Changes ### + +- Updated example code to avoid encouraging unnecessary re-plots. + (patch by soenter, pull request #1221) + +### Bug fixes ### + + - Added a work-around to disable the allocation of extra space for first and + last axis ticks, allowing plots to span the full width of their container. + A proper solution for this bug will be implemented in the 0.9 release. + (reported by Josh Pigford and andig, issue #1212, pull request #1290) + + - Fixed a regression introduced in 0.8.1, where the last tick label would + sometimes wrap rather than extending the plot's offset to create space. + (reported by Elite Gamer, issue #1283) + + - Fixed a regression introduced in 0.8.2, where the resize plugin would use + unexpectedly high amounts of CPU even when idle. + (reported by tommie, issue #1277, pull request #1289) + + - Fixed the selection example to work with jQuery 1.9.x and later. + (reported by EGLadona and dmfalke, issue #1250, pull request #1285) + + - Added a detach shim to fix support for jQuery versions earlier than 1.4.x. + (reported by ngavard, issue #1240, pull request #1286) + + - Fixed a rare 'Uncaught TypeError' when using the resize plugin in IE 7/8. + (reported by tleish, issue #1265, pull request #1289) + + - Fixed zoom constraints to apply only in the direction of the zoom. + (patch by Neil Katin, issue #1204, pull request #1205) + + - Markings lines are no longer blurry when drawn on pixel boundaries. + (reported by btccointicker and Rouillard, issue #1210) + + - Don't discard original pie data-series values when combining slices. + (patch by Phil Tsarik, pull request #1238) + + - Fixed broken auto-scale behavior when using deprecated [x|y]2axis options. + (reported by jorese, issue #1228, pull request #1284) + + - Exposed the dateGenerator function on the plot object, as it used to be + before time-mode was moved into a separate plugin. + (patch by Paolo Valleri, pull request #1028) + + +## Flot 0.8.2 ## + +### Changes ### + + - Added a plot.destroy method as a way to free memory when emptying the plot + placeholder and then re-using it for some other purpose. + (patch by Thodoris Greasidis, issue #1129, pull request #1130) + + - Added a table of contents and PLUGINS link to the API documentation. + (patches by Brian Peiris, pull requests #1064 and #1127) + + - Added Ruby code examples for time conversion. + (patch by Mike Połtyn, pull request #1182) + + - Minor improvements to API.md and README.md. + (patches by Patrik Ragnarsson, pull requests #1085 and #1086) + + - Updated inlined jQuery Resize to the latest version to fix errors. + (reported by Matthew Sabol and sloker, issues #997 ad #1081) + +### Bug fixes ### + + - Fixed an unexpected change in behavior that resulted in duplicate tick + labels when using a plugin, like flot-tickrotor, that overrode tick labels. + (patch by Mark Cote, pull request #1091) + + - Fixed a regression from 0.7 where axis labels were given the wrong width, + causing them to overlap at certain scales and ignore the labelWidth option. + (patch by Benjamin Gram, pull request #1177) + + - Fixed a bug where the second axis in an xaxes/yaxes array incorrectly had + its 'innermost' property set to false or undefined, even if it was on the + other side of the plot from the first axis. This resulted in the axis bar + being visible when it shouldn't have been, which was especially obvious + when the grid had a left/right border width of zero. + (reported by Teq1, fix researched by ryleyb, issue #1056) + + - Fixed an error when using a placeholder that has no font-size property. + (patch by Craig Oldford, pull request #1135) + + - Fixed a regression from 0.7 where nulls at the end of a series were ignored + for purposes of determing the range of the x-axis. + (reported by Munsifali Rashid, issue #1095) + + - If a font size is provided, base the default lineHeight on that size rather + that the font size of the plot placeholder, which may be very different. + (reported by Daniel Hoffmann Bernardes, issue #1131, pull request #1199) + + - Fix broken highlighting for right-aligned bars. + (reported by BeWiBu and Mihai Stanciu, issues #975 and #1093, with further + assistance by Eric Byers, pull request #1120) + + - Prevent white circles from sometimes showing up inside of pie charts. + (reported by Pierre Dubois and Jack Klink, issues #1128 and #1073) + + - Label formatting no longer breaks when a page contains multiple pie charts. + (reported by Brend Wanders, issue #1055) + + - When using multiple axes on opposite sides of the plot, the innermost axis + coming later in the list no longer has its bar drawn incorrectly. + (reported by ryleyb, issue #1056) + + - When removing series labels and redrawing the plot, the legend now updates + correctly even when using an external container. + (patch by Luis Silva, issue #1159, pull request #1160) + + - The pie plugin no longer ignores the value of the left offset option. + (reported by melanker, issue #1136) + + - Fixed a regression from 0.7, where extra padding was added unnecessarily to + sides of the plot where there was no last tick label. + (reported by sknob001, issue #1048, pull request #1200) + + - Fixed incorrect tooltip behavior in the interacting example. + (patch by cleroux, issue #686, pull request #1074) + + - Fixed an error in CSS color extraction with elements outside the DOM. + (patch by execjosh, pull request #1084) + + - Fixed :not selector error when using jQuery without Sizzle. + (patch by Anthony Ryan, pull request #1180) + + - Worked around a browser issue that caused bars to appear un-filled. + (reported by irbian, issue #915) + +## Flot 0.8.1 ## + +### Bug fixes ### + + - Fixed a regression in the time plugin, introduced in 0.8, that caused dates + to align to the minute rather than to the highest appropriate unit. This + caused many x-axes in 0.8 to have different ticks than they did in 0.7. + (reported by Tom Sheppard, patch by Daniel Shapiro, issue #1017, pull + request #1023) + + - Fixed a regression in text rendering, introduced in 0.8, that caused axis + labels with the same text as another label on the same axis to disappear. + More generally, it's again possible to have the same text in two locations. + (issue #1032) + + - Fixed a regression in text rendering, introduced in 0.8, where axis labels + were no longer assigned an explicit width, and their text could not wrap. + (reported by sabregreen, issue #1019) + + - Fixed a regression in the pie plugin, introduced in 0.8, that prevented it + from accepting data in the format '[[x, y]]'. + (patch by Nicolas Morel, pull request #1024) + + - The 'zero' series option and 'autoscale' format option are no longer + ignored when the series contains a null value. + (reported by Daniel Shapiro, issue #1033) + + - Avoid triggering the time-mode plugin exception when there are zero series. + (reported by Daniel Rothig, patch by Mark Raymond, issue #1016) + + - When a custom color palette has fewer colors than the default palette, Flot + no longer fills out the colors with the remainder of the default. + (patch by goorpy, issue #1031, pull request #1034) + + - Fixed missing update for bar highlights after a zoom or other redraw. + (reported by Paolo Valleri, issue #1030) + + - Fixed compatibility with jQuery versions earlier than 1.7. + (patch by Lee Willis, issue #1027, pull request #1027) + + - The mouse wheel no longer scrolls the page when using the navigate plugin. + (patch by vird, pull request #1020) + + - Fixed missing semicolons in the core library. + (reported by Michal Zglinski) + + +## Flot 0.8.0 ## + +### API changes ### + +Support for time series has been moved into a plugin, jquery.flot.time.js. +This results in less code if time series are not used. The functionality +remains the same (plus timezone support, as described below); however, the +plugin must be included if axis.mode is set to "time". + +When the axis mode is "time", the axis option "timezone" can be set to null, +"browser", or a particular timezone (e.g. "America/New_York") to control how +the dates are displayed. If null, the dates are displayed as UTC. If +"browser", the dates are displayed in the time zone of the user's browser. + +Date/time formatting has changed and now follows a proper subset of the +standard strftime specifiers, plus one nonstandard specifier for quarters. +Additionally, if a strftime function is found in the Date object's prototype, +it will be used instead of the built-in formatter. + +Axis tick labels now use the class 'flot-tick-label' instead of 'tickLabel'. +The text containers for each axis now use the classes 'flot-[x|y]-axis' and +'flot-[x|y]#-axis' instead of '[x|y]Axis' and '[x|y]#Axis'. For compatibility +with Flot 0.7 and earlier text will continue to use the old classes as well, +but they are considered deprecated and will be removed in a future version. + +In previous versions the axis 'color' option was used to set the color of tick +marks and their label text. It now controls the color of the axis line, which +previously could not be changed separately, and continues to act as a default +for the tick-mark color. The color of tick label text is now set either by +overriding the 'flot-tick-label' CSS rule or via the axis 'font' option. + +A new plugin, jquery.flot.canvas.js, allows axis tick labels to be rendered +directly to the canvas, rather than using HTML elements. This feature can be +toggled with a simple option, making it easy to create interactive plots in the +browser using HTML, then re-render them to canvas for export as an image. + +The plugin tries to remain as faithful as possible to the original HTML render, +and goes so far as to automatically extract styles from CSS, to avoid having to +provide a separate set of styles when rendering to canvas. Due to limitations +of the canvas text API, the plugin cannot reproduce certain features, including +HTML markup embedded in labels, and advanced text styles such as 'em' units. + +The plugin requires support for canvas text, which may not be present in some +older browsers, even if they support the canvas tag itself. To use the plugin +with these browsers try using a shim such as canvas-text or FlashCanvas. + +The base and overlay canvas are now using the CSS classes "flot-base" and +"flot-overlay" to prevent accidental clashes (issue 540). + +### Changes ### + + - Addition of nonstandard %q specifier to date/time formatting. (patch + by risicle, issue 49) + + - Date/time formatting follows proper subset of strftime specifiers, and + support added for Date.prototype.strftime, if found. (patch by Mark Cote, + issues 419 and 558) + + - Fixed display of year ticks. (patch by Mark Cote, issue 195) + + - Support for time series moved to plugin. (patch by Mark Cote) + + - Display time series in different time zones. (patch by Knut Forkalsrud, + issue 141) + + - Added a canvas plugin to enable rendering axis tick labels to the canvas. + (sponsored by YCharts.com, implementation by Ole Laursen and David Schnur) + + - Support for setting the interval between redraws of the overlay canvas with + redrawOverlayInterval. (suggested in issue 185) + + - Support for multiple thresholds in thresholds plugin. (patch by Arnaud + Bellec, issue 523) + + - Support for plotting categories/textual data directly with new categories + plugin. + + - Tick generators now get the whole axis rather than just min/max. + + - Added processOffset and drawBackground hooks. (suggested in issue 639) + + - Added a grid "margin" option to set the space between the canvas edge and + the grid. + + - Prevent the pie example page from generating single-slice pies. (patch by + Shane Reustle) + + - In addition to "left" and "center", bars now recognize "right" as an + alignment option. (patch by Michael Mayer, issue 520) + + - Switched from toFixed to a much faster default tickFormatter. (patch by + Clemens Stolle) + + - Added to a more helpful error when using a time-mode axis without including + the flot.time plugin. (patch by Yael Elmatad) + + - Added a legend "sorted" option to control sorting of legend entries + independent of their series order. (patch by Tom Cleaveland) + + - Added a series "highlightColor" option to control the color of the + translucent overlay that identifies the dataset when the mouse hovers over + it. (patch by Eric Wendelin and Nate Abele, issues 168 and 299) + + - Added a plugin jquery.flot.errorbars, with an accompanying example, that + adds the ability to plot error bars, commonly used in many kinds of + statistical data visualizations. (patch by Rui Pereira, issue 215) + + - The legend now omits entries whose labelFormatter returns null. (patch by + Tom Cleaveland, Christopher Lambert, and Simon Strandgaard) + + - Added support for high pixel density (retina) displays, resulting in much + crisper charts on such devices. (patch by Olivier Guerriat, additional + fixes by Julien Thomas, maimairel, and Lau Bech Lauritzen) + + - Added the ability to control pie shadow position and alpha via a new pie + 'shadow' option. (patch by Julien Thomas, pull request #78) + + - Added the ability to set width and color for individual sides of the grid. + (patch by Ara Anjargolian, additional fixes by Karl Swedberg, pull requests #855 + and #880) + + - The selection plugin's getSelection now returns null when the selection + has been cleared. (patch by Nick Campbell, pull request #852) + + - Added a new option called 'zero' to bars and filled lines series, to control + whether the y-axis minimum is scaled to fit the data or set to zero. + (patch by David Schnur, issues #316, #529, and #856, pull request #911) + + - The plot function is now also a jQuery chainable property. + (patch by David Schnur, issues #734 and #816, pull request #953) + + - When only a single pie slice is beneath the combine threshold it is no longer + replaced by an 'other' slice. (suggested by Devin Bayer, issue #638) + + - Added lineJoin and minSize options to the selection plugin to control the + corner style and minimum size of the selection, respectively. + (patch by Ruth Linehan, pull request #963) + +### Bug fixes ### + + - Fix problem with null values and pie plugin. (patch by gcruxifix, + issue 500) + + - Fix problem with threshold plugin and bars. (based on patch by + kaarlenkaski, issue 348) + + - Fix axis box calculations so the boxes include the outermost part of the + labels too. + + - Fix problem with event clicking and hovering in IE 8 by updating Excanvas + and removing previous work-around. (test case by Ara Anjargolian) + + - Fix issues with blurry 1px border when some measures aren't integer. + (reported by Ara Anjargolian) + + - Fix bug with formats in the data processor. (reported by Peter Hull, + issue 534) + + - Prevent i from being declared global in extractRange. (reported by + Alexander Obukhov, issue 627) + + - Throw errors in a more cross-browser-compatible manner. (patch by + Eddie Kay) + + - Prevent pie slice outlines from being drawn when the stroke width is zero. + (reported by Chris Minett, issue 585) + + - Updated the navigate plugin's inline copy of jquery.mousewheel to fix + Webkit zoom problems. (reported by Hau Nguyen, issue 685) + + - Axis labels no longer appear as decimals rather than integers in certain + cases. (patch by Clemens Stolle, issue 541) + + - Automatic color generation no longer produces only whites and blacks when + there are many series. (patch by David Schnur and Tom Cleaveland) + + - Fixed an error when custom tick labels weren't provided as strings. (patch + by Shad Downey) + + - Prevented the local insertSteps and fmt variables from becoming global. + (first reported by Marc Bennewitz and Szymon Barglowski, patch by Nick + Campbell, issues #825 and #831, pull request #851) + + - Prevented several threshold plugin variables from becoming global. (patch + by Lasse Dahl Ebert) + + - Fixed various jQuery 1.8 compatibility issues. (issues #814 and #819, + pull request #877) + + - Pie charts with a slice equal to or approaching 100% of the pie no longer + appear invisible. (patch by David Schnur, issues #444, #658, #726, #824 + and #850, pull request #879) + + - Prevented several local variables from becoming global. (patch by aaa707) + + - Ensure that the overlay and primary canvases remain aligned. (issue #670, + pull request #901) + + - Added support for jQuery 1.9 by removing and replacing uses of $.browser. + (analysis and patch by Anthony Ryan, pull request #905) + + - Pie charts no longer disappear when redrawn during a resize or update. + (reported by Julien Bec, issue #656, pull request #910) + + - Avoided floating-point precision errors when calculating pie percentages. + (patch by James Ward, pull request #918) + + - Fixed compatibility with jQuery 1.2.6, which has no 'mouseleave' shortcut. + (reported by Bevan, original pull request #920, replaced by direct patch) + + - Fixed sub-pixel rendering issues with crosshair and selection lines. + (patches by alanayoub and Daniel Shapiro, pull requests #17 and #925) + + - Fixed rendering issues when using the threshold plugin with several series. + (patch by Ivan Novikov, pull request #934) + + - Pie charts no longer disappear when redrawn after calling setData(). + (reported by zengge1984 and pareeohnos, issues #810 and #945) + + - Added a work-around for the problem where points with a lineWidth of zero + still showed up with a visible line. (reported by SalvoSav, issue #842, + patch by Jamie Hamel-Smith, pull request #937) + + - Pie charts now accept values in string form, like other plot types. + (reported by laerdal.no, issue #534) + + - Avoid rounding errors in the threshold plugin. + (reported by jerikojerk, issue #895) + + - Fixed an error when using the navigate plugin with jQuery 1.9.x or later. + (reported by Paolo Valleri, issue #964) + + - Fixed inconsistencies between the highlight and unhighlight functions. + (reported by djamshed, issue #987) + + - Fixed recalculation of tickSize and tickDecimals on calls to setupGrid. + (patch by thecountofzero, pull request #861, issues #860, #1000) + + +## Flot 0.7 ## + +### API changes ### + +Multiple axes support. Code using dual axes should be changed from using +x2axis/y2axis in the options to using an array (although backwards- +compatibility hooks are in place). For instance, + +```js +{ + xaxis: { ... }, x2axis: { ... }, + yaxis: { ... }, y2axis: { ... } +} +``` + +becomes + +```js +{ + xaxes: [ { ... }, { ... } ], + yaxes: [ { ... }, { ... } ] +} +``` + +Note that if you're just using one axis, continue to use the xaxis/yaxis +directly (it now sets the default settings for the arrays). Plugins touching +the axes must be ported to take the extra axes into account, check the source +to see some examples. + +A related change is that the visibility of axes is now auto-detected. So if +you were relying on an axis to show up even without any data in the chart, you +now need to set the axis "show" option explicitly. + +"tickColor" on the grid options is now deprecated in favour of a corresponding +option on the axes, so: + +```js +{ grid: { tickColor: "#000" }} +``` + +becomes + +```js +{ xaxis: { tickColor: "#000"}, yaxis: { tickColor: "#000"} } +``` + +But if you just configure a base color Flot will now autogenerate a tick color +by adding transparency. Backwards-compatibility hooks are in place. + +Final note: now that IE 9 is coming out with canvas support, you may want to +adapt the excanvas include to skip loading it in IE 9 (the examples have been +adapted thanks to Ryley Breiddal). An alternative to excanvas using Flash has +also surfaced, if your graphs are slow in IE, you may want to give it a spin: + + http://code.google.com/p/flashcanvas/ + +### Changes ### + + - Support for specifying a bottom for each point for line charts when filling + them, this means that an arbitrary bottom can be used instead of just the x + axis. (based on patches patiently provided by Roman V. Prikhodchenko) + + - New fillbetween plugin that can compute a bottom for a series from another + series, useful for filling areas between lines. + + See new example percentiles.html for a use case. + + - More predictable handling of gaps for the stacking plugin, now all + undefined ranges are skipped. + + - Stacking plugin can stack horizontal bar charts. + + - Navigate plugin now redraws the plot while panning instead of only after + the fact. (raised by lastthemy, issue 235) + + Can be disabled by setting the pan.frameRate option to null. + + - Date formatter now accepts %0m and %0d to get a zero-padded month or day. + (issue raised by Maximillian Dornseif) + + - Revamped internals to support an unlimited number of axes, not just dual. + (sponsored by Flight Data Services, www.flightdataservices.com) + + - New setting on axes, "tickLength", to control the size of ticks or turn + them off without turning off the labels. + + - Axis labels are now put in container divs with classes, for instance labels + in the x axes can be reached via ".xAxis .tickLabel". + + - Support for setting the color of an axis. (sponsored by Flight Data + Services, www.flightdataservices.com) + + - Tick color is now auto-generated as the base color with some transparency, + unless you override it. + + - Support for aligning ticks in the axes with "alignTicksWithAxis" to ensure + that they appear next to each other rather than in between, at the expense + of possibly awkward tick steps. (sponsored by Flight Data Services, + www.flightdataservices.com) + + - Support for customizing the point type through a callback when plotting + points and new symbol plugin with some predefined point types. (sponsored + by Utility Data Corporation) + + - Resize plugin for automatically redrawing when the placeholder changes + size, e.g. on window resizes. (sponsored by Novus Partners) + + A resize() method has been added to plot object facilitate this. + + - Support Infinity/-Infinity for plotting asymptotes by hacking it into + +/-Number.MAX_VALUE. (reported by rabaea.mircea) + + - Support for restricting navigate plugin to not pan/zoom an axis. (based on + patch by kkaefer) + + - Support for providing the drag cursor for the navigate plugin as an option. + (based on patch by Kelly T. Moore) + + - Options for controlling whether an axis is shown or not (suggestion by Timo + Tuominen) and whether to reserve space for it even if it isn't shown. + + - New attribute $.plot.version with the Flot version as a string. + + - The version comment is now included in the minified jquery.flot.min.js. + + - New options.grid.minBorderMargin for adjusting the minimum margin provided + around the border (based on patch by corani, issue 188). + + - Refactor replot behaviour so Flot tries to reuse the existing canvas, + adding shutdown() methods to the plot. (based on patch by Ryley Breiddal, + issue 269) + + This prevents a memory leak in Chrome and hopefully makes replotting faster + for those who are using $.plot instead of .setData()/.draw(). Also update + jQuery to 1.5.1 to prevent IE leaks fixed in jQuery. + + - New real-time line chart example. + + - New hooks: drawSeries, shutdown. + +### Bug fixes ### + + - Fixed problem with findNearbyItem and bars on top of each other. (reported + by ragingchikn, issue 242) + + - Fixed problem with ticks and the border. (based on patch from + ultimatehustler69, issue 236) + + - Fixed problem with plugins adding options to the series objects. + + - Fixed a problem introduced in 0.6 with specifying a gradient with: + + ```{brightness: x, opacity: y }``` + + - Don't use $.browser.msie, check for getContext on the created canvas element + instead and try to use excanvas if it's not found. + + Fixes IE 9 compatibility. + + - highlight(s, index) was looking up the point in the original s.data instead + of in the computed datapoints array, which breaks with plugins that modify + the datapoints, such as the stacking plugin. (reported by curlypaul924, + issue 316) + + - More robust handling of axis from data passed in from getData(). (reported) + by Morgan) + + - Fixed problem with turning off bar outline. (fix by Jordi Castells, + issue 253) + + - Check the selection passed into setSelection in the selection + plugin, to guard against errors when synchronizing plots (fix by Lau + Bech Lauritzen). + + - Fix bug in crosshair code with mouseout resetting the crosshair even + if it is locked (fix by Lau Bech Lauritzen and Banko Adam). + + - Fix bug with points plotting using line width from lines rather than + points. + + - Fix bug with passing non-array 0 data (for plugins that don't expect + arrays, patch by vpapp1). + + - Fix errors in JSON in examples so they work with jQuery 1.4.2 + (fix reported by honestbleeps, issue 357). + + - Fix bug with tooltip in interacting.html, this makes the tooltip + much smoother (fix by bdkahn). Fix related bug inside highlighting + handler in Flot. + + - Use closure trick to make inline colorhelpers plugin respect + jQuery.noConflict(true), renaming the global jQuery object (reported + by Nick Stielau). + + - Listen for mouseleave events and fire a plothover event with empty + item when it occurs to drop highlights when the mouse leaves the + plot (reported by by outspirit). + + - Fix bug with using aboveData with a background (reported by + amitayd). + + - Fix possible excanvas leak (report and suggested fix by tom9729). + + - Fix bug with backwards compatibility for shadowSize = 0 (report and + suggested fix by aspinak). + + - Adapt examples to skip loading excanvas (fix by Ryley Breiddal). + + - Fix bug that prevent a simple f(x) = -x transform from working + correctly (fix by Mike, issue 263). + + - Fix bug in restoring cursor in navigate plugin (reported by Matteo + Gattanini, issue 395). + + - Fix bug in picking items when transform/inverseTransform is in use + (reported by Ofri Raviv, and patches and analysis by Jan and Tom + Paton, issue 334 and 467). + + - Fix problem with unaligned ticks and hover/click events caused by + padding on the placeholder by hardcoding the placeholder padding to + 0 (reported by adityadineshsaxena, Matt Sommer, Daniel Atos and some + other people, issue 301). + + - Update colorhelpers plugin to avoid dying when trying to parse an + invalid string (reported by cadavor, issue 483). + + + +## Flot 0.6 ## + +### API changes ### + +Selection support has been moved to a plugin. Thus if you're passing +selection: { mode: something }, you MUST include the file +jquery.flot.selection.js after jquery.flot.js. This reduces the size of +base Flot and makes it easier to customize the selection as well as +improving code clarity. The change is based on a patch from andershol. + +In the global options specified in the $.plot command, "lines", "points", +"bars" and "shadowSize" have been moved to a sub-object called "series": + +```js +$.plot(placeholder, data, { lines: { show: true }}) +``` + +should be changed to + +```js + $.plot(placeholder, data, { series: { lines: { show: true }}}) +``` + +All future series-specific options will go into this sub-object to +simplify plugin writing. Backward-compatibility code is in place, so +old code should not break. + +"plothover" no longer provides the original data point, but instead a +normalized one, since there may be no corresponding original point. + +Due to a bug in previous versions of jQuery, you now need at least +jQuery 1.2.6. But if you can, try jQuery 1.3.2 as it got some improvements +in event handling speed. + +## Changes ## + + - Added support for disabling interactivity for specific data series. + (request from Ronald Schouten and Steve Upton) + + - Flot now calls $() on the placeholder and optional legend container passed + in so you can specify DOM elements or CSS expressions to make it easier to + use Flot with libraries like Prototype or Mootools or through raw JSON from + Ajax responses. + + - A new "plotselecting" event is now emitted while the user is making a + selection. + + - The "plothover" event is now emitted immediately instead of at most 10 + times per second, you'll have to put in a setTimeout yourself if you're + doing something really expensive on this event. + + - The built-in date formatter can now be accessed as $.plot.formatDate(...) + (suggestion by Matt Manela) and even replaced. + + - Added "borderColor" option to the grid. (patches from Amaury Chamayou and + Mike R. Williamson) + + - Added support for gradient backgrounds for the grid. (based on patch from + Amaury Chamayou, issue 90) + + The "setting options" example provides a demonstration. + + - Gradient bars. (suggestion by stefpet) + + - Added a "plotunselected" event which is triggered when the selection is + removed, see "selection" example. (suggestion by Meda Ugo) + + - The option legend.margin can now specify horizontal and vertical margins + independently. (suggestion by someone who's annoyed) + + - Data passed into Flot is now copied to a new canonical format to enable + further processing before it hits the drawing routines. As a side-effect, + this should make Flot more robust in the face of bad data. (issue 112) + + - Step-wise charting: line charts have a new option "steps" that when set to + true connects the points with horizontal/vertical steps instead of diagonal + lines. + + - The legend labelFormatter now passes the series in addition to just the + label. (suggestion by Vincent Lemeltier) + + - Horizontal bars (based on patch by Jason LeBrun). + + - Support for partial bars by specifying a third coordinate, i.e. they don't + have to start from the axis. This can be used to make stacked bars. + + - New option to disable the (grid.show). + + - Added pointOffset method for converting a point in data space to an offset + within the placeholder. + + - Plugin system: register an init method in the $.flot.plugins array to get + started, see PLUGINS.txt for details on how to write plugins (it's easy). + There are also some extra methods to enable access to internal state. + + - Hooks: you can register functions that are called while Flot is crunching + the data and doing the plot. This can be used to modify Flot without + changing the source, useful for writing plugins. Some hooks are defined, + more are likely to come. + + - Threshold plugin: you can set a threshold and a color, and the data points + below that threshold will then get the color. Useful for marking data + below 0, for instance. + + - Stack plugin: you can specify a stack key for each series to have them + summed. This is useful for drawing additive/cumulative graphs with bars and + (currently unfilled) lines. + + - Crosshairs plugin: trace the mouse position on the axes, enable with + crosshair: { mode: "x"} (see the new tracking example for a use). + + - Image plugin: plot prerendered images. + + - Navigation plugin for panning and zooming a plot. + + - More configurable grid. + + - Axis transformation support, useful for non-linear plots, e.g. log axes and + compressed time axes (like omitting weekends). + + - Support for twelve-hour date formatting (patch by Forrest Aldridge). + + - The color parsing code in Flot has been cleaned up and split out so it's + now available as a separate jQuery plugin. It's included inline in the Flot + source to make dependency managing easier. This also makes it really easy + to use the color helpers in Flot plugins. + +## Bug fixes ## + + - Fixed two corner-case bugs when drawing filled curves. (report and analysis + by Joshua Varner) + + - Fix auto-adjustment code when setting min to 0 for an axis where the + dataset is completely flat on that axis. (report by chovy) + + - Fixed a bug with passing in data from getData to setData when the secondary + axes are used. (reported by nperelman, issue 65) + + - Fixed so that it is possible to turn lines off when no other chart type is + shown (based on problem reported by Glenn Vanderburg), and fixed so that + setting lineWidth to 0 also hides the shadow. (based on problem reported by + Sergio Nunes) + + - Updated mousemove position expression to the latest from jQuery. (reported + by meyuchas) + + - Use CSS borders instead of background in legend. (issues 25 and 45) + + - Explicitly convert axis min/max to numbers. + + - Fixed a bug with drawing marking lines with different colors. (reported by + Khurram) + + - Fixed a bug with returning y2 values in the selection event. (fix by + exists, issue 75) + + - Only set position relative on placeholder if it hasn't already a position + different from static. (reported by kyberneticist, issue 95) + + - Don't round markings to prevent sub-pixel problems. (reported by + Dan Lipsitt) + + - Make the grid border act similarly to a regular CSS border, i.e. prevent + it from overlapping the plot itself. This also fixes a problem with anti- + aliasing when the width is 1 pixel. (reported by Anthony Ettinger) + + - Imported version 3 of excanvas and fixed two issues with the newer version. + Hopefully, this will make Flot work with IE8. (nudge by Fabien Menager, + further analysis by Booink, issue 133) + + - Changed the shadow code for lines to hopefully look a bit better with + vertical lines. + + - Round tick positions to avoid possible problems with fractions. (suggestion + by Fred, issue 130) + + - Made the heuristic for determining how many ticks to aim for a bit smarter. + + - Fix for uneven axis margins (report and patch by Paul Kienzle) and snapping + to ticks. (report and patch by lifthrasiir) + + - Fixed bug with slicing in findNearbyItems. (patch by zollman) + + - Make heuristic for x axis label widths more dynamic. (patch by + rickinhethuis) + + - Make sure points on top take precedence when finding nearby points when + hovering. (reported by didroe, issue 224) + + + +## Flot 0.5 ## + +Timestamps are now in UTC. Also "selected" event -> becomes "plotselected" +with new data, the parameters for setSelection are now different (but +backwards compatibility hooks are in place), coloredAreas becomes markings +with a new interface (but backwards compatibility hooks are in place). + +### API changes ### + +Timestamps in time mode are now displayed according to UTC instead of the time +zone of the visitor. This affects the way the timestamps should be input; +you'll probably have to offset the timestamps according to your local time +zone. It also affects any custom date handling code (which basically now +should use the equivalent UTC date mehods, e.g. .setUTCMonth() instead of +.setMonth(). + +Markings, previously coloredAreas, are now specified as ranges on the axes, +like ```{ xaxis: { from: 0, to: 10 }}```. Furthermore with markings you can +now draw horizontal/vertical lines by setting from and to to the same +coordinate. (idea from line support patch by by Ryan Funduk) + +Interactivity: added a new "plothover" event and this and the "plotclick" +event now returns the closest data item (based on patch by /david, patch by +Mark Byers for bar support). See the revamped "interacting with the data" +example for some hints on what you can do. + +Highlighting: you can now highlight points and datapoints are autohighlighted +when you hover over them (if hovering is turned on). + +Support for dual axis has been added (based on patch by someone who's annoyed +and /david). For each data series you can specify which axes it belongs to, +and there are two more axes, x2axis and y2axis, to customize. This affects the +"selected" event which has been renamed to "plotselected" and spews out +```{ xaxis: { from: -10, to: 20 } ... },``` setSelection in which the +parameters are on a new form (backwards compatible hooks are in place so old +code shouldn't break) and markings (formerly coloredAreas). + +## Changes ## + + - Added support for specifying the size of tick labels (axis.labelWidth, + axis.labelHeight). Useful for specifying a max label size to keep multiple + plots aligned. + + - The "fill" option can now be a number that specifies the opacity of the + fill. + + - You can now specify a coordinate as null (like [2, null]) and Flot will + take the other coordinate into account when scaling the axes. (based on + patch by joebno) + + - New option for bars "align". Set it to "center" to center the bars on the + value they represent. + + - setSelection now takes a second parameter which you can use to prevent the + method from firing the "plotselected" handler. + + - Improved the handling of axis auto-scaling with bars. + +## Bug fixes ## + + - Fixed a bug in calculating spacing around the plot. (reported by + timothytoe) + + - Fixed a bug in finding max values for all-negative data sets. + + - Prevent the possibility of eternal looping in tick calculations. + + - Fixed a bug when borderWidth is set to 0. (reported by Rob/sanchothefat) + + - Fixed a bug with drawing bars extending below 0. (reported by James Hewitt, + patch by Ryan Funduk). + + - Fixed a bug with line widths of bars. (reported by MikeM) + + - Fixed a bug with 'nw' and 'sw' legend positions. + + - Fixed a bug with multi-line x-axis tick labels. (reported by Luca Ciano, + IE-fix help by Savage Zhang) + + - Using the "container" option in legend now overwrites the container element + instead of just appending to it, fixing the infinite legend bug. (reported + by several people, fix by Brad Dewey) + + + +## Flot 0.4 ## + +### API changes ### + +Deprecated axis.noTicks in favor of just specifying the number as axis.ticks. +So ```xaxis: { noTicks: 10 }``` becomes ```xaxis: { ticks: 10 }```. + +Time series support. Specify axis.mode: "time", put in Javascript timestamps +as data, and Flot will automatically spit out sensible ticks. Take a look at +the two new examples. The format can be customized with axis.timeformat and +axis.monthNames, or if that fails with axis.tickFormatter. + +Support for colored background areas via grid.coloredAreas. Specify an array +of { x1, y1, x2, y2 } objects or a function that returns these given +{ xmin, xmax, ymin, ymax }. + +More members on the plot object (report by Chris Davies and others). +"getData" for inspecting the assigned settings on data series (e.g. color) and +"setData", "setupGrid" and "draw" for updating the contents without a total +replot. + +The default number of ticks to aim for is now dependent on the size of the +plot in pixels. Support for customizing tick interval sizes directly with +axis.minTickSize and axis.tickSize. + +Cleaned up the automatic axis scaling algorithm and fixed how it interacts +with ticks. Also fixed a couple of tick-related corner case bugs (one reported +by mainstreetmark, another reported by timothytoe). + +The option axis.tickFormatter now takes a function with two parameters, the +second parameter is an optional object with information about the axis. It has +min, max, tickDecimals, tickSize. + +## Changes ## + + - Added support for segmented lines. (based on patch from Michael MacDonald) + + - Added support for ignoring null and bad values. (suggestion from Nick + Konidaris and joshwaihi) + + - Added support for changing the border width. (thanks to joebno and safoo) + + - Label colors can be changed via CSS by selecting the tickLabel class. + +## Bug fixes ## + + - Fixed a bug in handling single-item bar series. (reported by Emil Filipov) + + - Fixed erratic behaviour when interacting with the plot with IE 7. (reported + by Lau Bech Lauritzen). + + - Prevent IE/Safari text selection when selecting stuff on the canvas. + + + +## Flot 0.3 ## + +This is mostly a quick-fix release because jquery.js wasn't included in the +previous zip/tarball. + +## Changes ## + + - Include jquery.js in the zip/tarball. + + - Support clicking on the plot. Turn it on with grid: { clickable: true }, + then you get a "plotclick" event on the graph placeholder with the position + in units of the plot. + +## Bug fixes ## + + - Fixed a bug in dealing with data where min = max. (thanks to Michael + Messinides) + + + +## Flot 0.2 ## + +The API should now be fully documented. + +### API changes ### + +Moved labelMargin option to grid from x/yaxis. + +## Changes ## + + - Added support for putting a background behind the default legend. The + default is the partly transparent background color. Added backgroundColor + and backgroundOpacity to the legend options to control this. + + - The ticks options can now be a callback function that takes one parameter, + an object with the attributes min and max. The function should return a + ticks array. + + - Added labelFormatter option in legend, useful for turning the legend + labels into links. + + - Reduced the size of the code. (patch by Guy Fraser) + + + +## Flot 0.1 ## + +First public release. diff --git a/djangoproject/static/js/lib/jquery-flot/PLUGINS.md b/djangoproject/static/js/lib/jquery-flot/PLUGINS.md new file mode 100644 index 000000000..b5bf30020 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/PLUGINS.md @@ -0,0 +1,143 @@ +## Writing plugins ## + +All you need to do to make a new plugin is creating an init function +and a set of options (if needed), stuffing it into an object and +putting it in the $.plot.plugins array. For example: + +```js +function myCoolPluginInit(plot) { + plot.coolstring = "Hello!"; +}; + +$.plot.plugins.push({ init: myCoolPluginInit, options: { ... } }); + +// if $.plot is called, it will return a plot object with the +// attribute "coolstring" +``` + +Now, given that the plugin might run in many different places, it's +a good idea to avoid leaking names. The usual trick here is wrap the +above lines in an anonymous function which is called immediately, like +this: (function () { inner code ... })(). To make it even more robust +in case $ is not bound to jQuery but some other Javascript library, we +can write it as + +```js +(function ($) { + // plugin definition + // ... +})(jQuery); +``` + +There's a complete example below, but you should also check out the +plugins bundled with Flot. + + +## Complete example ## + +Here is a simple debug plugin which alerts each of the series in the +plot. It has a single option that control whether it is enabled and +how much info to output: + +```js +(function ($) { + function init(plot) { + var debugLevel = 1; + + function checkDebugEnabled(plot, options) { + if (options.debug) { + debugLevel = options.debug; + plot.hooks.processDatapoints.push(alertSeries); + } + } + + function alertSeries(plot, series, datapoints) { + var msg = "series " + series.label; + if (debugLevel > 1) { + msg += " with " + series.data.length + " points"; + alert(msg); + } + } + + plot.hooks.processOptions.push(checkDebugEnabled); + } + + var options = { debug: 0 }; + + $.plot.plugins.push({ + init: init, + options: options, + name: "simpledebug", + version: "0.1" + }); +})(jQuery); +``` + +We also define "name" and "version". It's not used by Flot, but might +be helpful for other plugins in resolving dependencies. + +Put the above in a file named "jquery.flot.debug.js", include it in an +HTML page and then it can be used with: + +```js + $.plot($("#placeholder"), [...], { debug: 2 }); +``` + +This simple plugin illustrates a couple of points: + + - It uses the anonymous function trick to avoid name pollution. + - It can be enabled/disabled through an option. + - Variables in the init function can be used to store plot-specific + state between the hooks. + +The two last points are important because there may be multiple plots +on the same page, and you'd want to make sure they are not mixed up. + + +## Shutting down a plugin ## + +Each plot object has a shutdown hook which is run when plot.shutdown() +is called. This usually mostly happens in case another plot is made on +top of an existing one. + +The purpose of the hook is to give you a chance to unbind any event +handlers you've registered and remove any extra DOM things you've +inserted. + +The problem with event handlers is that you can have registered a +handler which is run in some point in the future, e.g. with +setTimeout(). Meanwhile, the plot may have been shutdown and removed, +but because your event handler is still referencing it, it can't be +garbage collected yet, and worse, if your handler eventually runs, it +may overwrite stuff on a completely different plot. + + +## Some hints on the options ## + +Plugins should always support appropriate options to enable/disable +them because the plugin user may have several plots on the same page +where only one should use the plugin. In most cases it's probably a +good idea if the plugin is turned off rather than on per default, just +like most of the powerful features in Flot. + +If the plugin needs options that are specific to each series, like the +points or lines options in core Flot, you can put them in "series" in +the options object, e.g. + +```js +var options = { + series: { + downsample: { + algorithm: null, + maxpoints: 1000 + } + } +} +``` + +Then they will be copied by Flot into each series, providing default +values in case none are specified. + +Think hard and long about naming the options. These names are going to +be public API, and code is going to depend on them if the plugin is +successful. diff --git a/djangoproject/static/js/lib/jquery-flot/README.md b/djangoproject/static/js/lib/jquery-flot/README.md new file mode 100644 index 000000000..a8f70640a --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/README.md @@ -0,0 +1,110 @@ +# Flot [![Build status](https://travis-ci.org/flot/flot.png)](https://travis-ci.org/flot/flot) + +## About ## + +Flot is a Javascript plotting library for jQuery. +Read more at the website: + +Take a look at the the examples in examples/index.html; they should give a good +impression of what Flot can do, and the source code of the examples is probably +the fastest way to learn how to use Flot. + + +## Installation ## + +Just include the Javascript file after you've included jQuery. + +Generally, all browsers that support the HTML5 canvas tag are +supported. + +For support for Internet Explorer < 9, you can use [Excanvas] +[excanvas], a canvas emulator; this is used in the examples bundled +with Flot. You just include the excanvas script like this: + +```html + +``` + +If it's not working on your development IE 6.0, check that it has +support for VML which Excanvas is relying on. It appears that some +stripped down versions used for test environments on virtual machines +lack the VML support. + +You can also try using [Flashcanvas][flashcanvas], which uses Flash to +do the emulation. Although Flash can be a bit slower to load than VML, +if you've got a lot of points, the Flash version can be much faster +overall. Flot contains some wrapper code for activating Excanvas which +Flashcanvas is compatible with. + +You need at least jQuery 1.2.6, but try at least 1.3.2 for interactive +charts because of performance improvements in event handling. + + +## Basic usage ## + +Create a placeholder div to put the graph in: + +```html +
    +``` + +You need to set the width and height of this div, otherwise the plot +library doesn't know how to scale the graph. You can do it inline like +this: + +```html +
    +``` + +You can also do it with an external stylesheet. Make sure that the +placeholder isn't within something with a display:none CSS property - +in that case, Flot has trouble measuring label dimensions which +results in garbled looks and might have trouble measuring the +placeholder dimensions which is fatal (it'll throw an exception). + +Then when the div is ready in the DOM, which is usually on document +ready, run the plot function: + +```js +$.plot($("#placeholder"), data, options); +``` + +Here, data is an array of data series and options is an object with +settings if you want to customize the plot. Take a look at the +examples for some ideas of what to put in or look at the +[API reference](API.md). Here's a quick example that'll draw a line +from (0, 0) to (1, 1): + +```js +$.plot($("#placeholder"), [ [[0, 0], [1, 1]] ], { yaxis: { max: 1 } }); +``` + +The plot function immediately draws the chart and then returns a plot +object with a couple of methods. + + +## What's with the name? ## + +First: it's pronounced with a short o, like "plot". Not like "flawed". + +So "Flot" rhymes with "plot". + +And if you look up "flot" in a Danish-to-English dictionary, some of +the words that come up are "good-looking", "attractive", "stylish", +"smart", "impressive", "extravagant". One of the main goals with Flot +is pretty looks. + + +## Notes about the examples ## + +In order to have a useful, functional example of time-series plots using time +zones, date.js from [timezone-js][timezone-js] (released under the Apache 2.0 +license) and the [Olson][olson] time zone database (released to the public +domain) have been included in the examples directory. They are used in +examples/axes-time-zones/index.html. + + +[excanvas]: http://code.google.com/p/explorercanvas/ +[flashcanvas]: http://code.google.com/p/flashcanvas/ +[timezone-js]: https://github.com/mde/timezone-js +[olson]: http://ftp.iana.org/time-zones diff --git a/djangoproject/static/js/lib/jquery-flot/component.json b/djangoproject/static/js/lib/jquery-flot/component.json new file mode 100644 index 000000000..596117235 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/component.json @@ -0,0 +1,8 @@ +{ + "name": "Flot", + "version": "0.8.3", + "main": "jquery.flot.js", + "dependencies": { + "jquery": ">= 1.2.6" + } +} diff --git a/djangoproject/static/js/lib/jquery-flot/excanvas.js b/djangoproject/static/js/lib/jquery-flot/excanvas.js new file mode 100644 index 000000000..70a8f25ca --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/excanvas.js @@ -0,0 +1,1428 @@ +// Copyright 2006 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + + +// Known Issues: +// +// * Patterns only support repeat. +// * Radial gradient are not implemented. The VML version of these look very +// different from the canvas one. +// * Clipping paths are not implemented. +// * Coordsize. The width and height attribute have higher priority than the +// width and height style values which isn't correct. +// * Painting mode isn't implemented. +// * Canvas width/height should is using content-box by default. IE in +// Quirks mode will draw the canvas using border-box. Either change your +// doctype to HTML5 +// (http://www.whatwg.org/specs/web-apps/current-work/#the-doctype) +// or use Box Sizing Behavior from WebFX +// (http://webfx.eae.net/dhtml/boxsizing/boxsizing.html) +// * Non uniform scaling does not correctly scale strokes. +// * Filling very large shapes (above 5000 points) is buggy. +// * Optimize. There is always room for speed improvements. + +// Only add this code if we do not already have a canvas implementation +if (!document.createElement('canvas').getContext) { + +(function() { + + // alias some functions to make (compiled) code shorter + var m = Math; + var mr = m.round; + var ms = m.sin; + var mc = m.cos; + var abs = m.abs; + var sqrt = m.sqrt; + + // this is used for sub pixel precision + var Z = 10; + var Z2 = Z / 2; + + var IE_VERSION = +navigator.userAgent.match(/MSIE ([\d.]+)?/)[1]; + + /** + * This funtion is assigned to the elements as element.getContext(). + * @this {HTMLElement} + * @return {CanvasRenderingContext2D_} + */ + function getContext() { + return this.context_ || + (this.context_ = new CanvasRenderingContext2D_(this)); + } + + var slice = Array.prototype.slice; + + /** + * Binds a function to an object. The returned function will always use the + * passed in {@code obj} as {@code this}. + * + * Example: + * + * g = bind(f, obj, a, b) + * g(c, d) // will do f.call(obj, a, b, c, d) + * + * @param {Function} f The function to bind the object to + * @param {Object} obj The object that should act as this when the function + * is called + * @param {*} var_args Rest arguments that will be used as the initial + * arguments when the function is called + * @return {Function} A new function that has bound this + */ + function bind(f, obj, var_args) { + var a = slice.call(arguments, 2); + return function() { + return f.apply(obj, a.concat(slice.call(arguments))); + }; + } + + function encodeHtmlAttribute(s) { + return String(s).replace(/&/g, '&').replace(/"/g, '"'); + } + + function addNamespace(doc, prefix, urn) { + if (!doc.namespaces[prefix]) { + doc.namespaces.add(prefix, urn, '#default#VML'); + } + } + + function addNamespacesAndStylesheet(doc) { + addNamespace(doc, 'g_vml_', 'urn:schemas-microsoft-com:vml'); + addNamespace(doc, 'g_o_', 'urn:schemas-microsoft-com:office:office'); + + // Setup default CSS. Only add one style sheet per document + if (!doc.styleSheets['ex_canvas_']) { + var ss = doc.createStyleSheet(); + ss.owningElement.id = 'ex_canvas_'; + ss.cssText = 'canvas{display:inline-block;overflow:hidden;' + + // default size is 300x150 in Gecko and Opera + 'text-align:left;width:300px;height:150px}'; + } + } + + // Add namespaces and stylesheet at startup. + addNamespacesAndStylesheet(document); + + var G_vmlCanvasManager_ = { + init: function(opt_doc) { + var doc = opt_doc || document; + // Create a dummy element so that IE will allow canvas elements to be + // recognized. + doc.createElement('canvas'); + doc.attachEvent('onreadystatechange', bind(this.init_, this, doc)); + }, + + init_: function(doc) { + // find all canvas elements + var els = doc.getElementsByTagName('canvas'); + for (var i = 0; i < els.length; i++) { + this.initElement(els[i]); + } + }, + + /** + * Public initializes a canvas element so that it can be used as canvas + * element from now on. This is called automatically before the page is + * loaded but if you are creating elements using createElement you need to + * make sure this is called on the element. + * @param {HTMLElement} el The canvas element to initialize. + * @return {HTMLElement} the element that was created. + */ + initElement: function(el) { + if (!el.getContext) { + el.getContext = getContext; + + // Add namespaces and stylesheet to document of the element. + addNamespacesAndStylesheet(el.ownerDocument); + + // Remove fallback content. There is no way to hide text nodes so we + // just remove all childNodes. We could hide all elements and remove + // text nodes but who really cares about the fallback content. + el.innerHTML = ''; + + // do not use inline function because that will leak memory + el.attachEvent('onpropertychange', onPropertyChange); + el.attachEvent('onresize', onResize); + + var attrs = el.attributes; + if (attrs.width && attrs.width.specified) { + // TODO: use runtimeStyle and coordsize + // el.getContext().setWidth_(attrs.width.nodeValue); + el.style.width = attrs.width.nodeValue + 'px'; + } else { + el.width = el.clientWidth; + } + if (attrs.height && attrs.height.specified) { + // TODO: use runtimeStyle and coordsize + // el.getContext().setHeight_(attrs.height.nodeValue); + el.style.height = attrs.height.nodeValue + 'px'; + } else { + el.height = el.clientHeight; + } + //el.getContext().setCoordsize_() + } + return el; + } + }; + + function onPropertyChange(e) { + var el = e.srcElement; + + switch (e.propertyName) { + case 'width': + el.getContext().clearRect(); + el.style.width = el.attributes.width.nodeValue + 'px'; + // In IE8 this does not trigger onresize. + el.firstChild.style.width = el.clientWidth + 'px'; + break; + case 'height': + el.getContext().clearRect(); + el.style.height = el.attributes.height.nodeValue + 'px'; + el.firstChild.style.height = el.clientHeight + 'px'; + break; + } + } + + function onResize(e) { + var el = e.srcElement; + if (el.firstChild) { + el.firstChild.style.width = el.clientWidth + 'px'; + el.firstChild.style.height = el.clientHeight + 'px'; + } + } + + G_vmlCanvasManager_.init(); + + // precompute "00" to "FF" + var decToHex = []; + for (var i = 0; i < 16; i++) { + for (var j = 0; j < 16; j++) { + decToHex[i * 16 + j] = i.toString(16) + j.toString(16); + } + } + + function createMatrixIdentity() { + return [ + [1, 0, 0], + [0, 1, 0], + [0, 0, 1] + ]; + } + + function matrixMultiply(m1, m2) { + var result = createMatrixIdentity(); + + for (var x = 0; x < 3; x++) { + for (var y = 0; y < 3; y++) { + var sum = 0; + + for (var z = 0; z < 3; z++) { + sum += m1[x][z] * m2[z][y]; + } + + result[x][y] = sum; + } + } + return result; + } + + function copyState(o1, o2) { + o2.fillStyle = o1.fillStyle; + o2.lineCap = o1.lineCap; + o2.lineJoin = o1.lineJoin; + o2.lineWidth = o1.lineWidth; + o2.miterLimit = o1.miterLimit; + o2.shadowBlur = o1.shadowBlur; + o2.shadowColor = o1.shadowColor; + o2.shadowOffsetX = o1.shadowOffsetX; + o2.shadowOffsetY = o1.shadowOffsetY; + o2.strokeStyle = o1.strokeStyle; + o2.globalAlpha = o1.globalAlpha; + o2.font = o1.font; + o2.textAlign = o1.textAlign; + o2.textBaseline = o1.textBaseline; + o2.arcScaleX_ = o1.arcScaleX_; + o2.arcScaleY_ = o1.arcScaleY_; + o2.lineScale_ = o1.lineScale_; + } + + var colorData = { + aliceblue: '#F0F8FF', + antiquewhite: '#FAEBD7', + aquamarine: '#7FFFD4', + azure: '#F0FFFF', + beige: '#F5F5DC', + bisque: '#FFE4C4', + black: '#000000', + blanchedalmond: '#FFEBCD', + blueviolet: '#8A2BE2', + brown: '#A52A2A', + burlywood: '#DEB887', + cadetblue: '#5F9EA0', + chartreuse: '#7FFF00', + chocolate: '#D2691E', + coral: '#FF7F50', + cornflowerblue: '#6495ED', + cornsilk: '#FFF8DC', + crimson: '#DC143C', + cyan: '#00FFFF', + darkblue: '#00008B', + darkcyan: '#008B8B', + darkgoldenrod: '#B8860B', + darkgray: '#A9A9A9', + darkgreen: '#006400', + darkgrey: '#A9A9A9', + darkkhaki: '#BDB76B', + darkmagenta: '#8B008B', + darkolivegreen: '#556B2F', + darkorange: '#FF8C00', + darkorchid: '#9932CC', + darkred: '#8B0000', + darksalmon: '#E9967A', + darkseagreen: '#8FBC8F', + darkslateblue: '#483D8B', + darkslategray: '#2F4F4F', + darkslategrey: '#2F4F4F', + darkturquoise: '#00CED1', + darkviolet: '#9400D3', + deeppink: '#FF1493', + deepskyblue: '#00BFFF', + dimgray: '#696969', + dimgrey: '#696969', + dodgerblue: '#1E90FF', + firebrick: '#B22222', + floralwhite: '#FFFAF0', + forestgreen: '#228B22', + gainsboro: '#DCDCDC', + ghostwhite: '#F8F8FF', + gold: '#FFD700', + goldenrod: '#DAA520', + grey: '#808080', + greenyellow: '#ADFF2F', + honeydew: '#F0FFF0', + hotpink: '#FF69B4', + indianred: '#CD5C5C', + indigo: '#4B0082', + ivory: '#FFFFF0', + khaki: '#F0E68C', + lavender: '#E6E6FA', + lavenderblush: '#FFF0F5', + lawngreen: '#7CFC00', + lemonchiffon: '#FFFACD', + lightblue: '#ADD8E6', + lightcoral: '#F08080', + lightcyan: '#E0FFFF', + lightgoldenrodyellow: '#FAFAD2', + lightgreen: '#90EE90', + lightgrey: '#D3D3D3', + lightpink: '#FFB6C1', + lightsalmon: '#FFA07A', + lightseagreen: '#20B2AA', + lightskyblue: '#87CEFA', + lightslategray: '#778899', + lightslategrey: '#778899', + lightsteelblue: '#B0C4DE', + lightyellow: '#FFFFE0', + limegreen: '#32CD32', + linen: '#FAF0E6', + magenta: '#FF00FF', + mediumaquamarine: '#66CDAA', + mediumblue: '#0000CD', + mediumorchid: '#BA55D3', + mediumpurple: '#9370DB', + mediumseagreen: '#3CB371', + mediumslateblue: '#7B68EE', + mediumspringgreen: '#00FA9A', + mediumturquoise: '#48D1CC', + mediumvioletred: '#C71585', + midnightblue: '#191970', + mintcream: '#F5FFFA', + mistyrose: '#FFE4E1', + moccasin: '#FFE4B5', + navajowhite: '#FFDEAD', + oldlace: '#FDF5E6', + olivedrab: '#6B8E23', + orange: '#FFA500', + orangered: '#FF4500', + orchid: '#DA70D6', + palegoldenrod: '#EEE8AA', + palegreen: '#98FB98', + paleturquoise: '#AFEEEE', + palevioletred: '#DB7093', + papayawhip: '#FFEFD5', + peachpuff: '#FFDAB9', + peru: '#CD853F', + pink: '#FFC0CB', + plum: '#DDA0DD', + powderblue: '#B0E0E6', + rosybrown: '#BC8F8F', + royalblue: '#4169E1', + saddlebrown: '#8B4513', + salmon: '#FA8072', + sandybrown: '#F4A460', + seagreen: '#2E8B57', + seashell: '#FFF5EE', + sienna: '#A0522D', + skyblue: '#87CEEB', + slateblue: '#6A5ACD', + slategray: '#708090', + slategrey: '#708090', + snow: '#FFFAFA', + springgreen: '#00FF7F', + steelblue: '#4682B4', + tan: '#D2B48C', + thistle: '#D8BFD8', + tomato: '#FF6347', + turquoise: '#40E0D0', + violet: '#EE82EE', + wheat: '#F5DEB3', + whitesmoke: '#F5F5F5', + yellowgreen: '#9ACD32' + }; + + + function getRgbHslContent(styleString) { + var start = styleString.indexOf('(', 3); + var end = styleString.indexOf(')', start + 1); + var parts = styleString.substring(start + 1, end).split(','); + // add alpha if needed + if (parts.length != 4 || styleString.charAt(3) != 'a') { + parts[3] = 1; + } + return parts; + } + + function percent(s) { + return parseFloat(s) / 100; + } + + function clamp(v, min, max) { + return Math.min(max, Math.max(min, v)); + } + + function hslToRgb(parts){ + var r, g, b, h, s, l; + h = parseFloat(parts[0]) / 360 % 360; + if (h < 0) + h++; + s = clamp(percent(parts[1]), 0, 1); + l = clamp(percent(parts[2]), 0, 1); + if (s == 0) { + r = g = b = l; // achromatic + } else { + var q = l < 0.5 ? l * (1 + s) : l + s - l * s; + var p = 2 * l - q; + r = hueToRgb(p, q, h + 1 / 3); + g = hueToRgb(p, q, h); + b = hueToRgb(p, q, h - 1 / 3); + } + + return '#' + decToHex[Math.floor(r * 255)] + + decToHex[Math.floor(g * 255)] + + decToHex[Math.floor(b * 255)]; + } + + function hueToRgb(m1, m2, h) { + if (h < 0) + h++; + if (h > 1) + h--; + + if (6 * h < 1) + return m1 + (m2 - m1) * 6 * h; + else if (2 * h < 1) + return m2; + else if (3 * h < 2) + return m1 + (m2 - m1) * (2 / 3 - h) * 6; + else + return m1; + } + + var processStyleCache = {}; + + function processStyle(styleString) { + if (styleString in processStyleCache) { + return processStyleCache[styleString]; + } + + var str, alpha = 1; + + styleString = String(styleString); + if (styleString.charAt(0) == '#') { + str = styleString; + } else if (/^rgb/.test(styleString)) { + var parts = getRgbHslContent(styleString); + var str = '#', n; + for (var i = 0; i < 3; i++) { + if (parts[i].indexOf('%') != -1) { + n = Math.floor(percent(parts[i]) * 255); + } else { + n = +parts[i]; + } + str += decToHex[clamp(n, 0, 255)]; + } + alpha = +parts[3]; + } else if (/^hsl/.test(styleString)) { + var parts = getRgbHslContent(styleString); + str = hslToRgb(parts); + alpha = parts[3]; + } else { + str = colorData[styleString] || styleString; + } + return processStyleCache[styleString] = {color: str, alpha: alpha}; + } + + var DEFAULT_STYLE = { + style: 'normal', + variant: 'normal', + weight: 'normal', + size: 10, + family: 'sans-serif' + }; + + // Internal text style cache + var fontStyleCache = {}; + + function processFontStyle(styleString) { + if (fontStyleCache[styleString]) { + return fontStyleCache[styleString]; + } + + var el = document.createElement('div'); + var style = el.style; + try { + style.font = styleString; + } catch (ex) { + // Ignore failures to set to invalid font. + } + + return fontStyleCache[styleString] = { + style: style.fontStyle || DEFAULT_STYLE.style, + variant: style.fontVariant || DEFAULT_STYLE.variant, + weight: style.fontWeight || DEFAULT_STYLE.weight, + size: style.fontSize || DEFAULT_STYLE.size, + family: style.fontFamily || DEFAULT_STYLE.family + }; + } + + function getComputedStyle(style, element) { + var computedStyle = {}; + + for (var p in style) { + computedStyle[p] = style[p]; + } + + // Compute the size + var canvasFontSize = parseFloat(element.currentStyle.fontSize), + fontSize = parseFloat(style.size); + + if (typeof style.size == 'number') { + computedStyle.size = style.size; + } else if (style.size.indexOf('px') != -1) { + computedStyle.size = fontSize; + } else if (style.size.indexOf('em') != -1) { + computedStyle.size = canvasFontSize * fontSize; + } else if(style.size.indexOf('%') != -1) { + computedStyle.size = (canvasFontSize / 100) * fontSize; + } else if (style.size.indexOf('pt') != -1) { + computedStyle.size = fontSize / .75; + } else { + computedStyle.size = canvasFontSize; + } + + // Different scaling between normal text and VML text. This was found using + // trial and error to get the same size as non VML text. + computedStyle.size *= 0.981; + + return computedStyle; + } + + function buildStyle(style) { + return style.style + ' ' + style.variant + ' ' + style.weight + ' ' + + style.size + 'px ' + style.family; + } + + var lineCapMap = { + 'butt': 'flat', + 'round': 'round' + }; + + function processLineCap(lineCap) { + return lineCapMap[lineCap] || 'square'; + } + + /** + * This class implements CanvasRenderingContext2D interface as described by + * the WHATWG. + * @param {HTMLElement} canvasElement The element that the 2D context should + * be associated with + */ + function CanvasRenderingContext2D_(canvasElement) { + this.m_ = createMatrixIdentity(); + + this.mStack_ = []; + this.aStack_ = []; + this.currentPath_ = []; + + // Canvas context properties + this.strokeStyle = '#000'; + this.fillStyle = '#000'; + + this.lineWidth = 1; + this.lineJoin = 'miter'; + this.lineCap = 'butt'; + this.miterLimit = Z * 1; + this.globalAlpha = 1; + this.font = '10px sans-serif'; + this.textAlign = 'left'; + this.textBaseline = 'alphabetic'; + this.canvas = canvasElement; + + var cssText = 'width:' + canvasElement.clientWidth + 'px;height:' + + canvasElement.clientHeight + 'px;overflow:hidden;position:absolute'; + var el = canvasElement.ownerDocument.createElement('div'); + el.style.cssText = cssText; + canvasElement.appendChild(el); + + var overlayEl = el.cloneNode(false); + // Use a non transparent background. + overlayEl.style.backgroundColor = 'red'; + overlayEl.style.filter = 'alpha(opacity=0)'; + canvasElement.appendChild(overlayEl); + + this.element_ = el; + this.arcScaleX_ = 1; + this.arcScaleY_ = 1; + this.lineScale_ = 1; + } + + var contextPrototype = CanvasRenderingContext2D_.prototype; + contextPrototype.clearRect = function() { + if (this.textMeasureEl_) { + this.textMeasureEl_.removeNode(true); + this.textMeasureEl_ = null; + } + this.element_.innerHTML = ''; + }; + + contextPrototype.beginPath = function() { + // TODO: Branch current matrix so that save/restore has no effect + // as per safari docs. + this.currentPath_ = []; + }; + + contextPrototype.moveTo = function(aX, aY) { + var p = getCoords(this, aX, aY); + this.currentPath_.push({type: 'moveTo', x: p.x, y: p.y}); + this.currentX_ = p.x; + this.currentY_ = p.y; + }; + + contextPrototype.lineTo = function(aX, aY) { + var p = getCoords(this, aX, aY); + this.currentPath_.push({type: 'lineTo', x: p.x, y: p.y}); + + this.currentX_ = p.x; + this.currentY_ = p.y; + }; + + contextPrototype.bezierCurveTo = function(aCP1x, aCP1y, + aCP2x, aCP2y, + aX, aY) { + var p = getCoords(this, aX, aY); + var cp1 = getCoords(this, aCP1x, aCP1y); + var cp2 = getCoords(this, aCP2x, aCP2y); + bezierCurveTo(this, cp1, cp2, p); + }; + + // Helper function that takes the already fixed cordinates. + function bezierCurveTo(self, cp1, cp2, p) { + self.currentPath_.push({ + type: 'bezierCurveTo', + cp1x: cp1.x, + cp1y: cp1.y, + cp2x: cp2.x, + cp2y: cp2.y, + x: p.x, + y: p.y + }); + self.currentX_ = p.x; + self.currentY_ = p.y; + } + + contextPrototype.quadraticCurveTo = function(aCPx, aCPy, aX, aY) { + // the following is lifted almost directly from + // http://developer.mozilla.org/en/docs/Canvas_tutorial:Drawing_shapes + + var cp = getCoords(this, aCPx, aCPy); + var p = getCoords(this, aX, aY); + + var cp1 = { + x: this.currentX_ + 2.0 / 3.0 * (cp.x - this.currentX_), + y: this.currentY_ + 2.0 / 3.0 * (cp.y - this.currentY_) + }; + var cp2 = { + x: cp1.x + (p.x - this.currentX_) / 3.0, + y: cp1.y + (p.y - this.currentY_) / 3.0 + }; + + bezierCurveTo(this, cp1, cp2, p); + }; + + contextPrototype.arc = function(aX, aY, aRadius, + aStartAngle, aEndAngle, aClockwise) { + aRadius *= Z; + var arcType = aClockwise ? 'at' : 'wa'; + + var xStart = aX + mc(aStartAngle) * aRadius - Z2; + var yStart = aY + ms(aStartAngle) * aRadius - Z2; + + var xEnd = aX + mc(aEndAngle) * aRadius - Z2; + var yEnd = aY + ms(aEndAngle) * aRadius - Z2; + + // IE won't render arches drawn counter clockwise if xStart == xEnd. + if (xStart == xEnd && !aClockwise) { + xStart += 0.125; // Offset xStart by 1/80 of a pixel. Use something + // that can be represented in binary + } + + var p = getCoords(this, aX, aY); + var pStart = getCoords(this, xStart, yStart); + var pEnd = getCoords(this, xEnd, yEnd); + + this.currentPath_.push({type: arcType, + x: p.x, + y: p.y, + radius: aRadius, + xStart: pStart.x, + yStart: pStart.y, + xEnd: pEnd.x, + yEnd: pEnd.y}); + + }; + + contextPrototype.rect = function(aX, aY, aWidth, aHeight) { + this.moveTo(aX, aY); + this.lineTo(aX + aWidth, aY); + this.lineTo(aX + aWidth, aY + aHeight); + this.lineTo(aX, aY + aHeight); + this.closePath(); + }; + + contextPrototype.strokeRect = function(aX, aY, aWidth, aHeight) { + var oldPath = this.currentPath_; + this.beginPath(); + + this.moveTo(aX, aY); + this.lineTo(aX + aWidth, aY); + this.lineTo(aX + aWidth, aY + aHeight); + this.lineTo(aX, aY + aHeight); + this.closePath(); + this.stroke(); + + this.currentPath_ = oldPath; + }; + + contextPrototype.fillRect = function(aX, aY, aWidth, aHeight) { + var oldPath = this.currentPath_; + this.beginPath(); + + this.moveTo(aX, aY); + this.lineTo(aX + aWidth, aY); + this.lineTo(aX + aWidth, aY + aHeight); + this.lineTo(aX, aY + aHeight); + this.closePath(); + this.fill(); + + this.currentPath_ = oldPath; + }; + + contextPrototype.createLinearGradient = function(aX0, aY0, aX1, aY1) { + var gradient = new CanvasGradient_('gradient'); + gradient.x0_ = aX0; + gradient.y0_ = aY0; + gradient.x1_ = aX1; + gradient.y1_ = aY1; + return gradient; + }; + + contextPrototype.createRadialGradient = function(aX0, aY0, aR0, + aX1, aY1, aR1) { + var gradient = new CanvasGradient_('gradientradial'); + gradient.x0_ = aX0; + gradient.y0_ = aY0; + gradient.r0_ = aR0; + gradient.x1_ = aX1; + gradient.y1_ = aY1; + gradient.r1_ = aR1; + return gradient; + }; + + contextPrototype.drawImage = function(image, var_args) { + var dx, dy, dw, dh, sx, sy, sw, sh; + + // to find the original width we overide the width and height + var oldRuntimeWidth = image.runtimeStyle.width; + var oldRuntimeHeight = image.runtimeStyle.height; + image.runtimeStyle.width = 'auto'; + image.runtimeStyle.height = 'auto'; + + // get the original size + var w = image.width; + var h = image.height; + + // and remove overides + image.runtimeStyle.width = oldRuntimeWidth; + image.runtimeStyle.height = oldRuntimeHeight; + + if (arguments.length == 3) { + dx = arguments[1]; + dy = arguments[2]; + sx = sy = 0; + sw = dw = w; + sh = dh = h; + } else if (arguments.length == 5) { + dx = arguments[1]; + dy = arguments[2]; + dw = arguments[3]; + dh = arguments[4]; + sx = sy = 0; + sw = w; + sh = h; + } else if (arguments.length == 9) { + sx = arguments[1]; + sy = arguments[2]; + sw = arguments[3]; + sh = arguments[4]; + dx = arguments[5]; + dy = arguments[6]; + dw = arguments[7]; + dh = arguments[8]; + } else { + throw Error('Invalid number of arguments'); + } + + var d = getCoords(this, dx, dy); + + var w2 = sw / 2; + var h2 = sh / 2; + + var vmlStr = []; + + var W = 10; + var H = 10; + + // For some reason that I've now forgotten, using divs didn't work + vmlStr.push(' ' , + '', + ''); + + this.element_.insertAdjacentHTML('BeforeEnd', vmlStr.join('')); + }; + + contextPrototype.stroke = function(aFill) { + var W = 10; + var H = 10; + // Divide the shape into chunks if it's too long because IE has a limit + // somewhere for how long a VML shape can be. This simple division does + // not work with fills, only strokes, unfortunately. + var chunkSize = 5000; + + var min = {x: null, y: null}; + var max = {x: null, y: null}; + + for (var j = 0; j < this.currentPath_.length; j += chunkSize) { + var lineStr = []; + var lineOpen = false; + + lineStr.push(''); + + if (!aFill) { + appendStroke(this, lineStr); + } else { + appendFill(this, lineStr, min, max); + } + + lineStr.push(''); + + this.element_.insertAdjacentHTML('beforeEnd', lineStr.join('')); + } + }; + + function appendStroke(ctx, lineStr) { + var a = processStyle(ctx.strokeStyle); + var color = a.color; + var opacity = a.alpha * ctx.globalAlpha; + var lineWidth = ctx.lineScale_ * ctx.lineWidth; + + // VML cannot correctly render a line if the width is less than 1px. + // In that case, we dilute the color to make the line look thinner. + if (lineWidth < 1) { + opacity *= lineWidth; + } + + lineStr.push( + '' + ); + } + + function appendFill(ctx, lineStr, min, max) { + var fillStyle = ctx.fillStyle; + var arcScaleX = ctx.arcScaleX_; + var arcScaleY = ctx.arcScaleY_; + var width = max.x - min.x; + var height = max.y - min.y; + if (fillStyle instanceof CanvasGradient_) { + // TODO: Gradients transformed with the transformation matrix. + var angle = 0; + var focus = {x: 0, y: 0}; + + // additional offset + var shift = 0; + // scale factor for offset + var expansion = 1; + + if (fillStyle.type_ == 'gradient') { + var x0 = fillStyle.x0_ / arcScaleX; + var y0 = fillStyle.y0_ / arcScaleY; + var x1 = fillStyle.x1_ / arcScaleX; + var y1 = fillStyle.y1_ / arcScaleY; + var p0 = getCoords(ctx, x0, y0); + var p1 = getCoords(ctx, x1, y1); + var dx = p1.x - p0.x; + var dy = p1.y - p0.y; + angle = Math.atan2(dx, dy) * 180 / Math.PI; + + // The angle should be a non-negative number. + if (angle < 0) { + angle += 360; + } + + // Very small angles produce an unexpected result because they are + // converted to a scientific notation string. + if (angle < 1e-6) { + angle = 0; + } + } else { + var p0 = getCoords(ctx, fillStyle.x0_, fillStyle.y0_); + focus = { + x: (p0.x - min.x) / width, + y: (p0.y - min.y) / height + }; + + width /= arcScaleX * Z; + height /= arcScaleY * Z; + var dimension = m.max(width, height); + shift = 2 * fillStyle.r0_ / dimension; + expansion = 2 * fillStyle.r1_ / dimension - shift; + } + + // We need to sort the color stops in ascending order by offset, + // otherwise IE won't interpret it correctly. + var stops = fillStyle.colors_; + stops.sort(function(cs1, cs2) { + return cs1.offset - cs2.offset; + }); + + var length = stops.length; + var color1 = stops[0].color; + var color2 = stops[length - 1].color; + var opacity1 = stops[0].alpha * ctx.globalAlpha; + var opacity2 = stops[length - 1].alpha * ctx.globalAlpha; + + var colors = []; + for (var i = 0; i < length; i++) { + var stop = stops[i]; + colors.push(stop.offset * expansion + shift + ' ' + stop.color); + } + + // When colors attribute is used, the meanings of opacity and o:opacity2 + // are reversed. + lineStr.push(''); + } else if (fillStyle instanceof CanvasPattern_) { + if (width && height) { + var deltaLeft = -min.x; + var deltaTop = -min.y; + lineStr.push(''); + } + } else { + var a = processStyle(ctx.fillStyle); + var color = a.color; + var opacity = a.alpha * ctx.globalAlpha; + lineStr.push(''); + } + } + + contextPrototype.fill = function() { + this.stroke(true); + }; + + contextPrototype.closePath = function() { + this.currentPath_.push({type: 'close'}); + }; + + function getCoords(ctx, aX, aY) { + var m = ctx.m_; + return { + x: Z * (aX * m[0][0] + aY * m[1][0] + m[2][0]) - Z2, + y: Z * (aX * m[0][1] + aY * m[1][1] + m[2][1]) - Z2 + }; + }; + + contextPrototype.save = function() { + var o = {}; + copyState(this, o); + this.aStack_.push(o); + this.mStack_.push(this.m_); + this.m_ = matrixMultiply(createMatrixIdentity(), this.m_); + }; + + contextPrototype.restore = function() { + if (this.aStack_.length) { + copyState(this.aStack_.pop(), this); + this.m_ = this.mStack_.pop(); + } + }; + + function matrixIsFinite(m) { + return isFinite(m[0][0]) && isFinite(m[0][1]) && + isFinite(m[1][0]) && isFinite(m[1][1]) && + isFinite(m[2][0]) && isFinite(m[2][1]); + } + + function setM(ctx, m, updateLineScale) { + if (!matrixIsFinite(m)) { + return; + } + ctx.m_ = m; + + if (updateLineScale) { + // Get the line scale. + // Determinant of this.m_ means how much the area is enlarged by the + // transformation. So its square root can be used as a scale factor + // for width. + var det = m[0][0] * m[1][1] - m[0][1] * m[1][0]; + ctx.lineScale_ = sqrt(abs(det)); + } + } + + contextPrototype.translate = function(aX, aY) { + var m1 = [ + [1, 0, 0], + [0, 1, 0], + [aX, aY, 1] + ]; + + setM(this, matrixMultiply(m1, this.m_), false); + }; + + contextPrototype.rotate = function(aRot) { + var c = mc(aRot); + var s = ms(aRot); + + var m1 = [ + [c, s, 0], + [-s, c, 0], + [0, 0, 1] + ]; + + setM(this, matrixMultiply(m1, this.m_), false); + }; + + contextPrototype.scale = function(aX, aY) { + this.arcScaleX_ *= aX; + this.arcScaleY_ *= aY; + var m1 = [ + [aX, 0, 0], + [0, aY, 0], + [0, 0, 1] + ]; + + setM(this, matrixMultiply(m1, this.m_), true); + }; + + contextPrototype.transform = function(m11, m12, m21, m22, dx, dy) { + var m1 = [ + [m11, m12, 0], + [m21, m22, 0], + [dx, dy, 1] + ]; + + setM(this, matrixMultiply(m1, this.m_), true); + }; + + contextPrototype.setTransform = function(m11, m12, m21, m22, dx, dy) { + var m = [ + [m11, m12, 0], + [m21, m22, 0], + [dx, dy, 1] + ]; + + setM(this, m, true); + }; + + /** + * The text drawing function. + * The maxWidth argument isn't taken in account, since no browser supports + * it yet. + */ + contextPrototype.drawText_ = function(text, x, y, maxWidth, stroke) { + var m = this.m_, + delta = 1000, + left = 0, + right = delta, + offset = {x: 0, y: 0}, + lineStr = []; + + var fontStyle = getComputedStyle(processFontStyle(this.font), + this.element_); + + var fontStyleString = buildStyle(fontStyle); + + var elementStyle = this.element_.currentStyle; + var textAlign = this.textAlign.toLowerCase(); + switch (textAlign) { + case 'left': + case 'center': + case 'right': + break; + case 'end': + textAlign = elementStyle.direction == 'ltr' ? 'right' : 'left'; + break; + case 'start': + textAlign = elementStyle.direction == 'rtl' ? 'right' : 'left'; + break; + default: + textAlign = 'left'; + } + + // 1.75 is an arbitrary number, as there is no info about the text baseline + switch (this.textBaseline) { + case 'hanging': + case 'top': + offset.y = fontStyle.size / 1.75; + break; + case 'middle': + break; + default: + case null: + case 'alphabetic': + case 'ideographic': + case 'bottom': + offset.y = -fontStyle.size / 2.25; + break; + } + + switch(textAlign) { + case 'right': + left = delta; + right = 0.05; + break; + case 'center': + left = right = delta / 2; + break; + } + + var d = getCoords(this, x + offset.x, y + offset.y); + + lineStr.push(''); + + if (stroke) { + appendStroke(this, lineStr); + } else { + // TODO: Fix the min and max params. + appendFill(this, lineStr, {x: -left, y: 0}, + {x: right, y: fontStyle.size}); + } + + var skewM = m[0][0].toFixed(3) + ',' + m[1][0].toFixed(3) + ',' + + m[0][1].toFixed(3) + ',' + m[1][1].toFixed(3) + ',0,0'; + + var skewOffset = mr(d.x / Z) + ',' + mr(d.y / Z); + + lineStr.push('', + '', + ''); + + this.element_.insertAdjacentHTML('beforeEnd', lineStr.join('')); + }; + + contextPrototype.fillText = function(text, x, y, maxWidth) { + this.drawText_(text, x, y, maxWidth, false); + }; + + contextPrototype.strokeText = function(text, x, y, maxWidth) { + this.drawText_(text, x, y, maxWidth, true); + }; + + contextPrototype.measureText = function(text) { + if (!this.textMeasureEl_) { + var s = ''; + this.element_.insertAdjacentHTML('beforeEnd', s); + this.textMeasureEl_ = this.element_.lastChild; + } + var doc = this.element_.ownerDocument; + this.textMeasureEl_.innerHTML = ''; + this.textMeasureEl_.style.font = this.font; + // Don't use innerHTML or innerText because they allow markup/whitespace. + this.textMeasureEl_.appendChild(doc.createTextNode(text)); + return {width: this.textMeasureEl_.offsetWidth}; + }; + + /******** STUBS ********/ + contextPrototype.clip = function() { + // TODO: Implement + }; + + contextPrototype.arcTo = function() { + // TODO: Implement + }; + + contextPrototype.createPattern = function(image, repetition) { + return new CanvasPattern_(image, repetition); + }; + + // Gradient / Pattern Stubs + function CanvasGradient_(aType) { + this.type_ = aType; + this.x0_ = 0; + this.y0_ = 0; + this.r0_ = 0; + this.x1_ = 0; + this.y1_ = 0; + this.r1_ = 0; + this.colors_ = []; + } + + CanvasGradient_.prototype.addColorStop = function(aOffset, aColor) { + aColor = processStyle(aColor); + this.colors_.push({offset: aOffset, + color: aColor.color, + alpha: aColor.alpha}); + }; + + function CanvasPattern_(image, repetition) { + assertImageIsValid(image); + switch (repetition) { + case 'repeat': + case null: + case '': + this.repetition_ = 'repeat'; + break + case 'repeat-x': + case 'repeat-y': + case 'no-repeat': + this.repetition_ = repetition; + break; + default: + throwException('SYNTAX_ERR'); + } + + this.src_ = image.src; + this.width_ = image.width; + this.height_ = image.height; + } + + function throwException(s) { + throw new DOMException_(s); + } + + function assertImageIsValid(img) { + if (!img || img.nodeType != 1 || img.tagName != 'IMG') { + throwException('TYPE_MISMATCH_ERR'); + } + if (img.readyState != 'complete') { + throwException('INVALID_STATE_ERR'); + } + } + + function DOMException_(s) { + this.code = this[s]; + this.message = s +': DOM Exception ' + this.code; + } + var p = DOMException_.prototype = new Error; + p.INDEX_SIZE_ERR = 1; + p.DOMSTRING_SIZE_ERR = 2; + p.HIERARCHY_REQUEST_ERR = 3; + p.WRONG_DOCUMENT_ERR = 4; + p.INVALID_CHARACTER_ERR = 5; + p.NO_DATA_ALLOWED_ERR = 6; + p.NO_MODIFICATION_ALLOWED_ERR = 7; + p.NOT_FOUND_ERR = 8; + p.NOT_SUPPORTED_ERR = 9; + p.INUSE_ATTRIBUTE_ERR = 10; + p.INVALID_STATE_ERR = 11; + p.SYNTAX_ERR = 12; + p.INVALID_MODIFICATION_ERR = 13; + p.NAMESPACE_ERR = 14; + p.INVALID_ACCESS_ERR = 15; + p.VALIDATION_ERR = 16; + p.TYPE_MISMATCH_ERR = 17; + + // set up externs + G_vmlCanvasManager = G_vmlCanvasManager_; + CanvasRenderingContext2D = CanvasRenderingContext2D_; + CanvasGradient = CanvasGradient_; + CanvasPattern = CanvasPattern_; + DOMException = DOMException_; +})(); + +} // if diff --git a/djangoproject/static/js/lib/jquery-flot/excanvas.min.js b/djangoproject/static/js/lib/jquery-flot/excanvas.min.js new file mode 100644 index 000000000..fcf876c74 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/excanvas.min.js @@ -0,0 +1 @@ +if(!document.createElement("canvas").getContext){(function(){var ab=Math;var n=ab.round;var l=ab.sin;var A=ab.cos;var H=ab.abs;var N=ab.sqrt;var d=10;var f=d/2;var z=+navigator.userAgent.match(/MSIE ([\d.]+)?/)[1];function y(){return this.context_||(this.context_=new D(this))}var t=Array.prototype.slice;function g(j,m,p){var i=t.call(arguments,2);return function(){return j.apply(m,i.concat(t.call(arguments)))}}function af(i){return String(i).replace(/&/g,"&").replace(/"/g,""")}function Y(m,j,i){if(!m.namespaces[j]){m.namespaces.add(j,i,"#default#VML")}}function R(j){Y(j,"g_vml_","urn:schemas-microsoft-com:vml");Y(j,"g_o_","urn:schemas-microsoft-com:office:office");if(!j.styleSheets.ex_canvas_){var i=j.createStyleSheet();i.owningElement.id="ex_canvas_";i.cssText="canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}"}}R(document);var e={init:function(i){var j=i||document;j.createElement("canvas");j.attachEvent("onreadystatechange",g(this.init_,this,j))},init_:function(p){var m=p.getElementsByTagName("canvas");for(var j=0;j1){m--}if(6*m<1){return j+(i-j)*6*m}else{if(2*m<1){return i}else{if(3*m<2){return j+(i-j)*(2/3-m)*6}else{return j}}}}var C={};function F(j){if(j in C){return C[j]}var ag,Z=1;j=String(j);if(j.charAt(0)=="#"){ag=j}else{if(/^rgb/.test(j)){var p=M(j);var ag="#",ah;for(var m=0;m<3;m++){if(p[m].indexOf("%")!=-1){ah=Math.floor(c(p[m])*255)}else{ah=+p[m]}ag+=k[r(ah,0,255)]}Z=+p[3]}else{if(/^hsl/.test(j)){var p=M(j);ag=I(p);Z=p[3]}else{ag=b[j]||j}}}return C[j]={color:ag,alpha:Z}}var o={style:"normal",variant:"normal",weight:"normal",size:10,family:"sans-serif"};var L={};function E(i){if(L[i]){return L[i]}var p=document.createElement("div");var m=p.style;try{m.font=i}catch(j){}return L[i]={style:m.fontStyle||o.style,variant:m.fontVariant||o.variant,weight:m.fontWeight||o.weight,size:m.fontSize||o.size,family:m.fontFamily||o.family}}function u(m,j){var i={};for(var ah in m){i[ah]=m[ah]}var ag=parseFloat(j.currentStyle.fontSize),Z=parseFloat(m.size);if(typeof m.size=="number"){i.size=m.size}else{if(m.size.indexOf("px")!=-1){i.size=Z}else{if(m.size.indexOf("em")!=-1){i.size=ag*Z}else{if(m.size.indexOf("%")!=-1){i.size=(ag/100)*Z}else{if(m.size.indexOf("pt")!=-1){i.size=Z/0.75}else{i.size=ag}}}}}i.size*=0.981;return i}function ac(i){return i.style+" "+i.variant+" "+i.weight+" "+i.size+"px "+i.family}var s={butt:"flat",round:"round"};function S(i){return s[i]||"square"}function D(i){this.m_=B();this.mStack_=[];this.aStack_=[];this.currentPath_=[];this.strokeStyle="#000";this.fillStyle="#000";this.lineWidth=1;this.lineJoin="miter";this.lineCap="butt";this.miterLimit=d*1;this.globalAlpha=1;this.font="10px sans-serif";this.textAlign="left";this.textBaseline="alphabetic";this.canvas=i;var m="width:"+i.clientWidth+"px;height:"+i.clientHeight+"px;overflow:hidden;position:absolute";var j=i.ownerDocument.createElement("div");j.style.cssText=m;i.appendChild(j);var p=j.cloneNode(false);p.style.backgroundColor="red";p.style.filter="alpha(opacity=0)";i.appendChild(p);this.element_=j;this.arcScaleX_=1;this.arcScaleY_=1;this.lineScale_=1}var q=D.prototype;q.clearRect=function(){if(this.textMeasureEl_){this.textMeasureEl_.removeNode(true);this.textMeasureEl_=null}this.element_.innerHTML=""};q.beginPath=function(){this.currentPath_=[]};q.moveTo=function(j,i){var m=V(this,j,i);this.currentPath_.push({type:"moveTo",x:m.x,y:m.y});this.currentX_=m.x;this.currentY_=m.y};q.lineTo=function(j,i){var m=V(this,j,i);this.currentPath_.push({type:"lineTo",x:m.x,y:m.y});this.currentX_=m.x;this.currentY_=m.y};q.bezierCurveTo=function(m,j,ak,aj,ai,ag){var i=V(this,ai,ag);var ah=V(this,m,j);var Z=V(this,ak,aj);K(this,ah,Z,i)};function K(i,Z,m,j){i.currentPath_.push({type:"bezierCurveTo",cp1x:Z.x,cp1y:Z.y,cp2x:m.x,cp2y:m.y,x:j.x,y:j.y});i.currentX_=j.x;i.currentY_=j.y}q.quadraticCurveTo=function(ai,m,j,i){var ah=V(this,ai,m);var ag=V(this,j,i);var aj={x:this.currentX_+2/3*(ah.x-this.currentX_),y:this.currentY_+2/3*(ah.y-this.currentY_)};var Z={x:aj.x+(ag.x-this.currentX_)/3,y:aj.y+(ag.y-this.currentY_)/3};K(this,aj,Z,ag)};q.arc=function(al,aj,ak,ag,j,m){ak*=d;var ap=m?"at":"wa";var am=al+A(ag)*ak-f;var ao=aj+l(ag)*ak-f;var i=al+A(j)*ak-f;var an=aj+l(j)*ak-f;if(am==i&&!m){am+=0.125}var Z=V(this,al,aj);var ai=V(this,am,ao);var ah=V(this,i,an);this.currentPath_.push({type:ap,x:Z.x,y:Z.y,radius:ak,xStart:ai.x,yStart:ai.y,xEnd:ah.x,yEnd:ah.y})};q.rect=function(m,j,i,p){this.moveTo(m,j);this.lineTo(m+i,j);this.lineTo(m+i,j+p);this.lineTo(m,j+p);this.closePath()};q.strokeRect=function(m,j,i,p){var Z=this.currentPath_;this.beginPath();this.moveTo(m,j);this.lineTo(m+i,j);this.lineTo(m+i,j+p);this.lineTo(m,j+p);this.closePath();this.stroke();this.currentPath_=Z};q.fillRect=function(m,j,i,p){var Z=this.currentPath_;this.beginPath();this.moveTo(m,j);this.lineTo(m+i,j);this.lineTo(m+i,j+p);this.lineTo(m,j+p);this.closePath();this.fill();this.currentPath_=Z};q.createLinearGradient=function(j,p,i,m){var Z=new U("gradient");Z.x0_=j;Z.y0_=p;Z.x1_=i;Z.y1_=m;return Z};q.createRadialGradient=function(p,ag,m,j,Z,i){var ah=new U("gradientradial");ah.x0_=p;ah.y0_=ag;ah.r0_=m;ah.x1_=j;ah.y1_=Z;ah.r1_=i;return ah};q.drawImage=function(aq,m){var aj,ah,al,ay,ao,am,at,aA;var ak=aq.runtimeStyle.width;var ap=aq.runtimeStyle.height;aq.runtimeStyle.width="auto";aq.runtimeStyle.height="auto";var ai=aq.width;var aw=aq.height;aq.runtimeStyle.width=ak;aq.runtimeStyle.height=ap;if(arguments.length==3){aj=arguments[1];ah=arguments[2];ao=am=0;at=al=ai;aA=ay=aw}else{if(arguments.length==5){aj=arguments[1];ah=arguments[2];al=arguments[3];ay=arguments[4];ao=am=0;at=ai;aA=aw}else{if(arguments.length==9){ao=arguments[1];am=arguments[2];at=arguments[3];aA=arguments[4];aj=arguments[5];ah=arguments[6];al=arguments[7];ay=arguments[8]}else{throw Error("Invalid number of arguments")}}}var az=V(this,aj,ah);var p=at/2;var j=aA/2;var ax=[];var i=10;var ag=10;ax.push(" ','","");this.element_.insertAdjacentHTML("BeforeEnd",ax.join(""))};q.stroke=function(ao){var Z=10;var ap=10;var ag=5000;var ai={x:null,y:null};var an={x:null,y:null};for(var aj=0;ajan.x){an.x=m.x}if(ai.y==null||m.yan.y){an.y=m.y}}}am.push(' ">');if(!ao){w(this,am)}else{G(this,am,ai,an)}am.push("");this.element_.insertAdjacentHTML("beforeEnd",am.join(""))}};function w(m,ag){var j=F(m.strokeStyle);var p=j.color;var Z=j.alpha*m.globalAlpha;var i=m.lineScale_*m.lineWidth;if(i<1){Z*=i}ag.push("')}function G(aq,ai,aK,ar){var aj=aq.fillStyle;var aB=aq.arcScaleX_;var aA=aq.arcScaleY_;var j=ar.x-aK.x;var p=ar.y-aK.y;if(aj instanceof U){var an=0;var aF={x:0,y:0};var ax=0;var am=1;if(aj.type_=="gradient"){var al=aj.x0_/aB;var m=aj.y0_/aA;var ak=aj.x1_/aB;var aM=aj.y1_/aA;var aJ=V(aq,al,m);var aI=V(aq,ak,aM);var ag=aI.x-aJ.x;var Z=aI.y-aJ.y;an=Math.atan2(ag,Z)*180/Math.PI;if(an<0){an+=360}if(an<0.000001){an=0}}else{var aJ=V(aq,aj.x0_,aj.y0_);aF={x:(aJ.x-aK.x)/j,y:(aJ.y-aK.y)/p};j/=aB*d;p/=aA*d;var aD=ab.max(j,p);ax=2*aj.r0_/aD;am=2*aj.r1_/aD-ax}var av=aj.colors_;av.sort(function(aN,i){return aN.offset-i.offset});var ap=av.length;var au=av[0].color;var at=av[ap-1].color;var az=av[0].alpha*aq.globalAlpha;var ay=av[ap-1].alpha*aq.globalAlpha;var aE=[];for(var aH=0;aH')}else{if(aj instanceof T){if(j&&p){var ah=-aK.x;var aC=-aK.y;ai.push("')}}else{var aL=F(aq.fillStyle);var aw=aL.color;var aG=aL.alpha*aq.globalAlpha;ai.push('')}}}q.fill=function(){this.stroke(true)};q.closePath=function(){this.currentPath_.push({type:"close"})};function V(j,Z,p){var i=j.m_;return{x:d*(Z*i[0][0]+p*i[1][0]+i[2][0])-f,y:d*(Z*i[0][1]+p*i[1][1]+i[2][1])-f}}q.save=function(){var i={};v(this,i);this.aStack_.push(i);this.mStack_.push(this.m_);this.m_=J(B(),this.m_)};q.restore=function(){if(this.aStack_.length){v(this.aStack_.pop(),this);this.m_=this.mStack_.pop()}};function h(i){return isFinite(i[0][0])&&isFinite(i[0][1])&&isFinite(i[1][0])&&isFinite(i[1][1])&&isFinite(i[2][0])&&isFinite(i[2][1])}function aa(j,i,p){if(!h(i)){return}j.m_=i;if(p){var Z=i[0][0]*i[1][1]-i[0][1]*i[1][0];j.lineScale_=N(H(Z))}}q.translate=function(m,j){var i=[[1,0,0],[0,1,0],[m,j,1]];aa(this,J(i,this.m_),false)};q.rotate=function(j){var p=A(j);var m=l(j);var i=[[p,m,0],[-m,p,0],[0,0,1]];aa(this,J(i,this.m_),false)};q.scale=function(m,j){this.arcScaleX_*=m;this.arcScaleY_*=j;var i=[[m,0,0],[0,j,0],[0,0,1]];aa(this,J(i,this.m_),true)};q.transform=function(Z,p,ah,ag,j,i){var m=[[Z,p,0],[ah,ag,0],[j,i,1]];aa(this,J(m,this.m_),true)};q.setTransform=function(ag,Z,ai,ah,p,j){var i=[[ag,Z,0],[ai,ah,0],[p,j,1]];aa(this,i,true)};q.drawText_=function(am,ak,aj,ap,ai){var ao=this.m_,at=1000,j=0,ar=at,ah={x:0,y:0},ag=[];var i=u(E(this.font),this.element_);var p=ac(i);var au=this.element_.currentStyle;var Z=this.textAlign.toLowerCase();switch(Z){case"left":case"center":case"right":break;case"end":Z=au.direction=="ltr"?"right":"left";break;case"start":Z=au.direction=="rtl"?"right":"left";break;default:Z="left"}switch(this.textBaseline){case"hanging":case"top":ah.y=i.size/1.75;break;case"middle":break;default:case null:case"alphabetic":case"ideographic":case"bottom":ah.y=-i.size/2.25;break}switch(Z){case"right":j=at;ar=0.05;break;case"center":j=ar=at/2;break}var aq=V(this,ak+ah.x,aj+ah.y);ag.push('');if(ai){w(this,ag)}else{G(this,ag,{x:-j,y:0},{x:ar,y:i.size})}var an=ao[0][0].toFixed(3)+","+ao[1][0].toFixed(3)+","+ao[0][1].toFixed(3)+","+ao[1][1].toFixed(3)+",0,0";var al=n(aq.x/d)+","+n(aq.y/d);ag.push('','','');this.element_.insertAdjacentHTML("beforeEnd",ag.join(""))};q.fillText=function(m,i,p,j){this.drawText_(m,i,p,j,false)};q.strokeText=function(m,i,p,j){this.drawText_(m,i,p,j,true)};q.measureText=function(m){if(!this.textMeasureEl_){var i='';this.element_.insertAdjacentHTML("beforeEnd",i);this.textMeasureEl_=this.element_.lastChild}var j=this.element_.ownerDocument;this.textMeasureEl_.innerHTML="";this.textMeasureEl_.style.font=this.font;this.textMeasureEl_.appendChild(j.createTextNode(m));return{width:this.textMeasureEl_.offsetWidth}};q.clip=function(){};q.arcTo=function(){};q.createPattern=function(j,i){return new T(j,i)};function U(i){this.type_=i;this.x0_=0;this.y0_=0;this.r0_=0;this.x1_=0;this.y1_=0;this.r1_=0;this.colors_=[]}U.prototype.addColorStop=function(j,i){i=F(i);this.colors_.push({offset:j,color:i.color,alpha:i.alpha})};function T(j,i){Q(j);switch(i){case"repeat":case null:case"":this.repetition_="repeat";break;case"repeat-x":case"repeat-y":case"no-repeat":this.repetition_=i;break;default:O("SYNTAX_ERR")}this.src_=j.src;this.width_=j.width;this.height_=j.height}function O(i){throw new P(i)}function Q(i){if(!i||i.nodeType!=1||i.tagName!="IMG"){O("TYPE_MISMATCH_ERR")}if(i.readyState!="complete"){O("INVALID_STATE_ERR")}}function P(i){this.code=this[i];this.message=i+": DOM Exception "+this.code}var X=P.prototype=new Error;X.INDEX_SIZE_ERR=1;X.DOMSTRING_SIZE_ERR=2;X.HIERARCHY_REQUEST_ERR=3;X.WRONG_DOCUMENT_ERR=4;X.INVALID_CHARACTER_ERR=5;X.NO_DATA_ALLOWED_ERR=6;X.NO_MODIFICATION_ALLOWED_ERR=7;X.NOT_FOUND_ERR=8;X.NOT_SUPPORTED_ERR=9;X.INUSE_ATTRIBUTE_ERR=10;X.INVALID_STATE_ERR=11;X.SYNTAX_ERR=12;X.INVALID_MODIFICATION_ERR=13;X.NAMESPACE_ERR=14;X.INVALID_ACCESS_ERR=15;X.VALIDATION_ERR=16;X.TYPE_MISMATCH_ERR=17;G_vmlCanvasManager=e;CanvasRenderingContext2D=D;CanvasGradient=U;CanvasPattern=T;DOMException=P})()}; \ No newline at end of file diff --git a/djangoproject/static/js/lib/jquery-flot/flot.jquery.json b/djangoproject/static/js/lib/jquery-flot/flot.jquery.json new file mode 100644 index 000000000..91ac79af1 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/flot.jquery.json @@ -0,0 +1,27 @@ +{ + "name": "flot", + "version": "0.8.3", + "title": "Flot", + "author": { + "name": "Ole Laursen", + "url": "https://github.com/OleLaursen" + }, + "licenses": [{ + "type": "MIT", + "url": "http://github.com/flot/flot/blob/master/LICENSE.txt" + }], + "dependencies": { + "jquery": ">=1.2.6" + }, + "description": "Flot is a pure JavaScript plotting library for jQuery, with a focus on simple usage, attractive looks and interactive features.", + "keywords": ["plot", "chart", "graph", "visualization", "canvas", "graphics"], + "homepage": "http://www.flotcharts.org", + "docs": "http://github.com/flot/flot/blob/master/API.md", + "demo": "http://www.flotcharts.org/flot/examples/", + "bugs": "http://github.com/flot/flot/issues", + "maintainers": [{ + "name": "David Schnur", + "email": "dnschnur@gmail.com", + "url": "http://github.com/dnschnur" + }] +} diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.colorhelpers.js b/djangoproject/static/js/lib/jquery-flot/jquery.colorhelpers.js new file mode 100644 index 000000000..b2f6dc4e4 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.colorhelpers.js @@ -0,0 +1,180 @@ +/* Plugin for jQuery for working with colors. + * + * Version 1.1. + * + * Inspiration from jQuery color animation plugin by John Resig. + * + * Released under the MIT license by Ole Laursen, October 2009. + * + * Examples: + * + * $.color.parse("#fff").scale('rgb', 0.25).add('a', -0.5).toString() + * var c = $.color.extract($("#mydiv"), 'background-color'); + * console.log(c.r, c.g, c.b, c.a); + * $.color.make(100, 50, 25, 0.4).toString() // returns "rgba(100,50,25,0.4)" + * + * Note that .scale() and .add() return the same modified object + * instead of making a new one. + * + * V. 1.1: Fix error handling so e.g. parsing an empty string does + * produce a color rather than just crashing. + */ + +(function($) { + $.color = {}; + + // construct color object with some convenient chainable helpers + $.color.make = function (r, g, b, a) { + var o = {}; + o.r = r || 0; + o.g = g || 0; + o.b = b || 0; + o.a = a != null ? a : 1; + + o.add = function (c, d) { + for (var i = 0; i < c.length; ++i) + o[c.charAt(i)] += d; + return o.normalize(); + }; + + o.scale = function (c, f) { + for (var i = 0; i < c.length; ++i) + o[c.charAt(i)] *= f; + return o.normalize(); + }; + + o.toString = function () { + if (o.a >= 1.0) { + return "rgb("+[o.r, o.g, o.b].join(",")+")"; + } else { + return "rgba("+[o.r, o.g, o.b, o.a].join(",")+")"; + } + }; + + o.normalize = function () { + function clamp(min, value, max) { + return value < min ? min: (value > max ? max: value); + } + + o.r = clamp(0, parseInt(o.r), 255); + o.g = clamp(0, parseInt(o.g), 255); + o.b = clamp(0, parseInt(o.b), 255); + o.a = clamp(0, o.a, 1); + return o; + }; + + o.clone = function () { + return $.color.make(o.r, o.b, o.g, o.a); + }; + + return o.normalize(); + } + + // extract CSS color property from element, going up in the DOM + // if it's "transparent" + $.color.extract = function (elem, css) { + var c; + + do { + c = elem.css(css).toLowerCase(); + // keep going until we find an element that has color, or + // we hit the body or root (have no parent) + if (c != '' && c != 'transparent') + break; + elem = elem.parent(); + } while (elem.length && !$.nodeName(elem.get(0), "body")); + + // catch Safari's way of signalling transparent + if (c == "rgba(0, 0, 0, 0)") + c = "transparent"; + + return $.color.parse(c); + } + + // parse CSS color string (like "rgb(10, 32, 43)" or "#fff"), + // returns color object, if parsing failed, you get black (0, 0, + // 0) out + $.color.parse = function (str) { + var res, m = $.color.make; + + // Look for rgb(num,num,num) + if (res = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(str)) + return m(parseInt(res[1], 10), parseInt(res[2], 10), parseInt(res[3], 10)); + + // Look for rgba(num,num,num,num) + if (res = /rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str)) + return m(parseInt(res[1], 10), parseInt(res[2], 10), parseInt(res[3], 10), parseFloat(res[4])); + + // Look for rgb(num%,num%,num%) + if (res = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(str)) + return m(parseFloat(res[1])*2.55, parseFloat(res[2])*2.55, parseFloat(res[3])*2.55); + + // Look for rgba(num%,num%,num%,num) + if (res = /rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str)) + return m(parseFloat(res[1])*2.55, parseFloat(res[2])*2.55, parseFloat(res[3])*2.55, parseFloat(res[4])); + + // Look for #a0b1c2 + if (res = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(str)) + return m(parseInt(res[1], 16), parseInt(res[2], 16), parseInt(res[3], 16)); + + // Look for #fff + if (res = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(str)) + return m(parseInt(res[1]+res[1], 16), parseInt(res[2]+res[2], 16), parseInt(res[3]+res[3], 16)); + + // Otherwise, we're most likely dealing with a named color + var name = $.trim(str).toLowerCase(); + if (name == "transparent") + return m(255, 255, 255, 0); + else { + // default to black + res = lookupColors[name] || [0, 0, 0]; + return m(res[0], res[1], res[2]); + } + } + + var lookupColors = { + aqua:[0,255,255], + azure:[240,255,255], + beige:[245,245,220], + black:[0,0,0], + blue:[0,0,255], + brown:[165,42,42], + cyan:[0,255,255], + darkblue:[0,0,139], + darkcyan:[0,139,139], + darkgrey:[169,169,169], + darkgreen:[0,100,0], + darkkhaki:[189,183,107], + darkmagenta:[139,0,139], + darkolivegreen:[85,107,47], + darkorange:[255,140,0], + darkorchid:[153,50,204], + darkred:[139,0,0], + darksalmon:[233,150,122], + darkviolet:[148,0,211], + fuchsia:[255,0,255], + gold:[255,215,0], + green:[0,128,0], + indigo:[75,0,130], + khaki:[240,230,140], + lightblue:[173,216,230], + lightcyan:[224,255,255], + lightgreen:[144,238,144], + lightgrey:[211,211,211], + lightpink:[255,182,193], + lightyellow:[255,255,224], + lime:[0,255,0], + magenta:[255,0,255], + maroon:[128,0,0], + navy:[0,0,128], + olive:[128,128,0], + orange:[255,165,0], + pink:[255,192,203], + purple:[128,0,128], + violet:[128,0,128], + red:[255,0,0], + silver:[192,192,192], + white:[255,255,255], + yellow:[255,255,0] + }; +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.canvas.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.canvas.js new file mode 100644 index 000000000..29328d581 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.canvas.js @@ -0,0 +1,345 @@ +/* Flot plugin for drawing all elements of a plot on the canvas. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +Flot normally produces certain elements, like axis labels and the legend, using +HTML elements. This permits greater interactivity and customization, and often +looks better, due to cross-browser canvas text inconsistencies and limitations. + +It can also be desirable to render the plot entirely in canvas, particularly +if the goal is to save it as an image, or if Flot is being used in a context +where the HTML DOM does not exist, as is the case within Node.js. This plugin +switches out Flot's standard drawing operations for canvas-only replacements. + +Currently the plugin supports only axis labels, but it will eventually allow +every element of the plot to be rendered directly to canvas. + +The plugin supports these options: + +{ + canvas: boolean +} + +The "canvas" option controls whether full canvas drawing is enabled, making it +possible to toggle on and off. This is useful when a plot uses HTML text in the +browser, but needs to redraw with canvas text when exporting as an image. + +*/ + +(function($) { + + var options = { + canvas: true + }; + + var render, getTextInfo, addText; + + // Cache the prototype hasOwnProperty for faster access + + var hasOwnProperty = Object.prototype.hasOwnProperty; + + function init(plot, classes) { + + var Canvas = classes.Canvas; + + // We only want to replace the functions once; the second time around + // we would just get our new function back. This whole replacing of + // prototype functions is a disaster, and needs to be changed ASAP. + + if (render == null) { + getTextInfo = Canvas.prototype.getTextInfo, + addText = Canvas.prototype.addText, + render = Canvas.prototype.render; + } + + // Finishes rendering the canvas, including overlaid text + + Canvas.prototype.render = function() { + + if (!plot.getOptions().canvas) { + return render.call(this); + } + + var context = this.context, + cache = this._textCache; + + // For each text layer, render elements marked as active + + context.save(); + context.textBaseline = "middle"; + + for (var layerKey in cache) { + if (hasOwnProperty.call(cache, layerKey)) { + var layerCache = cache[layerKey]; + for (var styleKey in layerCache) { + if (hasOwnProperty.call(layerCache, styleKey)) { + var styleCache = layerCache[styleKey], + updateStyles = true; + for (var key in styleCache) { + if (hasOwnProperty.call(styleCache, key)) { + + var info = styleCache[key], + positions = info.positions, + lines = info.lines; + + // Since every element at this level of the cache have the + // same font and fill styles, we can just change them once + // using the values from the first element. + + if (updateStyles) { + context.fillStyle = info.font.color; + context.font = info.font.definition; + updateStyles = false; + } + + for (var i = 0, position; position = positions[i]; i++) { + if (position.active) { + for (var j = 0, line; line = position.lines[j]; j++) { + context.fillText(lines[j].text, line[0], line[1]); + } + } else { + positions.splice(i--, 1); + } + } + + if (positions.length == 0) { + delete styleCache[key]; + } + } + } + } + } + } + } + + context.restore(); + }; + + // Creates (if necessary) and returns a text info object. + // + // When the canvas option is set, the object looks like this: + // + // { + // width: Width of the text's bounding box. + // height: Height of the text's bounding box. + // positions: Array of positions at which this text is drawn. + // lines: [{ + // height: Height of this line. + // widths: Width of this line. + // text: Text on this line. + // }], + // font: { + // definition: Canvas font property string. + // color: Color of the text. + // }, + // } + // + // The positions array contains objects that look like this: + // + // { + // active: Flag indicating whether the text should be visible. + // lines: Array of [x, y] coordinates at which to draw the line. + // x: X coordinate at which to draw the text. + // y: Y coordinate at which to draw the text. + // } + + Canvas.prototype.getTextInfo = function(layer, text, font, angle, width) { + + if (!plot.getOptions().canvas) { + return getTextInfo.call(this, layer, text, font, angle, width); + } + + var textStyle, layerCache, styleCache, info; + + // Cast the value to a string, in case we were given a number + + text = "" + text; + + // If the font is a font-spec object, generate a CSS definition + + if (typeof font === "object") { + textStyle = font.style + " " + font.variant + " " + font.weight + " " + font.size + "px " + font.family; + } else { + textStyle = font; + } + + // Retrieve (or create) the cache for the text's layer and styles + + layerCache = this._textCache[layer]; + + if (layerCache == null) { + layerCache = this._textCache[layer] = {}; + } + + styleCache = layerCache[textStyle]; + + if (styleCache == null) { + styleCache = layerCache[textStyle] = {}; + } + + info = styleCache[text]; + + if (info == null) { + + var context = this.context; + + // If the font was provided as CSS, create a div with those + // classes and examine it to generate a canvas font spec. + + if (typeof font !== "object") { + + var element = $("
     
    ") + .css("position", "absolute") + .addClass(typeof font === "string" ? font : null) + .appendTo(this.getTextLayer(layer)); + + font = { + lineHeight: element.height(), + style: element.css("font-style"), + variant: element.css("font-variant"), + weight: element.css("font-weight"), + family: element.css("font-family"), + color: element.css("color") + }; + + // Setting line-height to 1, without units, sets it equal + // to the font-size, even if the font-size is abstract, + // like 'smaller'. This enables us to read the real size + // via the element's height, working around browsers that + // return the literal 'smaller' value. + + font.size = element.css("line-height", 1).height(); + + element.remove(); + } + + textStyle = font.style + " " + font.variant + " " + font.weight + " " + font.size + "px " + font.family; + + // Create a new info object, initializing the dimensions to + // zero so we can count them up line-by-line. + + info = styleCache[text] = { + width: 0, + height: 0, + positions: [], + lines: [], + font: { + definition: textStyle, + color: font.color + } + }; + + context.save(); + context.font = textStyle; + + // Canvas can't handle multi-line strings; break on various + // newlines, including HTML brs, to build a list of lines. + // Note that we could split directly on regexps, but IE < 9 is + // broken; revisit when we drop IE 7/8 support. + + var lines = (text + "").replace(/
    |\r\n|\r/g, "\n").split("\n"); + + for (var i = 0; i < lines.length; ++i) { + + var lineText = lines[i], + measured = context.measureText(lineText); + + info.width = Math.max(measured.width, info.width); + info.height += font.lineHeight; + + info.lines.push({ + text: lineText, + width: measured.width, + height: font.lineHeight + }); + } + + context.restore(); + } + + return info; + }; + + // Adds a text string to the canvas text overlay. + + Canvas.prototype.addText = function(layer, x, y, text, font, angle, width, halign, valign) { + + if (!plot.getOptions().canvas) { + return addText.call(this, layer, x, y, text, font, angle, width, halign, valign); + } + + var info = this.getTextInfo(layer, text, font, angle, width), + positions = info.positions, + lines = info.lines; + + // Text is drawn with baseline 'middle', which we need to account + // for by adding half a line's height to the y position. + + y += info.height / lines.length / 2; + + // Tweak the initial y-position to match vertical alignment + + if (valign == "middle") { + y = Math.round(y - info.height / 2); + } else if (valign == "bottom") { + y = Math.round(y - info.height); + } else { + y = Math.round(y); + } + + // FIXME: LEGACY BROWSER FIX + // AFFECTS: Opera < 12.00 + + // Offset the y coordinate, since Opera is off pretty + // consistently compared to the other browsers. + + if (!!(window.opera && window.opera.version().split(".")[0] < 12)) { + y -= 2; + } + + // Determine whether this text already exists at this position. + // If so, mark it for inclusion in the next render pass. + + for (var i = 0, position; position = positions[i]; i++) { + if (position.x == x && position.y == y) { + position.active = true; + return; + } + } + + // If the text doesn't exist at this position, create a new entry + + position = { + active: true, + lines: [], + x: x, + y: y + }; + + positions.push(position); + + // Fill in the x & y positions of each line, adjusting them + // individually for horizontal alignment. + + for (var i = 0, line; line = lines[i]; i++) { + if (halign == "center") { + position.lines.push([Math.round(x - line.width / 2), y]); + } else if (halign == "right") { + position.lines.push([Math.round(x - line.width), y]); + } else { + position.lines.push([Math.round(x), y]); + } + y += line.height; + } + }; + } + + $.plot.plugins.push({ + init: init, + options: options, + name: "canvas", + version: "1.0" + }); + +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.categories.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.categories.js new file mode 100644 index 000000000..2f9b25797 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.categories.js @@ -0,0 +1,190 @@ +/* Flot plugin for plotting textual data or categories. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +Consider a dataset like [["February", 34], ["March", 20], ...]. This plugin +allows you to plot such a dataset directly. + +To enable it, you must specify mode: "categories" on the axis with the textual +labels, e.g. + + $.plot("#placeholder", data, { xaxis: { mode: "categories" } }); + +By default, the labels are ordered as they are met in the data series. If you +need a different ordering, you can specify "categories" on the axis options +and list the categories there: + + xaxis: { + mode: "categories", + categories: ["February", "March", "April"] + } + +If you need to customize the distances between the categories, you can specify +"categories" as an object mapping labels to values + + xaxis: { + mode: "categories", + categories: { "February": 1, "March": 3, "April": 4 } + } + +If you don't specify all categories, the remaining categories will be numbered +from the max value plus 1 (with a spacing of 1 between each). + +Internally, the plugin works by transforming the input data through an auto- +generated mapping where the first category becomes 0, the second 1, etc. +Hence, a point like ["February", 34] becomes [0, 34] internally in Flot (this +is visible in hover and click events that return numbers rather than the +category labels). The plugin also overrides the tick generator to spit out the +categories as ticks instead of the values. + +If you need to map a value back to its label, the mapping is always accessible +as "categories" on the axis object, e.g. plot.getAxes().xaxis.categories. + +*/ + +(function ($) { + var options = { + xaxis: { + categories: null + }, + yaxis: { + categories: null + } + }; + + function processRawData(plot, series, data, datapoints) { + // if categories are enabled, we need to disable + // auto-transformation to numbers so the strings are intact + // for later processing + + var xCategories = series.xaxis.options.mode == "categories", + yCategories = series.yaxis.options.mode == "categories"; + + if (!(xCategories || yCategories)) + return; + + var format = datapoints.format; + + if (!format) { + // FIXME: auto-detection should really not be defined here + var s = series; + format = []; + format.push({ x: true, number: true, required: true }); + format.push({ y: true, number: true, required: true }); + + if (s.bars.show || (s.lines.show && s.lines.fill)) { + var autoscale = !!((s.bars.show && s.bars.zero) || (s.lines.show && s.lines.zero)); + format.push({ y: true, number: true, required: false, defaultValue: 0, autoscale: autoscale }); + if (s.bars.horizontal) { + delete format[format.length - 1].y; + format[format.length - 1].x = true; + } + } + + datapoints.format = format; + } + + for (var m = 0; m < format.length; ++m) { + if (format[m].x && xCategories) + format[m].number = false; + + if (format[m].y && yCategories) + format[m].number = false; + } + } + + function getNextIndex(categories) { + var index = -1; + + for (var v in categories) + if (categories[v] > index) + index = categories[v]; + + return index + 1; + } + + function categoriesTickGenerator(axis) { + var res = []; + for (var label in axis.categories) { + var v = axis.categories[label]; + if (v >= axis.min && v <= axis.max) + res.push([v, label]); + } + + res.sort(function (a, b) { return a[0] - b[0]; }); + + return res; + } + + function setupCategoriesForAxis(series, axis, datapoints) { + if (series[axis].options.mode != "categories") + return; + + if (!series[axis].categories) { + // parse options + var c = {}, o = series[axis].options.categories || {}; + if ($.isArray(o)) { + for (var i = 0; i < o.length; ++i) + c[o[i]] = i; + } + else { + for (var v in o) + c[v] = o[v]; + } + + series[axis].categories = c; + } + + // fix ticks + if (!series[axis].options.ticks) + series[axis].options.ticks = categoriesTickGenerator; + + transformPointsOnAxis(datapoints, axis, series[axis].categories); + } + + function transformPointsOnAxis(datapoints, axis, categories) { + // go through the points, transforming them + var points = datapoints.points, + ps = datapoints.pointsize, + format = datapoints.format, + formatColumn = axis.charAt(0), + index = getNextIndex(categories); + + for (var i = 0; i < points.length; i += ps) { + if (points[i] == null) + continue; + + for (var m = 0; m < ps; ++m) { + var val = points[i + m]; + + if (val == null || !format[m][formatColumn]) + continue; + + if (!(val in categories)) { + categories[val] = index; + ++index; + } + + points[i + m] = categories[val]; + } + } + } + + function processDatapoints(plot, series, datapoints) { + setupCategoriesForAxis(series, "xaxis", datapoints); + setupCategoriesForAxis(series, "yaxis", datapoints); + } + + function init(plot) { + plot.hooks.processRawData.push(processRawData); + plot.hooks.processDatapoints.push(processDatapoints); + } + + $.plot.plugins.push({ + init: init, + options: options, + name: 'categories', + version: '1.0' + }); +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.concat.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.concat.js new file mode 100644 index 000000000..8f4680c64 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.concat.js @@ -0,0 +1,3600 @@ +/* Javascript plotting library for jQuery, version 0.8.3. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +*/ + +// first an inline dependency, jquery.colorhelpers.js, we inline it here +// for convenience + +/* Plugin for jQuery for working with colors. + * + * Version 1.1. + * + * Inspiration from jQuery color animation plugin by John Resig. + * + * Released under the MIT license by Ole Laursen, October 2009. + * + * Examples: + * + * $.color.parse("#fff").scale('rgb', 0.25).add('a', -0.5).toString() + * var c = $.color.extract($("#mydiv"), 'background-color'); + * console.log(c.r, c.g, c.b, c.a); + * $.color.make(100, 50, 25, 0.4).toString() // returns "rgba(100,50,25,0.4)" + * + * Note that .scale() and .add() return the same modified object + * instead of making a new one. + * + * V. 1.1: Fix error handling so e.g. parsing an empty string does + * produce a color rather than just crashing. + */ +(function($){$.color={};$.color.make=function(r,g,b,a){var o={};o.r=r||0;o.g=g||0;o.b=b||0;o.a=a!=null?a:1;o.add=function(c,d){for(var i=0;i=1){return"rgb("+[o.r,o.g,o.b].join(",")+")"}else{return"rgba("+[o.r,o.g,o.b,o.a].join(",")+")"}};o.normalize=function(){function clamp(min,value,max){return valuemax?max:value}o.r=clamp(0,parseInt(o.r),255);o.g=clamp(0,parseInt(o.g),255);o.b=clamp(0,parseInt(o.b),255);o.a=clamp(0,o.a,1);return o};o.clone=function(){return $.color.make(o.r,o.b,o.g,o.a)};return o.normalize()};$.color.extract=function(elem,css){var c;do{c=elem.css(css).toLowerCase();if(c!=""&&c!="transparent")break;elem=elem.parent()}while(elem.length&&!$.nodeName(elem.get(0),"body"));if(c=="rgba(0, 0, 0, 0)")c="transparent";return $.color.parse(c)};$.color.parse=function(str){var res,m=$.color.make;if(res=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(str))return m(parseInt(res[1],10),parseInt(res[2],10),parseInt(res[3],10));if(res=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str))return m(parseInt(res[1],10),parseInt(res[2],10),parseInt(res[3],10),parseFloat(res[4]));if(res=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(str))return m(parseFloat(res[1])*2.55,parseFloat(res[2])*2.55,parseFloat(res[3])*2.55);if(res=/rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str))return m(parseFloat(res[1])*2.55,parseFloat(res[2])*2.55,parseFloat(res[3])*2.55,parseFloat(res[4]));if(res=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(str))return m(parseInt(res[1],16),parseInt(res[2],16),parseInt(res[3],16));if(res=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(str))return m(parseInt(res[1]+res[1],16),parseInt(res[2]+res[2],16),parseInt(res[3]+res[3],16));var name=$.trim(str).toLowerCase();if(name=="transparent")return m(255,255,255,0);else{res=lookupColors[name]||[0,0,0];return m(res[0],res[1],res[2])}};var lookupColors={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0]}})(jQuery); + +// the actual Flot code +(function($) { + + // Cache the prototype hasOwnProperty for faster access + + var hasOwnProperty = Object.prototype.hasOwnProperty; + + // A shim to provide 'detach' to jQuery versions prior to 1.4. Using a DOM + // operation produces the same effect as detach, i.e. removing the element + // without touching its jQuery data. + + // Do not merge this into Flot 0.9, since it requires jQuery 1.4.4+. + + if (!$.fn.detach) { + $.fn.detach = function() { + return this.each(function() { + if (this.parentNode) { + this.parentNode.removeChild( this ); + } + }); + }; + } + + /////////////////////////////////////////////////////////////////////////// + // The Canvas object is a wrapper around an HTML5 tag. + // + // @constructor + // @param {string} cls List of classes to apply to the canvas. + // @param {element} container Element onto which to append the canvas. + // + // Requiring a container is a little iffy, but unfortunately canvas + // operations don't work unless the canvas is attached to the DOM. + + function Canvas(cls, container) { + + var element = container.children("." + cls)[0]; + + if (element == null) { + + element = document.createElement("canvas"); + element.className = cls; + + $(element).css({ direction: "ltr", position: "absolute", left: 0, top: 0 }) + .appendTo(container); + + // If HTML5 Canvas isn't available, fall back to [Ex|Flash]canvas + + if (!element.getContext) { + if (window.G_vmlCanvasManager) { + element = window.G_vmlCanvasManager.initElement(element); + } else { + throw new Error("Canvas is not available. If you're using IE with a fall-back such as Excanvas, then there's either a mistake in your conditional include, or the page has no DOCTYPE and is rendering in Quirks Mode."); + } + } + } + + this.element = element; + + var context = this.context = element.getContext("2d"); + + // Determine the screen's ratio of physical to device-independent + // pixels. This is the ratio between the canvas width that the browser + // advertises and the number of pixels actually present in that space. + + // The iPhone 4, for example, has a device-independent width of 320px, + // but its screen is actually 640px wide. It therefore has a pixel + // ratio of 2, while most normal devices have a ratio of 1. + + var devicePixelRatio = window.devicePixelRatio || 1, + backingStoreRatio = + context.webkitBackingStorePixelRatio || + context.mozBackingStorePixelRatio || + context.msBackingStorePixelRatio || + context.oBackingStorePixelRatio || + context.backingStorePixelRatio || 1; + + this.pixelRatio = devicePixelRatio / backingStoreRatio; + + // Size the canvas to match the internal dimensions of its container + + this.resize(container.width(), container.height()); + + // Collection of HTML div layers for text overlaid onto the canvas + + this.textContainer = null; + this.text = {}; + + // Cache of text fragments and metrics, so we can avoid expensively + // re-calculating them when the plot is re-rendered in a loop. + + this._textCache = {}; + } + + // Resizes the canvas to the given dimensions. + // + // @param {number} width New width of the canvas, in pixels. + // @param {number} width New height of the canvas, in pixels. + + Canvas.prototype.resize = function(width, height) { + + if (width <= 0 || height <= 0) { + throw new Error("Invalid dimensions for plot, width = " + width + ", height = " + height); + } + + var element = this.element, + context = this.context, + pixelRatio = this.pixelRatio; + + // Resize the canvas, increasing its density based on the display's + // pixel ratio; basically giving it more pixels without increasing the + // size of its element, to take advantage of the fact that retina + // displays have that many more pixels in the same advertised space. + + // Resizing should reset the state (excanvas seems to be buggy though) + + if (this.width != width) { + element.width = width * pixelRatio; + element.style.width = width + "px"; + this.width = width; + } + + if (this.height != height) { + element.height = height * pixelRatio; + element.style.height = height + "px"; + this.height = height; + } + + // Save the context, so we can reset in case we get replotted. The + // restore ensure that we're really back at the initial state, and + // should be safe even if we haven't saved the initial state yet. + + context.restore(); + context.save(); + + // Scale the coordinate space to match the display density; so even though we + // may have twice as many pixels, we still want lines and other drawing to + // appear at the same size; the extra pixels will just make them crisper. + + context.scale(pixelRatio, pixelRatio); + }; + + // Clears the entire canvas area, not including any overlaid HTML text + + Canvas.prototype.clear = function() { + this.context.clearRect(0, 0, this.width, this.height); + }; + + // Finishes rendering the canvas, including managing the text overlay. + + Canvas.prototype.render = function() { + + var cache = this._textCache; + + // For each text layer, add elements marked as active that haven't + // already been rendered, and remove those that are no longer active. + + for (var layerKey in cache) { + if (hasOwnProperty.call(cache, layerKey)) { + + var layer = this.getTextLayer(layerKey), + layerCache = cache[layerKey]; + + layer.hide(); + + for (var styleKey in layerCache) { + if (hasOwnProperty.call(layerCache, styleKey)) { + var styleCache = layerCache[styleKey]; + for (var key in styleCache) { + if (hasOwnProperty.call(styleCache, key)) { + + var positions = styleCache[key].positions; + + for (var i = 0, position; position = positions[i]; i++) { + if (position.active) { + if (!position.rendered) { + layer.append(position.element); + position.rendered = true; + } + } else { + positions.splice(i--, 1); + if (position.rendered) { + position.element.detach(); + } + } + } + + if (positions.length == 0) { + delete styleCache[key]; + } + } + } + } + } + + layer.show(); + } + } + }; + + // Creates (if necessary) and returns the text overlay container. + // + // @param {string} classes String of space-separated CSS classes used to + // uniquely identify the text layer. + // @return {object} The jQuery-wrapped text-layer div. + + Canvas.prototype.getTextLayer = function(classes) { + + var layer = this.text[classes]; + + // Create the text layer if it doesn't exist + + if (layer == null) { + + // Create the text layer container, if it doesn't exist + + if (this.textContainer == null) { + this.textContainer = $("
    ") + .css({ + position: "absolute", + top: 0, + left: 0, + bottom: 0, + right: 0, + 'font-size': "smaller", + color: "#545454" + }) + .insertAfter(this.element); + } + + layer = this.text[classes] = $("
    ") + .addClass(classes) + .css({ + position: "absolute", + top: 0, + left: 0, + bottom: 0, + right: 0 + }) + .appendTo(this.textContainer); + } + + return layer; + }; + + // Creates (if necessary) and returns a text info object. + // + // The object looks like this: + // + // { + // width: Width of the text's wrapper div. + // height: Height of the text's wrapper div. + // element: The jQuery-wrapped HTML div containing the text. + // positions: Array of positions at which this text is drawn. + // } + // + // The positions array contains objects that look like this: + // + // { + // active: Flag indicating whether the text should be visible. + // rendered: Flag indicating whether the text is currently visible. + // element: The jQuery-wrapped HTML div containing the text. + // x: X coordinate at which to draw the text. + // y: Y coordinate at which to draw the text. + // } + // + // Each position after the first receives a clone of the original element. + // + // The idea is that that the width, height, and general 'identity' of the + // text is constant no matter where it is placed; the placements are a + // secondary property. + // + // Canvas maintains a cache of recently-used text info objects; getTextInfo + // either returns the cached element or creates a new entry. + // + // @param {string} layer A string of space-separated CSS classes uniquely + // identifying the layer containing this text. + // @param {string} text Text string to retrieve info for. + // @param {(string|object)=} font Either a string of space-separated CSS + // classes or a font-spec object, defining the text's font and style. + // @param {number=} angle Angle at which to rotate the text, in degrees. + // Angle is currently unused, it will be implemented in the future. + // @param {number=} width Maximum width of the text before it wraps. + // @return {object} a text info object. + + Canvas.prototype.getTextInfo = function(layer, text, font, angle, width) { + + var textStyle, layerCache, styleCache, info; + + // Cast the value to a string, in case we were given a number or such + + text = "" + text; + + // If the font is a font-spec object, generate a CSS font definition + + if (typeof font === "object") { + textStyle = font.style + " " + font.variant + " " + font.weight + " " + font.size + "px/" + font.lineHeight + "px " + font.family; + } else { + textStyle = font; + } + + // Retrieve (or create) the cache for the text's layer and styles + + layerCache = this._textCache[layer]; + + if (layerCache == null) { + layerCache = this._textCache[layer] = {}; + } + + styleCache = layerCache[textStyle]; + + if (styleCache == null) { + styleCache = layerCache[textStyle] = {}; + } + + info = styleCache[text]; + + // If we can't find a matching element in our cache, create a new one + + if (info == null) { + + var element = $("
    ").html(text) + .css({ + position: "absolute", + 'max-width': width, + top: -9999 + }) + .appendTo(this.getTextLayer(layer)); + + if (typeof font === "object") { + element.css({ + font: textStyle, + color: font.color + }); + } else if (typeof font === "string") { + element.addClass(font); + } + + info = styleCache[text] = { + width: element.outerWidth(true), + height: element.outerHeight(true), + element: element, + positions: [] + }; + + element.detach(); + } + + return info; + }; + + // Adds a text string to the canvas text overlay. + // + // The text isn't drawn immediately; it is marked as rendering, which will + // result in its addition to the canvas on the next render pass. + // + // @param {string} layer A string of space-separated CSS classes uniquely + // identifying the layer containing this text. + // @param {number} x X coordinate at which to draw the text. + // @param {number} y Y coordinate at which to draw the text. + // @param {string} text Text string to draw. + // @param {(string|object)=} font Either a string of space-separated CSS + // classes or a font-spec object, defining the text's font and style. + // @param {number=} angle Angle at which to rotate the text, in degrees. + // Angle is currently unused, it will be implemented in the future. + // @param {number=} width Maximum width of the text before it wraps. + // @param {string=} halign Horizontal alignment of the text; either "left", + // "center" or "right". + // @param {string=} valign Vertical alignment of the text; either "top", + // "middle" or "bottom". + + Canvas.prototype.addText = function(layer, x, y, text, font, angle, width, halign, valign) { + + var info = this.getTextInfo(layer, text, font, angle, width), + positions = info.positions; + + // Tweak the div's position to match the text's alignment + + if (halign == "center") { + x -= info.width / 2; + } else if (halign == "right") { + x -= info.width; + } + + if (valign == "middle") { + y -= info.height / 2; + } else if (valign == "bottom") { + y -= info.height; + } + + // Determine whether this text already exists at this position. + // If so, mark it for inclusion in the next render pass. + + for (var i = 0, position; position = positions[i]; i++) { + if (position.x == x && position.y == y) { + position.active = true; + return; + } + } + + // If the text doesn't exist at this position, create a new entry + + // For the very first position we'll re-use the original element, + // while for subsequent ones we'll clone it. + + position = { + active: true, + rendered: false, + element: positions.length ? info.element.clone() : info.element, + x: x, + y: y + }; + + positions.push(position); + + // Move the element to its final position within the container + + position.element.css({ + top: Math.round(y), + left: Math.round(x), + 'text-align': halign // In case the text wraps + }); + }; + + // Removes one or more text strings from the canvas text overlay. + // + // If no parameters are given, all text within the layer is removed. + // + // Note that the text is not immediately removed; it is simply marked as + // inactive, which will result in its removal on the next render pass. + // This avoids the performance penalty for 'clear and redraw' behavior, + // where we potentially get rid of all text on a layer, but will likely + // add back most or all of it later, as when redrawing axes, for example. + // + // @param {string} layer A string of space-separated CSS classes uniquely + // identifying the layer containing this text. + // @param {number=} x X coordinate of the text. + // @param {number=} y Y coordinate of the text. + // @param {string=} text Text string to remove. + // @param {(string|object)=} font Either a string of space-separated CSS + // classes or a font-spec object, defining the text's font and style. + // @param {number=} angle Angle at which the text is rotated, in degrees. + // Angle is currently unused, it will be implemented in the future. + + Canvas.prototype.removeText = function(layer, x, y, text, font, angle) { + if (text == null) { + var layerCache = this._textCache[layer]; + if (layerCache != null) { + for (var styleKey in layerCache) { + if (hasOwnProperty.call(layerCache, styleKey)) { + var styleCache = layerCache[styleKey]; + for (var key in styleCache) { + if (hasOwnProperty.call(styleCache, key)) { + var positions = styleCache[key].positions; + for (var i = 0, position; position = positions[i]; i++) { + position.active = false; + } + } + } + } + } + } + } else { + var positions = this.getTextInfo(layer, text, font, angle).positions; + for (var i = 0, position; position = positions[i]; i++) { + if (position.x == x && position.y == y) { + position.active = false; + } + } + } + }; + + /////////////////////////////////////////////////////////////////////////// + // The top-level container for the entire plot. + + function Plot(placeholder, data_, options_, plugins) { + // data is on the form: + // [ series1, series2 ... ] + // where series is either just the data as [ [x1, y1], [x2, y2], ... ] + // or { data: [ [x1, y1], [x2, y2], ... ], label: "some label", ... } + + var series = [], + options = { + // the color theme used for graphs + colors: ["#edc240", "#afd8f8", "#cb4b4b", "#4da74d", "#9440ed"], + legend: { + show: true, + noColumns: 1, // number of colums in legend table + labelFormatter: null, // fn: string -> string + labelBoxBorderColor: "#ccc", // border color for the little label boxes + container: null, // container (as jQuery object) to put legend in, null means default on top of graph + position: "ne", // position of default legend container within plot + margin: 5, // distance from grid edge to default legend container within plot + backgroundColor: null, // null means auto-detect + backgroundOpacity: 0.85, // set to 0 to avoid background + sorted: null // default to no legend sorting + }, + xaxis: { + show: null, // null = auto-detect, true = always, false = never + position: "bottom", // or "top" + mode: null, // null or "time" + font: null, // null (derived from CSS in placeholder) or object like { size: 11, lineHeight: 13, style: "italic", weight: "bold", family: "sans-serif", variant: "small-caps" } + color: null, // base color, labels, ticks + tickColor: null, // possibly different color of ticks, e.g. "rgba(0,0,0,0.15)" + transform: null, // null or f: number -> number to transform axis + inverseTransform: null, // if transform is set, this should be the inverse function + min: null, // min. value to show, null means set automatically + max: null, // max. value to show, null means set automatically + autoscaleMargin: null, // margin in % to add if auto-setting min/max + ticks: null, // either [1, 3] or [[1, "a"], 3] or (fn: axis info -> ticks) or app. number of ticks for auto-ticks + tickFormatter: null, // fn: number -> string + labelWidth: null, // size of tick labels in pixels + labelHeight: null, + reserveSpace: null, // whether to reserve space even if axis isn't shown + tickLength: null, // size in pixels of ticks, or "full" for whole line + alignTicksWithAxis: null, // axis number or null for no sync + tickDecimals: null, // no. of decimals, null means auto + tickSize: null, // number or [number, "unit"] + minTickSize: null // number or [number, "unit"] + }, + yaxis: { + autoscaleMargin: 0.02, + position: "left" // or "right" + }, + xaxes: [], + yaxes: [], + series: { + points: { + show: false, + radius: 3, + lineWidth: 2, // in pixels + fill: true, + fillColor: "#ffffff", + symbol: "circle" // or callback + }, + lines: { + // we don't put in show: false so we can see + // whether lines were actively disabled + lineWidth: 2, // in pixels + fill: false, + fillColor: null, + steps: false + // Omit 'zero', so we can later default its value to + // match that of the 'fill' option. + }, + bars: { + show: false, + lineWidth: 2, // in pixels + barWidth: 1, // in units of the x axis + fill: true, + fillColor: null, + align: "left", // "left", "right", or "center" + horizontal: false, + zero: true + }, + shadowSize: 3, + highlightColor: null + }, + grid: { + show: true, + aboveData: false, + color: "#545454", // primary color used for outline and labels + backgroundColor: null, // null for transparent, else color + borderColor: null, // set if different from the grid color + tickColor: null, // color for the ticks, e.g. "rgba(0,0,0,0.15)" + margin: 0, // distance from the canvas edge to the grid + labelMargin: 5, // in pixels + axisMargin: 8, // in pixels + borderWidth: 2, // in pixels + minBorderMargin: null, // in pixels, null means taken from points radius + markings: null, // array of ranges or fn: axes -> array of ranges + markingsColor: "#f4f4f4", + markingsLineWidth: 2, + // interactive stuff + clickable: false, + hoverable: false, + autoHighlight: true, // highlight in case mouse is near + mouseActiveRadius: 10 // how far the mouse can be away to activate an item + }, + interaction: { + redrawOverlayInterval: 1000/60 // time between updates, -1 means in same flow + }, + hooks: {} + }, + surface = null, // the canvas for the plot itself + overlay = null, // canvas for interactive stuff on top of plot + eventHolder = null, // jQuery object that events should be bound to + ctx = null, octx = null, + xaxes = [], yaxes = [], + plotOffset = { left: 0, right: 0, top: 0, bottom: 0}, + plotWidth = 0, plotHeight = 0, + hooks = { + processOptions: [], + processRawData: [], + processDatapoints: [], + processOffset: [], + drawBackground: [], + drawSeries: [], + draw: [], + bindEvents: [], + drawOverlay: [], + shutdown: [] + }, + plot = this; + + // public functions + plot.setData = setData; + plot.setupGrid = setupGrid; + plot.draw = draw; + plot.getPlaceholder = function() { return placeholder; }; + plot.getCanvas = function() { return surface.element; }; + plot.getPlotOffset = function() { return plotOffset; }; + plot.width = function () { return plotWidth; }; + plot.height = function () { return plotHeight; }; + plot.offset = function () { + var o = eventHolder.offset(); + o.left += plotOffset.left; + o.top += plotOffset.top; + return o; + }; + plot.getData = function () { return series; }; + plot.getAxes = function () { + var res = {}, i; + $.each(xaxes.concat(yaxes), function (_, axis) { + if (axis) + res[axis.direction + (axis.n != 1 ? axis.n : "") + "axis"] = axis; + }); + return res; + }; + plot.getXAxes = function () { return xaxes; }; + plot.getYAxes = function () { return yaxes; }; + plot.c2p = canvasToAxisCoords; + plot.p2c = axisToCanvasCoords; + plot.getOptions = function () { return options; }; + plot.highlight = highlight; + plot.unhighlight = unhighlight; + plot.triggerRedrawOverlay = triggerRedrawOverlay; + plot.pointOffset = function(point) { + return { + left: parseInt(xaxes[axisNumber(point, "x") - 1].p2c(+point.x) + plotOffset.left, 10), + top: parseInt(yaxes[axisNumber(point, "y") - 1].p2c(+point.y) + plotOffset.top, 10) + }; + }; + plot.shutdown = shutdown; + plot.destroy = function () { + shutdown(); + placeholder.removeData("plot").empty(); + + series = []; + options = null; + surface = null; + overlay = null; + eventHolder = null; + ctx = null; + octx = null; + xaxes = []; + yaxes = []; + hooks = null; + highlights = []; + plot = null; + }; + plot.resize = function () { + var width = placeholder.width(), + height = placeholder.height(); + surface.resize(width, height); + overlay.resize(width, height); + }; + + // public attributes + plot.hooks = hooks; + + // initialize + initPlugins(plot); + parseOptions(options_); + setupCanvases(); + setData(data_); + setupGrid(); + draw(); + bindEvents(); + + + function executeHooks(hook, args) { + args = [plot].concat(args); + for (var i = 0; i < hook.length; ++i) + hook[i].apply(this, args); + } + + function initPlugins() { + + // References to key classes, allowing plugins to modify them + + var classes = { + Canvas: Canvas + }; + + for (var i = 0; i < plugins.length; ++i) { + var p = plugins[i]; + p.init(plot, classes); + if (p.options) + $.extend(true, options, p.options); + } + } + + function parseOptions(opts) { + + $.extend(true, options, opts); + + // $.extend merges arrays, rather than replacing them. When less + // colors are provided than the size of the default palette, we + // end up with those colors plus the remaining defaults, which is + // not expected behavior; avoid it by replacing them here. + + if (opts && opts.colors) { + options.colors = opts.colors; + } + + if (options.xaxis.color == null) + options.xaxis.color = $.color.parse(options.grid.color).scale('a', 0.22).toString(); + if (options.yaxis.color == null) + options.yaxis.color = $.color.parse(options.grid.color).scale('a', 0.22).toString(); + + if (options.xaxis.tickColor == null) // grid.tickColor for back-compatibility + options.xaxis.tickColor = options.grid.tickColor || options.xaxis.color; + if (options.yaxis.tickColor == null) // grid.tickColor for back-compatibility + options.yaxis.tickColor = options.grid.tickColor || options.yaxis.color; + + if (options.grid.borderColor == null) + options.grid.borderColor = options.grid.color; + if (options.grid.tickColor == null) + options.grid.tickColor = $.color.parse(options.grid.color).scale('a', 0.22).toString(); + + // Fill in defaults for axis options, including any unspecified + // font-spec fields, if a font-spec was provided. + + // If no x/y axis options were provided, create one of each anyway, + // since the rest of the code assumes that they exist. + + var i, axisOptions, axisCount, + fontSize = placeholder.css("font-size"), + fontSizeDefault = fontSize ? +fontSize.replace("px", "") : 13, + fontDefaults = { + style: placeholder.css("font-style"), + size: Math.round(0.8 * fontSizeDefault), + variant: placeholder.css("font-variant"), + weight: placeholder.css("font-weight"), + family: placeholder.css("font-family") + }; + + axisCount = options.xaxes.length || 1; + for (i = 0; i < axisCount; ++i) { + + axisOptions = options.xaxes[i]; + if (axisOptions && !axisOptions.tickColor) { + axisOptions.tickColor = axisOptions.color; + } + + axisOptions = $.extend(true, {}, options.xaxis, axisOptions); + options.xaxes[i] = axisOptions; + + if (axisOptions.font) { + axisOptions.font = $.extend({}, fontDefaults, axisOptions.font); + if (!axisOptions.font.color) { + axisOptions.font.color = axisOptions.color; + } + if (!axisOptions.font.lineHeight) { + axisOptions.font.lineHeight = Math.round(axisOptions.font.size * 1.15); + } + } + } + + axisCount = options.yaxes.length || 1; + for (i = 0; i < axisCount; ++i) { + + axisOptions = options.yaxes[i]; + if (axisOptions && !axisOptions.tickColor) { + axisOptions.tickColor = axisOptions.color; + } + + axisOptions = $.extend(true, {}, options.yaxis, axisOptions); + options.yaxes[i] = axisOptions; + + if (axisOptions.font) { + axisOptions.font = $.extend({}, fontDefaults, axisOptions.font); + if (!axisOptions.font.color) { + axisOptions.font.color = axisOptions.color; + } + if (!axisOptions.font.lineHeight) { + axisOptions.font.lineHeight = Math.round(axisOptions.font.size * 1.15); + } + } + } + + // backwards compatibility, to be removed in future + if (options.xaxis.noTicks && options.xaxis.ticks == null) + options.xaxis.ticks = options.xaxis.noTicks; + if (options.yaxis.noTicks && options.yaxis.ticks == null) + options.yaxis.ticks = options.yaxis.noTicks; + if (options.x2axis) { + options.xaxes[1] = $.extend(true, {}, options.xaxis, options.x2axis); + options.xaxes[1].position = "top"; + // Override the inherit to allow the axis to auto-scale + if (options.x2axis.min == null) { + options.xaxes[1].min = null; + } + if (options.x2axis.max == null) { + options.xaxes[1].max = null; + } + } + if (options.y2axis) { + options.yaxes[1] = $.extend(true, {}, options.yaxis, options.y2axis); + options.yaxes[1].position = "right"; + // Override the inherit to allow the axis to auto-scale + if (options.y2axis.min == null) { + options.yaxes[1].min = null; + } + if (options.y2axis.max == null) { + options.yaxes[1].max = null; + } + } + if (options.grid.coloredAreas) + options.grid.markings = options.grid.coloredAreas; + if (options.grid.coloredAreasColor) + options.grid.markingsColor = options.grid.coloredAreasColor; + if (options.lines) + $.extend(true, options.series.lines, options.lines); + if (options.points) + $.extend(true, options.series.points, options.points); + if (options.bars) + $.extend(true, options.series.bars, options.bars); + if (options.shadowSize != null) + options.series.shadowSize = options.shadowSize; + if (options.highlightColor != null) + options.series.highlightColor = options.highlightColor; + + // save options on axes for future reference + for (i = 0; i < options.xaxes.length; ++i) + getOrCreateAxis(xaxes, i + 1).options = options.xaxes[i]; + for (i = 0; i < options.yaxes.length; ++i) + getOrCreateAxis(yaxes, i + 1).options = options.yaxes[i]; + + // add hooks from options + for (var n in hooks) + if (options.hooks[n] && options.hooks[n].length) + hooks[n] = hooks[n].concat(options.hooks[n]); + + executeHooks(hooks.processOptions, [options]); + } + + function setData(d) { + series = parseData(d); + fillInSeriesOptions(); + processData(); + } + + function parseData(d) { + var res = []; + for (var i = 0; i < d.length; ++i) { + var s = $.extend(true, {}, options.series); + + if (d[i].data != null) { + s.data = d[i].data; // move the data instead of deep-copy + delete d[i].data; + + $.extend(true, s, d[i]); + + d[i].data = s.data; + } + else + s.data = d[i]; + res.push(s); + } + + return res; + } + + function axisNumber(obj, coord) { + var a = obj[coord + "axis"]; + if (typeof a == "object") // if we got a real axis, extract number + a = a.n; + if (typeof a != "number") + a = 1; // default to first axis + return a; + } + + function allAxes() { + // return flat array without annoying null entries + return $.grep(xaxes.concat(yaxes), function (a) { return a; }); + } + + function canvasToAxisCoords(pos) { + // return an object with x/y corresponding to all used axes + var res = {}, i, axis; + for (i = 0; i < xaxes.length; ++i) { + axis = xaxes[i]; + if (axis && axis.used) + res["x" + axis.n] = axis.c2p(pos.left); + } + + for (i = 0; i < yaxes.length; ++i) { + axis = yaxes[i]; + if (axis && axis.used) + res["y" + axis.n] = axis.c2p(pos.top); + } + + if (res.x1 !== undefined) + res.x = res.x1; + if (res.y1 !== undefined) + res.y = res.y1; + + return res; + } + + function axisToCanvasCoords(pos) { + // get canvas coords from the first pair of x/y found in pos + var res = {}, i, axis, key; + + for (i = 0; i < xaxes.length; ++i) { + axis = xaxes[i]; + if (axis && axis.used) { + key = "x" + axis.n; + if (pos[key] == null && axis.n == 1) + key = "x"; + + if (pos[key] != null) { + res.left = axis.p2c(pos[key]); + break; + } + } + } + + for (i = 0; i < yaxes.length; ++i) { + axis = yaxes[i]; + if (axis && axis.used) { + key = "y" + axis.n; + if (pos[key] == null && axis.n == 1) + key = "y"; + + if (pos[key] != null) { + res.top = axis.p2c(pos[key]); + break; + } + } + } + + return res; + } + + function getOrCreateAxis(axes, number) { + if (!axes[number - 1]) + axes[number - 1] = { + n: number, // save the number for future reference + direction: axes == xaxes ? "x" : "y", + options: $.extend(true, {}, axes == xaxes ? options.xaxis : options.yaxis) + }; + + return axes[number - 1]; + } + + function fillInSeriesOptions() { + + var neededColors = series.length, maxIndex = -1, i; + + // Subtract the number of series that already have fixed colors or + // color indexes from the number that we still need to generate. + + for (i = 0; i < series.length; ++i) { + var sc = series[i].color; + if (sc != null) { + neededColors--; + if (typeof sc == "number" && sc > maxIndex) { + maxIndex = sc; + } + } + } + + // If any of the series have fixed color indexes, then we need to + // generate at least as many colors as the highest index. + + if (neededColors <= maxIndex) { + neededColors = maxIndex + 1; + } + + // Generate all the colors, using first the option colors and then + // variations on those colors once they're exhausted. + + var c, colors = [], colorPool = options.colors, + colorPoolSize = colorPool.length, variation = 0; + + for (i = 0; i < neededColors; i++) { + + c = $.color.parse(colorPool[i % colorPoolSize] || "#666"); + + // Each time we exhaust the colors in the pool we adjust + // a scaling factor used to produce more variations on + // those colors. The factor alternates negative/positive + // to produce lighter/darker colors. + + // Reset the variation after every few cycles, or else + // it will end up producing only white or black colors. + + if (i % colorPoolSize == 0 && i) { + if (variation >= 0) { + if (variation < 0.5) { + variation = -variation - 0.2; + } else variation = 0; + } else variation = -variation; + } + + colors[i] = c.scale('rgb', 1 + variation); + } + + // Finalize the series options, filling in their colors + + var colori = 0, s; + for (i = 0; i < series.length; ++i) { + s = series[i]; + + // assign colors + if (s.color == null) { + s.color = colors[colori].toString(); + ++colori; + } + else if (typeof s.color == "number") + s.color = colors[s.color].toString(); + + // turn on lines automatically in case nothing is set + if (s.lines.show == null) { + var v, show = true; + for (v in s) + if (s[v] && s[v].show) { + show = false; + break; + } + if (show) + s.lines.show = true; + } + + // If nothing was provided for lines.zero, default it to match + // lines.fill, since areas by default should extend to zero. + + if (s.lines.zero == null) { + s.lines.zero = !!s.lines.fill; + } + + // setup axes + s.xaxis = getOrCreateAxis(xaxes, axisNumber(s, "x")); + s.yaxis = getOrCreateAxis(yaxes, axisNumber(s, "y")); + } + } + + function processData() { + var topSentry = Number.POSITIVE_INFINITY, + bottomSentry = Number.NEGATIVE_INFINITY, + fakeInfinity = Number.MAX_VALUE, + i, j, k, m, length, + s, points, ps, x, y, axis, val, f, p, + data, format; + + function updateAxis(axis, min, max) { + if (min < axis.datamin && min != -fakeInfinity) + axis.datamin = min; + if (max > axis.datamax && max != fakeInfinity) + axis.datamax = max; + } + + $.each(allAxes(), function (_, axis) { + // init axis + axis.datamin = topSentry; + axis.datamax = bottomSentry; + axis.used = false; + }); + + for (i = 0; i < series.length; ++i) { + s = series[i]; + s.datapoints = { points: [] }; + + executeHooks(hooks.processRawData, [ s, s.data, s.datapoints ]); + } + + // first pass: clean and copy data + for (i = 0; i < series.length; ++i) { + s = series[i]; + + data = s.data; + format = s.datapoints.format; + + if (!format) { + format = []; + // find out how to copy + format.push({ x: true, number: true, required: true }); + format.push({ y: true, number: true, required: true }); + + if (s.bars.show || (s.lines.show && s.lines.fill)) { + var autoscale = !!((s.bars.show && s.bars.zero) || (s.lines.show && s.lines.zero)); + format.push({ y: true, number: true, required: false, defaultValue: 0, autoscale: autoscale }); + if (s.bars.horizontal) { + delete format[format.length - 1].y; + format[format.length - 1].x = true; + } + } + + s.datapoints.format = format; + } + + if (s.datapoints.pointsize != null) + continue; // already filled in + + s.datapoints.pointsize = format.length; + + ps = s.datapoints.pointsize; + points = s.datapoints.points; + + var insertSteps = s.lines.show && s.lines.steps; + s.xaxis.used = s.yaxis.used = true; + + for (j = k = 0; j < data.length; ++j, k += ps) { + p = data[j]; + + var nullify = p == null; + if (!nullify) { + for (m = 0; m < ps; ++m) { + val = p[m]; + f = format[m]; + + if (f) { + if (f.number && val != null) { + val = +val; // convert to number + if (isNaN(val)) + val = null; + else if (val == Infinity) + val = fakeInfinity; + else if (val == -Infinity) + val = -fakeInfinity; + } + + if (val == null) { + if (f.required) + nullify = true; + + if (f.defaultValue != null) + val = f.defaultValue; + } + } + + points[k + m] = val; + } + } + + if (nullify) { + for (m = 0; m < ps; ++m) { + val = points[k + m]; + if (val != null) { + f = format[m]; + // extract min/max info + if (f.autoscale !== false) { + if (f.x) { + updateAxis(s.xaxis, val, val); + } + if (f.y) { + updateAxis(s.yaxis, val, val); + } + } + } + points[k + m] = null; + } + } + else { + // a little bit of line specific stuff that + // perhaps shouldn't be here, but lacking + // better means... + if (insertSteps && k > 0 + && points[k - ps] != null + && points[k - ps] != points[k] + && points[k - ps + 1] != points[k + 1]) { + // copy the point to make room for a middle point + for (m = 0; m < ps; ++m) + points[k + ps + m] = points[k + m]; + + // middle point has same y + points[k + 1] = points[k - ps + 1]; + + // we've added a point, better reflect that + k += ps; + } + } + } + } + + // give the hooks a chance to run + for (i = 0; i < series.length; ++i) { + s = series[i]; + + executeHooks(hooks.processDatapoints, [ s, s.datapoints]); + } + + // second pass: find datamax/datamin for auto-scaling + for (i = 0; i < series.length; ++i) { + s = series[i]; + points = s.datapoints.points; + ps = s.datapoints.pointsize; + format = s.datapoints.format; + + var xmin = topSentry, ymin = topSentry, + xmax = bottomSentry, ymax = bottomSentry; + + for (j = 0; j < points.length; j += ps) { + if (points[j] == null) + continue; + + for (m = 0; m < ps; ++m) { + val = points[j + m]; + f = format[m]; + if (!f || f.autoscale === false || val == fakeInfinity || val == -fakeInfinity) + continue; + + if (f.x) { + if (val < xmin) + xmin = val; + if (val > xmax) + xmax = val; + } + if (f.y) { + if (val < ymin) + ymin = val; + if (val > ymax) + ymax = val; + } + } + } + + if (s.bars.show) { + // make sure we got room for the bar on the dancing floor + var delta; + + switch (s.bars.align) { + case "left": + delta = 0; + break; + case "right": + delta = -s.bars.barWidth; + break; + default: + delta = -s.bars.barWidth / 2; + } + + if (s.bars.horizontal) { + ymin += delta; + ymax += delta + s.bars.barWidth; + } + else { + xmin += delta; + xmax += delta + s.bars.barWidth; + } + } + + updateAxis(s.xaxis, xmin, xmax); + updateAxis(s.yaxis, ymin, ymax); + } + + $.each(allAxes(), function (_, axis) { + if (axis.datamin == topSentry) + axis.datamin = null; + if (axis.datamax == bottomSentry) + axis.datamax = null; + }); + } + + function setupCanvases() { + + // Make sure the placeholder is clear of everything except canvases + // from a previous plot in this container that we'll try to re-use. + + placeholder.css("padding", 0) // padding messes up the positioning + .children().filter(function(){ + return !$(this).hasClass("flot-overlay") && !$(this).hasClass('flot-base'); + }).remove(); + + if (placeholder.css("position") == 'static') + placeholder.css("position", "relative"); // for positioning labels and overlay + + surface = new Canvas("flot-base", placeholder); + overlay = new Canvas("flot-overlay", placeholder); // overlay canvas for interactive features + + ctx = surface.context; + octx = overlay.context; + + // define which element we're listening for events on + eventHolder = $(overlay.element).unbind(); + + // If we're re-using a plot object, shut down the old one + + var existing = placeholder.data("plot"); + + if (existing) { + existing.shutdown(); + overlay.clear(); + } + + // save in case we get replotted + placeholder.data("plot", plot); + } + + function bindEvents() { + // bind events + if (options.grid.hoverable) { + eventHolder.mousemove(onMouseMove); + + // Use bind, rather than .mouseleave, because we officially + // still support jQuery 1.2.6, which doesn't define a shortcut + // for mouseenter or mouseleave. This was a bug/oversight that + // was fixed somewhere around 1.3.x. We can return to using + // .mouseleave when we drop support for 1.2.6. + + eventHolder.bind("mouseleave", onMouseLeave); + } + + if (options.grid.clickable) + eventHolder.click(onClick); + + executeHooks(hooks.bindEvents, [eventHolder]); + } + + function shutdown() { + if (redrawTimeout) + clearTimeout(redrawTimeout); + + eventHolder.unbind("mousemove", onMouseMove); + eventHolder.unbind("mouseleave", onMouseLeave); + eventHolder.unbind("click", onClick); + + executeHooks(hooks.shutdown, [eventHolder]); + } + + function setTransformationHelpers(axis) { + // set helper functions on the axis, assumes plot area + // has been computed already + + function identity(x) { return x; } + + var s, m, t = axis.options.transform || identity, + it = axis.options.inverseTransform; + + // precompute how much the axis is scaling a point + // in canvas space + if (axis.direction == "x") { + s = axis.scale = plotWidth / Math.abs(t(axis.max) - t(axis.min)); + m = Math.min(t(axis.max), t(axis.min)); + } + else { + s = axis.scale = plotHeight / Math.abs(t(axis.max) - t(axis.min)); + s = -s; + m = Math.max(t(axis.max), t(axis.min)); + } + + // data point to canvas coordinate + if (t == identity) // slight optimization + axis.p2c = function (p) { return (p - m) * s; }; + else + axis.p2c = function (p) { return (t(p) - m) * s; }; + // canvas coordinate to data point + if (!it) + axis.c2p = function (c) { return m + c / s; }; + else + axis.c2p = function (c) { return it(m + c / s); }; + } + + function measureTickLabels(axis) { + + var opts = axis.options, + ticks = axis.ticks || [], + labelWidth = opts.labelWidth || 0, + labelHeight = opts.labelHeight || 0, + maxWidth = labelWidth || (axis.direction == "x" ? Math.floor(surface.width / (ticks.length || 1)) : null), + legacyStyles = axis.direction + "Axis " + axis.direction + axis.n + "Axis", + layer = "flot-" + axis.direction + "-axis flot-" + axis.direction + axis.n + "-axis " + legacyStyles, + font = opts.font || "flot-tick-label tickLabel"; + + for (var i = 0; i < ticks.length; ++i) { + + var t = ticks[i]; + + if (!t.label) + continue; + + var info = surface.getTextInfo(layer, t.label, font, null, maxWidth); + + labelWidth = Math.max(labelWidth, info.width); + labelHeight = Math.max(labelHeight, info.height); + } + + axis.labelWidth = opts.labelWidth || labelWidth; + axis.labelHeight = opts.labelHeight || labelHeight; + } + + function allocateAxisBoxFirstPhase(axis) { + // find the bounding box of the axis by looking at label + // widths/heights and ticks, make room by diminishing the + // plotOffset; this first phase only looks at one + // dimension per axis, the other dimension depends on the + // other axes so will have to wait + + var lw = axis.labelWidth, + lh = axis.labelHeight, + pos = axis.options.position, + isXAxis = axis.direction === "x", + tickLength = axis.options.tickLength, + axisMargin = options.grid.axisMargin, + padding = options.grid.labelMargin, + innermost = true, + outermost = true, + first = true, + found = false; + + // Determine the axis's position in its direction and on its side + + $.each(isXAxis ? xaxes : yaxes, function(i, a) { + if (a && (a.show || a.reserveSpace)) { + if (a === axis) { + found = true; + } else if (a.options.position === pos) { + if (found) { + outermost = false; + } else { + innermost = false; + } + } + if (!found) { + first = false; + } + } + }); + + // The outermost axis on each side has no margin + + if (outermost) { + axisMargin = 0; + } + + // The ticks for the first axis in each direction stretch across + + if (tickLength == null) { + tickLength = first ? "full" : 5; + } + + if (!isNaN(+tickLength)) + padding += +tickLength; + + if (isXAxis) { + lh += padding; + + if (pos == "bottom") { + plotOffset.bottom += lh + axisMargin; + axis.box = { top: surface.height - plotOffset.bottom, height: lh }; + } + else { + axis.box = { top: plotOffset.top + axisMargin, height: lh }; + plotOffset.top += lh + axisMargin; + } + } + else { + lw += padding; + + if (pos == "left") { + axis.box = { left: plotOffset.left + axisMargin, width: lw }; + plotOffset.left += lw + axisMargin; + } + else { + plotOffset.right += lw + axisMargin; + axis.box = { left: surface.width - plotOffset.right, width: lw }; + } + } + + // save for future reference + axis.position = pos; + axis.tickLength = tickLength; + axis.box.padding = padding; + axis.innermost = innermost; + } + + function allocateAxisBoxSecondPhase(axis) { + // now that all axis boxes have been placed in one + // dimension, we can set the remaining dimension coordinates + if (axis.direction == "x") { + axis.box.left = plotOffset.left - axis.labelWidth / 2; + axis.box.width = surface.width - plotOffset.left - plotOffset.right + axis.labelWidth; + } + else { + axis.box.top = plotOffset.top - axis.labelHeight / 2; + axis.box.height = surface.height - plotOffset.bottom - plotOffset.top + axis.labelHeight; + } + } + + function adjustLayoutForThingsStickingOut() { + // possibly adjust plot offset to ensure everything stays + // inside the canvas and isn't clipped off + + var minMargin = options.grid.minBorderMargin, + axis, i; + + // check stuff from the plot (FIXME: this should just read + // a value from the series, otherwise it's impossible to + // customize) + if (minMargin == null) { + minMargin = 0; + for (i = 0; i < series.length; ++i) + minMargin = Math.max(minMargin, 2 * (series[i].points.radius + series[i].points.lineWidth/2)); + } + + var margins = { + left: minMargin, + right: minMargin, + top: minMargin, + bottom: minMargin + }; + + // check axis labels, note we don't check the actual + // labels but instead use the overall width/height to not + // jump as much around with replots + $.each(allAxes(), function (_, axis) { + if (axis.reserveSpace && axis.ticks && axis.ticks.length) { + if (axis.direction === "x") { + margins.left = Math.max(margins.left, axis.labelWidth / 2); + margins.right = Math.max(margins.right, axis.labelWidth / 2); + } else { + margins.bottom = Math.max(margins.bottom, axis.labelHeight / 2); + margins.top = Math.max(margins.top, axis.labelHeight / 2); + } + } + }); + + plotOffset.left = Math.ceil(Math.max(margins.left, plotOffset.left)); + plotOffset.right = Math.ceil(Math.max(margins.right, plotOffset.right)); + plotOffset.top = Math.ceil(Math.max(margins.top, plotOffset.top)); + plotOffset.bottom = Math.ceil(Math.max(margins.bottom, plotOffset.bottom)); + } + + function setupGrid() { + var i, axes = allAxes(), showGrid = options.grid.show; + + // Initialize the plot's offset from the edge of the canvas + + for (var a in plotOffset) { + var margin = options.grid.margin || 0; + plotOffset[a] = typeof margin == "number" ? margin : margin[a] || 0; + } + + executeHooks(hooks.processOffset, [plotOffset]); + + // If the grid is visible, add its border width to the offset + + for (var a in plotOffset) { + if(typeof(options.grid.borderWidth) == "object") { + plotOffset[a] += showGrid ? options.grid.borderWidth[a] : 0; + } + else { + plotOffset[a] += showGrid ? options.grid.borderWidth : 0; + } + } + + $.each(axes, function (_, axis) { + var axisOpts = axis.options; + axis.show = axisOpts.show == null ? axis.used : axisOpts.show; + axis.reserveSpace = axisOpts.reserveSpace == null ? axis.show : axisOpts.reserveSpace; + setRange(axis); + }); + + if (showGrid) { + + var allocatedAxes = $.grep(axes, function (axis) { + return axis.show || axis.reserveSpace; + }); + + $.each(allocatedAxes, function (_, axis) { + // make the ticks + setupTickGeneration(axis); + setTicks(axis); + snapRangeToTicks(axis, axis.ticks); + // find labelWidth/Height for axis + measureTickLabels(axis); + }); + + // with all dimensions calculated, we can compute the + // axis bounding boxes, start from the outside + // (reverse order) + for (i = allocatedAxes.length - 1; i >= 0; --i) + allocateAxisBoxFirstPhase(allocatedAxes[i]); + + // make sure we've got enough space for things that + // might stick out + adjustLayoutForThingsStickingOut(); + + $.each(allocatedAxes, function (_, axis) { + allocateAxisBoxSecondPhase(axis); + }); + } + + plotWidth = surface.width - plotOffset.left - plotOffset.right; + plotHeight = surface.height - plotOffset.bottom - plotOffset.top; + + // now we got the proper plot dimensions, we can compute the scaling + $.each(axes, function (_, axis) { + setTransformationHelpers(axis); + }); + + if (showGrid) { + drawAxisLabels(); + } + + insertLegend(); + } + + function setRange(axis) { + var opts = axis.options, + min = +(opts.min != null ? opts.min : axis.datamin), + max = +(opts.max != null ? opts.max : axis.datamax), + delta = max - min; + + if (delta == 0.0) { + // degenerate case + var widen = max == 0 ? 1 : 0.01; + + if (opts.min == null) + min -= widen; + // always widen max if we couldn't widen min to ensure we + // don't fall into min == max which doesn't work + if (opts.max == null || opts.min != null) + max += widen; + } + else { + // consider autoscaling + var margin = opts.autoscaleMargin; + if (margin != null) { + if (opts.min == null) { + min -= delta * margin; + // make sure we don't go below zero if all values + // are positive + if (min < 0 && axis.datamin != null && axis.datamin >= 0) + min = 0; + } + if (opts.max == null) { + max += delta * margin; + if (max > 0 && axis.datamax != null && axis.datamax <= 0) + max = 0; + } + } + } + axis.min = min; + axis.max = max; + } + + function setupTickGeneration(axis) { + var opts = axis.options; + + // estimate number of ticks + var noTicks; + if (typeof opts.ticks == "number" && opts.ticks > 0) + noTicks = opts.ticks; + else + // heuristic based on the model a*sqrt(x) fitted to + // some data points that seemed reasonable + noTicks = 0.3 * Math.sqrt(axis.direction == "x" ? surface.width : surface.height); + + var delta = (axis.max - axis.min) / noTicks, + dec = -Math.floor(Math.log(delta) / Math.LN10), + maxDec = opts.tickDecimals; + + if (maxDec != null && dec > maxDec) { + dec = maxDec; + } + + var magn = Math.pow(10, -dec), + norm = delta / magn, // norm is between 1.0 and 10.0 + size; + + if (norm < 1.5) { + size = 1; + } else if (norm < 3) { + size = 2; + // special case for 2.5, requires an extra decimal + if (norm > 2.25 && (maxDec == null || dec + 1 <= maxDec)) { + size = 2.5; + ++dec; + } + } else if (norm < 7.5) { + size = 5; + } else { + size = 10; + } + + size *= magn; + + if (opts.minTickSize != null && size < opts.minTickSize) { + size = opts.minTickSize; + } + + axis.delta = delta; + axis.tickDecimals = Math.max(0, maxDec != null ? maxDec : dec); + axis.tickSize = opts.tickSize || size; + + // Time mode was moved to a plug-in in 0.8, and since so many people use it + // we'll add an especially friendly reminder to make sure they included it. + + if (opts.mode == "time" && !axis.tickGenerator) { + throw new Error("Time mode requires the flot.time plugin."); + } + + // Flot supports base-10 axes; any other mode else is handled by a plug-in, + // like flot.time.js. + + if (!axis.tickGenerator) { + + axis.tickGenerator = function (axis) { + + var ticks = [], + start = floorInBase(axis.min, axis.tickSize), + i = 0, + v = Number.NaN, + prev; + + do { + prev = v; + v = start + i * axis.tickSize; + ticks.push(v); + ++i; + } while (v < axis.max && v != prev); + return ticks; + }; + + axis.tickFormatter = function (value, axis) { + + var factor = axis.tickDecimals ? Math.pow(10, axis.tickDecimals) : 1; + var formatted = "" + Math.round(value * factor) / factor; + + // If tickDecimals was specified, ensure that we have exactly that + // much precision; otherwise default to the value's own precision. + + if (axis.tickDecimals != null) { + var decimal = formatted.indexOf("."); + var precision = decimal == -1 ? 0 : formatted.length - decimal - 1; + if (precision < axis.tickDecimals) { + return (precision ? formatted : formatted + ".") + ("" + factor).substr(1, axis.tickDecimals - precision); + } + } + + return formatted; + }; + } + + if ($.isFunction(opts.tickFormatter)) + axis.tickFormatter = function (v, axis) { return "" + opts.tickFormatter(v, axis); }; + + if (opts.alignTicksWithAxis != null) { + var otherAxis = (axis.direction == "x" ? xaxes : yaxes)[opts.alignTicksWithAxis - 1]; + if (otherAxis && otherAxis.used && otherAxis != axis) { + // consider snapping min/max to outermost nice ticks + var niceTicks = axis.tickGenerator(axis); + if (niceTicks.length > 0) { + if (opts.min == null) + axis.min = Math.min(axis.min, niceTicks[0]); + if (opts.max == null && niceTicks.length > 1) + axis.max = Math.max(axis.max, niceTicks[niceTicks.length - 1]); + } + + axis.tickGenerator = function (axis) { + // copy ticks, scaled to this axis + var ticks = [], v, i; + for (i = 0; i < otherAxis.ticks.length; ++i) { + v = (otherAxis.ticks[i].v - otherAxis.min) / (otherAxis.max - otherAxis.min); + v = axis.min + v * (axis.max - axis.min); + ticks.push(v); + } + return ticks; + }; + + // we might need an extra decimal since forced + // ticks don't necessarily fit naturally + if (!axis.mode && opts.tickDecimals == null) { + var extraDec = Math.max(0, -Math.floor(Math.log(axis.delta) / Math.LN10) + 1), + ts = axis.tickGenerator(axis); + + // only proceed if the tick interval rounded + // with an extra decimal doesn't give us a + // zero at end + if (!(ts.length > 1 && /\..*0$/.test((ts[1] - ts[0]).toFixed(extraDec)))) + axis.tickDecimals = extraDec; + } + } + } + } + + function setTicks(axis) { + var oticks = axis.options.ticks, ticks = []; + if (oticks == null || (typeof oticks == "number" && oticks > 0)) + ticks = axis.tickGenerator(axis); + else if (oticks) { + if ($.isFunction(oticks)) + // generate the ticks + ticks = oticks(axis); + else + ticks = oticks; + } + + // clean up/labelify the supplied ticks, copy them over + var i, v; + axis.ticks = []; + for (i = 0; i < ticks.length; ++i) { + var label = null; + var t = ticks[i]; + if (typeof t == "object") { + v = +t[0]; + if (t.length > 1) + label = t[1]; + } + else + v = +t; + if (label == null) + label = axis.tickFormatter(v, axis); + if (!isNaN(v)) + axis.ticks.push({ v: v, label: label }); + } + } + + function snapRangeToTicks(axis, ticks) { + if (axis.options.autoscaleMargin && ticks.length > 0) { + // snap to ticks + if (axis.options.min == null) + axis.min = Math.min(axis.min, ticks[0].v); + if (axis.options.max == null && ticks.length > 1) + axis.max = Math.max(axis.max, ticks[ticks.length - 1].v); + } + } + + function draw() { + + surface.clear(); + + executeHooks(hooks.drawBackground, [ctx]); + + var grid = options.grid; + + // draw background, if any + if (grid.show && grid.backgroundColor) + drawBackground(); + + if (grid.show && !grid.aboveData) { + drawGrid(); + } + + for (var i = 0; i < series.length; ++i) { + executeHooks(hooks.drawSeries, [ctx, series[i]]); + drawSeries(series[i]); + } + + executeHooks(hooks.draw, [ctx]); + + if (grid.show && grid.aboveData) { + drawGrid(); + } + + surface.render(); + + // A draw implies that either the axes or data have changed, so we + // should probably update the overlay highlights as well. + + triggerRedrawOverlay(); + } + + function extractRange(ranges, coord) { + var axis, from, to, key, axes = allAxes(); + + for (var i = 0; i < axes.length; ++i) { + axis = axes[i]; + if (axis.direction == coord) { + key = coord + axis.n + "axis"; + if (!ranges[key] && axis.n == 1) + key = coord + "axis"; // support x1axis as xaxis + if (ranges[key]) { + from = ranges[key].from; + to = ranges[key].to; + break; + } + } + } + + // backwards-compat stuff - to be removed in future + if (!ranges[key]) { + axis = coord == "x" ? xaxes[0] : yaxes[0]; + from = ranges[coord + "1"]; + to = ranges[coord + "2"]; + } + + // auto-reverse as an added bonus + if (from != null && to != null && from > to) { + var tmp = from; + from = to; + to = tmp; + } + + return { from: from, to: to, axis: axis }; + } + + function drawBackground() { + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + + ctx.fillStyle = getColorOrGradient(options.grid.backgroundColor, plotHeight, 0, "rgba(255, 255, 255, 0)"); + ctx.fillRect(0, 0, plotWidth, plotHeight); + ctx.restore(); + } + + function drawGrid() { + var i, axes, bw, bc; + + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + + // draw markings + var markings = options.grid.markings; + if (markings) { + if ($.isFunction(markings)) { + axes = plot.getAxes(); + // xmin etc. is backwards compatibility, to be + // removed in the future + axes.xmin = axes.xaxis.min; + axes.xmax = axes.xaxis.max; + axes.ymin = axes.yaxis.min; + axes.ymax = axes.yaxis.max; + + markings = markings(axes); + } + + for (i = 0; i < markings.length; ++i) { + var m = markings[i], + xrange = extractRange(m, "x"), + yrange = extractRange(m, "y"); + + // fill in missing + if (xrange.from == null) + xrange.from = xrange.axis.min; + if (xrange.to == null) + xrange.to = xrange.axis.max; + if (yrange.from == null) + yrange.from = yrange.axis.min; + if (yrange.to == null) + yrange.to = yrange.axis.max; + + // clip + if (xrange.to < xrange.axis.min || xrange.from > xrange.axis.max || + yrange.to < yrange.axis.min || yrange.from > yrange.axis.max) + continue; + + xrange.from = Math.max(xrange.from, xrange.axis.min); + xrange.to = Math.min(xrange.to, xrange.axis.max); + yrange.from = Math.max(yrange.from, yrange.axis.min); + yrange.to = Math.min(yrange.to, yrange.axis.max); + + var xequal = xrange.from === xrange.to, + yequal = yrange.from === yrange.to; + + if (xequal && yequal) { + continue; + } + + // then draw + xrange.from = Math.floor(xrange.axis.p2c(xrange.from)); + xrange.to = Math.floor(xrange.axis.p2c(xrange.to)); + yrange.from = Math.floor(yrange.axis.p2c(yrange.from)); + yrange.to = Math.floor(yrange.axis.p2c(yrange.to)); + + if (xequal || yequal) { + var lineWidth = m.lineWidth || options.grid.markingsLineWidth, + subPixel = lineWidth % 2 ? 0.5 : 0; + ctx.beginPath(); + ctx.strokeStyle = m.color || options.grid.markingsColor; + ctx.lineWidth = lineWidth; + if (xequal) { + ctx.moveTo(xrange.to + subPixel, yrange.from); + ctx.lineTo(xrange.to + subPixel, yrange.to); + } else { + ctx.moveTo(xrange.from, yrange.to + subPixel); + ctx.lineTo(xrange.to, yrange.to + subPixel); + } + ctx.stroke(); + } else { + ctx.fillStyle = m.color || options.grid.markingsColor; + ctx.fillRect(xrange.from, yrange.to, + xrange.to - xrange.from, + yrange.from - yrange.to); + } + } + } + + // draw the ticks + axes = allAxes(); + bw = options.grid.borderWidth; + + for (var j = 0; j < axes.length; ++j) { + var axis = axes[j], box = axis.box, + t = axis.tickLength, x, y, xoff, yoff; + if (!axis.show || axis.ticks.length == 0) + continue; + + ctx.lineWidth = 1; + + // find the edges + if (axis.direction == "x") { + x = 0; + if (t == "full") + y = (axis.position == "top" ? 0 : plotHeight); + else + y = box.top - plotOffset.top + (axis.position == "top" ? box.height : 0); + } + else { + y = 0; + if (t == "full") + x = (axis.position == "left" ? 0 : plotWidth); + else + x = box.left - plotOffset.left + (axis.position == "left" ? box.width : 0); + } + + // draw tick bar + if (!axis.innermost) { + ctx.strokeStyle = axis.options.color; + ctx.beginPath(); + xoff = yoff = 0; + if (axis.direction == "x") + xoff = plotWidth + 1; + else + yoff = plotHeight + 1; + + if (ctx.lineWidth == 1) { + if (axis.direction == "x") { + y = Math.floor(y) + 0.5; + } else { + x = Math.floor(x) + 0.5; + } + } + + ctx.moveTo(x, y); + ctx.lineTo(x + xoff, y + yoff); + ctx.stroke(); + } + + // draw ticks + + ctx.strokeStyle = axis.options.tickColor; + + ctx.beginPath(); + for (i = 0; i < axis.ticks.length; ++i) { + var v = axis.ticks[i].v; + + xoff = yoff = 0; + + if (isNaN(v) || v < axis.min || v > axis.max + // skip those lying on the axes if we got a border + || (t == "full" + && ((typeof bw == "object" && bw[axis.position] > 0) || bw > 0) + && (v == axis.min || v == axis.max))) + continue; + + if (axis.direction == "x") { + x = axis.p2c(v); + yoff = t == "full" ? -plotHeight : t; + + if (axis.position == "top") + yoff = -yoff; + } + else { + y = axis.p2c(v); + xoff = t == "full" ? -plotWidth : t; + + if (axis.position == "left") + xoff = -xoff; + } + + if (ctx.lineWidth == 1) { + if (axis.direction == "x") + x = Math.floor(x) + 0.5; + else + y = Math.floor(y) + 0.5; + } + + ctx.moveTo(x, y); + ctx.lineTo(x + xoff, y + yoff); + } + + ctx.stroke(); + } + + + // draw border + if (bw) { + // If either borderWidth or borderColor is an object, then draw the border + // line by line instead of as one rectangle + bc = options.grid.borderColor; + if(typeof bw == "object" || typeof bc == "object") { + if (typeof bw !== "object") { + bw = {top: bw, right: bw, bottom: bw, left: bw}; + } + if (typeof bc !== "object") { + bc = {top: bc, right: bc, bottom: bc, left: bc}; + } + + if (bw.top > 0) { + ctx.strokeStyle = bc.top; + ctx.lineWidth = bw.top; + ctx.beginPath(); + ctx.moveTo(0 - bw.left, 0 - bw.top/2); + ctx.lineTo(plotWidth, 0 - bw.top/2); + ctx.stroke(); + } + + if (bw.right > 0) { + ctx.strokeStyle = bc.right; + ctx.lineWidth = bw.right; + ctx.beginPath(); + ctx.moveTo(plotWidth + bw.right / 2, 0 - bw.top); + ctx.lineTo(plotWidth + bw.right / 2, plotHeight); + ctx.stroke(); + } + + if (bw.bottom > 0) { + ctx.strokeStyle = bc.bottom; + ctx.lineWidth = bw.bottom; + ctx.beginPath(); + ctx.moveTo(plotWidth + bw.right, plotHeight + bw.bottom / 2); + ctx.lineTo(0, plotHeight + bw.bottom / 2); + ctx.stroke(); + } + + if (bw.left > 0) { + ctx.strokeStyle = bc.left; + ctx.lineWidth = bw.left; + ctx.beginPath(); + ctx.moveTo(0 - bw.left/2, plotHeight + bw.bottom); + ctx.lineTo(0- bw.left/2, 0); + ctx.stroke(); + } + } + else { + ctx.lineWidth = bw; + ctx.strokeStyle = options.grid.borderColor; + ctx.strokeRect(-bw/2, -bw/2, plotWidth + bw, plotHeight + bw); + } + } + + ctx.restore(); + } + + function drawAxisLabels() { + + $.each(allAxes(), function (_, axis) { + var box = axis.box, + legacyStyles = axis.direction + "Axis " + axis.direction + axis.n + "Axis", + layer = "flot-" + axis.direction + "-axis flot-" + axis.direction + axis.n + "-axis " + legacyStyles, + font = axis.options.font || "flot-tick-label tickLabel", + tick, x, y, halign, valign; + + // Remove text before checking for axis.show and ticks.length; + // otherwise plugins, like flot-tickrotor, that draw their own + // tick labels will end up with both theirs and the defaults. + + surface.removeText(layer); + + if (!axis.show || axis.ticks.length == 0) + return; + + for (var i = 0; i < axis.ticks.length; ++i) { + + tick = axis.ticks[i]; + if (!tick.label || tick.v < axis.min || tick.v > axis.max) + continue; + + if (axis.direction == "x") { + halign = "center"; + x = plotOffset.left + axis.p2c(tick.v); + if (axis.position == "bottom") { + y = box.top + box.padding; + } else { + y = box.top + box.height - box.padding; + valign = "bottom"; + } + } else { + valign = "middle"; + y = plotOffset.top + axis.p2c(tick.v); + if (axis.position == "left") { + x = box.left + box.width - box.padding; + halign = "right"; + } else { + x = box.left + box.padding; + } + } + + surface.addText(layer, x, y, tick.label, font, null, null, halign, valign); + } + }); + } + + function drawSeries(series) { + if (series.lines.show) + drawSeriesLines(series); + if (series.bars.show) + drawSeriesBars(series); + if (series.points.show) + drawSeriesPoints(series); + } + + function drawSeriesLines(series) { + function plotLine(datapoints, xoffset, yoffset, axisx, axisy) { + var points = datapoints.points, + ps = datapoints.pointsize, + prevx = null, prevy = null; + + ctx.beginPath(); + for (var i = ps; i < points.length; i += ps) { + var x1 = points[i - ps], y1 = points[i - ps + 1], + x2 = points[i], y2 = points[i + 1]; + + if (x1 == null || x2 == null) + continue; + + // clip with ymin + if (y1 <= y2 && y1 < axisy.min) { + if (y2 < axisy.min) + continue; // line segment is outside + // compute new intersection point + x1 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; + y1 = axisy.min; + } + else if (y2 <= y1 && y2 < axisy.min) { + if (y1 < axisy.min) + continue; + x2 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; + y2 = axisy.min; + } + + // clip with ymax + if (y1 >= y2 && y1 > axisy.max) { + if (y2 > axisy.max) + continue; + x1 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; + y1 = axisy.max; + } + else if (y2 >= y1 && y2 > axisy.max) { + if (y1 > axisy.max) + continue; + x2 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; + y2 = axisy.max; + } + + // clip with xmin + if (x1 <= x2 && x1 < axisx.min) { + if (x2 < axisx.min) + continue; + y1 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; + x1 = axisx.min; + } + else if (x2 <= x1 && x2 < axisx.min) { + if (x1 < axisx.min) + continue; + y2 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; + x2 = axisx.min; + } + + // clip with xmax + if (x1 >= x2 && x1 > axisx.max) { + if (x2 > axisx.max) + continue; + y1 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; + x1 = axisx.max; + } + else if (x2 >= x1 && x2 > axisx.max) { + if (x1 > axisx.max) + continue; + y2 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; + x2 = axisx.max; + } + + if (x1 != prevx || y1 != prevy) + ctx.moveTo(axisx.p2c(x1) + xoffset, axisy.p2c(y1) + yoffset); + + prevx = x2; + prevy = y2; + ctx.lineTo(axisx.p2c(x2) + xoffset, axisy.p2c(y2) + yoffset); + } + ctx.stroke(); + } + + function plotLineArea(datapoints, axisx, axisy) { + var points = datapoints.points, + ps = datapoints.pointsize, + bottom = Math.min(Math.max(0, axisy.min), axisy.max), + i = 0, top, areaOpen = false, + ypos = 1, segmentStart = 0, segmentEnd = 0; + + // we process each segment in two turns, first forward + // direction to sketch out top, then once we hit the + // end we go backwards to sketch the bottom + while (true) { + if (ps > 0 && i > points.length + ps) + break; + + i += ps; // ps is negative if going backwards + + var x1 = points[i - ps], + y1 = points[i - ps + ypos], + x2 = points[i], y2 = points[i + ypos]; + + if (areaOpen) { + if (ps > 0 && x1 != null && x2 == null) { + // at turning point + segmentEnd = i; + ps = -ps; + ypos = 2; + continue; + } + + if (ps < 0 && i == segmentStart + ps) { + // done with the reverse sweep + ctx.fill(); + areaOpen = false; + ps = -ps; + ypos = 1; + i = segmentStart = segmentEnd + ps; + continue; + } + } + + if (x1 == null || x2 == null) + continue; + + // clip x values + + // clip with xmin + if (x1 <= x2 && x1 < axisx.min) { + if (x2 < axisx.min) + continue; + y1 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; + x1 = axisx.min; + } + else if (x2 <= x1 && x2 < axisx.min) { + if (x1 < axisx.min) + continue; + y2 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; + x2 = axisx.min; + } + + // clip with xmax + if (x1 >= x2 && x1 > axisx.max) { + if (x2 > axisx.max) + continue; + y1 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; + x1 = axisx.max; + } + else if (x2 >= x1 && x2 > axisx.max) { + if (x1 > axisx.max) + continue; + y2 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; + x2 = axisx.max; + } + + if (!areaOpen) { + // open area + ctx.beginPath(); + ctx.moveTo(axisx.p2c(x1), axisy.p2c(bottom)); + areaOpen = true; + } + + // now first check the case where both is outside + if (y1 >= axisy.max && y2 >= axisy.max) { + ctx.lineTo(axisx.p2c(x1), axisy.p2c(axisy.max)); + ctx.lineTo(axisx.p2c(x2), axisy.p2c(axisy.max)); + continue; + } + else if (y1 <= axisy.min && y2 <= axisy.min) { + ctx.lineTo(axisx.p2c(x1), axisy.p2c(axisy.min)); + ctx.lineTo(axisx.p2c(x2), axisy.p2c(axisy.min)); + continue; + } + + // else it's a bit more complicated, there might + // be a flat maxed out rectangle first, then a + // triangular cutout or reverse; to find these + // keep track of the current x values + var x1old = x1, x2old = x2; + + // clip the y values, without shortcutting, we + // go through all cases in turn + + // clip with ymin + if (y1 <= y2 && y1 < axisy.min && y2 >= axisy.min) { + x1 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; + y1 = axisy.min; + } + else if (y2 <= y1 && y2 < axisy.min && y1 >= axisy.min) { + x2 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; + y2 = axisy.min; + } + + // clip with ymax + if (y1 >= y2 && y1 > axisy.max && y2 <= axisy.max) { + x1 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; + y1 = axisy.max; + } + else if (y2 >= y1 && y2 > axisy.max && y1 <= axisy.max) { + x2 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; + y2 = axisy.max; + } + + // if the x value was changed we got a rectangle + // to fill + if (x1 != x1old) { + ctx.lineTo(axisx.p2c(x1old), axisy.p2c(y1)); + // it goes to (x1, y1), but we fill that below + } + + // fill triangular section, this sometimes result + // in redundant points if (x1, y1) hasn't changed + // from previous line to, but we just ignore that + ctx.lineTo(axisx.p2c(x1), axisy.p2c(y1)); + ctx.lineTo(axisx.p2c(x2), axisy.p2c(y2)); + + // fill the other rectangle if it's there + if (x2 != x2old) { + ctx.lineTo(axisx.p2c(x2), axisy.p2c(y2)); + ctx.lineTo(axisx.p2c(x2old), axisy.p2c(y2)); + } + } + } + + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + ctx.lineJoin = "round"; + + var lw = series.lines.lineWidth, + sw = series.shadowSize; + // FIXME: consider another form of shadow when filling is turned on + if (lw > 0 && sw > 0) { + // draw shadow as a thick and thin line with transparency + ctx.lineWidth = sw; + ctx.strokeStyle = "rgba(0,0,0,0.1)"; + // position shadow at angle from the mid of line + var angle = Math.PI/18; + plotLine(series.datapoints, Math.sin(angle) * (lw/2 + sw/2), Math.cos(angle) * (lw/2 + sw/2), series.xaxis, series.yaxis); + ctx.lineWidth = sw/2; + plotLine(series.datapoints, Math.sin(angle) * (lw/2 + sw/4), Math.cos(angle) * (lw/2 + sw/4), series.xaxis, series.yaxis); + } + + ctx.lineWidth = lw; + ctx.strokeStyle = series.color; + var fillStyle = getFillStyle(series.lines, series.color, 0, plotHeight); + if (fillStyle) { + ctx.fillStyle = fillStyle; + plotLineArea(series.datapoints, series.xaxis, series.yaxis); + } + + if (lw > 0) + plotLine(series.datapoints, 0, 0, series.xaxis, series.yaxis); + ctx.restore(); + } + + function drawSeriesPoints(series) { + function plotPoints(datapoints, radius, fillStyle, offset, shadow, axisx, axisy, symbol) { + var points = datapoints.points, ps = datapoints.pointsize; + + for (var i = 0; i < points.length; i += ps) { + var x = points[i], y = points[i + 1]; + if (x == null || x < axisx.min || x > axisx.max || y < axisy.min || y > axisy.max) + continue; + + ctx.beginPath(); + x = axisx.p2c(x); + y = axisy.p2c(y) + offset; + if (symbol == "circle") + ctx.arc(x, y, radius, 0, shadow ? Math.PI : Math.PI * 2, false); + else + symbol(ctx, x, y, radius, shadow); + ctx.closePath(); + + if (fillStyle) { + ctx.fillStyle = fillStyle; + ctx.fill(); + } + ctx.stroke(); + } + } + + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + + var lw = series.points.lineWidth, + sw = series.shadowSize, + radius = series.points.radius, + symbol = series.points.symbol; + + // If the user sets the line width to 0, we change it to a very + // small value. A line width of 0 seems to force the default of 1. + // Doing the conditional here allows the shadow setting to still be + // optional even with a lineWidth of 0. + + if( lw == 0 ) + lw = 0.0001; + + if (lw > 0 && sw > 0) { + // draw shadow in two steps + var w = sw / 2; + ctx.lineWidth = w; + ctx.strokeStyle = "rgba(0,0,0,0.1)"; + plotPoints(series.datapoints, radius, null, w + w/2, true, + series.xaxis, series.yaxis, symbol); + + ctx.strokeStyle = "rgba(0,0,0,0.2)"; + plotPoints(series.datapoints, radius, null, w/2, true, + series.xaxis, series.yaxis, symbol); + } + + ctx.lineWidth = lw; + ctx.strokeStyle = series.color; + plotPoints(series.datapoints, radius, + getFillStyle(series.points, series.color), 0, false, + series.xaxis, series.yaxis, symbol); + ctx.restore(); + } + + function drawBar(x, y, b, barLeft, barRight, fillStyleCallback, axisx, axisy, c, horizontal, lineWidth) { + var left, right, bottom, top, + drawLeft, drawRight, drawTop, drawBottom, + tmp; + + // in horizontal mode, we start the bar from the left + // instead of from the bottom so it appears to be + // horizontal rather than vertical + if (horizontal) { + drawBottom = drawRight = drawTop = true; + drawLeft = false; + left = b; + right = x; + top = y + barLeft; + bottom = y + barRight; + + // account for negative bars + if (right < left) { + tmp = right; + right = left; + left = tmp; + drawLeft = true; + drawRight = false; + } + } + else { + drawLeft = drawRight = drawTop = true; + drawBottom = false; + left = x + barLeft; + right = x + barRight; + bottom = b; + top = y; + + // account for negative bars + if (top < bottom) { + tmp = top; + top = bottom; + bottom = tmp; + drawBottom = true; + drawTop = false; + } + } + + // clip + if (right < axisx.min || left > axisx.max || + top < axisy.min || bottom > axisy.max) + return; + + if (left < axisx.min) { + left = axisx.min; + drawLeft = false; + } + + if (right > axisx.max) { + right = axisx.max; + drawRight = false; + } + + if (bottom < axisy.min) { + bottom = axisy.min; + drawBottom = false; + } + + if (top > axisy.max) { + top = axisy.max; + drawTop = false; + } + + left = axisx.p2c(left); + bottom = axisy.p2c(bottom); + right = axisx.p2c(right); + top = axisy.p2c(top); + + // fill the bar + if (fillStyleCallback) { + c.fillStyle = fillStyleCallback(bottom, top); + c.fillRect(left, top, right - left, bottom - top) + } + + // draw outline + if (lineWidth > 0 && (drawLeft || drawRight || drawTop || drawBottom)) { + c.beginPath(); + + // FIXME: inline moveTo is buggy with excanvas + c.moveTo(left, bottom); + if (drawLeft) + c.lineTo(left, top); + else + c.moveTo(left, top); + if (drawTop) + c.lineTo(right, top); + else + c.moveTo(right, top); + if (drawRight) + c.lineTo(right, bottom); + else + c.moveTo(right, bottom); + if (drawBottom) + c.lineTo(left, bottom); + else + c.moveTo(left, bottom); + c.stroke(); + } + } + + function drawSeriesBars(series) { + function plotBars(datapoints, barLeft, barRight, fillStyleCallback, axisx, axisy) { + var points = datapoints.points, ps = datapoints.pointsize; + + for (var i = 0; i < points.length; i += ps) { + if (points[i] == null) + continue; + drawBar(points[i], points[i + 1], points[i + 2], barLeft, barRight, fillStyleCallback, axisx, axisy, ctx, series.bars.horizontal, series.bars.lineWidth); + } + } + + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + + // FIXME: figure out a way to add shadows (for instance along the right edge) + ctx.lineWidth = series.bars.lineWidth; + ctx.strokeStyle = series.color; + + var barLeft; + + switch (series.bars.align) { + case "left": + barLeft = 0; + break; + case "right": + barLeft = -series.bars.barWidth; + break; + default: + barLeft = -series.bars.barWidth / 2; + } + + var fillStyleCallback = series.bars.fill ? function (bottom, top) { return getFillStyle(series.bars, series.color, bottom, top); } : null; + plotBars(series.datapoints, barLeft, barLeft + series.bars.barWidth, fillStyleCallback, series.xaxis, series.yaxis); + ctx.restore(); + } + + function getFillStyle(filloptions, seriesColor, bottom, top) { + var fill = filloptions.fill; + if (!fill) + return null; + + if (filloptions.fillColor) + return getColorOrGradient(filloptions.fillColor, bottom, top, seriesColor); + + var c = $.color.parse(seriesColor); + c.a = typeof fill == "number" ? fill : 0.4; + c.normalize(); + return c.toString(); + } + + function insertLegend() { + + if (options.legend.container != null) { + $(options.legend.container).html(""); + } else { + placeholder.find(".legend").remove(); + } + + if (!options.legend.show) { + return; + } + + var fragments = [], entries = [], rowStarted = false, + lf = options.legend.labelFormatter, s, label; + + // Build a list of legend entries, with each having a label and a color + + for (var i = 0; i < series.length; ++i) { + s = series[i]; + if (s.label) { + label = lf ? lf(s.label, s) : s.label; + if (label) { + entries.push({ + label: label, + color: s.color + }); + } + } + } + + // Sort the legend using either the default or a custom comparator + + if (options.legend.sorted) { + if ($.isFunction(options.legend.sorted)) { + entries.sort(options.legend.sorted); + } else if (options.legend.sorted == "reverse") { + entries.reverse(); + } else { + var ascending = options.legend.sorted != "descending"; + entries.sort(function(a, b) { + return a.label == b.label ? 0 : ( + (a.label < b.label) != ascending ? 1 : -1 // Logical XOR + ); + }); + } + } + + // Generate markup for the list of entries, in their final order + + for (var i = 0; i < entries.length; ++i) { + + var entry = entries[i]; + + if (i % options.legend.noColumns == 0) { + if (rowStarted) + fragments.push(''); + fragments.push(''); + rowStarted = true; + } + + fragments.push( + '
    ' + + '' + entry.label + '' + ); + } + + if (rowStarted) + fragments.push(''); + + if (fragments.length == 0) + return; + + var table = '' + fragments.join("") + '
    '; + if (options.legend.container != null) + $(options.legend.container).html(table); + else { + var pos = "", + p = options.legend.position, + m = options.legend.margin; + if (m[0] == null) + m = [m, m]; + if (p.charAt(0) == "n") + pos += 'top:' + (m[1] + plotOffset.top) + 'px;'; + else if (p.charAt(0) == "s") + pos += 'bottom:' + (m[1] + plotOffset.bottom) + 'px;'; + if (p.charAt(1) == "e") + pos += 'right:' + (m[0] + plotOffset.right) + 'px;'; + else if (p.charAt(1) == "w") + pos += 'left:' + (m[0] + plotOffset.left) + 'px;'; + var legend = $('
    ' + table.replace('style="', 'style="position:absolute;' + pos +';') + '
    ').appendTo(placeholder); + if (options.legend.backgroundOpacity != 0.0) { + // put in the transparent background + // separately to avoid blended labels and + // label boxes + var c = options.legend.backgroundColor; + if (c == null) { + c = options.grid.backgroundColor; + if (c && typeof c == "string") + c = $.color.parse(c); + else + c = $.color.extract(legend, 'background-color'); + c.a = 1; + c = c.toString(); + } + var div = legend.children(); + $('
    ').prependTo(legend).css('opacity', options.legend.backgroundOpacity); + } + } + } + + + // interactive features + + var highlights = [], + redrawTimeout = null; + + // returns the data item the mouse is over, or null if none is found + function findNearbyItem(mouseX, mouseY, seriesFilter) { + var maxDistance = options.grid.mouseActiveRadius, + smallestDistance = maxDistance * maxDistance + 1, + item = null, foundPoint = false, i, j, ps; + + for (i = series.length - 1; i >= 0; --i) { + if (!seriesFilter(series[i])) + continue; + + var s = series[i], + axisx = s.xaxis, + axisy = s.yaxis, + points = s.datapoints.points, + mx = axisx.c2p(mouseX), // precompute some stuff to make the loop faster + my = axisy.c2p(mouseY), + maxx = maxDistance / axisx.scale, + maxy = maxDistance / axisy.scale; + + ps = s.datapoints.pointsize; + // with inverse transforms, we can't use the maxx/maxy + // optimization, sadly + if (axisx.options.inverseTransform) + maxx = Number.MAX_VALUE; + if (axisy.options.inverseTransform) + maxy = Number.MAX_VALUE; + + if (s.lines.show || s.points.show) { + for (j = 0; j < points.length; j += ps) { + var x = points[j], y = points[j + 1]; + if (x == null) + continue; + + // For points and lines, the cursor must be within a + // certain distance to the data point + if (x - mx > maxx || x - mx < -maxx || + y - my > maxy || y - my < -maxy) + continue; + + // We have to calculate distances in pixels, not in + // data units, because the scales of the axes may be different + var dx = Math.abs(axisx.p2c(x) - mouseX), + dy = Math.abs(axisy.p2c(y) - mouseY), + dist = dx * dx + dy * dy; // we save the sqrt + + // use <= to ensure last point takes precedence + // (last generally means on top of) + if (dist < smallestDistance) { + smallestDistance = dist; + item = [i, j / ps]; + } + } + } + + if (s.bars.show && !item) { // no other point can be nearby + + var barLeft, barRight; + + switch (s.bars.align) { + case "left": + barLeft = 0; + break; + case "right": + barLeft = -s.bars.barWidth; + break; + default: + barLeft = -s.bars.barWidth / 2; + } + + barRight = barLeft + s.bars.barWidth; + + for (j = 0; j < points.length; j += ps) { + var x = points[j], y = points[j + 1], b = points[j + 2]; + if (x == null) + continue; + + // for a bar graph, the cursor must be inside the bar + if (series[i].bars.horizontal ? + (mx <= Math.max(b, x) && mx >= Math.min(b, x) && + my >= y + barLeft && my <= y + barRight) : + (mx >= x + barLeft && mx <= x + barRight && + my >= Math.min(b, y) && my <= Math.max(b, y))) + item = [i, j / ps]; + } + } + } + + if (item) { + i = item[0]; + j = item[1]; + ps = series[i].datapoints.pointsize; + + return { datapoint: series[i].datapoints.points.slice(j * ps, (j + 1) * ps), + dataIndex: j, + series: series[i], + seriesIndex: i }; + } + + return null; + } + + function onMouseMove(e) { + if (options.grid.hoverable) + triggerClickHoverEvent("plothover", e, + function (s) { return s["hoverable"] != false; }); + } + + function onMouseLeave(e) { + if (options.grid.hoverable) + triggerClickHoverEvent("plothover", e, + function (s) { return false; }); + } + + function onClick(e) { + triggerClickHoverEvent("plotclick", e, + function (s) { return s["clickable"] != false; }); + } + + // trigger click or hover event (they send the same parameters + // so we share their code) + function triggerClickHoverEvent(eventname, event, seriesFilter) { + var offset = eventHolder.offset(), + canvasX = event.pageX - offset.left - plotOffset.left, + canvasY = event.pageY - offset.top - plotOffset.top, + pos = canvasToAxisCoords({ left: canvasX, top: canvasY }); + + pos.pageX = event.pageX; + pos.pageY = event.pageY; + + var item = findNearbyItem(canvasX, canvasY, seriesFilter); + + if (item) { + // fill in mouse pos for any listeners out there + item.pageX = parseInt(item.series.xaxis.p2c(item.datapoint[0]) + offset.left + plotOffset.left, 10); + item.pageY = parseInt(item.series.yaxis.p2c(item.datapoint[1]) + offset.top + plotOffset.top, 10); + } + + if (options.grid.autoHighlight) { + // clear auto-highlights + for (var i = 0; i < highlights.length; ++i) { + var h = highlights[i]; + if (h.auto == eventname && + !(item && h.series == item.series && + h.point[0] == item.datapoint[0] && + h.point[1] == item.datapoint[1])) + unhighlight(h.series, h.point); + } + + if (item) + highlight(item.series, item.datapoint, eventname); + } + + placeholder.trigger(eventname, [ pos, item ]); + } + + function triggerRedrawOverlay() { + var t = options.interaction.redrawOverlayInterval; + if (t == -1) { // skip event queue + drawOverlay(); + return; + } + + if (!redrawTimeout) + redrawTimeout = setTimeout(drawOverlay, t); + } + + function drawOverlay() { + redrawTimeout = null; + + // draw highlights + octx.save(); + overlay.clear(); + octx.translate(plotOffset.left, plotOffset.top); + + var i, hi; + for (i = 0; i < highlights.length; ++i) { + hi = highlights[i]; + + if (hi.series.bars.show) + drawBarHighlight(hi.series, hi.point); + else + drawPointHighlight(hi.series, hi.point); + } + octx.restore(); + + executeHooks(hooks.drawOverlay, [octx]); + } + + function highlight(s, point, auto) { + if (typeof s == "number") + s = series[s]; + + if (typeof point == "number") { + var ps = s.datapoints.pointsize; + point = s.datapoints.points.slice(ps * point, ps * (point + 1)); + } + + var i = indexOfHighlight(s, point); + if (i == -1) { + highlights.push({ series: s, point: point, auto: auto }); + + triggerRedrawOverlay(); + } + else if (!auto) + highlights[i].auto = false; + } + + function unhighlight(s, point) { + if (s == null && point == null) { + highlights = []; + triggerRedrawOverlay(); + return; + } + + if (typeof s == "number") + s = series[s]; + + if (typeof point == "number") { + var ps = s.datapoints.pointsize; + point = s.datapoints.points.slice(ps * point, ps * (point + 1)); + } + + var i = indexOfHighlight(s, point); + if (i != -1) { + highlights.splice(i, 1); + + triggerRedrawOverlay(); + } + } + + function indexOfHighlight(s, p) { + for (var i = 0; i < highlights.length; ++i) { + var h = highlights[i]; + if (h.series == s && h.point[0] == p[0] + && h.point[1] == p[1]) + return i; + } + return -1; + } + + function drawPointHighlight(series, point) { + var x = point[0], y = point[1], + axisx = series.xaxis, axisy = series.yaxis, + highlightColor = (typeof series.highlightColor === "string") ? series.highlightColor : $.color.parse(series.color).scale('a', 0.5).toString(); + + if (x < axisx.min || x > axisx.max || y < axisy.min || y > axisy.max) + return; + + var pointRadius = series.points.radius + series.points.lineWidth / 2; + octx.lineWidth = pointRadius; + octx.strokeStyle = highlightColor; + var radius = 1.5 * pointRadius; + x = axisx.p2c(x); + y = axisy.p2c(y); + + octx.beginPath(); + if (series.points.symbol == "circle") + octx.arc(x, y, radius, 0, 2 * Math.PI, false); + else + series.points.symbol(octx, x, y, radius, false); + octx.closePath(); + octx.stroke(); + } + + function drawBarHighlight(series, point) { + var highlightColor = (typeof series.highlightColor === "string") ? series.highlightColor : $.color.parse(series.color).scale('a', 0.5).toString(), + fillStyle = highlightColor, + barLeft; + + switch (series.bars.align) { + case "left": + barLeft = 0; + break; + case "right": + barLeft = -series.bars.barWidth; + break; + default: + barLeft = -series.bars.barWidth / 2; + } + + octx.lineWidth = series.bars.lineWidth; + octx.strokeStyle = highlightColor; + + drawBar(point[0], point[1], point[2] || 0, barLeft, barLeft + series.bars.barWidth, + function () { return fillStyle; }, series.xaxis, series.yaxis, octx, series.bars.horizontal, series.bars.lineWidth); + } + + function getColorOrGradient(spec, bottom, top, defaultColor) { + if (typeof spec == "string") + return spec; + else { + // assume this is a gradient spec; IE currently only + // supports a simple vertical gradient properly, so that's + // what we support too + var gradient = ctx.createLinearGradient(0, top, 0, bottom); + + for (var i = 0, l = spec.colors.length; i < l; ++i) { + var c = spec.colors[i]; + if (typeof c != "string") { + var co = $.color.parse(defaultColor); + if (c.brightness != null) + co = co.scale('rgb', c.brightness); + if (c.opacity != null) + co.a *= c.opacity; + c = co.toString(); + } + gradient.addColorStop(i / (l - 1), c); + } + + return gradient; + } + } + } + + // Add the plot function to the top level of the jQuery object + + $.plot = function(placeholder, data, options) { + //var t0 = new Date(); + var plot = new Plot($(placeholder), data, options, $.plot.plugins); + //(window.console ? console.log : alert)("time used (msecs): " + ((new Date()).getTime() - t0.getTime())); + return plot; + }; + + $.plot.version = "0.8.3"; + + $.plot.plugins = []; + + // Also add the plot function as a chainable property + + $.fn.plot = function(data, options) { + return this.each(function() { + $.plot(this, data, options); + }); + }; + + // round to nearby lower multiple of base + function floorInBase(n, base) { + return base * Math.floor(n / base); + } + +})(jQuery); +/* Pretty handling of time axes. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +Set axis.mode to "time" to enable. See the section "Time series data" in +API.txt for details. + +*/ + +(function($) { + + var options = { + xaxis: { + timezone: null, // "browser" for local to the client or timezone for timezone-js + timeformat: null, // format string to use + twelveHourClock: false, // 12 or 24 time in time mode + monthNames: null // list of names of months + } + }; + + // round to nearby lower multiple of base + + function floorInBase(n, base) { + return base * Math.floor(n / base); + } + + // Returns a string with the date d formatted according to fmt. + // A subset of the Open Group's strftime format is supported. + + function formatDate(d, fmt, monthNames, dayNames) { + + if (typeof d.strftime == "function") { + return d.strftime(fmt); + } + + var leftPad = function(n, pad) { + n = "" + n; + pad = "" + (pad == null ? "0" : pad); + return n.length == 1 ? pad + n : n; + }; + + var r = []; + var escape = false; + var hours = d.getHours(); + var isAM = hours < 12; + + if (monthNames == null) { + monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; + } + + if (dayNames == null) { + dayNames = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]; + } + + var hours12; + + if (hours > 12) { + hours12 = hours - 12; + } else if (hours == 0) { + hours12 = 12; + } else { + hours12 = hours; + } + + for (var i = 0; i < fmt.length; ++i) { + + var c = fmt.charAt(i); + + if (escape) { + switch (c) { + case 'a': c = "" + dayNames[d.getDay()]; break; + case 'b': c = "" + monthNames[d.getMonth()]; break; + case 'd': c = leftPad(d.getDate()); break; + case 'e': c = leftPad(d.getDate(), " "); break; + case 'h': // For back-compat with 0.7; remove in 1.0 + case 'H': c = leftPad(hours); break; + case 'I': c = leftPad(hours12); break; + case 'l': c = leftPad(hours12, " "); break; + case 'm': c = leftPad(d.getMonth() + 1); break; + case 'M': c = leftPad(d.getMinutes()); break; + // quarters not in Open Group's strftime specification + case 'q': + c = "" + (Math.floor(d.getMonth() / 3) + 1); break; + case 'S': c = leftPad(d.getSeconds()); break; + case 'y': c = leftPad(d.getFullYear() % 100); break; + case 'Y': c = "" + d.getFullYear(); break; + case 'p': c = (isAM) ? ("" + "am") : ("" + "pm"); break; + case 'P': c = (isAM) ? ("" + "AM") : ("" + "PM"); break; + case 'w': c = "" + d.getDay(); break; + } + r.push(c); + escape = false; + } else { + if (c == "%") { + escape = true; + } else { + r.push(c); + } + } + } + + return r.join(""); + } + + // To have a consistent view of time-based data independent of which time + // zone the client happens to be in we need a date-like object independent + // of time zones. This is done through a wrapper that only calls the UTC + // versions of the accessor methods. + + function makeUtcWrapper(d) { + + function addProxyMethod(sourceObj, sourceMethod, targetObj, targetMethod) { + sourceObj[sourceMethod] = function() { + return targetObj[targetMethod].apply(targetObj, arguments); + }; + }; + + var utc = { + date: d + }; + + // support strftime, if found + + if (d.strftime != undefined) { + addProxyMethod(utc, "strftime", d, "strftime"); + } + + addProxyMethod(utc, "getTime", d, "getTime"); + addProxyMethod(utc, "setTime", d, "setTime"); + + var props = ["Date", "Day", "FullYear", "Hours", "Milliseconds", "Minutes", "Month", "Seconds"]; + + for (var p = 0; p < props.length; p++) { + addProxyMethod(utc, "get" + props[p], d, "getUTC" + props[p]); + addProxyMethod(utc, "set" + props[p], d, "setUTC" + props[p]); + } + + return utc; + }; + + // select time zone strategy. This returns a date-like object tied to the + // desired timezone + + function dateGenerator(ts, opts) { + if (opts.timezone == "browser") { + return new Date(ts); + } else if (!opts.timezone || opts.timezone == "utc") { + return makeUtcWrapper(new Date(ts)); + } else if (typeof timezoneJS != "undefined" && typeof timezoneJS.Date != "undefined") { + var d = new timezoneJS.Date(); + // timezone-js is fickle, so be sure to set the time zone before + // setting the time. + d.setTimezone(opts.timezone); + d.setTime(ts); + return d; + } else { + return makeUtcWrapper(new Date(ts)); + } + } + + // map of app. size of time units in milliseconds + + var timeUnitSize = { + "second": 1000, + "minute": 60 * 1000, + "hour": 60 * 60 * 1000, + "day": 24 * 60 * 60 * 1000, + "month": 30 * 24 * 60 * 60 * 1000, + "quarter": 3 * 30 * 24 * 60 * 60 * 1000, + "year": 365.2425 * 24 * 60 * 60 * 1000 + }; + + // the allowed tick sizes, after 1 year we use + // an integer algorithm + + var baseSpec = [ + [1, "second"], [2, "second"], [5, "second"], [10, "second"], + [30, "second"], + [1, "minute"], [2, "minute"], [5, "minute"], [10, "minute"], + [30, "minute"], + [1, "hour"], [2, "hour"], [4, "hour"], + [8, "hour"], [12, "hour"], + [1, "day"], [2, "day"], [3, "day"], + [0.25, "month"], [0.5, "month"], [1, "month"], + [2, "month"] + ]; + + // we don't know which variant(s) we'll need yet, but generating both is + // cheap + + var specMonths = baseSpec.concat([[3, "month"], [6, "month"], + [1, "year"]]); + var specQuarters = baseSpec.concat([[1, "quarter"], [2, "quarter"], + [1, "year"]]); + + function init(plot) { + plot.hooks.processOptions.push(function (plot, options) { + $.each(plot.getAxes(), function(axisName, axis) { + + var opts = axis.options; + + if (opts.mode == "time") { + axis.tickGenerator = function(axis) { + + var ticks = []; + var d = dateGenerator(axis.min, opts); + var minSize = 0; + + // make quarter use a possibility if quarters are + // mentioned in either of these options + + var spec = (opts.tickSize && opts.tickSize[1] === + "quarter") || + (opts.minTickSize && opts.minTickSize[1] === + "quarter") ? specQuarters : specMonths; + + if (opts.minTickSize != null) { + if (typeof opts.tickSize == "number") { + minSize = opts.tickSize; + } else { + minSize = opts.minTickSize[0] * timeUnitSize[opts.minTickSize[1]]; + } + } + + for (var i = 0; i < spec.length - 1; ++i) { + if (axis.delta < (spec[i][0] * timeUnitSize[spec[i][1]] + + spec[i + 1][0] * timeUnitSize[spec[i + 1][1]]) / 2 + && spec[i][0] * timeUnitSize[spec[i][1]] >= minSize) { + break; + } + } + + var size = spec[i][0]; + var unit = spec[i][1]; + + // special-case the possibility of several years + + if (unit == "year") { + + // if given a minTickSize in years, just use it, + // ensuring that it's an integer + + if (opts.minTickSize != null && opts.minTickSize[1] == "year") { + size = Math.floor(opts.minTickSize[0]); + } else { + + var magn = Math.pow(10, Math.floor(Math.log(axis.delta / timeUnitSize.year) / Math.LN10)); + var norm = (axis.delta / timeUnitSize.year) / magn; + + if (norm < 1.5) { + size = 1; + } else if (norm < 3) { + size = 2; + } else if (norm < 7.5) { + size = 5; + } else { + size = 10; + } + + size *= magn; + } + + // minimum size for years is 1 + + if (size < 1) { + size = 1; + } + } + + axis.tickSize = opts.tickSize || [size, unit]; + var tickSize = axis.tickSize[0]; + unit = axis.tickSize[1]; + + var step = tickSize * timeUnitSize[unit]; + + if (unit == "second") { + d.setSeconds(floorInBase(d.getSeconds(), tickSize)); + } else if (unit == "minute") { + d.setMinutes(floorInBase(d.getMinutes(), tickSize)); + } else if (unit == "hour") { + d.setHours(floorInBase(d.getHours(), tickSize)); + } else if (unit == "month") { + d.setMonth(floorInBase(d.getMonth(), tickSize)); + } else if (unit == "quarter") { + d.setMonth(3 * floorInBase(d.getMonth() / 3, + tickSize)); + } else if (unit == "year") { + d.setFullYear(floorInBase(d.getFullYear(), tickSize)); + } + + // reset smaller components + + d.setMilliseconds(0); + + if (step >= timeUnitSize.minute) { + d.setSeconds(0); + } + if (step >= timeUnitSize.hour) { + d.setMinutes(0); + } + if (step >= timeUnitSize.day) { + d.setHours(0); + } + if (step >= timeUnitSize.day * 4) { + d.setDate(1); + } + if (step >= timeUnitSize.month * 2) { + d.setMonth(floorInBase(d.getMonth(), 3)); + } + if (step >= timeUnitSize.quarter * 2) { + d.setMonth(floorInBase(d.getMonth(), 6)); + } + if (step >= timeUnitSize.year) { + d.setMonth(0); + } + + var carry = 0; + var v = Number.NaN; + var prev; + + do { + + prev = v; + v = d.getTime(); + ticks.push(v); + + if (unit == "month" || unit == "quarter") { + if (tickSize < 1) { + + // a bit complicated - we'll divide the + // month/quarter up but we need to take + // care of fractions so we don't end up in + // the middle of a day + + d.setDate(1); + var start = d.getTime(); + d.setMonth(d.getMonth() + + (unit == "quarter" ? 3 : 1)); + var end = d.getTime(); + d.setTime(v + carry * timeUnitSize.hour + (end - start) * tickSize); + carry = d.getHours(); + d.setHours(0); + } else { + d.setMonth(d.getMonth() + + tickSize * (unit == "quarter" ? 3 : 1)); + } + } else if (unit == "year") { + d.setFullYear(d.getFullYear() + tickSize); + } else { + d.setTime(v + step); + } + } while (v < axis.max && v != prev); + + return ticks; + }; + + axis.tickFormatter = function (v, axis) { + + var d = dateGenerator(v, axis.options); + + // first check global format + + if (opts.timeformat != null) { + return formatDate(d, opts.timeformat, opts.monthNames, opts.dayNames); + } + + // possibly use quarters if quarters are mentioned in + // any of these places + + var useQuarters = (axis.options.tickSize && + axis.options.tickSize[1] == "quarter") || + (axis.options.minTickSize && + axis.options.minTickSize[1] == "quarter"); + + var t = axis.tickSize[0] * timeUnitSize[axis.tickSize[1]]; + var span = axis.max - axis.min; + var suffix = (opts.twelveHourClock) ? " %p" : ""; + var hourCode = (opts.twelveHourClock) ? "%I" : "%H"; + var fmt; + + if (t < timeUnitSize.minute) { + fmt = hourCode + ":%M:%S" + suffix; + } else if (t < timeUnitSize.day) { + if (span < 2 * timeUnitSize.day) { + fmt = hourCode + ":%M" + suffix; + } else { + fmt = "%b %d " + hourCode + ":%M" + suffix; + } + } else if (t < timeUnitSize.month) { + fmt = "%b %d"; + } else if ((useQuarters && t < timeUnitSize.quarter) || + (!useQuarters && t < timeUnitSize.year)) { + if (span < timeUnitSize.year) { + fmt = "%b"; + } else { + fmt = "%b %Y"; + } + } else if (useQuarters && t < timeUnitSize.year) { + if (span < timeUnitSize.year) { + fmt = "Q%q"; + } else { + fmt = "Q%q %Y"; + } + } else { + fmt = "%Y"; + } + + var rt = formatDate(d, fmt, opts.monthNames, opts.dayNames); + + return rt; + }; + } + }); + }); + } + + $.plot.plugins.push({ + init: init, + options: options, + name: 'time', + version: '1.0' + }); + + // Time-axis support used to be in Flot core, which exposed the + // formatDate function on the plot object. Various plugins depend + // on the function, so we need to re-expose it here. + + $.plot.formatDate = formatDate; + $.plot.dateGenerator = dateGenerator; + +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.crosshair.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.crosshair.js new file mode 100644 index 000000000..5111695e3 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.crosshair.js @@ -0,0 +1,176 @@ +/* Flot plugin for showing crosshairs when the mouse hovers over the plot. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +The plugin supports these options: + + crosshair: { + mode: null or "x" or "y" or "xy" + color: color + lineWidth: number + } + +Set the mode to one of "x", "y" or "xy". The "x" mode enables a vertical +crosshair that lets you trace the values on the x axis, "y" enables a +horizontal crosshair and "xy" enables them both. "color" is the color of the +crosshair (default is "rgba(170, 0, 0, 0.80)"), "lineWidth" is the width of +the drawn lines (default is 1). + +The plugin also adds four public methods: + + - setCrosshair( pos ) + + Set the position of the crosshair. Note that this is cleared if the user + moves the mouse. "pos" is in coordinates of the plot and should be on the + form { x: xpos, y: ypos } (you can use x2/x3/... if you're using multiple + axes), which is coincidentally the same format as what you get from a + "plothover" event. If "pos" is null, the crosshair is cleared. + + - clearCrosshair() + + Clear the crosshair. + + - lockCrosshair(pos) + + Cause the crosshair to lock to the current location, no longer updating if + the user moves the mouse. Optionally supply a position (passed on to + setCrosshair()) to move it to. + + Example usage: + + var myFlot = $.plot( $("#graph"), ..., { crosshair: { mode: "x" } } }; + $("#graph").bind( "plothover", function ( evt, position, item ) { + if ( item ) { + // Lock the crosshair to the data point being hovered + myFlot.lockCrosshair({ + x: item.datapoint[ 0 ], + y: item.datapoint[ 1 ] + }); + } else { + // Return normal crosshair operation + myFlot.unlockCrosshair(); + } + }); + + - unlockCrosshair() + + Free the crosshair to move again after locking it. +*/ + +(function ($) { + var options = { + crosshair: { + mode: null, // one of null, "x", "y" or "xy", + color: "rgba(170, 0, 0, 0.80)", + lineWidth: 1 + } + }; + + function init(plot) { + // position of crosshair in pixels + var crosshair = { x: -1, y: -1, locked: false }; + + plot.setCrosshair = function setCrosshair(pos) { + if (!pos) + crosshair.x = -1; + else { + var o = plot.p2c(pos); + crosshair.x = Math.max(0, Math.min(o.left, plot.width())); + crosshair.y = Math.max(0, Math.min(o.top, plot.height())); + } + + plot.triggerRedrawOverlay(); + }; + + plot.clearCrosshair = plot.setCrosshair; // passes null for pos + + plot.lockCrosshair = function lockCrosshair(pos) { + if (pos) + plot.setCrosshair(pos); + crosshair.locked = true; + }; + + plot.unlockCrosshair = function unlockCrosshair() { + crosshair.locked = false; + }; + + function onMouseOut(e) { + if (crosshair.locked) + return; + + if (crosshair.x != -1) { + crosshair.x = -1; + plot.triggerRedrawOverlay(); + } + } + + function onMouseMove(e) { + if (crosshair.locked) + return; + + if (plot.getSelection && plot.getSelection()) { + crosshair.x = -1; // hide the crosshair while selecting + return; + } + + var offset = plot.offset(); + crosshair.x = Math.max(0, Math.min(e.pageX - offset.left, plot.width())); + crosshair.y = Math.max(0, Math.min(e.pageY - offset.top, plot.height())); + plot.triggerRedrawOverlay(); + } + + plot.hooks.bindEvents.push(function (plot, eventHolder) { + if (!plot.getOptions().crosshair.mode) + return; + + eventHolder.mouseout(onMouseOut); + eventHolder.mousemove(onMouseMove); + }); + + plot.hooks.drawOverlay.push(function (plot, ctx) { + var c = plot.getOptions().crosshair; + if (!c.mode) + return; + + var plotOffset = plot.getPlotOffset(); + + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + + if (crosshair.x != -1) { + var adj = plot.getOptions().crosshair.lineWidth % 2 ? 0.5 : 0; + + ctx.strokeStyle = c.color; + ctx.lineWidth = c.lineWidth; + ctx.lineJoin = "round"; + + ctx.beginPath(); + if (c.mode.indexOf("x") != -1) { + var drawX = Math.floor(crosshair.x) + adj; + ctx.moveTo(drawX, 0); + ctx.lineTo(drawX, plot.height()); + } + if (c.mode.indexOf("y") != -1) { + var drawY = Math.floor(crosshair.y) + adj; + ctx.moveTo(0, drawY); + ctx.lineTo(plot.width(), drawY); + } + ctx.stroke(); + } + ctx.restore(); + }); + + plot.hooks.shutdown.push(function (plot, eventHolder) { + eventHolder.unbind("mouseout", onMouseOut); + eventHolder.unbind("mousemove", onMouseMove); + }); + } + + $.plot.plugins.push({ + init: init, + options: options, + name: 'crosshair', + version: '1.0' + }); +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.errorbars.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.errorbars.js new file mode 100644 index 000000000..2583d5c20 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.errorbars.js @@ -0,0 +1,353 @@ +/* Flot plugin for plotting error bars. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +Error bars are used to show standard deviation and other statistical +properties in a plot. + +* Created by Rui Pereira - rui (dot) pereira (at) gmail (dot) com + +This plugin allows you to plot error-bars over points. Set "errorbars" inside +the points series to the axis name over which there will be error values in +your data array (*even* if you do not intend to plot them later, by setting +"show: null" on xerr/yerr). + +The plugin supports these options: + + series: { + points: { + errorbars: "x" or "y" or "xy", + xerr: { + show: null/false or true, + asymmetric: null/false or true, + upperCap: null or "-" or function, + lowerCap: null or "-" or function, + color: null or color, + radius: null or number + }, + yerr: { same options as xerr } + } + } + +Each data point array is expected to be of the type: + + "x" [ x, y, xerr ] + "y" [ x, y, yerr ] + "xy" [ x, y, xerr, yerr ] + +Where xerr becomes xerr_lower,xerr_upper for the asymmetric error case, and +equivalently for yerr. Eg., a datapoint for the "xy" case with symmetric +error-bars on X and asymmetric on Y would be: + + [ x, y, xerr, yerr_lower, yerr_upper ] + +By default no end caps are drawn. Setting upperCap and/or lowerCap to "-" will +draw a small cap perpendicular to the error bar. They can also be set to a +user-defined drawing function, with (ctx, x, y, radius) as parameters, as eg. + + function drawSemiCircle( ctx, x, y, radius ) { + ctx.beginPath(); + ctx.arc( x, y, radius, 0, Math.PI, false ); + ctx.moveTo( x - radius, y ); + ctx.lineTo( x + radius, y ); + ctx.stroke(); + } + +Color and radius both default to the same ones of the points series if not +set. The independent radius parameter on xerr/yerr is useful for the case when +we may want to add error-bars to a line, without showing the interconnecting +points (with radius: 0), and still showing end caps on the error-bars. +shadowSize and lineWidth are derived as well from the points series. + +*/ + +(function ($) { + var options = { + series: { + points: { + errorbars: null, //should be 'x', 'y' or 'xy' + xerr: { err: 'x', show: null, asymmetric: null, upperCap: null, lowerCap: null, color: null, radius: null}, + yerr: { err: 'y', show: null, asymmetric: null, upperCap: null, lowerCap: null, color: null, radius: null} + } + } + }; + + function processRawData(plot, series, data, datapoints){ + if (!series.points.errorbars) + return; + + // x,y values + var format = [ + { x: true, number: true, required: true }, + { y: true, number: true, required: true } + ]; + + var errors = series.points.errorbars; + // error bars - first X then Y + if (errors == 'x' || errors == 'xy') { + // lower / upper error + if (series.points.xerr.asymmetric) { + format.push({ x: true, number: true, required: true }); + format.push({ x: true, number: true, required: true }); + } else + format.push({ x: true, number: true, required: true }); + } + if (errors == 'y' || errors == 'xy') { + // lower / upper error + if (series.points.yerr.asymmetric) { + format.push({ y: true, number: true, required: true }); + format.push({ y: true, number: true, required: true }); + } else + format.push({ y: true, number: true, required: true }); + } + datapoints.format = format; + } + + function parseErrors(series, i){ + + var points = series.datapoints.points; + + // read errors from points array + var exl = null, + exu = null, + eyl = null, + eyu = null; + var xerr = series.points.xerr, + yerr = series.points.yerr; + + var eb = series.points.errorbars; + // error bars - first X + if (eb == 'x' || eb == 'xy') { + if (xerr.asymmetric) { + exl = points[i + 2]; + exu = points[i + 3]; + if (eb == 'xy') + if (yerr.asymmetric){ + eyl = points[i + 4]; + eyu = points[i + 5]; + } else eyl = points[i + 4]; + } else { + exl = points[i + 2]; + if (eb == 'xy') + if (yerr.asymmetric) { + eyl = points[i + 3]; + eyu = points[i + 4]; + } else eyl = points[i + 3]; + } + // only Y + } else if (eb == 'y') + if (yerr.asymmetric) { + eyl = points[i + 2]; + eyu = points[i + 3]; + } else eyl = points[i + 2]; + + // symmetric errors? + if (exu == null) exu = exl; + if (eyu == null) eyu = eyl; + + var errRanges = [exl, exu, eyl, eyu]; + // nullify if not showing + if (!xerr.show){ + errRanges[0] = null; + errRanges[1] = null; + } + if (!yerr.show){ + errRanges[2] = null; + errRanges[3] = null; + } + return errRanges; + } + + function drawSeriesErrors(plot, ctx, s){ + + var points = s.datapoints.points, + ps = s.datapoints.pointsize, + ax = [s.xaxis, s.yaxis], + radius = s.points.radius, + err = [s.points.xerr, s.points.yerr]; + + //sanity check, in case some inverted axis hack is applied to flot + var invertX = false; + if (ax[0].p2c(ax[0].max) < ax[0].p2c(ax[0].min)) { + invertX = true; + var tmp = err[0].lowerCap; + err[0].lowerCap = err[0].upperCap; + err[0].upperCap = tmp; + } + + var invertY = false; + if (ax[1].p2c(ax[1].min) < ax[1].p2c(ax[1].max)) { + invertY = true; + var tmp = err[1].lowerCap; + err[1].lowerCap = err[1].upperCap; + err[1].upperCap = tmp; + } + + for (var i = 0; i < s.datapoints.points.length; i += ps) { + + //parse + var errRanges = parseErrors(s, i); + + //cycle xerr & yerr + for (var e = 0; e < err.length; e++){ + + var minmax = [ax[e].min, ax[e].max]; + + //draw this error? + if (errRanges[e * err.length]){ + + //data coordinates + var x = points[i], + y = points[i + 1]; + + //errorbar ranges + var upper = [x, y][e] + errRanges[e * err.length + 1], + lower = [x, y][e] - errRanges[e * err.length]; + + //points outside of the canvas + if (err[e].err == 'x') + if (y > ax[1].max || y < ax[1].min || upper < ax[0].min || lower > ax[0].max) + continue; + if (err[e].err == 'y') + if (x > ax[0].max || x < ax[0].min || upper < ax[1].min || lower > ax[1].max) + continue; + + // prevent errorbars getting out of the canvas + var drawUpper = true, + drawLower = true; + + if (upper > minmax[1]) { + drawUpper = false; + upper = minmax[1]; + } + if (lower < minmax[0]) { + drawLower = false; + lower = minmax[0]; + } + + //sanity check, in case some inverted axis hack is applied to flot + if ((err[e].err == 'x' && invertX) || (err[e].err == 'y' && invertY)) { + //swap coordinates + var tmp = lower; + lower = upper; + upper = tmp; + tmp = drawLower; + drawLower = drawUpper; + drawUpper = tmp; + tmp = minmax[0]; + minmax[0] = minmax[1]; + minmax[1] = tmp; + } + + // convert to pixels + x = ax[0].p2c(x), + y = ax[1].p2c(y), + upper = ax[e].p2c(upper); + lower = ax[e].p2c(lower); + minmax[0] = ax[e].p2c(minmax[0]); + minmax[1] = ax[e].p2c(minmax[1]); + + //same style as points by default + var lw = err[e].lineWidth ? err[e].lineWidth : s.points.lineWidth, + sw = s.points.shadowSize != null ? s.points.shadowSize : s.shadowSize; + + //shadow as for points + if (lw > 0 && sw > 0) { + var w = sw / 2; + ctx.lineWidth = w; + ctx.strokeStyle = "rgba(0,0,0,0.1)"; + drawError(ctx, err[e], x, y, upper, lower, drawUpper, drawLower, radius, w + w/2, minmax); + + ctx.strokeStyle = "rgba(0,0,0,0.2)"; + drawError(ctx, err[e], x, y, upper, lower, drawUpper, drawLower, radius, w/2, minmax); + } + + ctx.strokeStyle = err[e].color? err[e].color: s.color; + ctx.lineWidth = lw; + //draw it + drawError(ctx, err[e], x, y, upper, lower, drawUpper, drawLower, radius, 0, minmax); + } + } + } + } + + function drawError(ctx,err,x,y,upper,lower,drawUpper,drawLower,radius,offset,minmax){ + + //shadow offset + y += offset; + upper += offset; + lower += offset; + + // error bar - avoid plotting over circles + if (err.err == 'x'){ + if (upper > x + radius) drawPath(ctx, [[upper,y],[Math.max(x + radius,minmax[0]),y]]); + else drawUpper = false; + if (lower < x - radius) drawPath(ctx, [[Math.min(x - radius,minmax[1]),y],[lower,y]] ); + else drawLower = false; + } + else { + if (upper < y - radius) drawPath(ctx, [[x,upper],[x,Math.min(y - radius,minmax[0])]] ); + else drawUpper = false; + if (lower > y + radius) drawPath(ctx, [[x,Math.max(y + radius,minmax[1])],[x,lower]] ); + else drawLower = false; + } + + //internal radius value in errorbar, allows to plot radius 0 points and still keep proper sized caps + //this is a way to get errorbars on lines without visible connecting dots + radius = err.radius != null? err.radius: radius; + + // upper cap + if (drawUpper) { + if (err.upperCap == '-'){ + if (err.err=='x') drawPath(ctx, [[upper,y - radius],[upper,y + radius]] ); + else drawPath(ctx, [[x - radius,upper],[x + radius,upper]] ); + } else if ($.isFunction(err.upperCap)){ + if (err.err=='x') err.upperCap(ctx, upper, y, radius); + else err.upperCap(ctx, x, upper, radius); + } + } + // lower cap + if (drawLower) { + if (err.lowerCap == '-'){ + if (err.err=='x') drawPath(ctx, [[lower,y - radius],[lower,y + radius]] ); + else drawPath(ctx, [[x - radius,lower],[x + radius,lower]] ); + } else if ($.isFunction(err.lowerCap)){ + if (err.err=='x') err.lowerCap(ctx, lower, y, radius); + else err.lowerCap(ctx, x, lower, radius); + } + } + } + + function drawPath(ctx, pts){ + ctx.beginPath(); + ctx.moveTo(pts[0][0], pts[0][1]); + for (var p=1; p < pts.length; p++) + ctx.lineTo(pts[p][0], pts[p][1]); + ctx.stroke(); + } + + function draw(plot, ctx){ + var plotOffset = plot.getPlotOffset(); + + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + $.each(plot.getData(), function (i, s) { + if (s.points.errorbars && (s.points.xerr.show || s.points.yerr.show)) + drawSeriesErrors(plot, ctx, s); + }); + ctx.restore(); + } + + function init(plot) { + plot.hooks.processRawData.push(processRawData); + plot.hooks.draw.push(draw); + } + + $.plot.plugins.push({ + init: init, + options: options, + name: 'errorbars', + version: '1.0' + }); +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.fillbetween.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.fillbetween.js new file mode 100644 index 000000000..18b15d26d --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.fillbetween.js @@ -0,0 +1,226 @@ +/* Flot plugin for computing bottoms for filled line and bar charts. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +The case: you've got two series that you want to fill the area between. In Flot +terms, you need to use one as the fill bottom of the other. You can specify the +bottom of each data point as the third coordinate manually, or you can use this +plugin to compute it for you. + +In order to name the other series, you need to give it an id, like this: + + var dataset = [ + { data: [ ... ], id: "foo" } , // use default bottom + { data: [ ... ], fillBetween: "foo" }, // use first dataset as bottom + ]; + + $.plot($("#placeholder"), dataset, { lines: { show: true, fill: true }}); + +As a convenience, if the id given is a number that doesn't appear as an id in +the series, it is interpreted as the index in the array instead (so fillBetween: +0 can also mean the first series). + +Internally, the plugin modifies the datapoints in each series. For line series, +extra data points might be inserted through interpolation. Note that at points +where the bottom line is not defined (due to a null point or start/end of line), +the current line will show a gap too. The algorithm comes from the +jquery.flot.stack.js plugin, possibly some code could be shared. + +*/ + +(function ( $ ) { + + var options = { + series: { + fillBetween: null // or number + } + }; + + function init( plot ) { + + function findBottomSeries( s, allseries ) { + + var i; + + for ( i = 0; i < allseries.length; ++i ) { + if ( allseries[ i ].id === s.fillBetween ) { + return allseries[ i ]; + } + } + + if ( typeof s.fillBetween === "number" ) { + if ( s.fillBetween < 0 || s.fillBetween >= allseries.length ) { + return null; + } + return allseries[ s.fillBetween ]; + } + + return null; + } + + function computeFillBottoms( plot, s, datapoints ) { + + if ( s.fillBetween == null ) { + return; + } + + var other = findBottomSeries( s, plot.getData() ); + + if ( !other ) { + return; + } + + var ps = datapoints.pointsize, + points = datapoints.points, + otherps = other.datapoints.pointsize, + otherpoints = other.datapoints.points, + newpoints = [], + px, py, intery, qx, qy, bottom, + withlines = s.lines.show, + withbottom = ps > 2 && datapoints.format[2].y, + withsteps = withlines && s.lines.steps, + fromgap = true, + i = 0, + j = 0, + l, m; + + while ( true ) { + + if ( i >= points.length ) { + break; + } + + l = newpoints.length; + + if ( points[ i ] == null ) { + + // copy gaps + + for ( m = 0; m < ps; ++m ) { + newpoints.push( points[ i + m ] ); + } + + i += ps; + + } else if ( j >= otherpoints.length ) { + + // for lines, we can't use the rest of the points + + if ( !withlines ) { + for ( m = 0; m < ps; ++m ) { + newpoints.push( points[ i + m ] ); + } + } + + i += ps; + + } else if ( otherpoints[ j ] == null ) { + + // oops, got a gap + + for ( m = 0; m < ps; ++m ) { + newpoints.push( null ); + } + + fromgap = true; + j += otherps; + + } else { + + // cases where we actually got two points + + px = points[ i ]; + py = points[ i + 1 ]; + qx = otherpoints[ j ]; + qy = otherpoints[ j + 1 ]; + bottom = 0; + + if ( px === qx ) { + + for ( m = 0; m < ps; ++m ) { + newpoints.push( points[ i + m ] ); + } + + //newpoints[ l + 1 ] += qy; + bottom = qy; + + i += ps; + j += otherps; + + } else if ( px > qx ) { + + // we got past point below, might need to + // insert interpolated extra point + + if ( withlines && i > 0 && points[ i - ps ] != null ) { + intery = py + ( points[ i - ps + 1 ] - py ) * ( qx - px ) / ( points[ i - ps ] - px ); + newpoints.push( qx ); + newpoints.push( intery ); + for ( m = 2; m < ps; ++m ) { + newpoints.push( points[ i + m ] ); + } + bottom = qy; + } + + j += otherps; + + } else { // px < qx + + // if we come from a gap, we just skip this point + + if ( fromgap && withlines ) { + i += ps; + continue; + } + + for ( m = 0; m < ps; ++m ) { + newpoints.push( points[ i + m ] ); + } + + // we might be able to interpolate a point below, + // this can give us a better y + + if ( withlines && j > 0 && otherpoints[ j - otherps ] != null ) { + bottom = qy + ( otherpoints[ j - otherps + 1 ] - qy ) * ( px - qx ) / ( otherpoints[ j - otherps ] - qx ); + } + + //newpoints[l + 1] += bottom; + + i += ps; + } + + fromgap = false; + + if ( l !== newpoints.length && withbottom ) { + newpoints[ l + 2 ] = bottom; + } + } + + // maintain the line steps invariant + + if ( withsteps && l !== newpoints.length && l > 0 && + newpoints[ l ] !== null && + newpoints[ l ] !== newpoints[ l - ps ] && + newpoints[ l + 1 ] !== newpoints[ l - ps + 1 ] ) { + for (m = 0; m < ps; ++m) { + newpoints[ l + ps + m ] = newpoints[ l + m ]; + } + newpoints[ l + 1 ] = newpoints[ l - ps + 1 ]; + } + } + + datapoints.points = newpoints; + } + + plot.hooks.processDatapoints.push( computeFillBottoms ); + } + + $.plot.plugins.push({ + init: init, + options: options, + name: "fillbetween", + version: "1.0" + }); + +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.image.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.image.js new file mode 100644 index 000000000..625a03571 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.image.js @@ -0,0 +1,241 @@ +/* Flot plugin for plotting images. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +The data syntax is [ [ image, x1, y1, x2, y2 ], ... ] where (x1, y1) and +(x2, y2) are where you intend the two opposite corners of the image to end up +in the plot. Image must be a fully loaded Javascript image (you can make one +with new Image()). If the image is not complete, it's skipped when plotting. + +There are two helpers included for retrieving images. The easiest work the way +that you put in URLs instead of images in the data, like this: + + [ "myimage.png", 0, 0, 10, 10 ] + +Then call $.plot.image.loadData( data, options, callback ) where data and +options are the same as you pass in to $.plot. This loads the images, replaces +the URLs in the data with the corresponding images and calls "callback" when +all images are loaded (or failed loading). In the callback, you can then call +$.plot with the data set. See the included example. + +A more low-level helper, $.plot.image.load(urls, callback) is also included. +Given a list of URLs, it calls callback with an object mapping from URL to +Image object when all images are loaded or have failed loading. + +The plugin supports these options: + + series: { + images: { + show: boolean + anchor: "corner" or "center" + alpha: [ 0, 1 ] + } + } + +They can be specified for a specific series: + + $.plot( $("#placeholder"), [{ + data: [ ... ], + images: { ... } + ]) + +Note that because the data format is different from usual data points, you +can't use images with anything else in a specific data series. + +Setting "anchor" to "center" causes the pixels in the image to be anchored at +the corner pixel centers inside of at the pixel corners, effectively letting +half a pixel stick out to each side in the plot. + +A possible future direction could be support for tiling for large images (like +Google Maps). + +*/ + +(function ($) { + var options = { + series: { + images: { + show: false, + alpha: 1, + anchor: "corner" // or "center" + } + } + }; + + $.plot.image = {}; + + $.plot.image.loadDataImages = function (series, options, callback) { + var urls = [], points = []; + + var defaultShow = options.series.images.show; + + $.each(series, function (i, s) { + if (!(defaultShow || s.images.show)) + return; + + if (s.data) + s = s.data; + + $.each(s, function (i, p) { + if (typeof p[0] == "string") { + urls.push(p[0]); + points.push(p); + } + }); + }); + + $.plot.image.load(urls, function (loadedImages) { + $.each(points, function (i, p) { + var url = p[0]; + if (loadedImages[url]) + p[0] = loadedImages[url]; + }); + + callback(); + }); + } + + $.plot.image.load = function (urls, callback) { + var missing = urls.length, loaded = {}; + if (missing == 0) + callback({}); + + $.each(urls, function (i, url) { + var handler = function () { + --missing; + + loaded[url] = this; + + if (missing == 0) + callback(loaded); + }; + + $('').load(handler).error(handler).attr('src', url); + }); + }; + + function drawSeries(plot, ctx, series) { + var plotOffset = plot.getPlotOffset(); + + if (!series.images || !series.images.show) + return; + + var points = series.datapoints.points, + ps = series.datapoints.pointsize; + + for (var i = 0; i < points.length; i += ps) { + var img = points[i], + x1 = points[i + 1], y1 = points[i + 2], + x2 = points[i + 3], y2 = points[i + 4], + xaxis = series.xaxis, yaxis = series.yaxis, + tmp; + + // actually we should check img.complete, but it + // appears to be a somewhat unreliable indicator in + // IE6 (false even after load event) + if (!img || img.width <= 0 || img.height <= 0) + continue; + + if (x1 > x2) { + tmp = x2; + x2 = x1; + x1 = tmp; + } + if (y1 > y2) { + tmp = y2; + y2 = y1; + y1 = tmp; + } + + // if the anchor is at the center of the pixel, expand the + // image by 1/2 pixel in each direction + if (series.images.anchor == "center") { + tmp = 0.5 * (x2-x1) / (img.width - 1); + x1 -= tmp; + x2 += tmp; + tmp = 0.5 * (y2-y1) / (img.height - 1); + y1 -= tmp; + y2 += tmp; + } + + // clip + if (x1 == x2 || y1 == y2 || + x1 >= xaxis.max || x2 <= xaxis.min || + y1 >= yaxis.max || y2 <= yaxis.min) + continue; + + var sx1 = 0, sy1 = 0, sx2 = img.width, sy2 = img.height; + if (x1 < xaxis.min) { + sx1 += (sx2 - sx1) * (xaxis.min - x1) / (x2 - x1); + x1 = xaxis.min; + } + + if (x2 > xaxis.max) { + sx2 += (sx2 - sx1) * (xaxis.max - x2) / (x2 - x1); + x2 = xaxis.max; + } + + if (y1 < yaxis.min) { + sy2 += (sy1 - sy2) * (yaxis.min - y1) / (y2 - y1); + y1 = yaxis.min; + } + + if (y2 > yaxis.max) { + sy1 += (sy1 - sy2) * (yaxis.max - y2) / (y2 - y1); + y2 = yaxis.max; + } + + x1 = xaxis.p2c(x1); + x2 = xaxis.p2c(x2); + y1 = yaxis.p2c(y1); + y2 = yaxis.p2c(y2); + + // the transformation may have swapped us + if (x1 > x2) { + tmp = x2; + x2 = x1; + x1 = tmp; + } + if (y1 > y2) { + tmp = y2; + y2 = y1; + y1 = tmp; + } + + tmp = ctx.globalAlpha; + ctx.globalAlpha *= series.images.alpha; + ctx.drawImage(img, + sx1, sy1, sx2 - sx1, sy2 - sy1, + x1 + plotOffset.left, y1 + plotOffset.top, + x2 - x1, y2 - y1); + ctx.globalAlpha = tmp; + } + } + + function processRawData(plot, series, data, datapoints) { + if (!series.images.show) + return; + + // format is Image, x1, y1, x2, y2 (opposite corners) + datapoints.format = [ + { required: true }, + { x: true, number: true, required: true }, + { y: true, number: true, required: true }, + { x: true, number: true, required: true }, + { y: true, number: true, required: true } + ]; + } + + function init(plot) { + plot.hooks.processRawData.push(processRawData); + plot.hooks.drawSeries.push(drawSeries); + } + + $.plot.plugins.push({ + init: init, + options: options, + name: 'image', + version: '1.1' + }); +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.js new file mode 100644 index 000000000..39f3e4cf3 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.js @@ -0,0 +1,3168 @@ +/* Javascript plotting library for jQuery, version 0.8.3. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +*/ + +// first an inline dependency, jquery.colorhelpers.js, we inline it here +// for convenience + +/* Plugin for jQuery for working with colors. + * + * Version 1.1. + * + * Inspiration from jQuery color animation plugin by John Resig. + * + * Released under the MIT license by Ole Laursen, October 2009. + * + * Examples: + * + * $.color.parse("#fff").scale('rgb', 0.25).add('a', -0.5).toString() + * var c = $.color.extract($("#mydiv"), 'background-color'); + * console.log(c.r, c.g, c.b, c.a); + * $.color.make(100, 50, 25, 0.4).toString() // returns "rgba(100,50,25,0.4)" + * + * Note that .scale() and .add() return the same modified object + * instead of making a new one. + * + * V. 1.1: Fix error handling so e.g. parsing an empty string does + * produce a color rather than just crashing. + */ +(function($){$.color={};$.color.make=function(r,g,b,a){var o={};o.r=r||0;o.g=g||0;o.b=b||0;o.a=a!=null?a:1;o.add=function(c,d){for(var i=0;i=1){return"rgb("+[o.r,o.g,o.b].join(",")+")"}else{return"rgba("+[o.r,o.g,o.b,o.a].join(",")+")"}};o.normalize=function(){function clamp(min,value,max){return valuemax?max:value}o.r=clamp(0,parseInt(o.r),255);o.g=clamp(0,parseInt(o.g),255);o.b=clamp(0,parseInt(o.b),255);o.a=clamp(0,o.a,1);return o};o.clone=function(){return $.color.make(o.r,o.b,o.g,o.a)};return o.normalize()};$.color.extract=function(elem,css){var c;do{c=elem.css(css).toLowerCase();if(c!=""&&c!="transparent")break;elem=elem.parent()}while(elem.length&&!$.nodeName(elem.get(0),"body"));if(c=="rgba(0, 0, 0, 0)")c="transparent";return $.color.parse(c)};$.color.parse=function(str){var res,m=$.color.make;if(res=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(str))return m(parseInt(res[1],10),parseInt(res[2],10),parseInt(res[3],10));if(res=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str))return m(parseInt(res[1],10),parseInt(res[2],10),parseInt(res[3],10),parseFloat(res[4]));if(res=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(str))return m(parseFloat(res[1])*2.55,parseFloat(res[2])*2.55,parseFloat(res[3])*2.55);if(res=/rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(str))return m(parseFloat(res[1])*2.55,parseFloat(res[2])*2.55,parseFloat(res[3])*2.55,parseFloat(res[4]));if(res=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(str))return m(parseInt(res[1],16),parseInt(res[2],16),parseInt(res[3],16));if(res=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(str))return m(parseInt(res[1]+res[1],16),parseInt(res[2]+res[2],16),parseInt(res[3]+res[3],16));var name=$.trim(str).toLowerCase();if(name=="transparent")return m(255,255,255,0);else{res=lookupColors[name]||[0,0,0];return m(res[0],res[1],res[2])}};var lookupColors={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0]}})(jQuery); + +// the actual Flot code +(function($) { + + // Cache the prototype hasOwnProperty for faster access + + var hasOwnProperty = Object.prototype.hasOwnProperty; + + // A shim to provide 'detach' to jQuery versions prior to 1.4. Using a DOM + // operation produces the same effect as detach, i.e. removing the element + // without touching its jQuery data. + + // Do not merge this into Flot 0.9, since it requires jQuery 1.4.4+. + + if (!$.fn.detach) { + $.fn.detach = function() { + return this.each(function() { + if (this.parentNode) { + this.parentNode.removeChild( this ); + } + }); + }; + } + + /////////////////////////////////////////////////////////////////////////// + // The Canvas object is a wrapper around an HTML5 tag. + // + // @constructor + // @param {string} cls List of classes to apply to the canvas. + // @param {element} container Element onto which to append the canvas. + // + // Requiring a container is a little iffy, but unfortunately canvas + // operations don't work unless the canvas is attached to the DOM. + + function Canvas(cls, container) { + + var element = container.children("." + cls)[0]; + + if (element == null) { + + element = document.createElement("canvas"); + element.className = cls; + + $(element).css({ direction: "ltr", position: "absolute", left: 0, top: 0 }) + .appendTo(container); + + // If HTML5 Canvas isn't available, fall back to [Ex|Flash]canvas + + if (!element.getContext) { + if (window.G_vmlCanvasManager) { + element = window.G_vmlCanvasManager.initElement(element); + } else { + throw new Error("Canvas is not available. If you're using IE with a fall-back such as Excanvas, then there's either a mistake in your conditional include, or the page has no DOCTYPE and is rendering in Quirks Mode."); + } + } + } + + this.element = element; + + var context = this.context = element.getContext("2d"); + + // Determine the screen's ratio of physical to device-independent + // pixels. This is the ratio between the canvas width that the browser + // advertises and the number of pixels actually present in that space. + + // The iPhone 4, for example, has a device-independent width of 320px, + // but its screen is actually 640px wide. It therefore has a pixel + // ratio of 2, while most normal devices have a ratio of 1. + + var devicePixelRatio = window.devicePixelRatio || 1, + backingStoreRatio = + context.webkitBackingStorePixelRatio || + context.mozBackingStorePixelRatio || + context.msBackingStorePixelRatio || + context.oBackingStorePixelRatio || + context.backingStorePixelRatio || 1; + + this.pixelRatio = devicePixelRatio / backingStoreRatio; + + // Size the canvas to match the internal dimensions of its container + + this.resize(container.width(), container.height()); + + // Collection of HTML div layers for text overlaid onto the canvas + + this.textContainer = null; + this.text = {}; + + // Cache of text fragments and metrics, so we can avoid expensively + // re-calculating them when the plot is re-rendered in a loop. + + this._textCache = {}; + } + + // Resizes the canvas to the given dimensions. + // + // @param {number} width New width of the canvas, in pixels. + // @param {number} width New height of the canvas, in pixels. + + Canvas.prototype.resize = function(width, height) { + + if (width <= 0 || height <= 0) { + throw new Error("Invalid dimensions for plot, width = " + width + ", height = " + height); + } + + var element = this.element, + context = this.context, + pixelRatio = this.pixelRatio; + + // Resize the canvas, increasing its density based on the display's + // pixel ratio; basically giving it more pixels without increasing the + // size of its element, to take advantage of the fact that retina + // displays have that many more pixels in the same advertised space. + + // Resizing should reset the state (excanvas seems to be buggy though) + + if (this.width != width) { + element.width = width * pixelRatio; + element.style.width = width + "px"; + this.width = width; + } + + if (this.height != height) { + element.height = height * pixelRatio; + element.style.height = height + "px"; + this.height = height; + } + + // Save the context, so we can reset in case we get replotted. The + // restore ensure that we're really back at the initial state, and + // should be safe even if we haven't saved the initial state yet. + + context.restore(); + context.save(); + + // Scale the coordinate space to match the display density; so even though we + // may have twice as many pixels, we still want lines and other drawing to + // appear at the same size; the extra pixels will just make them crisper. + + context.scale(pixelRatio, pixelRatio); + }; + + // Clears the entire canvas area, not including any overlaid HTML text + + Canvas.prototype.clear = function() { + this.context.clearRect(0, 0, this.width, this.height); + }; + + // Finishes rendering the canvas, including managing the text overlay. + + Canvas.prototype.render = function() { + + var cache = this._textCache; + + // For each text layer, add elements marked as active that haven't + // already been rendered, and remove those that are no longer active. + + for (var layerKey in cache) { + if (hasOwnProperty.call(cache, layerKey)) { + + var layer = this.getTextLayer(layerKey), + layerCache = cache[layerKey]; + + layer.hide(); + + for (var styleKey in layerCache) { + if (hasOwnProperty.call(layerCache, styleKey)) { + var styleCache = layerCache[styleKey]; + for (var key in styleCache) { + if (hasOwnProperty.call(styleCache, key)) { + + var positions = styleCache[key].positions; + + for (var i = 0, position; position = positions[i]; i++) { + if (position.active) { + if (!position.rendered) { + layer.append(position.element); + position.rendered = true; + } + } else { + positions.splice(i--, 1); + if (position.rendered) { + position.element.detach(); + } + } + } + + if (positions.length == 0) { + delete styleCache[key]; + } + } + } + } + } + + layer.show(); + } + } + }; + + // Creates (if necessary) and returns the text overlay container. + // + // @param {string} classes String of space-separated CSS classes used to + // uniquely identify the text layer. + // @return {object} The jQuery-wrapped text-layer div. + + Canvas.prototype.getTextLayer = function(classes) { + + var layer = this.text[classes]; + + // Create the text layer if it doesn't exist + + if (layer == null) { + + // Create the text layer container, if it doesn't exist + + if (this.textContainer == null) { + this.textContainer = $("
    ") + .css({ + position: "absolute", + top: 0, + left: 0, + bottom: 0, + right: 0, + 'font-size': "smaller", + color: "#545454" + }) + .insertAfter(this.element); + } + + layer = this.text[classes] = $("
    ") + .addClass(classes) + .css({ + position: "absolute", + top: 0, + left: 0, + bottom: 0, + right: 0 + }) + .appendTo(this.textContainer); + } + + return layer; + }; + + // Creates (if necessary) and returns a text info object. + // + // The object looks like this: + // + // { + // width: Width of the text's wrapper div. + // height: Height of the text's wrapper div. + // element: The jQuery-wrapped HTML div containing the text. + // positions: Array of positions at which this text is drawn. + // } + // + // The positions array contains objects that look like this: + // + // { + // active: Flag indicating whether the text should be visible. + // rendered: Flag indicating whether the text is currently visible. + // element: The jQuery-wrapped HTML div containing the text. + // x: X coordinate at which to draw the text. + // y: Y coordinate at which to draw the text. + // } + // + // Each position after the first receives a clone of the original element. + // + // The idea is that that the width, height, and general 'identity' of the + // text is constant no matter where it is placed; the placements are a + // secondary property. + // + // Canvas maintains a cache of recently-used text info objects; getTextInfo + // either returns the cached element or creates a new entry. + // + // @param {string} layer A string of space-separated CSS classes uniquely + // identifying the layer containing this text. + // @param {string} text Text string to retrieve info for. + // @param {(string|object)=} font Either a string of space-separated CSS + // classes or a font-spec object, defining the text's font and style. + // @param {number=} angle Angle at which to rotate the text, in degrees. + // Angle is currently unused, it will be implemented in the future. + // @param {number=} width Maximum width of the text before it wraps. + // @return {object} a text info object. + + Canvas.prototype.getTextInfo = function(layer, text, font, angle, width) { + + var textStyle, layerCache, styleCache, info; + + // Cast the value to a string, in case we were given a number or such + + text = "" + text; + + // If the font is a font-spec object, generate a CSS font definition + + if (typeof font === "object") { + textStyle = font.style + " " + font.variant + " " + font.weight + " " + font.size + "px/" + font.lineHeight + "px " + font.family; + } else { + textStyle = font; + } + + // Retrieve (or create) the cache for the text's layer and styles + + layerCache = this._textCache[layer]; + + if (layerCache == null) { + layerCache = this._textCache[layer] = {}; + } + + styleCache = layerCache[textStyle]; + + if (styleCache == null) { + styleCache = layerCache[textStyle] = {}; + } + + info = styleCache[text]; + + // If we can't find a matching element in our cache, create a new one + + if (info == null) { + + var element = $("
    ").html(text) + .css({ + position: "absolute", + 'max-width': width, + top: -9999 + }) + .appendTo(this.getTextLayer(layer)); + + if (typeof font === "object") { + element.css({ + font: textStyle, + color: font.color + }); + } else if (typeof font === "string") { + element.addClass(font); + } + + info = styleCache[text] = { + width: element.outerWidth(true), + height: element.outerHeight(true), + element: element, + positions: [] + }; + + element.detach(); + } + + return info; + }; + + // Adds a text string to the canvas text overlay. + // + // The text isn't drawn immediately; it is marked as rendering, which will + // result in its addition to the canvas on the next render pass. + // + // @param {string} layer A string of space-separated CSS classes uniquely + // identifying the layer containing this text. + // @param {number} x X coordinate at which to draw the text. + // @param {number} y Y coordinate at which to draw the text. + // @param {string} text Text string to draw. + // @param {(string|object)=} font Either a string of space-separated CSS + // classes or a font-spec object, defining the text's font and style. + // @param {number=} angle Angle at which to rotate the text, in degrees. + // Angle is currently unused, it will be implemented in the future. + // @param {number=} width Maximum width of the text before it wraps. + // @param {string=} halign Horizontal alignment of the text; either "left", + // "center" or "right". + // @param {string=} valign Vertical alignment of the text; either "top", + // "middle" or "bottom". + + Canvas.prototype.addText = function(layer, x, y, text, font, angle, width, halign, valign) { + + var info = this.getTextInfo(layer, text, font, angle, width), + positions = info.positions; + + // Tweak the div's position to match the text's alignment + + if (halign == "center") { + x -= info.width / 2; + } else if (halign == "right") { + x -= info.width; + } + + if (valign == "middle") { + y -= info.height / 2; + } else if (valign == "bottom") { + y -= info.height; + } + + // Determine whether this text already exists at this position. + // If so, mark it for inclusion in the next render pass. + + for (var i = 0, position; position = positions[i]; i++) { + if (position.x == x && position.y == y) { + position.active = true; + return; + } + } + + // If the text doesn't exist at this position, create a new entry + + // For the very first position we'll re-use the original element, + // while for subsequent ones we'll clone it. + + position = { + active: true, + rendered: false, + element: positions.length ? info.element.clone() : info.element, + x: x, + y: y + }; + + positions.push(position); + + // Move the element to its final position within the container + + position.element.css({ + top: Math.round(y), + left: Math.round(x), + 'text-align': halign // In case the text wraps + }); + }; + + // Removes one or more text strings from the canvas text overlay. + // + // If no parameters are given, all text within the layer is removed. + // + // Note that the text is not immediately removed; it is simply marked as + // inactive, which will result in its removal on the next render pass. + // This avoids the performance penalty for 'clear and redraw' behavior, + // where we potentially get rid of all text on a layer, but will likely + // add back most or all of it later, as when redrawing axes, for example. + // + // @param {string} layer A string of space-separated CSS classes uniquely + // identifying the layer containing this text. + // @param {number=} x X coordinate of the text. + // @param {number=} y Y coordinate of the text. + // @param {string=} text Text string to remove. + // @param {(string|object)=} font Either a string of space-separated CSS + // classes or a font-spec object, defining the text's font and style. + // @param {number=} angle Angle at which the text is rotated, in degrees. + // Angle is currently unused, it will be implemented in the future. + + Canvas.prototype.removeText = function(layer, x, y, text, font, angle) { + if (text == null) { + var layerCache = this._textCache[layer]; + if (layerCache != null) { + for (var styleKey in layerCache) { + if (hasOwnProperty.call(layerCache, styleKey)) { + var styleCache = layerCache[styleKey]; + for (var key in styleCache) { + if (hasOwnProperty.call(styleCache, key)) { + var positions = styleCache[key].positions; + for (var i = 0, position; position = positions[i]; i++) { + position.active = false; + } + } + } + } + } + } + } else { + var positions = this.getTextInfo(layer, text, font, angle).positions; + for (var i = 0, position; position = positions[i]; i++) { + if (position.x == x && position.y == y) { + position.active = false; + } + } + } + }; + + /////////////////////////////////////////////////////////////////////////// + // The top-level container for the entire plot. + + function Plot(placeholder, data_, options_, plugins) { + // data is on the form: + // [ series1, series2 ... ] + // where series is either just the data as [ [x1, y1], [x2, y2], ... ] + // or { data: [ [x1, y1], [x2, y2], ... ], label: "some label", ... } + + var series = [], + options = { + // the color theme used for graphs + colors: ["#edc240", "#afd8f8", "#cb4b4b", "#4da74d", "#9440ed"], + legend: { + show: true, + noColumns: 1, // number of colums in legend table + labelFormatter: null, // fn: string -> string + labelBoxBorderColor: "#ccc", // border color for the little label boxes + container: null, // container (as jQuery object) to put legend in, null means default on top of graph + position: "ne", // position of default legend container within plot + margin: 5, // distance from grid edge to default legend container within plot + backgroundColor: null, // null means auto-detect + backgroundOpacity: 0.85, // set to 0 to avoid background + sorted: null // default to no legend sorting + }, + xaxis: { + show: null, // null = auto-detect, true = always, false = never + position: "bottom", // or "top" + mode: null, // null or "time" + font: null, // null (derived from CSS in placeholder) or object like { size: 11, lineHeight: 13, style: "italic", weight: "bold", family: "sans-serif", variant: "small-caps" } + color: null, // base color, labels, ticks + tickColor: null, // possibly different color of ticks, e.g. "rgba(0,0,0,0.15)" + transform: null, // null or f: number -> number to transform axis + inverseTransform: null, // if transform is set, this should be the inverse function + min: null, // min. value to show, null means set automatically + max: null, // max. value to show, null means set automatically + autoscaleMargin: null, // margin in % to add if auto-setting min/max + ticks: null, // either [1, 3] or [[1, "a"], 3] or (fn: axis info -> ticks) or app. number of ticks for auto-ticks + tickFormatter: null, // fn: number -> string + labelWidth: null, // size of tick labels in pixels + labelHeight: null, + reserveSpace: null, // whether to reserve space even if axis isn't shown + tickLength: null, // size in pixels of ticks, or "full" for whole line + alignTicksWithAxis: null, // axis number or null for no sync + tickDecimals: null, // no. of decimals, null means auto + tickSize: null, // number or [number, "unit"] + minTickSize: null // number or [number, "unit"] + }, + yaxis: { + autoscaleMargin: 0.02, + position: "left" // or "right" + }, + xaxes: [], + yaxes: [], + series: { + points: { + show: false, + radius: 3, + lineWidth: 2, // in pixels + fill: true, + fillColor: "#ffffff", + symbol: "circle" // or callback + }, + lines: { + // we don't put in show: false so we can see + // whether lines were actively disabled + lineWidth: 2, // in pixels + fill: false, + fillColor: null, + steps: false + // Omit 'zero', so we can later default its value to + // match that of the 'fill' option. + }, + bars: { + show: false, + lineWidth: 2, // in pixels + barWidth: 1, // in units of the x axis + fill: true, + fillColor: null, + align: "left", // "left", "right", or "center" + horizontal: false, + zero: true + }, + shadowSize: 3, + highlightColor: null + }, + grid: { + show: true, + aboveData: false, + color: "#545454", // primary color used for outline and labels + backgroundColor: null, // null for transparent, else color + borderColor: null, // set if different from the grid color + tickColor: null, // color for the ticks, e.g. "rgba(0,0,0,0.15)" + margin: 0, // distance from the canvas edge to the grid + labelMargin: 5, // in pixels + axisMargin: 8, // in pixels + borderWidth: 2, // in pixels + minBorderMargin: null, // in pixels, null means taken from points radius + markings: null, // array of ranges or fn: axes -> array of ranges + markingsColor: "#f4f4f4", + markingsLineWidth: 2, + // interactive stuff + clickable: false, + hoverable: false, + autoHighlight: true, // highlight in case mouse is near + mouseActiveRadius: 10 // how far the mouse can be away to activate an item + }, + interaction: { + redrawOverlayInterval: 1000/60 // time between updates, -1 means in same flow + }, + hooks: {} + }, + surface = null, // the canvas for the plot itself + overlay = null, // canvas for interactive stuff on top of plot + eventHolder = null, // jQuery object that events should be bound to + ctx = null, octx = null, + xaxes = [], yaxes = [], + plotOffset = { left: 0, right: 0, top: 0, bottom: 0}, + plotWidth = 0, plotHeight = 0, + hooks = { + processOptions: [], + processRawData: [], + processDatapoints: [], + processOffset: [], + drawBackground: [], + drawSeries: [], + draw: [], + bindEvents: [], + drawOverlay: [], + shutdown: [] + }, + plot = this; + + // public functions + plot.setData = setData; + plot.setupGrid = setupGrid; + plot.draw = draw; + plot.getPlaceholder = function() { return placeholder; }; + plot.getCanvas = function() { return surface.element; }; + plot.getPlotOffset = function() { return plotOffset; }; + plot.width = function () { return plotWidth; }; + plot.height = function () { return plotHeight; }; + plot.offset = function () { + var o = eventHolder.offset(); + o.left += plotOffset.left; + o.top += plotOffset.top; + return o; + }; + plot.getData = function () { return series; }; + plot.getAxes = function () { + var res = {}, i; + $.each(xaxes.concat(yaxes), function (_, axis) { + if (axis) + res[axis.direction + (axis.n != 1 ? axis.n : "") + "axis"] = axis; + }); + return res; + }; + plot.getXAxes = function () { return xaxes; }; + plot.getYAxes = function () { return yaxes; }; + plot.c2p = canvasToAxisCoords; + plot.p2c = axisToCanvasCoords; + plot.getOptions = function () { return options; }; + plot.highlight = highlight; + plot.unhighlight = unhighlight; + plot.triggerRedrawOverlay = triggerRedrawOverlay; + plot.pointOffset = function(point) { + return { + left: parseInt(xaxes[axisNumber(point, "x") - 1].p2c(+point.x) + plotOffset.left, 10), + top: parseInt(yaxes[axisNumber(point, "y") - 1].p2c(+point.y) + plotOffset.top, 10) + }; + }; + plot.shutdown = shutdown; + plot.destroy = function () { + shutdown(); + placeholder.removeData("plot").empty(); + + series = []; + options = null; + surface = null; + overlay = null; + eventHolder = null; + ctx = null; + octx = null; + xaxes = []; + yaxes = []; + hooks = null; + highlights = []; + plot = null; + }; + plot.resize = function () { + var width = placeholder.width(), + height = placeholder.height(); + surface.resize(width, height); + overlay.resize(width, height); + }; + + // public attributes + plot.hooks = hooks; + + // initialize + initPlugins(plot); + parseOptions(options_); + setupCanvases(); + setData(data_); + setupGrid(); + draw(); + bindEvents(); + + + function executeHooks(hook, args) { + args = [plot].concat(args); + for (var i = 0; i < hook.length; ++i) + hook[i].apply(this, args); + } + + function initPlugins() { + + // References to key classes, allowing plugins to modify them + + var classes = { + Canvas: Canvas + }; + + for (var i = 0; i < plugins.length; ++i) { + var p = plugins[i]; + p.init(plot, classes); + if (p.options) + $.extend(true, options, p.options); + } + } + + function parseOptions(opts) { + + $.extend(true, options, opts); + + // $.extend merges arrays, rather than replacing them. When less + // colors are provided than the size of the default palette, we + // end up with those colors plus the remaining defaults, which is + // not expected behavior; avoid it by replacing them here. + + if (opts && opts.colors) { + options.colors = opts.colors; + } + + if (options.xaxis.color == null) + options.xaxis.color = $.color.parse(options.grid.color).scale('a', 0.22).toString(); + if (options.yaxis.color == null) + options.yaxis.color = $.color.parse(options.grid.color).scale('a', 0.22).toString(); + + if (options.xaxis.tickColor == null) // grid.tickColor for back-compatibility + options.xaxis.tickColor = options.grid.tickColor || options.xaxis.color; + if (options.yaxis.tickColor == null) // grid.tickColor for back-compatibility + options.yaxis.tickColor = options.grid.tickColor || options.yaxis.color; + + if (options.grid.borderColor == null) + options.grid.borderColor = options.grid.color; + if (options.grid.tickColor == null) + options.grid.tickColor = $.color.parse(options.grid.color).scale('a', 0.22).toString(); + + // Fill in defaults for axis options, including any unspecified + // font-spec fields, if a font-spec was provided. + + // If no x/y axis options were provided, create one of each anyway, + // since the rest of the code assumes that they exist. + + var i, axisOptions, axisCount, + fontSize = placeholder.css("font-size"), + fontSizeDefault = fontSize ? +fontSize.replace("px", "") : 13, + fontDefaults = { + style: placeholder.css("font-style"), + size: Math.round(0.8 * fontSizeDefault), + variant: placeholder.css("font-variant"), + weight: placeholder.css("font-weight"), + family: placeholder.css("font-family") + }; + + axisCount = options.xaxes.length || 1; + for (i = 0; i < axisCount; ++i) { + + axisOptions = options.xaxes[i]; + if (axisOptions && !axisOptions.tickColor) { + axisOptions.tickColor = axisOptions.color; + } + + axisOptions = $.extend(true, {}, options.xaxis, axisOptions); + options.xaxes[i] = axisOptions; + + if (axisOptions.font) { + axisOptions.font = $.extend({}, fontDefaults, axisOptions.font); + if (!axisOptions.font.color) { + axisOptions.font.color = axisOptions.color; + } + if (!axisOptions.font.lineHeight) { + axisOptions.font.lineHeight = Math.round(axisOptions.font.size * 1.15); + } + } + } + + axisCount = options.yaxes.length || 1; + for (i = 0; i < axisCount; ++i) { + + axisOptions = options.yaxes[i]; + if (axisOptions && !axisOptions.tickColor) { + axisOptions.tickColor = axisOptions.color; + } + + axisOptions = $.extend(true, {}, options.yaxis, axisOptions); + options.yaxes[i] = axisOptions; + + if (axisOptions.font) { + axisOptions.font = $.extend({}, fontDefaults, axisOptions.font); + if (!axisOptions.font.color) { + axisOptions.font.color = axisOptions.color; + } + if (!axisOptions.font.lineHeight) { + axisOptions.font.lineHeight = Math.round(axisOptions.font.size * 1.15); + } + } + } + + // backwards compatibility, to be removed in future + if (options.xaxis.noTicks && options.xaxis.ticks == null) + options.xaxis.ticks = options.xaxis.noTicks; + if (options.yaxis.noTicks && options.yaxis.ticks == null) + options.yaxis.ticks = options.yaxis.noTicks; + if (options.x2axis) { + options.xaxes[1] = $.extend(true, {}, options.xaxis, options.x2axis); + options.xaxes[1].position = "top"; + // Override the inherit to allow the axis to auto-scale + if (options.x2axis.min == null) { + options.xaxes[1].min = null; + } + if (options.x2axis.max == null) { + options.xaxes[1].max = null; + } + } + if (options.y2axis) { + options.yaxes[1] = $.extend(true, {}, options.yaxis, options.y2axis); + options.yaxes[1].position = "right"; + // Override the inherit to allow the axis to auto-scale + if (options.y2axis.min == null) { + options.yaxes[1].min = null; + } + if (options.y2axis.max == null) { + options.yaxes[1].max = null; + } + } + if (options.grid.coloredAreas) + options.grid.markings = options.grid.coloredAreas; + if (options.grid.coloredAreasColor) + options.grid.markingsColor = options.grid.coloredAreasColor; + if (options.lines) + $.extend(true, options.series.lines, options.lines); + if (options.points) + $.extend(true, options.series.points, options.points); + if (options.bars) + $.extend(true, options.series.bars, options.bars); + if (options.shadowSize != null) + options.series.shadowSize = options.shadowSize; + if (options.highlightColor != null) + options.series.highlightColor = options.highlightColor; + + // save options on axes for future reference + for (i = 0; i < options.xaxes.length; ++i) + getOrCreateAxis(xaxes, i + 1).options = options.xaxes[i]; + for (i = 0; i < options.yaxes.length; ++i) + getOrCreateAxis(yaxes, i + 1).options = options.yaxes[i]; + + // add hooks from options + for (var n in hooks) + if (options.hooks[n] && options.hooks[n].length) + hooks[n] = hooks[n].concat(options.hooks[n]); + + executeHooks(hooks.processOptions, [options]); + } + + function setData(d) { + series = parseData(d); + fillInSeriesOptions(); + processData(); + } + + function parseData(d) { + var res = []; + for (var i = 0; i < d.length; ++i) { + var s = $.extend(true, {}, options.series); + + if (d[i].data != null) { + s.data = d[i].data; // move the data instead of deep-copy + delete d[i].data; + + $.extend(true, s, d[i]); + + d[i].data = s.data; + } + else + s.data = d[i]; + res.push(s); + } + + return res; + } + + function axisNumber(obj, coord) { + var a = obj[coord + "axis"]; + if (typeof a == "object") // if we got a real axis, extract number + a = a.n; + if (typeof a != "number") + a = 1; // default to first axis + return a; + } + + function allAxes() { + // return flat array without annoying null entries + return $.grep(xaxes.concat(yaxes), function (a) { return a; }); + } + + function canvasToAxisCoords(pos) { + // return an object with x/y corresponding to all used axes + var res = {}, i, axis; + for (i = 0; i < xaxes.length; ++i) { + axis = xaxes[i]; + if (axis && axis.used) + res["x" + axis.n] = axis.c2p(pos.left); + } + + for (i = 0; i < yaxes.length; ++i) { + axis = yaxes[i]; + if (axis && axis.used) + res["y" + axis.n] = axis.c2p(pos.top); + } + + if (res.x1 !== undefined) + res.x = res.x1; + if (res.y1 !== undefined) + res.y = res.y1; + + return res; + } + + function axisToCanvasCoords(pos) { + // get canvas coords from the first pair of x/y found in pos + var res = {}, i, axis, key; + + for (i = 0; i < xaxes.length; ++i) { + axis = xaxes[i]; + if (axis && axis.used) { + key = "x" + axis.n; + if (pos[key] == null && axis.n == 1) + key = "x"; + + if (pos[key] != null) { + res.left = axis.p2c(pos[key]); + break; + } + } + } + + for (i = 0; i < yaxes.length; ++i) { + axis = yaxes[i]; + if (axis && axis.used) { + key = "y" + axis.n; + if (pos[key] == null && axis.n == 1) + key = "y"; + + if (pos[key] != null) { + res.top = axis.p2c(pos[key]); + break; + } + } + } + + return res; + } + + function getOrCreateAxis(axes, number) { + if (!axes[number - 1]) + axes[number - 1] = { + n: number, // save the number for future reference + direction: axes == xaxes ? "x" : "y", + options: $.extend(true, {}, axes == xaxes ? options.xaxis : options.yaxis) + }; + + return axes[number - 1]; + } + + function fillInSeriesOptions() { + + var neededColors = series.length, maxIndex = -1, i; + + // Subtract the number of series that already have fixed colors or + // color indexes from the number that we still need to generate. + + for (i = 0; i < series.length; ++i) { + var sc = series[i].color; + if (sc != null) { + neededColors--; + if (typeof sc == "number" && sc > maxIndex) { + maxIndex = sc; + } + } + } + + // If any of the series have fixed color indexes, then we need to + // generate at least as many colors as the highest index. + + if (neededColors <= maxIndex) { + neededColors = maxIndex + 1; + } + + // Generate all the colors, using first the option colors and then + // variations on those colors once they're exhausted. + + var c, colors = [], colorPool = options.colors, + colorPoolSize = colorPool.length, variation = 0; + + for (i = 0; i < neededColors; i++) { + + c = $.color.parse(colorPool[i % colorPoolSize] || "#666"); + + // Each time we exhaust the colors in the pool we adjust + // a scaling factor used to produce more variations on + // those colors. The factor alternates negative/positive + // to produce lighter/darker colors. + + // Reset the variation after every few cycles, or else + // it will end up producing only white or black colors. + + if (i % colorPoolSize == 0 && i) { + if (variation >= 0) { + if (variation < 0.5) { + variation = -variation - 0.2; + } else variation = 0; + } else variation = -variation; + } + + colors[i] = c.scale('rgb', 1 + variation); + } + + // Finalize the series options, filling in their colors + + var colori = 0, s; + for (i = 0; i < series.length; ++i) { + s = series[i]; + + // assign colors + if (s.color == null) { + s.color = colors[colori].toString(); + ++colori; + } + else if (typeof s.color == "number") + s.color = colors[s.color].toString(); + + // turn on lines automatically in case nothing is set + if (s.lines.show == null) { + var v, show = true; + for (v in s) + if (s[v] && s[v].show) { + show = false; + break; + } + if (show) + s.lines.show = true; + } + + // If nothing was provided for lines.zero, default it to match + // lines.fill, since areas by default should extend to zero. + + if (s.lines.zero == null) { + s.lines.zero = !!s.lines.fill; + } + + // setup axes + s.xaxis = getOrCreateAxis(xaxes, axisNumber(s, "x")); + s.yaxis = getOrCreateAxis(yaxes, axisNumber(s, "y")); + } + } + + function processData() { + var topSentry = Number.POSITIVE_INFINITY, + bottomSentry = Number.NEGATIVE_INFINITY, + fakeInfinity = Number.MAX_VALUE, + i, j, k, m, length, + s, points, ps, x, y, axis, val, f, p, + data, format; + + function updateAxis(axis, min, max) { + if (min < axis.datamin && min != -fakeInfinity) + axis.datamin = min; + if (max > axis.datamax && max != fakeInfinity) + axis.datamax = max; + } + + $.each(allAxes(), function (_, axis) { + // init axis + axis.datamin = topSentry; + axis.datamax = bottomSentry; + axis.used = false; + }); + + for (i = 0; i < series.length; ++i) { + s = series[i]; + s.datapoints = { points: [] }; + + executeHooks(hooks.processRawData, [ s, s.data, s.datapoints ]); + } + + // first pass: clean and copy data + for (i = 0; i < series.length; ++i) { + s = series[i]; + + data = s.data; + format = s.datapoints.format; + + if (!format) { + format = []; + // find out how to copy + format.push({ x: true, number: true, required: true }); + format.push({ y: true, number: true, required: true }); + + if (s.bars.show || (s.lines.show && s.lines.fill)) { + var autoscale = !!((s.bars.show && s.bars.zero) || (s.lines.show && s.lines.zero)); + format.push({ y: true, number: true, required: false, defaultValue: 0, autoscale: autoscale }); + if (s.bars.horizontal) { + delete format[format.length - 1].y; + format[format.length - 1].x = true; + } + } + + s.datapoints.format = format; + } + + if (s.datapoints.pointsize != null) + continue; // already filled in + + s.datapoints.pointsize = format.length; + + ps = s.datapoints.pointsize; + points = s.datapoints.points; + + var insertSteps = s.lines.show && s.lines.steps; + s.xaxis.used = s.yaxis.used = true; + + for (j = k = 0; j < data.length; ++j, k += ps) { + p = data[j]; + + var nullify = p == null; + if (!nullify) { + for (m = 0; m < ps; ++m) { + val = p[m]; + f = format[m]; + + if (f) { + if (f.number && val != null) { + val = +val; // convert to number + if (isNaN(val)) + val = null; + else if (val == Infinity) + val = fakeInfinity; + else if (val == -Infinity) + val = -fakeInfinity; + } + + if (val == null) { + if (f.required) + nullify = true; + + if (f.defaultValue != null) + val = f.defaultValue; + } + } + + points[k + m] = val; + } + } + + if (nullify) { + for (m = 0; m < ps; ++m) { + val = points[k + m]; + if (val != null) { + f = format[m]; + // extract min/max info + if (f.autoscale !== false) { + if (f.x) { + updateAxis(s.xaxis, val, val); + } + if (f.y) { + updateAxis(s.yaxis, val, val); + } + } + } + points[k + m] = null; + } + } + else { + // a little bit of line specific stuff that + // perhaps shouldn't be here, but lacking + // better means... + if (insertSteps && k > 0 + && points[k - ps] != null + && points[k - ps] != points[k] + && points[k - ps + 1] != points[k + 1]) { + // copy the point to make room for a middle point + for (m = 0; m < ps; ++m) + points[k + ps + m] = points[k + m]; + + // middle point has same y + points[k + 1] = points[k - ps + 1]; + + // we've added a point, better reflect that + k += ps; + } + } + } + } + + // give the hooks a chance to run + for (i = 0; i < series.length; ++i) { + s = series[i]; + + executeHooks(hooks.processDatapoints, [ s, s.datapoints]); + } + + // second pass: find datamax/datamin for auto-scaling + for (i = 0; i < series.length; ++i) { + s = series[i]; + points = s.datapoints.points; + ps = s.datapoints.pointsize; + format = s.datapoints.format; + + var xmin = topSentry, ymin = topSentry, + xmax = bottomSentry, ymax = bottomSentry; + + for (j = 0; j < points.length; j += ps) { + if (points[j] == null) + continue; + + for (m = 0; m < ps; ++m) { + val = points[j + m]; + f = format[m]; + if (!f || f.autoscale === false || val == fakeInfinity || val == -fakeInfinity) + continue; + + if (f.x) { + if (val < xmin) + xmin = val; + if (val > xmax) + xmax = val; + } + if (f.y) { + if (val < ymin) + ymin = val; + if (val > ymax) + ymax = val; + } + } + } + + if (s.bars.show) { + // make sure we got room for the bar on the dancing floor + var delta; + + switch (s.bars.align) { + case "left": + delta = 0; + break; + case "right": + delta = -s.bars.barWidth; + break; + default: + delta = -s.bars.barWidth / 2; + } + + if (s.bars.horizontal) { + ymin += delta; + ymax += delta + s.bars.barWidth; + } + else { + xmin += delta; + xmax += delta + s.bars.barWidth; + } + } + + updateAxis(s.xaxis, xmin, xmax); + updateAxis(s.yaxis, ymin, ymax); + } + + $.each(allAxes(), function (_, axis) { + if (axis.datamin == topSentry) + axis.datamin = null; + if (axis.datamax == bottomSentry) + axis.datamax = null; + }); + } + + function setupCanvases() { + + // Make sure the placeholder is clear of everything except canvases + // from a previous plot in this container that we'll try to re-use. + + placeholder.css("padding", 0) // padding messes up the positioning + .children().filter(function(){ + return !$(this).hasClass("flot-overlay") && !$(this).hasClass('flot-base'); + }).remove(); + + if (placeholder.css("position") == 'static') + placeholder.css("position", "relative"); // for positioning labels and overlay + + surface = new Canvas("flot-base", placeholder); + overlay = new Canvas("flot-overlay", placeholder); // overlay canvas for interactive features + + ctx = surface.context; + octx = overlay.context; + + // define which element we're listening for events on + eventHolder = $(overlay.element).unbind(); + + // If we're re-using a plot object, shut down the old one + + var existing = placeholder.data("plot"); + + if (existing) { + existing.shutdown(); + overlay.clear(); + } + + // save in case we get replotted + placeholder.data("plot", plot); + } + + function bindEvents() { + // bind events + if (options.grid.hoverable) { + eventHolder.mousemove(onMouseMove); + + // Use bind, rather than .mouseleave, because we officially + // still support jQuery 1.2.6, which doesn't define a shortcut + // for mouseenter or mouseleave. This was a bug/oversight that + // was fixed somewhere around 1.3.x. We can return to using + // .mouseleave when we drop support for 1.2.6. + + eventHolder.bind("mouseleave", onMouseLeave); + } + + if (options.grid.clickable) + eventHolder.click(onClick); + + executeHooks(hooks.bindEvents, [eventHolder]); + } + + function shutdown() { + if (redrawTimeout) + clearTimeout(redrawTimeout); + + eventHolder.unbind("mousemove", onMouseMove); + eventHolder.unbind("mouseleave", onMouseLeave); + eventHolder.unbind("click", onClick); + + executeHooks(hooks.shutdown, [eventHolder]); + } + + function setTransformationHelpers(axis) { + // set helper functions on the axis, assumes plot area + // has been computed already + + function identity(x) { return x; } + + var s, m, t = axis.options.transform || identity, + it = axis.options.inverseTransform; + + // precompute how much the axis is scaling a point + // in canvas space + if (axis.direction == "x") { + s = axis.scale = plotWidth / Math.abs(t(axis.max) - t(axis.min)); + m = Math.min(t(axis.max), t(axis.min)); + } + else { + s = axis.scale = plotHeight / Math.abs(t(axis.max) - t(axis.min)); + s = -s; + m = Math.max(t(axis.max), t(axis.min)); + } + + // data point to canvas coordinate + if (t == identity) // slight optimization + axis.p2c = function (p) { return (p - m) * s; }; + else + axis.p2c = function (p) { return (t(p) - m) * s; }; + // canvas coordinate to data point + if (!it) + axis.c2p = function (c) { return m + c / s; }; + else + axis.c2p = function (c) { return it(m + c / s); }; + } + + function measureTickLabels(axis) { + + var opts = axis.options, + ticks = axis.ticks || [], + labelWidth = opts.labelWidth || 0, + labelHeight = opts.labelHeight || 0, + maxWidth = labelWidth || (axis.direction == "x" ? Math.floor(surface.width / (ticks.length || 1)) : null), + legacyStyles = axis.direction + "Axis " + axis.direction + axis.n + "Axis", + layer = "flot-" + axis.direction + "-axis flot-" + axis.direction + axis.n + "-axis " + legacyStyles, + font = opts.font || "flot-tick-label tickLabel"; + + for (var i = 0; i < ticks.length; ++i) { + + var t = ticks[i]; + + if (!t.label) + continue; + + var info = surface.getTextInfo(layer, t.label, font, null, maxWidth); + + labelWidth = Math.max(labelWidth, info.width); + labelHeight = Math.max(labelHeight, info.height); + } + + axis.labelWidth = opts.labelWidth || labelWidth; + axis.labelHeight = opts.labelHeight || labelHeight; + } + + function allocateAxisBoxFirstPhase(axis) { + // find the bounding box of the axis by looking at label + // widths/heights and ticks, make room by diminishing the + // plotOffset; this first phase only looks at one + // dimension per axis, the other dimension depends on the + // other axes so will have to wait + + var lw = axis.labelWidth, + lh = axis.labelHeight, + pos = axis.options.position, + isXAxis = axis.direction === "x", + tickLength = axis.options.tickLength, + axisMargin = options.grid.axisMargin, + padding = options.grid.labelMargin, + innermost = true, + outermost = true, + first = true, + found = false; + + // Determine the axis's position in its direction and on its side + + $.each(isXAxis ? xaxes : yaxes, function(i, a) { + if (a && (a.show || a.reserveSpace)) { + if (a === axis) { + found = true; + } else if (a.options.position === pos) { + if (found) { + outermost = false; + } else { + innermost = false; + } + } + if (!found) { + first = false; + } + } + }); + + // The outermost axis on each side has no margin + + if (outermost) { + axisMargin = 0; + } + + // The ticks for the first axis in each direction stretch across + + if (tickLength == null) { + tickLength = first ? "full" : 5; + } + + if (!isNaN(+tickLength)) + padding += +tickLength; + + if (isXAxis) { + lh += padding; + + if (pos == "bottom") { + plotOffset.bottom += lh + axisMargin; + axis.box = { top: surface.height - plotOffset.bottom, height: lh }; + } + else { + axis.box = { top: plotOffset.top + axisMargin, height: lh }; + plotOffset.top += lh + axisMargin; + } + } + else { + lw += padding; + + if (pos == "left") { + axis.box = { left: plotOffset.left + axisMargin, width: lw }; + plotOffset.left += lw + axisMargin; + } + else { + plotOffset.right += lw + axisMargin; + axis.box = { left: surface.width - plotOffset.right, width: lw }; + } + } + + // save for future reference + axis.position = pos; + axis.tickLength = tickLength; + axis.box.padding = padding; + axis.innermost = innermost; + } + + function allocateAxisBoxSecondPhase(axis) { + // now that all axis boxes have been placed in one + // dimension, we can set the remaining dimension coordinates + if (axis.direction == "x") { + axis.box.left = plotOffset.left - axis.labelWidth / 2; + axis.box.width = surface.width - plotOffset.left - plotOffset.right + axis.labelWidth; + } + else { + axis.box.top = plotOffset.top - axis.labelHeight / 2; + axis.box.height = surface.height - plotOffset.bottom - plotOffset.top + axis.labelHeight; + } + } + + function adjustLayoutForThingsStickingOut() { + // possibly adjust plot offset to ensure everything stays + // inside the canvas and isn't clipped off + + var minMargin = options.grid.minBorderMargin, + axis, i; + + // check stuff from the plot (FIXME: this should just read + // a value from the series, otherwise it's impossible to + // customize) + if (minMargin == null) { + minMargin = 0; + for (i = 0; i < series.length; ++i) + minMargin = Math.max(minMargin, 2 * (series[i].points.radius + series[i].points.lineWidth/2)); + } + + var margins = { + left: minMargin, + right: minMargin, + top: minMargin, + bottom: minMargin + }; + + // check axis labels, note we don't check the actual + // labels but instead use the overall width/height to not + // jump as much around with replots + $.each(allAxes(), function (_, axis) { + if (axis.reserveSpace && axis.ticks && axis.ticks.length) { + if (axis.direction === "x") { + margins.left = Math.max(margins.left, axis.labelWidth / 2); + margins.right = Math.max(margins.right, axis.labelWidth / 2); + } else { + margins.bottom = Math.max(margins.bottom, axis.labelHeight / 2); + margins.top = Math.max(margins.top, axis.labelHeight / 2); + } + } + }); + + plotOffset.left = Math.ceil(Math.max(margins.left, plotOffset.left)); + plotOffset.right = Math.ceil(Math.max(margins.right, plotOffset.right)); + plotOffset.top = Math.ceil(Math.max(margins.top, plotOffset.top)); + plotOffset.bottom = Math.ceil(Math.max(margins.bottom, plotOffset.bottom)); + } + + function setupGrid() { + var i, axes = allAxes(), showGrid = options.grid.show; + + // Initialize the plot's offset from the edge of the canvas + + for (var a in plotOffset) { + var margin = options.grid.margin || 0; + plotOffset[a] = typeof margin == "number" ? margin : margin[a] || 0; + } + + executeHooks(hooks.processOffset, [plotOffset]); + + // If the grid is visible, add its border width to the offset + + for (var a in plotOffset) { + if(typeof(options.grid.borderWidth) == "object") { + plotOffset[a] += showGrid ? options.grid.borderWidth[a] : 0; + } + else { + plotOffset[a] += showGrid ? options.grid.borderWidth : 0; + } + } + + $.each(axes, function (_, axis) { + var axisOpts = axis.options; + axis.show = axisOpts.show == null ? axis.used : axisOpts.show; + axis.reserveSpace = axisOpts.reserveSpace == null ? axis.show : axisOpts.reserveSpace; + setRange(axis); + }); + + if (showGrid) { + + var allocatedAxes = $.grep(axes, function (axis) { + return axis.show || axis.reserveSpace; + }); + + $.each(allocatedAxes, function (_, axis) { + // make the ticks + setupTickGeneration(axis); + setTicks(axis); + snapRangeToTicks(axis, axis.ticks); + // find labelWidth/Height for axis + measureTickLabels(axis); + }); + + // with all dimensions calculated, we can compute the + // axis bounding boxes, start from the outside + // (reverse order) + for (i = allocatedAxes.length - 1; i >= 0; --i) + allocateAxisBoxFirstPhase(allocatedAxes[i]); + + // make sure we've got enough space for things that + // might stick out + adjustLayoutForThingsStickingOut(); + + $.each(allocatedAxes, function (_, axis) { + allocateAxisBoxSecondPhase(axis); + }); + } + + plotWidth = surface.width - plotOffset.left - plotOffset.right; + plotHeight = surface.height - plotOffset.bottom - plotOffset.top; + + // now we got the proper plot dimensions, we can compute the scaling + $.each(axes, function (_, axis) { + setTransformationHelpers(axis); + }); + + if (showGrid) { + drawAxisLabels(); + } + + insertLegend(); + } + + function setRange(axis) { + var opts = axis.options, + min = +(opts.min != null ? opts.min : axis.datamin), + max = +(opts.max != null ? opts.max : axis.datamax), + delta = max - min; + + if (delta == 0.0) { + // degenerate case + var widen = max == 0 ? 1 : 0.01; + + if (opts.min == null) + min -= widen; + // always widen max if we couldn't widen min to ensure we + // don't fall into min == max which doesn't work + if (opts.max == null || opts.min != null) + max += widen; + } + else { + // consider autoscaling + var margin = opts.autoscaleMargin; + if (margin != null) { + if (opts.min == null) { + min -= delta * margin; + // make sure we don't go below zero if all values + // are positive + if (min < 0 && axis.datamin != null && axis.datamin >= 0) + min = 0; + } + if (opts.max == null) { + max += delta * margin; + if (max > 0 && axis.datamax != null && axis.datamax <= 0) + max = 0; + } + } + } + axis.min = min; + axis.max = max; + } + + function setupTickGeneration(axis) { + var opts = axis.options; + + // estimate number of ticks + var noTicks; + if (typeof opts.ticks == "number" && opts.ticks > 0) + noTicks = opts.ticks; + else + // heuristic based on the model a*sqrt(x) fitted to + // some data points that seemed reasonable + noTicks = 0.3 * Math.sqrt(axis.direction == "x" ? surface.width : surface.height); + + var delta = (axis.max - axis.min) / noTicks, + dec = -Math.floor(Math.log(delta) / Math.LN10), + maxDec = opts.tickDecimals; + + if (maxDec != null && dec > maxDec) { + dec = maxDec; + } + + var magn = Math.pow(10, -dec), + norm = delta / magn, // norm is between 1.0 and 10.0 + size; + + if (norm < 1.5) { + size = 1; + } else if (norm < 3) { + size = 2; + // special case for 2.5, requires an extra decimal + if (norm > 2.25 && (maxDec == null || dec + 1 <= maxDec)) { + size = 2.5; + ++dec; + } + } else if (norm < 7.5) { + size = 5; + } else { + size = 10; + } + + size *= magn; + + if (opts.minTickSize != null && size < opts.minTickSize) { + size = opts.minTickSize; + } + + axis.delta = delta; + axis.tickDecimals = Math.max(0, maxDec != null ? maxDec : dec); + axis.tickSize = opts.tickSize || size; + + // Time mode was moved to a plug-in in 0.8, and since so many people use it + // we'll add an especially friendly reminder to make sure they included it. + + if (opts.mode == "time" && !axis.tickGenerator) { + throw new Error("Time mode requires the flot.time plugin."); + } + + // Flot supports base-10 axes; any other mode else is handled by a plug-in, + // like flot.time.js. + + if (!axis.tickGenerator) { + + axis.tickGenerator = function (axis) { + + var ticks = [], + start = floorInBase(axis.min, axis.tickSize), + i = 0, + v = Number.NaN, + prev; + + do { + prev = v; + v = start + i * axis.tickSize; + ticks.push(v); + ++i; + } while (v < axis.max && v != prev); + return ticks; + }; + + axis.tickFormatter = function (value, axis) { + + var factor = axis.tickDecimals ? Math.pow(10, axis.tickDecimals) : 1; + var formatted = "" + Math.round(value * factor) / factor; + + // If tickDecimals was specified, ensure that we have exactly that + // much precision; otherwise default to the value's own precision. + + if (axis.tickDecimals != null) { + var decimal = formatted.indexOf("."); + var precision = decimal == -1 ? 0 : formatted.length - decimal - 1; + if (precision < axis.tickDecimals) { + return (precision ? formatted : formatted + ".") + ("" + factor).substr(1, axis.tickDecimals - precision); + } + } + + return formatted; + }; + } + + if ($.isFunction(opts.tickFormatter)) + axis.tickFormatter = function (v, axis) { return "" + opts.tickFormatter(v, axis); }; + + if (opts.alignTicksWithAxis != null) { + var otherAxis = (axis.direction == "x" ? xaxes : yaxes)[opts.alignTicksWithAxis - 1]; + if (otherAxis && otherAxis.used && otherAxis != axis) { + // consider snapping min/max to outermost nice ticks + var niceTicks = axis.tickGenerator(axis); + if (niceTicks.length > 0) { + if (opts.min == null) + axis.min = Math.min(axis.min, niceTicks[0]); + if (opts.max == null && niceTicks.length > 1) + axis.max = Math.max(axis.max, niceTicks[niceTicks.length - 1]); + } + + axis.tickGenerator = function (axis) { + // copy ticks, scaled to this axis + var ticks = [], v, i; + for (i = 0; i < otherAxis.ticks.length; ++i) { + v = (otherAxis.ticks[i].v - otherAxis.min) / (otherAxis.max - otherAxis.min); + v = axis.min + v * (axis.max - axis.min); + ticks.push(v); + } + return ticks; + }; + + // we might need an extra decimal since forced + // ticks don't necessarily fit naturally + if (!axis.mode && opts.tickDecimals == null) { + var extraDec = Math.max(0, -Math.floor(Math.log(axis.delta) / Math.LN10) + 1), + ts = axis.tickGenerator(axis); + + // only proceed if the tick interval rounded + // with an extra decimal doesn't give us a + // zero at end + if (!(ts.length > 1 && /\..*0$/.test((ts[1] - ts[0]).toFixed(extraDec)))) + axis.tickDecimals = extraDec; + } + } + } + } + + function setTicks(axis) { + var oticks = axis.options.ticks, ticks = []; + if (oticks == null || (typeof oticks == "number" && oticks > 0)) + ticks = axis.tickGenerator(axis); + else if (oticks) { + if ($.isFunction(oticks)) + // generate the ticks + ticks = oticks(axis); + else + ticks = oticks; + } + + // clean up/labelify the supplied ticks, copy them over + var i, v; + axis.ticks = []; + for (i = 0; i < ticks.length; ++i) { + var label = null; + var t = ticks[i]; + if (typeof t == "object") { + v = +t[0]; + if (t.length > 1) + label = t[1]; + } + else + v = +t; + if (label == null) + label = axis.tickFormatter(v, axis); + if (!isNaN(v)) + axis.ticks.push({ v: v, label: label }); + } + } + + function snapRangeToTicks(axis, ticks) { + if (axis.options.autoscaleMargin && ticks.length > 0) { + // snap to ticks + if (axis.options.min == null) + axis.min = Math.min(axis.min, ticks[0].v); + if (axis.options.max == null && ticks.length > 1) + axis.max = Math.max(axis.max, ticks[ticks.length - 1].v); + } + } + + function draw() { + + surface.clear(); + + executeHooks(hooks.drawBackground, [ctx]); + + var grid = options.grid; + + // draw background, if any + if (grid.show && grid.backgroundColor) + drawBackground(); + + if (grid.show && !grid.aboveData) { + drawGrid(); + } + + for (var i = 0; i < series.length; ++i) { + executeHooks(hooks.drawSeries, [ctx, series[i]]); + drawSeries(series[i]); + } + + executeHooks(hooks.draw, [ctx]); + + if (grid.show && grid.aboveData) { + drawGrid(); + } + + surface.render(); + + // A draw implies that either the axes or data have changed, so we + // should probably update the overlay highlights as well. + + triggerRedrawOverlay(); + } + + function extractRange(ranges, coord) { + var axis, from, to, key, axes = allAxes(); + + for (var i = 0; i < axes.length; ++i) { + axis = axes[i]; + if (axis.direction == coord) { + key = coord + axis.n + "axis"; + if (!ranges[key] && axis.n == 1) + key = coord + "axis"; // support x1axis as xaxis + if (ranges[key]) { + from = ranges[key].from; + to = ranges[key].to; + break; + } + } + } + + // backwards-compat stuff - to be removed in future + if (!ranges[key]) { + axis = coord == "x" ? xaxes[0] : yaxes[0]; + from = ranges[coord + "1"]; + to = ranges[coord + "2"]; + } + + // auto-reverse as an added bonus + if (from != null && to != null && from > to) { + var tmp = from; + from = to; + to = tmp; + } + + return { from: from, to: to, axis: axis }; + } + + function drawBackground() { + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + + ctx.fillStyle = getColorOrGradient(options.grid.backgroundColor, plotHeight, 0, "rgba(255, 255, 255, 0)"); + ctx.fillRect(0, 0, plotWidth, plotHeight); + ctx.restore(); + } + + function drawGrid() { + var i, axes, bw, bc; + + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + + // draw markings + var markings = options.grid.markings; + if (markings) { + if ($.isFunction(markings)) { + axes = plot.getAxes(); + // xmin etc. is backwards compatibility, to be + // removed in the future + axes.xmin = axes.xaxis.min; + axes.xmax = axes.xaxis.max; + axes.ymin = axes.yaxis.min; + axes.ymax = axes.yaxis.max; + + markings = markings(axes); + } + + for (i = 0; i < markings.length; ++i) { + var m = markings[i], + xrange = extractRange(m, "x"), + yrange = extractRange(m, "y"); + + // fill in missing + if (xrange.from == null) + xrange.from = xrange.axis.min; + if (xrange.to == null) + xrange.to = xrange.axis.max; + if (yrange.from == null) + yrange.from = yrange.axis.min; + if (yrange.to == null) + yrange.to = yrange.axis.max; + + // clip + if (xrange.to < xrange.axis.min || xrange.from > xrange.axis.max || + yrange.to < yrange.axis.min || yrange.from > yrange.axis.max) + continue; + + xrange.from = Math.max(xrange.from, xrange.axis.min); + xrange.to = Math.min(xrange.to, xrange.axis.max); + yrange.from = Math.max(yrange.from, yrange.axis.min); + yrange.to = Math.min(yrange.to, yrange.axis.max); + + var xequal = xrange.from === xrange.to, + yequal = yrange.from === yrange.to; + + if (xequal && yequal) { + continue; + } + + // then draw + xrange.from = Math.floor(xrange.axis.p2c(xrange.from)); + xrange.to = Math.floor(xrange.axis.p2c(xrange.to)); + yrange.from = Math.floor(yrange.axis.p2c(yrange.from)); + yrange.to = Math.floor(yrange.axis.p2c(yrange.to)); + + if (xequal || yequal) { + var lineWidth = m.lineWidth || options.grid.markingsLineWidth, + subPixel = lineWidth % 2 ? 0.5 : 0; + ctx.beginPath(); + ctx.strokeStyle = m.color || options.grid.markingsColor; + ctx.lineWidth = lineWidth; + if (xequal) { + ctx.moveTo(xrange.to + subPixel, yrange.from); + ctx.lineTo(xrange.to + subPixel, yrange.to); + } else { + ctx.moveTo(xrange.from, yrange.to + subPixel); + ctx.lineTo(xrange.to, yrange.to + subPixel); + } + ctx.stroke(); + } else { + ctx.fillStyle = m.color || options.grid.markingsColor; + ctx.fillRect(xrange.from, yrange.to, + xrange.to - xrange.from, + yrange.from - yrange.to); + } + } + } + + // draw the ticks + axes = allAxes(); + bw = options.grid.borderWidth; + + for (var j = 0; j < axes.length; ++j) { + var axis = axes[j], box = axis.box, + t = axis.tickLength, x, y, xoff, yoff; + if (!axis.show || axis.ticks.length == 0) + continue; + + ctx.lineWidth = 1; + + // find the edges + if (axis.direction == "x") { + x = 0; + if (t == "full") + y = (axis.position == "top" ? 0 : plotHeight); + else + y = box.top - plotOffset.top + (axis.position == "top" ? box.height : 0); + } + else { + y = 0; + if (t == "full") + x = (axis.position == "left" ? 0 : plotWidth); + else + x = box.left - plotOffset.left + (axis.position == "left" ? box.width : 0); + } + + // draw tick bar + if (!axis.innermost) { + ctx.strokeStyle = axis.options.color; + ctx.beginPath(); + xoff = yoff = 0; + if (axis.direction == "x") + xoff = plotWidth + 1; + else + yoff = plotHeight + 1; + + if (ctx.lineWidth == 1) { + if (axis.direction == "x") { + y = Math.floor(y) + 0.5; + } else { + x = Math.floor(x) + 0.5; + } + } + + ctx.moveTo(x, y); + ctx.lineTo(x + xoff, y + yoff); + ctx.stroke(); + } + + // draw ticks + + ctx.strokeStyle = axis.options.tickColor; + + ctx.beginPath(); + for (i = 0; i < axis.ticks.length; ++i) { + var v = axis.ticks[i].v; + + xoff = yoff = 0; + + if (isNaN(v) || v < axis.min || v > axis.max + // skip those lying on the axes if we got a border + || (t == "full" + && ((typeof bw == "object" && bw[axis.position] > 0) || bw > 0) + && (v == axis.min || v == axis.max))) + continue; + + if (axis.direction == "x") { + x = axis.p2c(v); + yoff = t == "full" ? -plotHeight : t; + + if (axis.position == "top") + yoff = -yoff; + } + else { + y = axis.p2c(v); + xoff = t == "full" ? -plotWidth : t; + + if (axis.position == "left") + xoff = -xoff; + } + + if (ctx.lineWidth == 1) { + if (axis.direction == "x") + x = Math.floor(x) + 0.5; + else + y = Math.floor(y) + 0.5; + } + + ctx.moveTo(x, y); + ctx.lineTo(x + xoff, y + yoff); + } + + ctx.stroke(); + } + + + // draw border + if (bw) { + // If either borderWidth or borderColor is an object, then draw the border + // line by line instead of as one rectangle + bc = options.grid.borderColor; + if(typeof bw == "object" || typeof bc == "object") { + if (typeof bw !== "object") { + bw = {top: bw, right: bw, bottom: bw, left: bw}; + } + if (typeof bc !== "object") { + bc = {top: bc, right: bc, bottom: bc, left: bc}; + } + + if (bw.top > 0) { + ctx.strokeStyle = bc.top; + ctx.lineWidth = bw.top; + ctx.beginPath(); + ctx.moveTo(0 - bw.left, 0 - bw.top/2); + ctx.lineTo(plotWidth, 0 - bw.top/2); + ctx.stroke(); + } + + if (bw.right > 0) { + ctx.strokeStyle = bc.right; + ctx.lineWidth = bw.right; + ctx.beginPath(); + ctx.moveTo(plotWidth + bw.right / 2, 0 - bw.top); + ctx.lineTo(plotWidth + bw.right / 2, plotHeight); + ctx.stroke(); + } + + if (bw.bottom > 0) { + ctx.strokeStyle = bc.bottom; + ctx.lineWidth = bw.bottom; + ctx.beginPath(); + ctx.moveTo(plotWidth + bw.right, plotHeight + bw.bottom / 2); + ctx.lineTo(0, plotHeight + bw.bottom / 2); + ctx.stroke(); + } + + if (bw.left > 0) { + ctx.strokeStyle = bc.left; + ctx.lineWidth = bw.left; + ctx.beginPath(); + ctx.moveTo(0 - bw.left/2, plotHeight + bw.bottom); + ctx.lineTo(0- bw.left/2, 0); + ctx.stroke(); + } + } + else { + ctx.lineWidth = bw; + ctx.strokeStyle = options.grid.borderColor; + ctx.strokeRect(-bw/2, -bw/2, plotWidth + bw, plotHeight + bw); + } + } + + ctx.restore(); + } + + function drawAxisLabels() { + + $.each(allAxes(), function (_, axis) { + var box = axis.box, + legacyStyles = axis.direction + "Axis " + axis.direction + axis.n + "Axis", + layer = "flot-" + axis.direction + "-axis flot-" + axis.direction + axis.n + "-axis " + legacyStyles, + font = axis.options.font || "flot-tick-label tickLabel", + tick, x, y, halign, valign; + + // Remove text before checking for axis.show and ticks.length; + // otherwise plugins, like flot-tickrotor, that draw their own + // tick labels will end up with both theirs and the defaults. + + surface.removeText(layer); + + if (!axis.show || axis.ticks.length == 0) + return; + + for (var i = 0; i < axis.ticks.length; ++i) { + + tick = axis.ticks[i]; + if (!tick.label || tick.v < axis.min || tick.v > axis.max) + continue; + + if (axis.direction == "x") { + halign = "center"; + x = plotOffset.left + axis.p2c(tick.v); + if (axis.position == "bottom") { + y = box.top + box.padding; + } else { + y = box.top + box.height - box.padding; + valign = "bottom"; + } + } else { + valign = "middle"; + y = plotOffset.top + axis.p2c(tick.v); + if (axis.position == "left") { + x = box.left + box.width - box.padding; + halign = "right"; + } else { + x = box.left + box.padding; + } + } + + surface.addText(layer, x, y, tick.label, font, null, null, halign, valign); + } + }); + } + + function drawSeries(series) { + if (series.lines.show) + drawSeriesLines(series); + if (series.bars.show) + drawSeriesBars(series); + if (series.points.show) + drawSeriesPoints(series); + } + + function drawSeriesLines(series) { + function plotLine(datapoints, xoffset, yoffset, axisx, axisy) { + var points = datapoints.points, + ps = datapoints.pointsize, + prevx = null, prevy = null; + + ctx.beginPath(); + for (var i = ps; i < points.length; i += ps) { + var x1 = points[i - ps], y1 = points[i - ps + 1], + x2 = points[i], y2 = points[i + 1]; + + if (x1 == null || x2 == null) + continue; + + // clip with ymin + if (y1 <= y2 && y1 < axisy.min) { + if (y2 < axisy.min) + continue; // line segment is outside + // compute new intersection point + x1 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; + y1 = axisy.min; + } + else if (y2 <= y1 && y2 < axisy.min) { + if (y1 < axisy.min) + continue; + x2 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; + y2 = axisy.min; + } + + // clip with ymax + if (y1 >= y2 && y1 > axisy.max) { + if (y2 > axisy.max) + continue; + x1 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; + y1 = axisy.max; + } + else if (y2 >= y1 && y2 > axisy.max) { + if (y1 > axisy.max) + continue; + x2 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; + y2 = axisy.max; + } + + // clip with xmin + if (x1 <= x2 && x1 < axisx.min) { + if (x2 < axisx.min) + continue; + y1 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; + x1 = axisx.min; + } + else if (x2 <= x1 && x2 < axisx.min) { + if (x1 < axisx.min) + continue; + y2 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; + x2 = axisx.min; + } + + // clip with xmax + if (x1 >= x2 && x1 > axisx.max) { + if (x2 > axisx.max) + continue; + y1 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; + x1 = axisx.max; + } + else if (x2 >= x1 && x2 > axisx.max) { + if (x1 > axisx.max) + continue; + y2 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; + x2 = axisx.max; + } + + if (x1 != prevx || y1 != prevy) + ctx.moveTo(axisx.p2c(x1) + xoffset, axisy.p2c(y1) + yoffset); + + prevx = x2; + prevy = y2; + ctx.lineTo(axisx.p2c(x2) + xoffset, axisy.p2c(y2) + yoffset); + } + ctx.stroke(); + } + + function plotLineArea(datapoints, axisx, axisy) { + var points = datapoints.points, + ps = datapoints.pointsize, + bottom = Math.min(Math.max(0, axisy.min), axisy.max), + i = 0, top, areaOpen = false, + ypos = 1, segmentStart = 0, segmentEnd = 0; + + // we process each segment in two turns, first forward + // direction to sketch out top, then once we hit the + // end we go backwards to sketch the bottom + while (true) { + if (ps > 0 && i > points.length + ps) + break; + + i += ps; // ps is negative if going backwards + + var x1 = points[i - ps], + y1 = points[i - ps + ypos], + x2 = points[i], y2 = points[i + ypos]; + + if (areaOpen) { + if (ps > 0 && x1 != null && x2 == null) { + // at turning point + segmentEnd = i; + ps = -ps; + ypos = 2; + continue; + } + + if (ps < 0 && i == segmentStart + ps) { + // done with the reverse sweep + ctx.fill(); + areaOpen = false; + ps = -ps; + ypos = 1; + i = segmentStart = segmentEnd + ps; + continue; + } + } + + if (x1 == null || x2 == null) + continue; + + // clip x values + + // clip with xmin + if (x1 <= x2 && x1 < axisx.min) { + if (x2 < axisx.min) + continue; + y1 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; + x1 = axisx.min; + } + else if (x2 <= x1 && x2 < axisx.min) { + if (x1 < axisx.min) + continue; + y2 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1; + x2 = axisx.min; + } + + // clip with xmax + if (x1 >= x2 && x1 > axisx.max) { + if (x2 > axisx.max) + continue; + y1 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; + x1 = axisx.max; + } + else if (x2 >= x1 && x2 > axisx.max) { + if (x1 > axisx.max) + continue; + y2 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1; + x2 = axisx.max; + } + + if (!areaOpen) { + // open area + ctx.beginPath(); + ctx.moveTo(axisx.p2c(x1), axisy.p2c(bottom)); + areaOpen = true; + } + + // now first check the case where both is outside + if (y1 >= axisy.max && y2 >= axisy.max) { + ctx.lineTo(axisx.p2c(x1), axisy.p2c(axisy.max)); + ctx.lineTo(axisx.p2c(x2), axisy.p2c(axisy.max)); + continue; + } + else if (y1 <= axisy.min && y2 <= axisy.min) { + ctx.lineTo(axisx.p2c(x1), axisy.p2c(axisy.min)); + ctx.lineTo(axisx.p2c(x2), axisy.p2c(axisy.min)); + continue; + } + + // else it's a bit more complicated, there might + // be a flat maxed out rectangle first, then a + // triangular cutout or reverse; to find these + // keep track of the current x values + var x1old = x1, x2old = x2; + + // clip the y values, without shortcutting, we + // go through all cases in turn + + // clip with ymin + if (y1 <= y2 && y1 < axisy.min && y2 >= axisy.min) { + x1 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; + y1 = axisy.min; + } + else if (y2 <= y1 && y2 < axisy.min && y1 >= axisy.min) { + x2 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1; + y2 = axisy.min; + } + + // clip with ymax + if (y1 >= y2 && y1 > axisy.max && y2 <= axisy.max) { + x1 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; + y1 = axisy.max; + } + else if (y2 >= y1 && y2 > axisy.max && y1 <= axisy.max) { + x2 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1; + y2 = axisy.max; + } + + // if the x value was changed we got a rectangle + // to fill + if (x1 != x1old) { + ctx.lineTo(axisx.p2c(x1old), axisy.p2c(y1)); + // it goes to (x1, y1), but we fill that below + } + + // fill triangular section, this sometimes result + // in redundant points if (x1, y1) hasn't changed + // from previous line to, but we just ignore that + ctx.lineTo(axisx.p2c(x1), axisy.p2c(y1)); + ctx.lineTo(axisx.p2c(x2), axisy.p2c(y2)); + + // fill the other rectangle if it's there + if (x2 != x2old) { + ctx.lineTo(axisx.p2c(x2), axisy.p2c(y2)); + ctx.lineTo(axisx.p2c(x2old), axisy.p2c(y2)); + } + } + } + + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + ctx.lineJoin = "round"; + + var lw = series.lines.lineWidth, + sw = series.shadowSize; + // FIXME: consider another form of shadow when filling is turned on + if (lw > 0 && sw > 0) { + // draw shadow as a thick and thin line with transparency + ctx.lineWidth = sw; + ctx.strokeStyle = "rgba(0,0,0,0.1)"; + // position shadow at angle from the mid of line + var angle = Math.PI/18; + plotLine(series.datapoints, Math.sin(angle) * (lw/2 + sw/2), Math.cos(angle) * (lw/2 + sw/2), series.xaxis, series.yaxis); + ctx.lineWidth = sw/2; + plotLine(series.datapoints, Math.sin(angle) * (lw/2 + sw/4), Math.cos(angle) * (lw/2 + sw/4), series.xaxis, series.yaxis); + } + + ctx.lineWidth = lw; + ctx.strokeStyle = series.color; + var fillStyle = getFillStyle(series.lines, series.color, 0, plotHeight); + if (fillStyle) { + ctx.fillStyle = fillStyle; + plotLineArea(series.datapoints, series.xaxis, series.yaxis); + } + + if (lw > 0) + plotLine(series.datapoints, 0, 0, series.xaxis, series.yaxis); + ctx.restore(); + } + + function drawSeriesPoints(series) { + function plotPoints(datapoints, radius, fillStyle, offset, shadow, axisx, axisy, symbol) { + var points = datapoints.points, ps = datapoints.pointsize; + + for (var i = 0; i < points.length; i += ps) { + var x = points[i], y = points[i + 1]; + if (x == null || x < axisx.min || x > axisx.max || y < axisy.min || y > axisy.max) + continue; + + ctx.beginPath(); + x = axisx.p2c(x); + y = axisy.p2c(y) + offset; + if (symbol == "circle") + ctx.arc(x, y, radius, 0, shadow ? Math.PI : Math.PI * 2, false); + else + symbol(ctx, x, y, radius, shadow); + ctx.closePath(); + + if (fillStyle) { + ctx.fillStyle = fillStyle; + ctx.fill(); + } + ctx.stroke(); + } + } + + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + + var lw = series.points.lineWidth, + sw = series.shadowSize, + radius = series.points.radius, + symbol = series.points.symbol; + + // If the user sets the line width to 0, we change it to a very + // small value. A line width of 0 seems to force the default of 1. + // Doing the conditional here allows the shadow setting to still be + // optional even with a lineWidth of 0. + + if( lw == 0 ) + lw = 0.0001; + + if (lw > 0 && sw > 0) { + // draw shadow in two steps + var w = sw / 2; + ctx.lineWidth = w; + ctx.strokeStyle = "rgba(0,0,0,0.1)"; + plotPoints(series.datapoints, radius, null, w + w/2, true, + series.xaxis, series.yaxis, symbol); + + ctx.strokeStyle = "rgba(0,0,0,0.2)"; + plotPoints(series.datapoints, radius, null, w/2, true, + series.xaxis, series.yaxis, symbol); + } + + ctx.lineWidth = lw; + ctx.strokeStyle = series.color; + plotPoints(series.datapoints, radius, + getFillStyle(series.points, series.color), 0, false, + series.xaxis, series.yaxis, symbol); + ctx.restore(); + } + + function drawBar(x, y, b, barLeft, barRight, fillStyleCallback, axisx, axisy, c, horizontal, lineWidth) { + var left, right, bottom, top, + drawLeft, drawRight, drawTop, drawBottom, + tmp; + + // in horizontal mode, we start the bar from the left + // instead of from the bottom so it appears to be + // horizontal rather than vertical + if (horizontal) { + drawBottom = drawRight = drawTop = true; + drawLeft = false; + left = b; + right = x; + top = y + barLeft; + bottom = y + barRight; + + // account for negative bars + if (right < left) { + tmp = right; + right = left; + left = tmp; + drawLeft = true; + drawRight = false; + } + } + else { + drawLeft = drawRight = drawTop = true; + drawBottom = false; + left = x + barLeft; + right = x + barRight; + bottom = b; + top = y; + + // account for negative bars + if (top < bottom) { + tmp = top; + top = bottom; + bottom = tmp; + drawBottom = true; + drawTop = false; + } + } + + // clip + if (right < axisx.min || left > axisx.max || + top < axisy.min || bottom > axisy.max) + return; + + if (left < axisx.min) { + left = axisx.min; + drawLeft = false; + } + + if (right > axisx.max) { + right = axisx.max; + drawRight = false; + } + + if (bottom < axisy.min) { + bottom = axisy.min; + drawBottom = false; + } + + if (top > axisy.max) { + top = axisy.max; + drawTop = false; + } + + left = axisx.p2c(left); + bottom = axisy.p2c(bottom); + right = axisx.p2c(right); + top = axisy.p2c(top); + + // fill the bar + if (fillStyleCallback) { + c.fillStyle = fillStyleCallback(bottom, top); + c.fillRect(left, top, right - left, bottom - top) + } + + // draw outline + if (lineWidth > 0 && (drawLeft || drawRight || drawTop || drawBottom)) { + c.beginPath(); + + // FIXME: inline moveTo is buggy with excanvas + c.moveTo(left, bottom); + if (drawLeft) + c.lineTo(left, top); + else + c.moveTo(left, top); + if (drawTop) + c.lineTo(right, top); + else + c.moveTo(right, top); + if (drawRight) + c.lineTo(right, bottom); + else + c.moveTo(right, bottom); + if (drawBottom) + c.lineTo(left, bottom); + else + c.moveTo(left, bottom); + c.stroke(); + } + } + + function drawSeriesBars(series) { + function plotBars(datapoints, barLeft, barRight, fillStyleCallback, axisx, axisy) { + var points = datapoints.points, ps = datapoints.pointsize; + + for (var i = 0; i < points.length; i += ps) { + if (points[i] == null) + continue; + drawBar(points[i], points[i + 1], points[i + 2], barLeft, barRight, fillStyleCallback, axisx, axisy, ctx, series.bars.horizontal, series.bars.lineWidth); + } + } + + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + + // FIXME: figure out a way to add shadows (for instance along the right edge) + ctx.lineWidth = series.bars.lineWidth; + ctx.strokeStyle = series.color; + + var barLeft; + + switch (series.bars.align) { + case "left": + barLeft = 0; + break; + case "right": + barLeft = -series.bars.barWidth; + break; + default: + barLeft = -series.bars.barWidth / 2; + } + + var fillStyleCallback = series.bars.fill ? function (bottom, top) { return getFillStyle(series.bars, series.color, bottom, top); } : null; + plotBars(series.datapoints, barLeft, barLeft + series.bars.barWidth, fillStyleCallback, series.xaxis, series.yaxis); + ctx.restore(); + } + + function getFillStyle(filloptions, seriesColor, bottom, top) { + var fill = filloptions.fill; + if (!fill) + return null; + + if (filloptions.fillColor) + return getColorOrGradient(filloptions.fillColor, bottom, top, seriesColor); + + var c = $.color.parse(seriesColor); + c.a = typeof fill == "number" ? fill : 0.4; + c.normalize(); + return c.toString(); + } + + function insertLegend() { + + if (options.legend.container != null) { + $(options.legend.container).html(""); + } else { + placeholder.find(".legend").remove(); + } + + if (!options.legend.show) { + return; + } + + var fragments = [], entries = [], rowStarted = false, + lf = options.legend.labelFormatter, s, label; + + // Build a list of legend entries, with each having a label and a color + + for (var i = 0; i < series.length; ++i) { + s = series[i]; + if (s.label) { + label = lf ? lf(s.label, s) : s.label; + if (label) { + entries.push({ + label: label, + color: s.color + }); + } + } + } + + // Sort the legend using either the default or a custom comparator + + if (options.legend.sorted) { + if ($.isFunction(options.legend.sorted)) { + entries.sort(options.legend.sorted); + } else if (options.legend.sorted == "reverse") { + entries.reverse(); + } else { + var ascending = options.legend.sorted != "descending"; + entries.sort(function(a, b) { + return a.label == b.label ? 0 : ( + (a.label < b.label) != ascending ? 1 : -1 // Logical XOR + ); + }); + } + } + + // Generate markup for the list of entries, in their final order + + for (var i = 0; i < entries.length; ++i) { + + var entry = entries[i]; + + if (i % options.legend.noColumns == 0) { + if (rowStarted) + fragments.push(''); + fragments.push(''); + rowStarted = true; + } + + fragments.push( + '
    ' + + '' + entry.label + '' + ); + } + + if (rowStarted) + fragments.push(''); + + if (fragments.length == 0) + return; + + var table = '' + fragments.join("") + '
    '; + if (options.legend.container != null) + $(options.legend.container).html(table); + else { + var pos = "", + p = options.legend.position, + m = options.legend.margin; + if (m[0] == null) + m = [m, m]; + if (p.charAt(0) == "n") + pos += 'top:' + (m[1] + plotOffset.top) + 'px;'; + else if (p.charAt(0) == "s") + pos += 'bottom:' + (m[1] + plotOffset.bottom) + 'px;'; + if (p.charAt(1) == "e") + pos += 'right:' + (m[0] + plotOffset.right) + 'px;'; + else if (p.charAt(1) == "w") + pos += 'left:' + (m[0] + plotOffset.left) + 'px;'; + var legend = $('
    ' + table.replace('style="', 'style="position:absolute;' + pos +';') + '
    ').appendTo(placeholder); + if (options.legend.backgroundOpacity != 0.0) { + // put in the transparent background + // separately to avoid blended labels and + // label boxes + var c = options.legend.backgroundColor; + if (c == null) { + c = options.grid.backgroundColor; + if (c && typeof c == "string") + c = $.color.parse(c); + else + c = $.color.extract(legend, 'background-color'); + c.a = 1; + c = c.toString(); + } + var div = legend.children(); + $('
    ').prependTo(legend).css('opacity', options.legend.backgroundOpacity); + } + } + } + + + // interactive features + + var highlights = [], + redrawTimeout = null; + + // returns the data item the mouse is over, or null if none is found + function findNearbyItem(mouseX, mouseY, seriesFilter) { + var maxDistance = options.grid.mouseActiveRadius, + smallestDistance = maxDistance * maxDistance + 1, + item = null, foundPoint = false, i, j, ps; + + for (i = series.length - 1; i >= 0; --i) { + if (!seriesFilter(series[i])) + continue; + + var s = series[i], + axisx = s.xaxis, + axisy = s.yaxis, + points = s.datapoints.points, + mx = axisx.c2p(mouseX), // precompute some stuff to make the loop faster + my = axisy.c2p(mouseY), + maxx = maxDistance / axisx.scale, + maxy = maxDistance / axisy.scale; + + ps = s.datapoints.pointsize; + // with inverse transforms, we can't use the maxx/maxy + // optimization, sadly + if (axisx.options.inverseTransform) + maxx = Number.MAX_VALUE; + if (axisy.options.inverseTransform) + maxy = Number.MAX_VALUE; + + if (s.lines.show || s.points.show) { + for (j = 0; j < points.length; j += ps) { + var x = points[j], y = points[j + 1]; + if (x == null) + continue; + + // For points and lines, the cursor must be within a + // certain distance to the data point + if (x - mx > maxx || x - mx < -maxx || + y - my > maxy || y - my < -maxy) + continue; + + // We have to calculate distances in pixels, not in + // data units, because the scales of the axes may be different + var dx = Math.abs(axisx.p2c(x) - mouseX), + dy = Math.abs(axisy.p2c(y) - mouseY), + dist = dx * dx + dy * dy; // we save the sqrt + + // use <= to ensure last point takes precedence + // (last generally means on top of) + if (dist < smallestDistance) { + smallestDistance = dist; + item = [i, j / ps]; + } + } + } + + if (s.bars.show && !item) { // no other point can be nearby + + var barLeft, barRight; + + switch (s.bars.align) { + case "left": + barLeft = 0; + break; + case "right": + barLeft = -s.bars.barWidth; + break; + default: + barLeft = -s.bars.barWidth / 2; + } + + barRight = barLeft + s.bars.barWidth; + + for (j = 0; j < points.length; j += ps) { + var x = points[j], y = points[j + 1], b = points[j + 2]; + if (x == null) + continue; + + // for a bar graph, the cursor must be inside the bar + if (series[i].bars.horizontal ? + (mx <= Math.max(b, x) && mx >= Math.min(b, x) && + my >= y + barLeft && my <= y + barRight) : + (mx >= x + barLeft && mx <= x + barRight && + my >= Math.min(b, y) && my <= Math.max(b, y))) + item = [i, j / ps]; + } + } + } + + if (item) { + i = item[0]; + j = item[1]; + ps = series[i].datapoints.pointsize; + + return { datapoint: series[i].datapoints.points.slice(j * ps, (j + 1) * ps), + dataIndex: j, + series: series[i], + seriesIndex: i }; + } + + return null; + } + + function onMouseMove(e) { + if (options.grid.hoverable) + triggerClickHoverEvent("plothover", e, + function (s) { return s["hoverable"] != false; }); + } + + function onMouseLeave(e) { + if (options.grid.hoverable) + triggerClickHoverEvent("plothover", e, + function (s) { return false; }); + } + + function onClick(e) { + triggerClickHoverEvent("plotclick", e, + function (s) { return s["clickable"] != false; }); + } + + // trigger click or hover event (they send the same parameters + // so we share their code) + function triggerClickHoverEvent(eventname, event, seriesFilter) { + var offset = eventHolder.offset(), + canvasX = event.pageX - offset.left - plotOffset.left, + canvasY = event.pageY - offset.top - plotOffset.top, + pos = canvasToAxisCoords({ left: canvasX, top: canvasY }); + + pos.pageX = event.pageX; + pos.pageY = event.pageY; + + var item = findNearbyItem(canvasX, canvasY, seriesFilter); + + if (item) { + // fill in mouse pos for any listeners out there + item.pageX = parseInt(item.series.xaxis.p2c(item.datapoint[0]) + offset.left + plotOffset.left, 10); + item.pageY = parseInt(item.series.yaxis.p2c(item.datapoint[1]) + offset.top + plotOffset.top, 10); + } + + if (options.grid.autoHighlight) { + // clear auto-highlights + for (var i = 0; i < highlights.length; ++i) { + var h = highlights[i]; + if (h.auto == eventname && + !(item && h.series == item.series && + h.point[0] == item.datapoint[0] && + h.point[1] == item.datapoint[1])) + unhighlight(h.series, h.point); + } + + if (item) + highlight(item.series, item.datapoint, eventname); + } + + placeholder.trigger(eventname, [ pos, item ]); + } + + function triggerRedrawOverlay() { + var t = options.interaction.redrawOverlayInterval; + if (t == -1) { // skip event queue + drawOverlay(); + return; + } + + if (!redrawTimeout) + redrawTimeout = setTimeout(drawOverlay, t); + } + + function drawOverlay() { + redrawTimeout = null; + + // draw highlights + octx.save(); + overlay.clear(); + octx.translate(plotOffset.left, plotOffset.top); + + var i, hi; + for (i = 0; i < highlights.length; ++i) { + hi = highlights[i]; + + if (hi.series.bars.show) + drawBarHighlight(hi.series, hi.point); + else + drawPointHighlight(hi.series, hi.point); + } + octx.restore(); + + executeHooks(hooks.drawOverlay, [octx]); + } + + function highlight(s, point, auto) { + if (typeof s == "number") + s = series[s]; + + if (typeof point == "number") { + var ps = s.datapoints.pointsize; + point = s.datapoints.points.slice(ps * point, ps * (point + 1)); + } + + var i = indexOfHighlight(s, point); + if (i == -1) { + highlights.push({ series: s, point: point, auto: auto }); + + triggerRedrawOverlay(); + } + else if (!auto) + highlights[i].auto = false; + } + + function unhighlight(s, point) { + if (s == null && point == null) { + highlights = []; + triggerRedrawOverlay(); + return; + } + + if (typeof s == "number") + s = series[s]; + + if (typeof point == "number") { + var ps = s.datapoints.pointsize; + point = s.datapoints.points.slice(ps * point, ps * (point + 1)); + } + + var i = indexOfHighlight(s, point); + if (i != -1) { + highlights.splice(i, 1); + + triggerRedrawOverlay(); + } + } + + function indexOfHighlight(s, p) { + for (var i = 0; i < highlights.length; ++i) { + var h = highlights[i]; + if (h.series == s && h.point[0] == p[0] + && h.point[1] == p[1]) + return i; + } + return -1; + } + + function drawPointHighlight(series, point) { + var x = point[0], y = point[1], + axisx = series.xaxis, axisy = series.yaxis, + highlightColor = (typeof series.highlightColor === "string") ? series.highlightColor : $.color.parse(series.color).scale('a', 0.5).toString(); + + if (x < axisx.min || x > axisx.max || y < axisy.min || y > axisy.max) + return; + + var pointRadius = series.points.radius + series.points.lineWidth / 2; + octx.lineWidth = pointRadius; + octx.strokeStyle = highlightColor; + var radius = 1.5 * pointRadius; + x = axisx.p2c(x); + y = axisy.p2c(y); + + octx.beginPath(); + if (series.points.symbol == "circle") + octx.arc(x, y, radius, 0, 2 * Math.PI, false); + else + series.points.symbol(octx, x, y, radius, false); + octx.closePath(); + octx.stroke(); + } + + function drawBarHighlight(series, point) { + var highlightColor = (typeof series.highlightColor === "string") ? series.highlightColor : $.color.parse(series.color).scale('a', 0.5).toString(), + fillStyle = highlightColor, + barLeft; + + switch (series.bars.align) { + case "left": + barLeft = 0; + break; + case "right": + barLeft = -series.bars.barWidth; + break; + default: + barLeft = -series.bars.barWidth / 2; + } + + octx.lineWidth = series.bars.lineWidth; + octx.strokeStyle = highlightColor; + + drawBar(point[0], point[1], point[2] || 0, barLeft, barLeft + series.bars.barWidth, + function () { return fillStyle; }, series.xaxis, series.yaxis, octx, series.bars.horizontal, series.bars.lineWidth); + } + + function getColorOrGradient(spec, bottom, top, defaultColor) { + if (typeof spec == "string") + return spec; + else { + // assume this is a gradient spec; IE currently only + // supports a simple vertical gradient properly, so that's + // what we support too + var gradient = ctx.createLinearGradient(0, top, 0, bottom); + + for (var i = 0, l = spec.colors.length; i < l; ++i) { + var c = spec.colors[i]; + if (typeof c != "string") { + var co = $.color.parse(defaultColor); + if (c.brightness != null) + co = co.scale('rgb', c.brightness); + if (c.opacity != null) + co.a *= c.opacity; + c = co.toString(); + } + gradient.addColorStop(i / (l - 1), c); + } + + return gradient; + } + } + } + + // Add the plot function to the top level of the jQuery object + + $.plot = function(placeholder, data, options) { + //var t0 = new Date(); + var plot = new Plot($(placeholder), data, options, $.plot.plugins); + //(window.console ? console.log : alert)("time used (msecs): " + ((new Date()).getTime() - t0.getTime())); + return plot; + }; + + $.plot.version = "0.8.3"; + + $.plot.plugins = []; + + // Also add the plot function as a chainable property + + $.fn.plot = function(data, options) { + return this.each(function() { + $.plot(this, data, options); + }); + }; + + // round to nearby lower multiple of base + function floorInBase(n, base) { + return base * Math.floor(n / base); + } + +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.min.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.min.js new file mode 100644 index 000000000..64a5e5a5b --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.min.js @@ -0,0 +1 @@ +(function(b){b.color={};b.color.make=function(f,e,c,d){var h={};h.r=f||0;h.g=e||0;h.b=c||0;h.a=d!=null?d:1;h.add=function(k,j){for(var g=0;g=1){return"rgb("+[h.r,h.g,h.b].join(",")+")"}else{return"rgba("+[h.r,h.g,h.b,h.a].join(",")+")"}};h.normalize=function(){function g(j,k,i){return ki?i:k}h.r=g(0,parseInt(h.r),255);h.g=g(0,parseInt(h.g),255);h.b=g(0,parseInt(h.b),255);h.a=g(0,h.a,1);return h};h.clone=function(){return b.color.make(h.r,h.b,h.g,h.a)};return h.normalize()};b.color.extract=function(e,d){var f;do{f=e.css(d).toLowerCase();if(f!=""&&f!="transparent"){break}e=e.parent()}while(e.length&&!b.nodeName(e.get(0),"body"));if(f=="rgba(0, 0, 0, 0)"){f="transparent"}return b.color.parse(f)};b.color.parse=function(f){var e,c=b.color.make;if(e=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(f)){return c(parseInt(e[1],10),parseInt(e[2],10),parseInt(e[3],10))}if(e=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(f)){return c(parseInt(e[1],10),parseInt(e[2],10),parseInt(e[3],10),parseFloat(e[4]))}if(e=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(f)){return c(parseFloat(e[1])*2.55,parseFloat(e[2])*2.55,parseFloat(e[3])*2.55)}if(e=/rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(f)){return c(parseFloat(e[1])*2.55,parseFloat(e[2])*2.55,parseFloat(e[3])*2.55,parseFloat(e[4]))}if(e=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(f)){return c(parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16))}if(e=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(f)){return c(parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16))}var d=b.trim(f).toLowerCase();if(d=="transparent"){return c(255,255,255,0)}else{e=a[d]||[0,0,0];return c(e[0],e[1],e[2])}};var a={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0]}})(jQuery);(function(e){var d=Object.prototype.hasOwnProperty;if(!e.fn.detach){e.fn.detach=function(){return this.each(function(){if(this.parentNode){this.parentNode.removeChild(this)}})}}function a(h,g){var j=g.children("."+h)[0];if(j==null){j=document.createElement("canvas");j.className=h;e(j).css({direction:"ltr",position:"absolute",left:0,top:0}).appendTo(g);if(!j.getContext){if(window.G_vmlCanvasManager){j=window.G_vmlCanvasManager.initElement(j)}else{throw new Error("Canvas is not available. If you're using IE with a fall-back such as Excanvas, then there's either a mistake in your conditional include, or the page has no DOCTYPE and is rendering in Quirks Mode.")}}}this.element=j;var i=this.context=j.getContext("2d");var f=window.devicePixelRatio||1,k=i.webkitBackingStorePixelRatio||i.mozBackingStorePixelRatio||i.msBackingStorePixelRatio||i.oBackingStorePixelRatio||i.backingStorePixelRatio||1;this.pixelRatio=f/k;this.resize(g.width(),g.height());this.textContainer=null;this.text={};this._textCache={}}a.prototype.resize=function(i,f){if(i<=0||f<=0){throw new Error("Invalid dimensions for plot, width = "+i+", height = "+f)}var h=this.element,g=this.context,j=this.pixelRatio;if(this.width!=i){h.width=i*j;h.style.width=i+"px";this.width=i}if(this.height!=f){h.height=f*j;h.style.height=f+"px";this.height=f}g.restore();g.save();g.scale(j,j)};a.prototype.clear=function(){this.context.clearRect(0,0,this.width,this.height)};a.prototype.render=function(){var f=this._textCache;for(var o in f){if(d.call(f,o)){var n=this.getTextLayer(o),g=f[o];n.hide();for(var m in g){if(d.call(g,m)){var h=g[m];for(var p in h){if(d.call(h,p)){var k=h[p].positions;for(var j=0,l;l=k[j];j++){if(l.active){if(!l.rendered){n.append(l.element);l.rendered=true}}else{k.splice(j--,1);if(l.rendered){l.element.detach()}}}if(k.length==0){delete h[p]}}}}}n.show()}}};a.prototype.getTextLayer=function(g){var f=this.text[g];if(f==null){if(this.textContainer==null){this.textContainer=e("
    ").css({position:"absolute",top:0,left:0,bottom:0,right:0,"font-size":"smaller",color:"#545454"}).insertAfter(this.element)}f=this.text[g]=e("
    ").addClass(g).css({position:"absolute",top:0,left:0,bottom:0,right:0}).appendTo(this.textContainer)}return f};a.prototype.getTextInfo=function(m,o,j,k,g){var n,f,i,h;o=""+o;if(typeof j==="object"){n=j.style+" "+j.variant+" "+j.weight+" "+j.size+"px/"+j.lineHeight+"px "+j.family}else{n=j}f=this._textCache[m];if(f==null){f=this._textCache[m]={}}i=f[n];if(i==null){i=f[n]={}}h=i[o];if(h==null){var l=e("
    ").html(o).css({position:"absolute","max-width":g,top:-9999}).appendTo(this.getTextLayer(m));if(typeof j==="object"){l.css({font:n,color:j.color})}else{if(typeof j==="string"){l.addClass(j)}}h=i[o]={width:l.outerWidth(true),height:l.outerHeight(true),element:l,positions:[]};l.detach()}return h};a.prototype.addText=function(o,r,p,s,h,j,f,n,q){var g=this.getTextInfo(o,s,h,j,f),l=g.positions;if(n=="center"){r-=g.width/2}else{if(n=="right"){r-=g.width}}if(q=="middle"){p-=g.height/2}else{if(q=="bottom"){p-=g.height}}for(var k=0,m;m=l[k];k++){if(m.x==r&&m.y==p){m.active=true;return}}m={active:true,rendered:false,element:l.length?g.element.clone():g.element,x:r,y:p};l.push(m);m.element.css({top:Math.round(p),left:Math.round(r),"text-align":n})};a.prototype.removeText=function(o,q,p,s,h,j){if(s==null){var f=this._textCache[o];if(f!=null){for(var n in f){if(d.call(f,n)){var g=f[n];for(var r in g){if(d.call(g,r)){var l=g[r].positions;for(var k=0,m;m=l[k];k++){m.active=false}}}}}}}else{var l=this.getTextInfo(o,s,h,j).positions;for(var k=0,m;m=l[k];k++){if(m.x==q&&m.y==p){m.active=false}}}};function c(Q,A,C,g){var t=[],L={colors:["#edc240","#afd8f8","#cb4b4b","#4da74d","#9440ed"],legend:{show:true,noColumns:1,labelFormatter:null,labelBoxBorderColor:"#ccc",container:null,position:"ne",margin:5,backgroundColor:null,backgroundOpacity:0.85,sorted:null},xaxis:{show:null,position:"bottom",mode:null,font:null,color:null,tickColor:null,transform:null,inverseTransform:null,min:null,max:null,autoscaleMargin:null,ticks:null,tickFormatter:null,labelWidth:null,labelHeight:null,reserveSpace:null,tickLength:null,alignTicksWithAxis:null,tickDecimals:null,tickSize:null,minTickSize:null},yaxis:{autoscaleMargin:0.02,position:"left"},xaxes:[],yaxes:[],series:{points:{show:false,radius:3,lineWidth:2,fill:true,fillColor:"#ffffff",symbol:"circle"},lines:{lineWidth:2,fill:false,fillColor:null,steps:false},bars:{show:false,lineWidth:2,barWidth:1,fill:true,fillColor:null,align:"left",horizontal:false,zero:true},shadowSize:3,highlightColor:null},grid:{show:true,aboveData:false,color:"#545454",backgroundColor:null,borderColor:null,tickColor:null,margin:0,labelMargin:5,axisMargin:8,borderWidth:2,minBorderMargin:null,markings:null,markingsColor:"#f4f4f4",markingsLineWidth:2,clickable:false,hoverable:false,autoHighlight:true,mouseActiveRadius:10},interaction:{redrawOverlayInterval:1000/60},hooks:{}},ac=null,al=null,am=null,D=null,aw=null,ao=[],W=[],J={left:0,right:0,top:0,bottom:0},k=0,ad=0,p={processOptions:[],processRawData:[],processDatapoints:[],processOffset:[],drawBackground:[],drawSeries:[],draw:[],bindEvents:[],drawOverlay:[],shutdown:[]},h=this;h.setData=K;h.setupGrid=O;h.draw=au;h.getPlaceholder=function(){return Q};h.getCanvas=function(){return ac.element};h.getPlotOffset=function(){return J};h.width=function(){return k};h.height=function(){return ad};h.offset=function(){var ay=am.offset();ay.left+=J.left;ay.top+=J.top;return ay};h.getData=function(){return t};h.getAxes=function(){var az={},ay;e.each(ao.concat(W),function(aA,aB){if(aB){az[aB.direction+(aB.n!=1?aB.n:"")+"axis"]=aB}});return az};h.getXAxes=function(){return ao};h.getYAxes=function(){return W};h.c2p=Y;h.p2c=R;h.getOptions=function(){return L};h.highlight=an;h.unhighlight=ah;h.triggerRedrawOverlay=X;h.pointOffset=function(ay){return{left:parseInt(ao[x(ay,"x")-1].p2c(+ay.x)+J.left,10),top:parseInt(W[x(ay,"y")-1].p2c(+ay.y)+J.top,10)}};h.shutdown=o;h.destroy=function(){o();Q.removeData("plot").empty();t=[];L=null;ac=null;al=null;am=null;D=null;aw=null;ao=[];W=[];p=null;ag=[];h=null};h.resize=function(){var az=Q.width(),ay=Q.height();ac.resize(az,ay);al.resize(az,ay)};h.hooks=p;H(h);aa(C);ax();K(A);O();au();ar();function F(aA,ay){ay=[h].concat(ay);for(var az=0;azaA){aA=aG}}}if(aJ<=aA){aJ=aA+1}var aF,ay=[],aE=L.colors,aD=aE.length,az=0;for(aB=0;aB=0){if(az<0.5){az=-az-0.2}else{az=0}}else{az=-az}}ay[aB]=aF.scale("rgb",1+az)}var aC=0,aK;for(aB=0;aBa2.datamax&&a0!=ay){a2.datamax=a0}}e.each(j(),function(a0,a1){a1.datamin=aM;a1.datamax=aG;a1.used=false});for(aT=0;aT0&&aS[aQ-aN]!=null&&aS[aQ-aN]!=aS[aQ]&&aS[aQ-aN+1]!=aS[aQ+1]){for(aL=0;aLaK){aK=aZ}}if(aW.y){if(aZaU){aU=aZ}}}}if(aH.bars.show){var aX;switch(aH.bars.align){case"left":aX=0;break;case"right":aX=-aH.bars.barWidth;break;default:aX=-aH.bars.barWidth/2}if(aH.bars.horizontal){aP+=aX;aU+=aX+aH.bars.barWidth}else{aI+=aX;aK+=aX+aH.bars.barWidth}}aC(aH.xaxis,aI,aK);aC(aH.yaxis,aP,aU)}e.each(j(),function(a0,a1){if(a1.datamin==aM){a1.datamin=null}if(a1.datamax==aG){a1.datamax=null}})}function ax(){Q.css("padding",0).children().filter(function(){return !e(this).hasClass("flot-overlay")&&!e(this).hasClass("flot-base")}).remove();if(Q.css("position")=="static"){Q.css("position","relative")}ac=new a("flot-base",Q);al=new a("flot-overlay",Q);D=ac.context;aw=al.context;am=e(al.element).unbind();var ay=Q.data("plot");if(ay){ay.shutdown();al.clear()}Q.data("plot",h)}function ar(){if(L.grid.hoverable){am.mousemove(f);am.bind("mouseleave",P)}if(L.grid.clickable){am.click(I)}F(p.bindEvents,[am])}function o(){if(l){clearTimeout(l)}am.unbind("mousemove",f);am.unbind("mouseleave",P);am.unbind("click",I);F(p.shutdown,[am])}function n(aD){function az(aE){return aE}var aC,ay,aA=aD.options.transform||az,aB=aD.options.inverseTransform;if(aD.direction=="x"){aC=aD.scale=k/Math.abs(aA(aD.max)-aA(aD.min));ay=Math.min(aA(aD.max),aA(aD.min))}else{aC=aD.scale=ad/Math.abs(aA(aD.max)-aA(aD.min));aC=-aC;ay=Math.max(aA(aD.max),aA(aD.min))}if(aA==az){aD.p2c=function(aE){return(aE-ay)*aC}}else{aD.p2c=function(aE){return(aA(aE)-ay)*aC}}if(!aB){aD.c2p=function(aE){return ay+aE/aC}}else{aD.c2p=function(aE){return aB(ay+aE/aC)}}}function Z(aB){var ay=aB.options,aH=aB.ticks||[],aG=ay.labelWidth||0,aC=ay.labelHeight||0,aI=aG||(aB.direction=="x"?Math.floor(ac.width/(aH.length||1)):null),aE=aB.direction+"Axis "+aB.direction+aB.n+"Axis",aF="flot-"+aB.direction+"-axis flot-"+aB.direction+aB.n+"-axis "+aE,aA=ay.font||"flot-tick-label tickLabel";for(var aD=0;aD=0;--aA){E(ay[aA])}B();e.each(ay,function(aE,aF){ab(aF)})}k=ac.width-J.left-J.right;ad=ac.height-J.bottom-J.top;e.each(aC,function(aE,aF){n(aF)});if(aD){at()}av()}function m(aB){var aC=aB.options,aA=+(aC.min!=null?aC.min:aB.datamin),ay=+(aC.max!=null?aC.max:aB.datamax),aE=ay-aA;if(aE==0){var az=ay==0?1:0.01;if(aC.min==null){aA-=az}if(aC.max==null||aC.min!=null){ay+=az}}else{var aD=aC.autoscaleMargin;if(aD!=null){if(aC.min==null){aA-=aE*aD;if(aA<0&&aB.datamin!=null&&aB.datamin>=0){aA=0}}if(aC.max==null){ay+=aE*aD;if(ay>0&&aB.datamax!=null&&aB.datamax<=0){ay=0}}}}aB.min=aA;aB.max=ay}function aq(aD){var az=aD.options;var aC;if(typeof az.ticks=="number"&&az.ticks>0){aC=az.ticks}else{aC=0.3*Math.sqrt(aD.direction=="x"?ac.width:ac.height)}var aI=(aD.max-aD.min)/aC,aE=-Math.floor(Math.log(aI)/Math.LN10),aB=az.tickDecimals;if(aB!=null&&aE>aB){aE=aB}var ay=Math.pow(10,-aE),aA=aI/ay,aK;if(aA<1.5){aK=1}else{if(aA<3){aK=2;if(aA>2.25&&(aB==null||aE+1<=aB)){aK=2.5;++aE}}else{if(aA<7.5){aK=5}else{aK=10}}}aK*=ay;if(az.minTickSize!=null&&aK0){if(az.min==null){aD.min=Math.min(aD.min,aJ[0])}if(az.max==null&&aJ.length>1){aD.max=Math.max(aD.max,aJ[aJ.length-1])}}aD.tickGenerator=function(aN){var aO=[],aL,aM;for(aM=0;aM1&&/\..*0$/.test((aG[1]-aG[0]).toFixed(aH)))){aD.tickDecimals=aH}}}}}function V(aC){var aE=aC.options.ticks,aD=[];if(aE==null||(typeof aE=="number"&&aE>0)){aD=aC.tickGenerator(aC)}else{if(aE){if(e.isFunction(aE)){aD=aE(aC)}else{aD=aE}}}var aB,ay;aC.ticks=[];for(aB=0;aB1){az=aA[1]}}else{ay=+aA}if(az==null){az=aC.tickFormatter(ay,aC)}if(!isNaN(ay)){aC.ticks.push({v:ay,label:az})}}}function u(ay,az){if(ay.options.autoscaleMargin&&az.length>0){if(ay.options.min==null){ay.min=Math.min(ay.min,az[0].v)}if(ay.options.max==null&&az.length>1){ay.max=Math.max(ay.max,az[az.length-1].v)}}}function au(){ac.clear();F(p.drawBackground,[D]);var az=L.grid;if(az.show&&az.backgroundColor){r()}if(az.show&&!az.aboveData){w()}for(var ay=0;ayaF){var aA=aE;aE=aF;aF=aA}return{from:aE,to:aF,axis:az}}function r(){D.save();D.translate(J.left,J.top);D.fillStyle=v(L.grid.backgroundColor,ad,0,"rgba(255, 255, 255, 0)");D.fillRect(0,0,k,ad);D.restore()}function w(){var aO,aN,aR,aA;D.save();D.translate(J.left,J.top);var aB=L.grid.markings;if(aB){if(e.isFunction(aB)){aN=h.getAxes();aN.xmin=aN.xaxis.min;aN.xmax=aN.xaxis.max;aN.ymin=aN.yaxis.min;aN.ymax=aN.yaxis.max;aB=aB(aN)}for(aO=0;aOaC.axis.max||aG.toaG.axis.max){continue}aC.from=Math.max(aC.from,aC.axis.min);aC.to=Math.min(aC.to,aC.axis.max);aG.from=Math.max(aG.from,aG.axis.min);aG.to=Math.min(aG.to,aG.axis.max);var aD=aC.from===aC.to,aJ=aG.from===aG.to;if(aD&&aJ){continue}aC.from=Math.floor(aC.axis.p2c(aC.from));aC.to=Math.floor(aC.axis.p2c(aC.to));aG.from=Math.floor(aG.axis.p2c(aG.from));aG.to=Math.floor(aG.axis.p2c(aG.to));if(aD||aJ){var ay=aL.lineWidth||L.grid.markingsLineWidth,aP=ay%2?0.5:0;D.beginPath();D.strokeStyle=aL.color||L.grid.markingsColor;D.lineWidth=ay;if(aD){D.moveTo(aC.to+aP,aG.from);D.lineTo(aC.to+aP,aG.to)}else{D.moveTo(aC.from,aG.to+aP);D.lineTo(aC.to,aG.to+aP)}D.stroke()}else{D.fillStyle=aL.color||L.grid.markingsColor;D.fillRect(aC.from,aG.to,aC.to-aC.from,aG.from-aG.to)}}}aN=j();aR=L.grid.borderWidth;for(var aM=0;aMaz.max||(aK=="full"&&((typeof aR=="object"&&aR[az.position]>0)||aR>0)&&(aI==az.min||aI==az.max))){continue}if(az.direction=="x"){aF=az.p2c(aI);aS=aK=="full"?-ad:aK;if(az.position=="top"){aS=-aS}}else{aE=az.p2c(aI);aQ=aK=="full"?-k:aK;if(az.position=="left"){aQ=-aQ}}if(D.lineWidth==1){if(az.direction=="x"){aF=Math.floor(aF)+0.5}else{aE=Math.floor(aE)+0.5}}D.moveTo(aF,aE);D.lineTo(aF+aQ,aE+aS)}D.stroke()}if(aR){aA=L.grid.borderColor;if(typeof aR=="object"||typeof aA=="object"){if(typeof aR!=="object"){aR={top:aR,right:aR,bottom:aR,left:aR}}if(typeof aA!=="object"){aA={top:aA,right:aA,bottom:aA,left:aA}}if(aR.top>0){D.strokeStyle=aA.top;D.lineWidth=aR.top;D.beginPath();D.moveTo(0-aR.left,0-aR.top/2);D.lineTo(k,0-aR.top/2);D.stroke()}if(aR.right>0){D.strokeStyle=aA.right;D.lineWidth=aR.right;D.beginPath();D.moveTo(k+aR.right/2,0-aR.top);D.lineTo(k+aR.right/2,ad);D.stroke()}if(aR.bottom>0){D.strokeStyle=aA.bottom;D.lineWidth=aR.bottom;D.beginPath();D.moveTo(k+aR.right,ad+aR.bottom/2);D.lineTo(0,ad+aR.bottom/2);D.stroke()}if(aR.left>0){D.strokeStyle=aA.left;D.lineWidth=aR.left;D.beginPath();D.moveTo(0-aR.left/2,ad+aR.bottom);D.lineTo(0-aR.left/2,0);D.stroke()}}else{D.lineWidth=aR;D.strokeStyle=L.grid.borderColor;D.strokeRect(-aR/2,-aR/2,k+aR,ad+aR)}}D.restore()}function at(){e.each(j(),function(aJ,az){var aC=az.box,aB=az.direction+"Axis "+az.direction+az.n+"Axis",aF="flot-"+az.direction+"-axis flot-"+az.direction+az.n+"-axis "+aB,ay=az.options.font||"flot-tick-label tickLabel",aD,aI,aG,aE,aH;ac.removeText(aF);if(!az.show||az.ticks.length==0){return}for(var aA=0;aAaz.max){continue}if(az.direction=="x"){aE="center";aI=J.left+az.p2c(aD.v);if(az.position=="bottom"){aG=aC.top+aC.padding}else{aG=aC.top+aC.height-aC.padding;aH="bottom"}}else{aH="middle";aG=J.top+az.p2c(aD.v);if(az.position=="left"){aI=aC.left+aC.width-aC.padding;aE="right"}else{aI=aC.left+aC.padding}}ac.addText(aF,aI,aG,aD.label,ay,null,null,aE,aH)}})}function aj(ay){if(ay.lines.show){G(ay)}if(ay.bars.show){T(ay)}if(ay.points.show){U(ay)}}function G(aB){function aA(aM,aN,aF,aR,aQ){var aS=aM.points,aG=aM.pointsize,aK=null,aJ=null;D.beginPath();for(var aL=aG;aL=aO&&aP>aQ.max){if(aO>aQ.max){continue}aI=(aQ.max-aP)/(aO-aP)*(aH-aI)+aI;aP=aQ.max}else{if(aO>=aP&&aO>aQ.max){if(aP>aQ.max){continue}aH=(aQ.max-aP)/(aO-aP)*(aH-aI)+aI;aO=aQ.max}}if(aI<=aH&&aI=aH&&aI>aR.max){if(aH>aR.max){continue}aP=(aR.max-aI)/(aH-aI)*(aO-aP)+aP;aI=aR.max}else{if(aH>=aI&&aH>aR.max){if(aI>aR.max){continue}aO=(aR.max-aI)/(aH-aI)*(aO-aP)+aP;aH=aR.max}}if(aI!=aK||aP!=aJ){D.moveTo(aR.p2c(aI)+aN,aQ.p2c(aP)+aF)}aK=aH;aJ=aO;D.lineTo(aR.p2c(aH)+aN,aQ.p2c(aO)+aF)}D.stroke()}function aC(aF,aN,aM){var aT=aF.points,aS=aF.pointsize,aK=Math.min(Math.max(0,aM.min),aM.max),aU=0,aR,aQ=false,aJ=1,aI=0,aO=0;while(true){if(aS>0&&aU>aT.length+aS){break}aU+=aS;var aW=aT[aU-aS],aH=aT[aU-aS+aJ],aV=aT[aU],aG=aT[aU+aJ];if(aQ){if(aS>0&&aW!=null&&aV==null){aO=aU;aS=-aS;aJ=2;continue}if(aS<0&&aU==aI+aS){D.fill();aQ=false;aS=-aS;aJ=1;aU=aI=aO+aS;continue}}if(aW==null||aV==null){continue}if(aW<=aV&&aW=aV&&aW>aN.max){if(aV>aN.max){continue}aH=(aN.max-aW)/(aV-aW)*(aG-aH)+aH;aW=aN.max}else{if(aV>=aW&&aV>aN.max){if(aW>aN.max){continue}aG=(aN.max-aW)/(aV-aW)*(aG-aH)+aH;aV=aN.max}}if(!aQ){D.beginPath();D.moveTo(aN.p2c(aW),aM.p2c(aK));aQ=true}if(aH>=aM.max&&aG>=aM.max){D.lineTo(aN.p2c(aW),aM.p2c(aM.max));D.lineTo(aN.p2c(aV),aM.p2c(aM.max));continue}else{if(aH<=aM.min&&aG<=aM.min){D.lineTo(aN.p2c(aW),aM.p2c(aM.min));D.lineTo(aN.p2c(aV),aM.p2c(aM.min));continue}}var aL=aW,aP=aV;if(aH<=aG&&aH=aM.min){aW=(aM.min-aH)/(aG-aH)*(aV-aW)+aW;aH=aM.min}else{if(aG<=aH&&aG=aM.min){aV=(aM.min-aH)/(aG-aH)*(aV-aW)+aW;aG=aM.min}}if(aH>=aG&&aH>aM.max&&aG<=aM.max){aW=(aM.max-aH)/(aG-aH)*(aV-aW)+aW;aH=aM.max}else{if(aG>=aH&&aG>aM.max&&aH<=aM.max){aV=(aM.max-aH)/(aG-aH)*(aV-aW)+aW;aG=aM.max}}if(aW!=aL){D.lineTo(aN.p2c(aL),aM.p2c(aH))}D.lineTo(aN.p2c(aW),aM.p2c(aH));D.lineTo(aN.p2c(aV),aM.p2c(aG));if(aV!=aP){D.lineTo(aN.p2c(aV),aM.p2c(aG));D.lineTo(aN.p2c(aP),aM.p2c(aG))}}}D.save();D.translate(J.left,J.top);D.lineJoin="round";var aD=aB.lines.lineWidth,ay=aB.shadowSize;if(aD>0&&ay>0){D.lineWidth=ay;D.strokeStyle="rgba(0,0,0,0.1)";var aE=Math.PI/18;aA(aB.datapoints,Math.sin(aE)*(aD/2+ay/2),Math.cos(aE)*(aD/2+ay/2),aB.xaxis,aB.yaxis);D.lineWidth=ay/2;aA(aB.datapoints,Math.sin(aE)*(aD/2+ay/4),Math.cos(aE)*(aD/2+ay/4),aB.xaxis,aB.yaxis)}D.lineWidth=aD;D.strokeStyle=aB.color;var az=z(aB.lines,aB.color,0,ad);if(az){D.fillStyle=az;aC(aB.datapoints,aB.xaxis,aB.yaxis)}if(aD>0){aA(aB.datapoints,0,0,aB.xaxis,aB.yaxis)}D.restore()}function U(aB){function aE(aK,aJ,aR,aH,aP,aQ,aN,aG){var aO=aK.points,aF=aK.pointsize;for(var aI=0;aIaQ.max||aLaN.max){continue}D.beginPath();aM=aQ.p2c(aM);aL=aN.p2c(aL)+aH;if(aG=="circle"){D.arc(aM,aL,aJ,0,aP?Math.PI:Math.PI*2,false)}else{aG(D,aM,aL,aJ,aP)}D.closePath();if(aR){D.fillStyle=aR;D.fill()}D.stroke()}}D.save();D.translate(J.left,J.top);var aD=aB.points.lineWidth,az=aB.shadowSize,ay=aB.points.radius,aC=aB.points.symbol;if(aD==0){aD=0.0001}if(aD>0&&az>0){var aA=az/2;D.lineWidth=aA;D.strokeStyle="rgba(0,0,0,0.1)";aE(aB.datapoints,ay,null,aA+aA/2,true,aB.xaxis,aB.yaxis,aC);D.strokeStyle="rgba(0,0,0,0.2)";aE(aB.datapoints,ay,null,aA/2,true,aB.xaxis,aB.yaxis,aC)}D.lineWidth=aD;D.strokeStyle=aB.color;aE(aB.datapoints,ay,z(aB.points,aB.color),0,false,aB.xaxis,aB.yaxis,aC);D.restore()}function ak(aJ,aI,aR,aE,aM,aA,aH,aG,aQ,aN,az){var aB,aP,aF,aL,aC,ay,aK,aD,aO;if(aN){aD=ay=aK=true;aC=false;aB=aR;aP=aJ;aL=aI+aE;aF=aI+aM;if(aPaH.max||aLaG.max){return}if(aBaH.max){aP=aH.max;ay=false}if(aFaG.max){aL=aG.max;aK=false}aB=aH.p2c(aB);aF=aG.p2c(aF);aP=aH.p2c(aP);aL=aG.p2c(aL);if(aA){aQ.fillStyle=aA(aF,aL);aQ.fillRect(aB,aL,aP-aB,aF-aL)}if(az>0&&(aC||ay||aK||aD)){aQ.beginPath();aQ.moveTo(aB,aF);if(aC){aQ.lineTo(aB,aL)}else{aQ.moveTo(aB,aL)}if(aK){aQ.lineTo(aP,aL)}else{aQ.moveTo(aP,aL)}if(ay){aQ.lineTo(aP,aF)}else{aQ.moveTo(aP,aF)}if(aD){aQ.lineTo(aB,aF)}else{aQ.moveTo(aB,aF)}aQ.stroke()}}function T(aA){function az(aF,aE,aH,aG,aJ,aI){var aK=aF.points,aC=aF.pointsize;for(var aD=0;aD")}aG.push("");aE=true}aG.push('
    '+aK.label+"")}if(aE){aG.push("")}if(aG.length==0){return}var aL=''+aG.join("")+"
    ";if(L.legend.container!=null){e(L.legend.container).html(aL)}else{var aH="",az=L.legend.position,aA=L.legend.margin;if(aA[0]==null){aA=[aA,aA]}if(az.charAt(0)=="n"){aH+="top:"+(aA[1]+J.top)+"px;"}else{if(az.charAt(0)=="s"){aH+="bottom:"+(aA[1]+J.bottom)+"px;"}}if(az.charAt(1)=="e"){aH+="right:"+(aA[0]+J.right)+"px;"}else{if(az.charAt(1)=="w"){aH+="left:"+(aA[0]+J.left)+"px;"}}var aJ=e('
    '+aL.replace('style="','style="position:absolute;'+aH+";")+"
    ").appendTo(Q);if(L.legend.backgroundOpacity!=0){var aF=L.legend.backgroundColor;if(aF==null){aF=L.grid.backgroundColor;if(aF&&typeof aF=="string"){aF=e.color.parse(aF)}else{aF=e.color.extract(aJ,"background-color")}aF.a=1;aF=aF.toString()}var ay=aJ.children();e('
    ').prependTo(aJ).css("opacity",L.legend.backgroundOpacity)}}}var ag=[],l=null;function ap(aF,aD,aA){var aL=L.grid.mouseActiveRadius,aX=aL*aL+1,aV=null,aO=false,aT,aR,aQ;for(aT=t.length-1;aT>=0;--aT){if(!aA(t[aT])){continue}var aM=t[aT],aE=aM.xaxis,aC=aM.yaxis,aS=aM.datapoints.points,aN=aE.c2p(aF),aK=aC.c2p(aD),az=aL/aE.scale,ay=aL/aC.scale;aQ=aM.datapoints.pointsize;if(aE.options.inverseTransform){az=Number.MAX_VALUE}if(aC.options.inverseTransform){ay=Number.MAX_VALUE}if(aM.lines.show||aM.points.show){for(aR=0;aRaz||aH-aN<-az||aG-aK>ay||aG-aK<-ay){continue}var aJ=Math.abs(aE.p2c(aH)-aF),aI=Math.abs(aC.p2c(aG)-aD),aP=aJ*aJ+aI*aI;if(aP=Math.min(aW,aH)&&aK>=aG+aB&&aK<=aG+aU):(aN>=aH+aB&&aN<=aH+aU&&aK>=Math.min(aW,aG)&&aK<=Math.max(aW,aG))){aV=[aT,aR/aQ]}}}}if(aV){aT=aV[0];aR=aV[1];aQ=t[aT].datapoints.pointsize;return{datapoint:t[aT].datapoints.points.slice(aR*aQ,(aR+1)*aQ),dataIndex:aR,series:t[aT],seriesIndex:aT}}return null}function f(ay){if(L.grid.hoverable){i("plothover",ay,function(az){return az.hoverable!=false})}}function P(ay){if(L.grid.hoverable){i("plothover",ay,function(az){return false})}}function I(ay){i("plotclick",ay,function(az){return az.clickable!=false})}function i(az,ay,aA){var aB=am.offset(),aE=ay.pageX-aB.left-J.left,aC=ay.pageY-aB.top-J.top,aG=Y({left:aE,top:aC});aG.pageX=ay.pageX;aG.pageY=ay.pageY;var aH=ap(aE,aC,aA);if(aH){aH.pageX=parseInt(aH.series.xaxis.p2c(aH.datapoint[0])+aB.left+J.left,10);aH.pageY=parseInt(aH.series.yaxis.p2c(aH.datapoint[1])+aB.top+J.top,10)}if(L.grid.autoHighlight){for(var aD=0;aDaF.max||aAaD.max){return}var aB=ay.points.radius+ay.points.lineWidth/2;aw.lineWidth=aB;aw.strokeStyle=aG;var az=1.5*aB;aC=aF.p2c(aC);aA=aD.p2c(aA);aw.beginPath();if(ay.points.symbol=="circle"){aw.arc(aC,aA,az,0,2*Math.PI,false)}else{ay.points.symbol(aw,aC,aA,az,false)}aw.closePath();aw.stroke()}function ai(aB,ay){var aC=(typeof aB.highlightColor==="string")?aB.highlightColor:e.color.parse(aB.color).scale("a",0.5).toString(),aA=aC,az;switch(aB.bars.align){case"left":az=0;break;case"right":az=-aB.bars.barWidth;break;default:az=-aB.bars.barWidth/2}aw.lineWidth=aB.bars.lineWidth;aw.strokeStyle=aC;ak(ay[0],ay[1],ay[2]||0,az,az+aB.bars.barWidth,function(){return aA},aB.xaxis,aB.yaxis,aw,aB.bars.horizontal,aB.bars.lineWidth)}function v(aG,ay,aE,az){if(typeof aG=="string"){return aG}else{var aF=D.createLinearGradient(0,aE,0,ay);for(var aB=0,aA=aG.colors.length;aB12){o=v-12}else{if(v==0){o=12}else{o=v}}for(var p=0;p=u){break}}var I=G[B][0];var E=G[B][1];if(E=="year"){if(p.minTickSize!=null&&p.minTickSize[1]=="year"){I=Math.floor(p.minTickSize[0])}else{var s=Math.pow(10,Math.floor(Math.log(x.delta/c.year)/Math.LN10));var r=(x.delta/c.year)/s;if(r<1.5){I=1}else{if(r<3){I=2}else{if(r<7.5){I=5}else{I=10}}}I*=s}if(I<1){I=1}}x.tickSize=p.tickSize||[I,E];var A=x.tickSize[0];E=x.tickSize[1];var w=A*c[E];if(E=="second"){C.setSeconds(g(C.getSeconds(),A))}else{if(E=="minute"){C.setMinutes(g(C.getMinutes(),A))}else{if(E=="hour"){C.setHours(g(C.getHours(),A))}else{if(E=="month"){C.setMonth(g(C.getMonth(),A))}else{if(E=="quarter"){C.setMonth(3*g(C.getMonth()/3,A))}else{if(E=="year"){C.setFullYear(g(C.getFullYear(),A))}}}}}}C.setMilliseconds(0);if(w>=c.minute){C.setSeconds(0)}if(w>=c.hour){C.setMinutes(0)}if(w>=c.day){C.setHours(0)}if(w>=c.day*4){C.setDate(1)}if(w>=c.month*2){C.setMonth(g(C.getMonth(),3))}if(w>=c.quarter*2){C.setMonth(g(C.getMonth(),6))}if(w>=c.year){C.setMonth(0)}var H=0;var F=Number.NaN;var y;do{y=F;F=C.getTime();D.push(F);if(E=="month"||E=="quarter"){if(A<1){C.setDate(1);var t=C.getTime();C.setMonth(C.getMonth()+(E=="quarter"?3:1));var z=C.getTime();C.setTime(F+H*c.hour+(z-t)*A);H=C.getHours();C.setHours(0)}else{C.setMonth(C.getMonth()+A*(E=="quarter"?3:1))}}else{if(E=="year"){C.setFullYear(C.getFullYear()+A)}else{C.setTime(F+w)}}}while(F0&&h.which!=l.which||a(h.target).is(l.not))return;switch(h.type){case"mousedown":return a.extend(l,a(j).offset(),{elem:j,target:h.target,pageX:h.pageX,pageY:h.pageY}),b.add(document,"mousemove mouseup",e,l),i(j,!1),d.dragging=null,!1;case!d.dragging&&"mousemove":if(g(h.pageX-l.pageX)+g(h.pageY-l.pageY) max) { + // make sure min < max + var tmp = min; + min = max; + max = tmp; + } + + //Check that we are in panRange + if (pr) { + if (pr[0] != null && min < pr[0]) { + min = pr[0]; + } + if (pr[1] != null && max > pr[1]) { + max = pr[1]; + } + } + + var range = max - min; + if (zr && + ((zr[0] != null && range < zr[0] && amount >1) || + (zr[1] != null && range > zr[1] && amount <1))) + return; + + opts.min = min; + opts.max = max; + }); + + plot.setupGrid(); + plot.draw(); + + if (!args.preventEvent) + plot.getPlaceholder().trigger("plotzoom", [ plot, args ]); + }; + + plot.pan = function (args) { + var delta = { + x: +args.left, + y: +args.top + }; + + if (isNaN(delta.x)) + delta.x = 0; + if (isNaN(delta.y)) + delta.y = 0; + + $.each(plot.getAxes(), function (_, axis) { + var opts = axis.options, + min, max, d = delta[axis.direction]; + + min = axis.c2p(axis.p2c(axis.min) + d), + max = axis.c2p(axis.p2c(axis.max) + d); + + var pr = opts.panRange; + if (pr === false) // no panning on this axis + return; + + if (pr) { + // check whether we hit the wall + if (pr[0] != null && pr[0] > min) { + d = pr[0] - min; + min += d; + max += d; + } + + if (pr[1] != null && pr[1] < max) { + d = pr[1] - max; + min += d; + max += d; + } + } + + opts.min = min; + opts.max = max; + }); + + plot.setupGrid(); + plot.draw(); + + if (!args.preventEvent) + plot.getPlaceholder().trigger("plotpan", [ plot, args ]); + }; + + function shutdown(plot, eventHolder) { + eventHolder.unbind(plot.getOptions().zoom.trigger, onZoomClick); + eventHolder.unbind("mousewheel", onMouseWheel); + eventHolder.unbind("dragstart", onDragStart); + eventHolder.unbind("drag", onDrag); + eventHolder.unbind("dragend", onDragEnd); + if (panTimeout) + clearTimeout(panTimeout); + } + + plot.hooks.bindEvents.push(bindEvents); + plot.hooks.shutdown.push(shutdown); + } + + $.plot.plugins.push({ + init: init, + options: options, + name: 'navigate', + version: '1.3' + }); +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.pie.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.pie.js new file mode 100644 index 000000000..9c19db998 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.pie.js @@ -0,0 +1,820 @@ +/* Flot plugin for rendering pie charts. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +The plugin assumes that each series has a single data value, and that each +value is a positive integer or zero. Negative numbers don't make sense for a +pie chart, and have unpredictable results. The values do NOT need to be +passed in as percentages; the plugin will calculate the total and per-slice +percentages internally. + +* Created by Brian Medendorp + +* Updated with contributions from btburnett3, Anthony Aragues and Xavi Ivars + +The plugin supports these options: + + series: { + pie: { + show: true/false + radius: 0-1 for percentage of fullsize, or a specified pixel length, or 'auto' + innerRadius: 0-1 for percentage of fullsize or a specified pixel length, for creating a donut effect + startAngle: 0-2 factor of PI used for starting angle (in radians) i.e 3/2 starts at the top, 0 and 2 have the same result + tilt: 0-1 for percentage to tilt the pie, where 1 is no tilt, and 0 is completely flat (nothing will show) + offset: { + top: integer value to move the pie up or down + left: integer value to move the pie left or right, or 'auto' + }, + stroke: { + color: any hexidecimal color value (other formats may or may not work, so best to stick with something like '#FFF') + width: integer pixel width of the stroke + }, + label: { + show: true/false, or 'auto' + formatter: a user-defined function that modifies the text/style of the label text + radius: 0-1 for percentage of fullsize, or a specified pixel length + background: { + color: any hexidecimal color value (other formats may or may not work, so best to stick with something like '#000') + opacity: 0-1 + }, + threshold: 0-1 for the percentage value at which to hide labels (if they're too small) + }, + combine: { + threshold: 0-1 for the percentage value at which to combine slices (if they're too small) + color: any hexidecimal color value (other formats may or may not work, so best to stick with something like '#CCC'), if null, the plugin will automatically use the color of the first slice to be combined + label: any text value of what the combined slice should be labeled + } + highlight: { + opacity: 0-1 + } + } + } + +More detail and specific examples can be found in the included HTML file. + +*/ + +(function($) { + + // Maximum redraw attempts when fitting labels within the plot + + var REDRAW_ATTEMPTS = 10; + + // Factor by which to shrink the pie when fitting labels within the plot + + var REDRAW_SHRINK = 0.95; + + function init(plot) { + + var canvas = null, + target = null, + options = null, + maxRadius = null, + centerLeft = null, + centerTop = null, + processed = false, + ctx = null; + + // interactive variables + + var highlights = []; + + // add hook to determine if pie plugin in enabled, and then perform necessary operations + + plot.hooks.processOptions.push(function(plot, options) { + if (options.series.pie.show) { + + options.grid.show = false; + + // set labels.show + + if (options.series.pie.label.show == "auto") { + if (options.legend.show) { + options.series.pie.label.show = false; + } else { + options.series.pie.label.show = true; + } + } + + // set radius + + if (options.series.pie.radius == "auto") { + if (options.series.pie.label.show) { + options.series.pie.radius = 3/4; + } else { + options.series.pie.radius = 1; + } + } + + // ensure sane tilt + + if (options.series.pie.tilt > 1) { + options.series.pie.tilt = 1; + } else if (options.series.pie.tilt < 0) { + options.series.pie.tilt = 0; + } + } + }); + + plot.hooks.bindEvents.push(function(plot, eventHolder) { + var options = plot.getOptions(); + if (options.series.pie.show) { + if (options.grid.hoverable) { + eventHolder.unbind("mousemove").mousemove(onMouseMove); + } + if (options.grid.clickable) { + eventHolder.unbind("click").click(onClick); + } + } + }); + + plot.hooks.processDatapoints.push(function(plot, series, data, datapoints) { + var options = plot.getOptions(); + if (options.series.pie.show) { + processDatapoints(plot, series, data, datapoints); + } + }); + + plot.hooks.drawOverlay.push(function(plot, octx) { + var options = plot.getOptions(); + if (options.series.pie.show) { + drawOverlay(plot, octx); + } + }); + + plot.hooks.draw.push(function(plot, newCtx) { + var options = plot.getOptions(); + if (options.series.pie.show) { + draw(plot, newCtx); + } + }); + + function processDatapoints(plot, series, datapoints) { + if (!processed) { + processed = true; + canvas = plot.getCanvas(); + target = $(canvas).parent(); + options = plot.getOptions(); + plot.setData(combine(plot.getData())); + } + } + + function combine(data) { + + var total = 0, + combined = 0, + numCombined = 0, + color = options.series.pie.combine.color, + newdata = []; + + // Fix up the raw data from Flot, ensuring the data is numeric + + for (var i = 0; i < data.length; ++i) { + + var value = data[i].data; + + // If the data is an array, we'll assume that it's a standard + // Flot x-y pair, and are concerned only with the second value. + + // Note how we use the original array, rather than creating a + // new one; this is more efficient and preserves any extra data + // that the user may have stored in higher indexes. + + if ($.isArray(value) && value.length == 1) { + value = value[0]; + } + + if ($.isArray(value)) { + // Equivalent to $.isNumeric() but compatible with jQuery < 1.7 + if (!isNaN(parseFloat(value[1])) && isFinite(value[1])) { + value[1] = +value[1]; + } else { + value[1] = 0; + } + } else if (!isNaN(parseFloat(value)) && isFinite(value)) { + value = [1, +value]; + } else { + value = [1, 0]; + } + + data[i].data = [value]; + } + + // Sum up all the slices, so we can calculate percentages for each + + for (var i = 0; i < data.length; ++i) { + total += data[i].data[0][1]; + } + + // Count the number of slices with percentages below the combine + // threshold; if it turns out to be just one, we won't combine. + + for (var i = 0; i < data.length; ++i) { + var value = data[i].data[0][1]; + if (value / total <= options.series.pie.combine.threshold) { + combined += value; + numCombined++; + if (!color) { + color = data[i].color; + } + } + } + + for (var i = 0; i < data.length; ++i) { + var value = data[i].data[0][1]; + if (numCombined < 2 || value / total > options.series.pie.combine.threshold) { + newdata.push( + $.extend(data[i], { /* extend to allow keeping all other original data values + and using them e.g. in labelFormatter. */ + data: [[1, value]], + color: data[i].color, + label: data[i].label, + angle: value * Math.PI * 2 / total, + percent: value / (total / 100) + }) + ); + } + } + + if (numCombined > 1) { + newdata.push({ + data: [[1, combined]], + color: color, + label: options.series.pie.combine.label, + angle: combined * Math.PI * 2 / total, + percent: combined / (total / 100) + }); + } + + return newdata; + } + + function draw(plot, newCtx) { + + if (!target) { + return; // if no series were passed + } + + var canvasWidth = plot.getPlaceholder().width(), + canvasHeight = plot.getPlaceholder().height(), + legendWidth = target.children().filter(".legend").children().width() || 0; + + ctx = newCtx; + + // WARNING: HACK! REWRITE THIS CODE AS SOON AS POSSIBLE! + + // When combining smaller slices into an 'other' slice, we need to + // add a new series. Since Flot gives plugins no way to modify the + // list of series, the pie plugin uses a hack where the first call + // to processDatapoints results in a call to setData with the new + // list of series, then subsequent processDatapoints do nothing. + + // The plugin-global 'processed' flag is used to control this hack; + // it starts out false, and is set to true after the first call to + // processDatapoints. + + // Unfortunately this turns future setData calls into no-ops; they + // call processDatapoints, the flag is true, and nothing happens. + + // To fix this we'll set the flag back to false here in draw, when + // all series have been processed, so the next sequence of calls to + // processDatapoints once again starts out with a slice-combine. + // This is really a hack; in 0.9 we need to give plugins a proper + // way to modify series before any processing begins. + + processed = false; + + // calculate maximum radius and center point + + maxRadius = Math.min(canvasWidth, canvasHeight / options.series.pie.tilt) / 2; + centerTop = canvasHeight / 2 + options.series.pie.offset.top; + centerLeft = canvasWidth / 2; + + if (options.series.pie.offset.left == "auto") { + if (options.legend.position.match("w")) { + centerLeft += legendWidth / 2; + } else { + centerLeft -= legendWidth / 2; + } + if (centerLeft < maxRadius) { + centerLeft = maxRadius; + } else if (centerLeft > canvasWidth - maxRadius) { + centerLeft = canvasWidth - maxRadius; + } + } else { + centerLeft += options.series.pie.offset.left; + } + + var slices = plot.getData(), + attempts = 0; + + // Keep shrinking the pie's radius until drawPie returns true, + // indicating that all the labels fit, or we try too many times. + + do { + if (attempts > 0) { + maxRadius *= REDRAW_SHRINK; + } + attempts += 1; + clear(); + if (options.series.pie.tilt <= 0.8) { + drawShadow(); + } + } while (!drawPie() && attempts < REDRAW_ATTEMPTS) + + if (attempts >= REDRAW_ATTEMPTS) { + clear(); + target.prepend("
    Could not draw pie with labels contained inside canvas
    "); + } + + if (plot.setSeries && plot.insertLegend) { + plot.setSeries(slices); + plot.insertLegend(); + } + + // we're actually done at this point, just defining internal functions at this point + + function clear() { + ctx.clearRect(0, 0, canvasWidth, canvasHeight); + target.children().filter(".pieLabel, .pieLabelBackground").remove(); + } + + function drawShadow() { + + var shadowLeft = options.series.pie.shadow.left; + var shadowTop = options.series.pie.shadow.top; + var edge = 10; + var alpha = options.series.pie.shadow.alpha; + var radius = options.series.pie.radius > 1 ? options.series.pie.radius : maxRadius * options.series.pie.radius; + + if (radius >= canvasWidth / 2 - shadowLeft || radius * options.series.pie.tilt >= canvasHeight / 2 - shadowTop || radius <= edge) { + return; // shadow would be outside canvas, so don't draw it + } + + ctx.save(); + ctx.translate(shadowLeft,shadowTop); + ctx.globalAlpha = alpha; + ctx.fillStyle = "#000"; + + // center and rotate to starting position + + ctx.translate(centerLeft,centerTop); + ctx.scale(1, options.series.pie.tilt); + + //radius -= edge; + + for (var i = 1; i <= edge; i++) { + ctx.beginPath(); + ctx.arc(0, 0, radius, 0, Math.PI * 2, false); + ctx.fill(); + radius -= i; + } + + ctx.restore(); + } + + function drawPie() { + + var startAngle = Math.PI * options.series.pie.startAngle; + var radius = options.series.pie.radius > 1 ? options.series.pie.radius : maxRadius * options.series.pie.radius; + + // center and rotate to starting position + + ctx.save(); + ctx.translate(centerLeft,centerTop); + ctx.scale(1, options.series.pie.tilt); + //ctx.rotate(startAngle); // start at top; -- This doesn't work properly in Opera + + // draw slices + + ctx.save(); + var currentAngle = startAngle; + for (var i = 0; i < slices.length; ++i) { + slices[i].startAngle = currentAngle; + drawSlice(slices[i].angle, slices[i].color, true); + } + ctx.restore(); + + // draw slice outlines + + if (options.series.pie.stroke.width > 0) { + ctx.save(); + ctx.lineWidth = options.series.pie.stroke.width; + currentAngle = startAngle; + for (var i = 0; i < slices.length; ++i) { + drawSlice(slices[i].angle, options.series.pie.stroke.color, false); + } + ctx.restore(); + } + + // draw donut hole + + drawDonutHole(ctx); + + ctx.restore(); + + // Draw the labels, returning true if they fit within the plot + + if (options.series.pie.label.show) { + return drawLabels(); + } else return true; + + function drawSlice(angle, color, fill) { + + if (angle <= 0 || isNaN(angle)) { + return; + } + + if (fill) { + ctx.fillStyle = color; + } else { + ctx.strokeStyle = color; + ctx.lineJoin = "round"; + } + + ctx.beginPath(); + if (Math.abs(angle - Math.PI * 2) > 0.000000001) { + ctx.moveTo(0, 0); // Center of the pie + } + + //ctx.arc(0, 0, radius, 0, angle, false); // This doesn't work properly in Opera + ctx.arc(0, 0, radius,currentAngle, currentAngle + angle / 2, false); + ctx.arc(0, 0, radius,currentAngle + angle / 2, currentAngle + angle, false); + ctx.closePath(); + //ctx.rotate(angle); // This doesn't work properly in Opera + currentAngle += angle; + + if (fill) { + ctx.fill(); + } else { + ctx.stroke(); + } + } + + function drawLabels() { + + var currentAngle = startAngle; + var radius = options.series.pie.label.radius > 1 ? options.series.pie.label.radius : maxRadius * options.series.pie.label.radius; + + for (var i = 0; i < slices.length; ++i) { + if (slices[i].percent >= options.series.pie.label.threshold * 100) { + if (!drawLabel(slices[i], currentAngle, i)) { + return false; + } + } + currentAngle += slices[i].angle; + } + + return true; + + function drawLabel(slice, startAngle, index) { + + if (slice.data[0][1] == 0) { + return true; + } + + // format label text + + var lf = options.legend.labelFormatter, text, plf = options.series.pie.label.formatter; + + if (lf) { + text = lf(slice.label, slice); + } else { + text = slice.label; + } + + if (plf) { + text = plf(text, slice); + } + + var halfAngle = ((startAngle + slice.angle) + startAngle) / 2; + var x = centerLeft + Math.round(Math.cos(halfAngle) * radius); + var y = centerTop + Math.round(Math.sin(halfAngle) * radius) * options.series.pie.tilt; + + var html = "" + text + ""; + target.append(html); + + var label = target.children("#pieLabel" + index); + var labelTop = (y - label.height() / 2); + var labelLeft = (x - label.width() / 2); + + label.css("top", labelTop); + label.css("left", labelLeft); + + // check to make sure that the label is not outside the canvas + + if (0 - labelTop > 0 || 0 - labelLeft > 0 || canvasHeight - (labelTop + label.height()) < 0 || canvasWidth - (labelLeft + label.width()) < 0) { + return false; + } + + if (options.series.pie.label.background.opacity != 0) { + + // put in the transparent background separately to avoid blended labels and label boxes + + var c = options.series.pie.label.background.color; + + if (c == null) { + c = slice.color; + } + + var pos = "top:" + labelTop + "px;left:" + labelLeft + "px;"; + $("
    ") + .css("opacity", options.series.pie.label.background.opacity) + .insertBefore(label); + } + + return true; + } // end individual label function + } // end drawLabels function + } // end drawPie function + } // end draw function + + // Placed here because it needs to be accessed from multiple locations + + function drawDonutHole(layer) { + if (options.series.pie.innerRadius > 0) { + + // subtract the center + + layer.save(); + var innerRadius = options.series.pie.innerRadius > 1 ? options.series.pie.innerRadius : maxRadius * options.series.pie.innerRadius; + layer.globalCompositeOperation = "destination-out"; // this does not work with excanvas, but it will fall back to using the stroke color + layer.beginPath(); + layer.fillStyle = options.series.pie.stroke.color; + layer.arc(0, 0, innerRadius, 0, Math.PI * 2, false); + layer.fill(); + layer.closePath(); + layer.restore(); + + // add inner stroke + + layer.save(); + layer.beginPath(); + layer.strokeStyle = options.series.pie.stroke.color; + layer.arc(0, 0, innerRadius, 0, Math.PI * 2, false); + layer.stroke(); + layer.closePath(); + layer.restore(); + + // TODO: add extra shadow inside hole (with a mask) if the pie is tilted. + } + } + + //-- Additional Interactive related functions -- + + function isPointInPoly(poly, pt) { + for(var c = false, i = -1, l = poly.length, j = l - 1; ++i < l; j = i) + ((poly[i][1] <= pt[1] && pt[1] < poly[j][1]) || (poly[j][1] <= pt[1] && pt[1]< poly[i][1])) + && (pt[0] < (poly[j][0] - poly[i][0]) * (pt[1] - poly[i][1]) / (poly[j][1] - poly[i][1]) + poly[i][0]) + && (c = !c); + return c; + } + + function findNearbySlice(mouseX, mouseY) { + + var slices = plot.getData(), + options = plot.getOptions(), + radius = options.series.pie.radius > 1 ? options.series.pie.radius : maxRadius * options.series.pie.radius, + x, y; + + for (var i = 0; i < slices.length; ++i) { + + var s = slices[i]; + + if (s.pie.show) { + + ctx.save(); + ctx.beginPath(); + ctx.moveTo(0, 0); // Center of the pie + //ctx.scale(1, options.series.pie.tilt); // this actually seems to break everything when here. + ctx.arc(0, 0, radius, s.startAngle, s.startAngle + s.angle / 2, false); + ctx.arc(0, 0, radius, s.startAngle + s.angle / 2, s.startAngle + s.angle, false); + ctx.closePath(); + x = mouseX - centerLeft; + y = mouseY - centerTop; + + if (ctx.isPointInPath) { + if (ctx.isPointInPath(mouseX - centerLeft, mouseY - centerTop)) { + ctx.restore(); + return { + datapoint: [s.percent, s.data], + dataIndex: 0, + series: s, + seriesIndex: i + }; + } + } else { + + // excanvas for IE doesn;t support isPointInPath, this is a workaround. + + var p1X = radius * Math.cos(s.startAngle), + p1Y = radius * Math.sin(s.startAngle), + p2X = radius * Math.cos(s.startAngle + s.angle / 4), + p2Y = radius * Math.sin(s.startAngle + s.angle / 4), + p3X = radius * Math.cos(s.startAngle + s.angle / 2), + p3Y = radius * Math.sin(s.startAngle + s.angle / 2), + p4X = radius * Math.cos(s.startAngle + s.angle / 1.5), + p4Y = radius * Math.sin(s.startAngle + s.angle / 1.5), + p5X = radius * Math.cos(s.startAngle + s.angle), + p5Y = radius * Math.sin(s.startAngle + s.angle), + arrPoly = [[0, 0], [p1X, p1Y], [p2X, p2Y], [p3X, p3Y], [p4X, p4Y], [p5X, p5Y]], + arrPoint = [x, y]; + + // TODO: perhaps do some mathmatical trickery here with the Y-coordinate to compensate for pie tilt? + + if (isPointInPoly(arrPoly, arrPoint)) { + ctx.restore(); + return { + datapoint: [s.percent, s.data], + dataIndex: 0, + series: s, + seriesIndex: i + }; + } + } + + ctx.restore(); + } + } + + return null; + } + + function onMouseMove(e) { + triggerClickHoverEvent("plothover", e); + } + + function onClick(e) { + triggerClickHoverEvent("plotclick", e); + } + + // trigger click or hover event (they send the same parameters so we share their code) + + function triggerClickHoverEvent(eventname, e) { + + var offset = plot.offset(); + var canvasX = parseInt(e.pageX - offset.left); + var canvasY = parseInt(e.pageY - offset.top); + var item = findNearbySlice(canvasX, canvasY); + + if (options.grid.autoHighlight) { + + // clear auto-highlights + + for (var i = 0; i < highlights.length; ++i) { + var h = highlights[i]; + if (h.auto == eventname && !(item && h.series == item.series)) { + unhighlight(h.series); + } + } + } + + // highlight the slice + + if (item) { + highlight(item.series, eventname); + } + + // trigger any hover bind events + + var pos = { pageX: e.pageX, pageY: e.pageY }; + target.trigger(eventname, [pos, item]); + } + + function highlight(s, auto) { + //if (typeof s == "number") { + // s = series[s]; + //} + + var i = indexOfHighlight(s); + + if (i == -1) { + highlights.push({ series: s, auto: auto }); + plot.triggerRedrawOverlay(); + } else if (!auto) { + highlights[i].auto = false; + } + } + + function unhighlight(s) { + if (s == null) { + highlights = []; + plot.triggerRedrawOverlay(); + } + + //if (typeof s == "number") { + // s = series[s]; + //} + + var i = indexOfHighlight(s); + + if (i != -1) { + highlights.splice(i, 1); + plot.triggerRedrawOverlay(); + } + } + + function indexOfHighlight(s) { + for (var i = 0; i < highlights.length; ++i) { + var h = highlights[i]; + if (h.series == s) + return i; + } + return -1; + } + + function drawOverlay(plot, octx) { + + var options = plot.getOptions(); + + var radius = options.series.pie.radius > 1 ? options.series.pie.radius : maxRadius * options.series.pie.radius; + + octx.save(); + octx.translate(centerLeft, centerTop); + octx.scale(1, options.series.pie.tilt); + + for (var i = 0; i < highlights.length; ++i) { + drawHighlight(highlights[i].series); + } + + drawDonutHole(octx); + + octx.restore(); + + function drawHighlight(series) { + + if (series.angle <= 0 || isNaN(series.angle)) { + return; + } + + //octx.fillStyle = parseColor(options.series.pie.highlight.color).scale(null, null, null, options.series.pie.highlight.opacity).toString(); + octx.fillStyle = "rgba(255, 255, 255, " + options.series.pie.highlight.opacity + ")"; // this is temporary until we have access to parseColor + octx.beginPath(); + if (Math.abs(series.angle - Math.PI * 2) > 0.000000001) { + octx.moveTo(0, 0); // Center of the pie + } + octx.arc(0, 0, radius, series.startAngle, series.startAngle + series.angle / 2, false); + octx.arc(0, 0, radius, series.startAngle + series.angle / 2, series.startAngle + series.angle, false); + octx.closePath(); + octx.fill(); + } + } + } // end init (plugin body) + + // define pie specific options and their default values + + var options = { + series: { + pie: { + show: false, + radius: "auto", // actual radius of the visible pie (based on full calculated radius if <=1, or hard pixel value) + innerRadius: 0, /* for donut */ + startAngle: 3/2, + tilt: 1, + shadow: { + left: 5, // shadow left offset + top: 15, // shadow top offset + alpha: 0.02 // shadow alpha + }, + offset: { + top: 0, + left: "auto" + }, + stroke: { + color: "#fff", + width: 1 + }, + label: { + show: "auto", + formatter: function(label, slice) { + return "
    " + label + "
    " + Math.round(slice.percent) + "%
    "; + }, // formatter function + radius: 1, // radius at which to place the labels (based on full calculated radius if <=1, or hard pixel value) + background: { + color: null, + opacity: 0 + }, + threshold: 0 // percentage at which to hide the label (i.e. the slice is too narrow) + }, + combine: { + threshold: -1, // percentage at which to combine little slices into one larger slice + color: null, // color to give the new slice (auto-generated if null) + label: "Other" // label to give the new slice + }, + highlight: { + //color: "#fff", // will add this functionality once parseColor is available + opacity: 0.5 + } + } + } + }; + + $.plot.plugins.push({ + init: init, + options: options, + name: "pie", + version: "1.1" + }); + +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.resize.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.resize.js new file mode 100644 index 000000000..8a626dda0 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.resize.js @@ -0,0 +1,59 @@ +/* Flot plugin for automatically redrawing plots as the placeholder resizes. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +It works by listening for changes on the placeholder div (through the jQuery +resize event plugin) - if the size changes, it will redraw the plot. + +There are no options. If you need to disable the plugin for some plots, you +can just fix the size of their placeholders. + +*/ + +/* Inline dependency: + * jQuery resize event - v1.1 - 3/14/2010 + * http://benalman.com/projects/jquery-resize-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,t){"$:nomunge";var i=[],n=$.resize=$.extend($.resize,{}),a,r=false,s="setTimeout",u="resize",m=u+"-special-event",o="pendingDelay",l="activeDelay",f="throttleWindow";n[o]=200;n[l]=20;n[f]=true;$.event.special[u]={setup:function(){if(!n[f]&&this[s]){return false}var e=$(this);i.push(this);e.data(m,{w:e.width(),h:e.height()});if(i.length===1){a=t;h()}},teardown:function(){if(!n[f]&&this[s]){return false}var e=$(this);for(var t=i.length-1;t>=0;t--){if(i[t]==this){i.splice(t,1);break}}e.removeData(m);if(!i.length){if(r){cancelAnimationFrame(a)}else{clearTimeout(a)}a=null}},add:function(e){if(!n[f]&&this[s]){return false}var i;function a(e,n,a){var r=$(this),s=r.data(m)||{};s.w=n!==t?n:r.width();s.h=a!==t?a:r.height();i.apply(this,arguments)}if($.isFunction(e)){i=e;return a}else{i=e.handler;e.handler=a}}};function h(t){if(r===true){r=t||1}for(var s=i.length-1;s>=0;s--){var l=$(i[s]);if(l[0]==e||l.is(":visible")){var f=l.width(),c=l.height(),d=l.data(m);if(d&&(f!==d.w||c!==d.h)){l.trigger(u,[d.w=f,d.h=c]);r=t||true}}else{d=l.data(m);d.w=0;d.h=0}}if(a!==null){if(r&&(t==null||t-r<1e3)){a=e.requestAnimationFrame(h)}else{a=setTimeout(h,n[o]);r=false}}}if(!e.requestAnimationFrame){e.requestAnimationFrame=function(){return e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame||function(t,i){return e.setTimeout(function(){t((new Date).getTime())},n[l])}}()}if(!e.cancelAnimationFrame){e.cancelAnimationFrame=function(){return e.webkitCancelRequestAnimationFrame||e.mozCancelRequestAnimationFrame||e.oCancelRequestAnimationFrame||e.msCancelRequestAnimationFrame||clearTimeout}()}})(jQuery,this); + +(function ($) { + var options = { }; // no options + + function init(plot) { + function onResize() { + var placeholder = plot.getPlaceholder(); + + // somebody might have hidden us and we can't plot + // when we don't have the dimensions + if (placeholder.width() == 0 || placeholder.height() == 0) + return; + + plot.resize(); + plot.setupGrid(); + plot.draw(); + } + + function bindEvents(plot, eventHolder) { + plot.getPlaceholder().resize(onResize); + } + + function shutdown(plot, eventHolder) { + plot.getPlaceholder().unbind("resize", onResize); + } + + plot.hooks.bindEvents.push(bindEvents); + plot.hooks.shutdown.push(shutdown); + } + + $.plot.plugins.push({ + init: init, + options: options, + name: 'resize', + version: '1.0' + }); +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.selection.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.selection.js new file mode 100644 index 000000000..d3c20fa4e --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.selection.js @@ -0,0 +1,360 @@ +/* Flot plugin for selecting regions of a plot. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +The plugin supports these options: + +selection: { + mode: null or "x" or "y" or "xy", + color: color, + shape: "round" or "miter" or "bevel", + minSize: number of pixels +} + +Selection support is enabled by setting the mode to one of "x", "y" or "xy". +In "x" mode, the user will only be able to specify the x range, similarly for +"y" mode. For "xy", the selection becomes a rectangle where both ranges can be +specified. "color" is color of the selection (if you need to change the color +later on, you can get to it with plot.getOptions().selection.color). "shape" +is the shape of the corners of the selection. + +"minSize" is the minimum size a selection can be in pixels. This value can +be customized to determine the smallest size a selection can be and still +have the selection rectangle be displayed. When customizing this value, the +fact that it refers to pixels, not axis units must be taken into account. +Thus, for example, if there is a bar graph in time mode with BarWidth set to 1 +minute, setting "minSize" to 1 will not make the minimum selection size 1 +minute, but rather 1 pixel. Note also that setting "minSize" to 0 will prevent +"plotunselected" events from being fired when the user clicks the mouse without +dragging. + +When selection support is enabled, a "plotselected" event will be emitted on +the DOM element you passed into the plot function. The event handler gets a +parameter with the ranges selected on the axes, like this: + + placeholder.bind( "plotselected", function( event, ranges ) { + alert("You selected " + ranges.xaxis.from + " to " + ranges.xaxis.to) + // similar for yaxis - with multiple axes, the extra ones are in + // x2axis, x3axis, ... + }); + +The "plotselected" event is only fired when the user has finished making the +selection. A "plotselecting" event is fired during the process with the same +parameters as the "plotselected" event, in case you want to know what's +happening while it's happening, + +A "plotunselected" event with no arguments is emitted when the user clicks the +mouse to remove the selection. As stated above, setting "minSize" to 0 will +destroy this behavior. + +The plugin allso adds the following methods to the plot object: + +- setSelection( ranges, preventEvent ) + + Set the selection rectangle. The passed in ranges is on the same form as + returned in the "plotselected" event. If the selection mode is "x", you + should put in either an xaxis range, if the mode is "y" you need to put in + an yaxis range and both xaxis and yaxis if the selection mode is "xy", like + this: + + setSelection({ xaxis: { from: 0, to: 10 }, yaxis: { from: 40, to: 60 } }); + + setSelection will trigger the "plotselected" event when called. If you don't + want that to happen, e.g. if you're inside a "plotselected" handler, pass + true as the second parameter. If you are using multiple axes, you can + specify the ranges on any of those, e.g. as x2axis/x3axis/... instead of + xaxis, the plugin picks the first one it sees. + +- clearSelection( preventEvent ) + + Clear the selection rectangle. Pass in true to avoid getting a + "plotunselected" event. + +- getSelection() + + Returns the current selection in the same format as the "plotselected" + event. If there's currently no selection, the function returns null. + +*/ + +(function ($) { + function init(plot) { + var selection = { + first: { x: -1, y: -1}, second: { x: -1, y: -1}, + show: false, + active: false + }; + + // FIXME: The drag handling implemented here should be + // abstracted out, there's some similar code from a library in + // the navigation plugin, this should be massaged a bit to fit + // the Flot cases here better and reused. Doing this would + // make this plugin much slimmer. + var savedhandlers = {}; + + var mouseUpHandler = null; + + function onMouseMove(e) { + if (selection.active) { + updateSelection(e); + + plot.getPlaceholder().trigger("plotselecting", [ getSelection() ]); + } + } + + function onMouseDown(e) { + if (e.which != 1) // only accept left-click + return; + + // cancel out any text selections + document.body.focus(); + + // prevent text selection and drag in old-school browsers + if (document.onselectstart !== undefined && savedhandlers.onselectstart == null) { + savedhandlers.onselectstart = document.onselectstart; + document.onselectstart = function () { return false; }; + } + if (document.ondrag !== undefined && savedhandlers.ondrag == null) { + savedhandlers.ondrag = document.ondrag; + document.ondrag = function () { return false; }; + } + + setSelectionPos(selection.first, e); + + selection.active = true; + + // this is a bit silly, but we have to use a closure to be + // able to whack the same handler again + mouseUpHandler = function (e) { onMouseUp(e); }; + + $(document).one("mouseup", mouseUpHandler); + } + + function onMouseUp(e) { + mouseUpHandler = null; + + // revert drag stuff for old-school browsers + if (document.onselectstart !== undefined) + document.onselectstart = savedhandlers.onselectstart; + if (document.ondrag !== undefined) + document.ondrag = savedhandlers.ondrag; + + // no more dragging + selection.active = false; + updateSelection(e); + + if (selectionIsSane()) + triggerSelectedEvent(); + else { + // this counts as a clear + plot.getPlaceholder().trigger("plotunselected", [ ]); + plot.getPlaceholder().trigger("plotselecting", [ null ]); + } + + return false; + } + + function getSelection() { + if (!selectionIsSane()) + return null; + + if (!selection.show) return null; + + var r = {}, c1 = selection.first, c2 = selection.second; + $.each(plot.getAxes(), function (name, axis) { + if (axis.used) { + var p1 = axis.c2p(c1[axis.direction]), p2 = axis.c2p(c2[axis.direction]); + r[name] = { from: Math.min(p1, p2), to: Math.max(p1, p2) }; + } + }); + return r; + } + + function triggerSelectedEvent() { + var r = getSelection(); + + plot.getPlaceholder().trigger("plotselected", [ r ]); + + // backwards-compat stuff, to be removed in future + if (r.xaxis && r.yaxis) + plot.getPlaceholder().trigger("selected", [ { x1: r.xaxis.from, y1: r.yaxis.from, x2: r.xaxis.to, y2: r.yaxis.to } ]); + } + + function clamp(min, value, max) { + return value < min ? min: (value > max ? max: value); + } + + function setSelectionPos(pos, e) { + var o = plot.getOptions(); + var offset = plot.getPlaceholder().offset(); + var plotOffset = plot.getPlotOffset(); + pos.x = clamp(0, e.pageX - offset.left - plotOffset.left, plot.width()); + pos.y = clamp(0, e.pageY - offset.top - plotOffset.top, plot.height()); + + if (o.selection.mode == "y") + pos.x = pos == selection.first ? 0 : plot.width(); + + if (o.selection.mode == "x") + pos.y = pos == selection.first ? 0 : plot.height(); + } + + function updateSelection(pos) { + if (pos.pageX == null) + return; + + setSelectionPos(selection.second, pos); + if (selectionIsSane()) { + selection.show = true; + plot.triggerRedrawOverlay(); + } + else + clearSelection(true); + } + + function clearSelection(preventEvent) { + if (selection.show) { + selection.show = false; + plot.triggerRedrawOverlay(); + if (!preventEvent) + plot.getPlaceholder().trigger("plotunselected", [ ]); + } + } + + // function taken from markings support in Flot + function extractRange(ranges, coord) { + var axis, from, to, key, axes = plot.getAxes(); + + for (var k in axes) { + axis = axes[k]; + if (axis.direction == coord) { + key = coord + axis.n + "axis"; + if (!ranges[key] && axis.n == 1) + key = coord + "axis"; // support x1axis as xaxis + if (ranges[key]) { + from = ranges[key].from; + to = ranges[key].to; + break; + } + } + } + + // backwards-compat stuff - to be removed in future + if (!ranges[key]) { + axis = coord == "x" ? plot.getXAxes()[0] : plot.getYAxes()[0]; + from = ranges[coord + "1"]; + to = ranges[coord + "2"]; + } + + // auto-reverse as an added bonus + if (from != null && to != null && from > to) { + var tmp = from; + from = to; + to = tmp; + } + + return { from: from, to: to, axis: axis }; + } + + function setSelection(ranges, preventEvent) { + var axis, range, o = plot.getOptions(); + + if (o.selection.mode == "y") { + selection.first.x = 0; + selection.second.x = plot.width(); + } + else { + range = extractRange(ranges, "x"); + + selection.first.x = range.axis.p2c(range.from); + selection.second.x = range.axis.p2c(range.to); + } + + if (o.selection.mode == "x") { + selection.first.y = 0; + selection.second.y = plot.height(); + } + else { + range = extractRange(ranges, "y"); + + selection.first.y = range.axis.p2c(range.from); + selection.second.y = range.axis.p2c(range.to); + } + + selection.show = true; + plot.triggerRedrawOverlay(); + if (!preventEvent && selectionIsSane()) + triggerSelectedEvent(); + } + + function selectionIsSane() { + var minSize = plot.getOptions().selection.minSize; + return Math.abs(selection.second.x - selection.first.x) >= minSize && + Math.abs(selection.second.y - selection.first.y) >= minSize; + } + + plot.clearSelection = clearSelection; + plot.setSelection = setSelection; + plot.getSelection = getSelection; + + plot.hooks.bindEvents.push(function(plot, eventHolder) { + var o = plot.getOptions(); + if (o.selection.mode != null) { + eventHolder.mousemove(onMouseMove); + eventHolder.mousedown(onMouseDown); + } + }); + + + plot.hooks.drawOverlay.push(function (plot, ctx) { + // draw selection + if (selection.show && selectionIsSane()) { + var plotOffset = plot.getPlotOffset(); + var o = plot.getOptions(); + + ctx.save(); + ctx.translate(plotOffset.left, plotOffset.top); + + var c = $.color.parse(o.selection.color); + + ctx.strokeStyle = c.scale('a', 0.8).toString(); + ctx.lineWidth = 1; + ctx.lineJoin = o.selection.shape; + ctx.fillStyle = c.scale('a', 0.4).toString(); + + var x = Math.min(selection.first.x, selection.second.x) + 0.5, + y = Math.min(selection.first.y, selection.second.y) + 0.5, + w = Math.abs(selection.second.x - selection.first.x) - 1, + h = Math.abs(selection.second.y - selection.first.y) - 1; + + ctx.fillRect(x, y, w, h); + ctx.strokeRect(x, y, w, h); + + ctx.restore(); + } + }); + + plot.hooks.shutdown.push(function (plot, eventHolder) { + eventHolder.unbind("mousemove", onMouseMove); + eventHolder.unbind("mousedown", onMouseDown); + + if (mouseUpHandler) + $(document).unbind("mouseup", mouseUpHandler); + }); + + } + + $.plot.plugins.push({ + init: init, + options: { + selection: { + mode: null, // one of null, "x", "y" or "xy" + color: "#e8cfac", + shape: "round", // one of "round", "miter", or "bevel" + minSize: 5 // minimum number of pixels + } + }, + name: 'selection', + version: '1.1' + }); +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.stack.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.stack.js new file mode 100644 index 000000000..e75a7dfc0 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.stack.js @@ -0,0 +1,188 @@ +/* Flot plugin for stacking data sets rather than overlyaing them. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +The plugin assumes the data is sorted on x (or y if stacking horizontally). +For line charts, it is assumed that if a line has an undefined gap (from a +null point), then the line above it should have the same gap - insert zeros +instead of "null" if you want another behaviour. This also holds for the start +and end of the chart. Note that stacking a mix of positive and negative values +in most instances doesn't make sense (so it looks weird). + +Two or more series are stacked when their "stack" attribute is set to the same +key (which can be any number or string or just "true"). To specify the default +stack, you can set the stack option like this: + + series: { + stack: null/false, true, or a key (number/string) + } + +You can also specify it for a single series, like this: + + $.plot( $("#placeholder"), [{ + data: [ ... ], + stack: true + }]) + +The stacking order is determined by the order of the data series in the array +(later series end up on top of the previous). + +Internally, the plugin modifies the datapoints in each series, adding an +offset to the y value. For line series, extra data points are inserted through +interpolation. If there's a second y value, it's also adjusted (e.g for bar +charts or filled areas). + +*/ + +(function ($) { + var options = { + series: { stack: null } // or number/string + }; + + function init(plot) { + function findMatchingSeries(s, allseries) { + var res = null; + for (var i = 0; i < allseries.length; ++i) { + if (s == allseries[i]) + break; + + if (allseries[i].stack == s.stack) + res = allseries[i]; + } + + return res; + } + + function stackData(plot, s, datapoints) { + if (s.stack == null || s.stack === false) + return; + + var other = findMatchingSeries(s, plot.getData()); + if (!other) + return; + + var ps = datapoints.pointsize, + points = datapoints.points, + otherps = other.datapoints.pointsize, + otherpoints = other.datapoints.points, + newpoints = [], + px, py, intery, qx, qy, bottom, + withlines = s.lines.show, + horizontal = s.bars.horizontal, + withbottom = ps > 2 && (horizontal ? datapoints.format[2].x : datapoints.format[2].y), + withsteps = withlines && s.lines.steps, + fromgap = true, + keyOffset = horizontal ? 1 : 0, + accumulateOffset = horizontal ? 0 : 1, + i = 0, j = 0, l, m; + + while (true) { + if (i >= points.length) + break; + + l = newpoints.length; + + if (points[i] == null) { + // copy gaps + for (m = 0; m < ps; ++m) + newpoints.push(points[i + m]); + i += ps; + } + else if (j >= otherpoints.length) { + // for lines, we can't use the rest of the points + if (!withlines) { + for (m = 0; m < ps; ++m) + newpoints.push(points[i + m]); + } + i += ps; + } + else if (otherpoints[j] == null) { + // oops, got a gap + for (m = 0; m < ps; ++m) + newpoints.push(null); + fromgap = true; + j += otherps; + } + else { + // cases where we actually got two points + px = points[i + keyOffset]; + py = points[i + accumulateOffset]; + qx = otherpoints[j + keyOffset]; + qy = otherpoints[j + accumulateOffset]; + bottom = 0; + + if (px == qx) { + for (m = 0; m < ps; ++m) + newpoints.push(points[i + m]); + + newpoints[l + accumulateOffset] += qy; + bottom = qy; + + i += ps; + j += otherps; + } + else if (px > qx) { + // we got past point below, might need to + // insert interpolated extra point + if (withlines && i > 0 && points[i - ps] != null) { + intery = py + (points[i - ps + accumulateOffset] - py) * (qx - px) / (points[i - ps + keyOffset] - px); + newpoints.push(qx); + newpoints.push(intery + qy); + for (m = 2; m < ps; ++m) + newpoints.push(points[i + m]); + bottom = qy; + } + + j += otherps; + } + else { // px < qx + if (fromgap && withlines) { + // if we come from a gap, we just skip this point + i += ps; + continue; + } + + for (m = 0; m < ps; ++m) + newpoints.push(points[i + m]); + + // we might be able to interpolate a point below, + // this can give us a better y + if (withlines && j > 0 && otherpoints[j - otherps] != null) + bottom = qy + (otherpoints[j - otherps + accumulateOffset] - qy) * (px - qx) / (otherpoints[j - otherps + keyOffset] - qx); + + newpoints[l + accumulateOffset] += bottom; + + i += ps; + } + + fromgap = false; + + if (l != newpoints.length && withbottom) + newpoints[l + 2] += bottom; + } + + // maintain the line steps invariant + if (withsteps && l != newpoints.length && l > 0 + && newpoints[l] != null + && newpoints[l] != newpoints[l - ps] + && newpoints[l + 1] != newpoints[l - ps + 1]) { + for (m = 0; m < ps; ++m) + newpoints[l + ps + m] = newpoints[l + m]; + newpoints[l + 1] = newpoints[l - ps + 1]; + } + } + + datapoints.points = newpoints; + } + + plot.hooks.processDatapoints.push(stackData); + } + + $.plot.plugins.push({ + init: init, + options: options, + name: 'stack', + version: '1.2' + }); +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.symbol.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.symbol.js new file mode 100644 index 000000000..79f634971 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.symbol.js @@ -0,0 +1,71 @@ +/* Flot plugin that adds some extra symbols for plotting points. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +The symbols are accessed as strings through the standard symbol options: + + series: { + points: { + symbol: "square" // or "diamond", "triangle", "cross" + } + } + +*/ + +(function ($) { + function processRawData(plot, series, datapoints) { + // we normalize the area of each symbol so it is approximately the + // same as a circle of the given radius + + var handlers = { + square: function (ctx, x, y, radius, shadow) { + // pi * r^2 = (2s)^2 => s = r * sqrt(pi)/2 + var size = radius * Math.sqrt(Math.PI) / 2; + ctx.rect(x - size, y - size, size + size, size + size); + }, + diamond: function (ctx, x, y, radius, shadow) { + // pi * r^2 = 2s^2 => s = r * sqrt(pi/2) + var size = radius * Math.sqrt(Math.PI / 2); + ctx.moveTo(x - size, y); + ctx.lineTo(x, y - size); + ctx.lineTo(x + size, y); + ctx.lineTo(x, y + size); + ctx.lineTo(x - size, y); + }, + triangle: function (ctx, x, y, radius, shadow) { + // pi * r^2 = 1/2 * s^2 * sin (pi / 3) => s = r * sqrt(2 * pi / sin(pi / 3)) + var size = radius * Math.sqrt(2 * Math.PI / Math.sin(Math.PI / 3)); + var height = size * Math.sin(Math.PI / 3); + ctx.moveTo(x - size/2, y + height/2); + ctx.lineTo(x + size/2, y + height/2); + if (!shadow) { + ctx.lineTo(x, y - height/2); + ctx.lineTo(x - size/2, y + height/2); + } + }, + cross: function (ctx, x, y, radius, shadow) { + // pi * r^2 = (2s)^2 => s = r * sqrt(pi)/2 + var size = radius * Math.sqrt(Math.PI) / 2; + ctx.moveTo(x - size, y - size); + ctx.lineTo(x + size, y + size); + ctx.moveTo(x - size, y + size); + ctx.lineTo(x + size, y - size); + } + }; + + var s = series.points.symbol; + if (handlers[s]) + series.points.symbol = handlers[s]; + } + + function init(plot) { + plot.hooks.processDatapoints.push(processRawData); + } + + $.plot.plugins.push({ + init: init, + name: 'symbols', + version: '1.0' + }); +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.threshold.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.threshold.js new file mode 100644 index 000000000..8c99c401d --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.threshold.js @@ -0,0 +1,142 @@ +/* Flot plugin for thresholding data. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +The plugin supports these options: + + series: { + threshold: { + below: number + color: colorspec + } + } + +It can also be applied to a single series, like this: + + $.plot( $("#placeholder"), [{ + data: [ ... ], + threshold: { ... } + }]) + +An array can be passed for multiple thresholding, like this: + + threshold: [{ + below: number1 + color: color1 + },{ + below: number2 + color: color2 + }] + +These multiple threshold objects can be passed in any order since they are +sorted by the processing function. + +The data points below "below" are drawn with the specified color. This makes +it easy to mark points below 0, e.g. for budget data. + +Internally, the plugin works by splitting the data into two series, above and +below the threshold. The extra series below the threshold will have its label +cleared and the special "originSeries" attribute set to the original series. +You may need to check for this in hover events. + +*/ + +(function ($) { + var options = { + series: { threshold: null } // or { below: number, color: color spec} + }; + + function init(plot) { + function thresholdData(plot, s, datapoints, below, color) { + var ps = datapoints.pointsize, i, x, y, p, prevp, + thresholded = $.extend({}, s); // note: shallow copy + + thresholded.datapoints = { points: [], pointsize: ps, format: datapoints.format }; + thresholded.label = null; + thresholded.color = color; + thresholded.threshold = null; + thresholded.originSeries = s; + thresholded.data = []; + + var origpoints = datapoints.points, + addCrossingPoints = s.lines.show; + + var threspoints = []; + var newpoints = []; + var m; + + for (i = 0; i < origpoints.length; i += ps) { + x = origpoints[i]; + y = origpoints[i + 1]; + + prevp = p; + if (y < below) + p = threspoints; + else + p = newpoints; + + if (addCrossingPoints && prevp != p && x != null + && i > 0 && origpoints[i - ps] != null) { + var interx = x + (below - y) * (x - origpoints[i - ps]) / (y - origpoints[i - ps + 1]); + prevp.push(interx); + prevp.push(below); + for (m = 2; m < ps; ++m) + prevp.push(origpoints[i + m]); + + p.push(null); // start new segment + p.push(null); + for (m = 2; m < ps; ++m) + p.push(origpoints[i + m]); + p.push(interx); + p.push(below); + for (m = 2; m < ps; ++m) + p.push(origpoints[i + m]); + } + + p.push(x); + p.push(y); + for (m = 2; m < ps; ++m) + p.push(origpoints[i + m]); + } + + datapoints.points = newpoints; + thresholded.datapoints.points = threspoints; + + if (thresholded.datapoints.points.length > 0) { + var origIndex = $.inArray(s, plot.getData()); + // Insert newly-generated series right after original one (to prevent it from becoming top-most) + plot.getData().splice(origIndex + 1, 0, thresholded); + } + + // FIXME: there are probably some edge cases left in bars + } + + function processThresholds(plot, s, datapoints) { + if (!s.threshold) + return; + + if (s.threshold instanceof Array) { + s.threshold.sort(function(a, b) { + return a.below - b.below; + }); + + $(s.threshold).each(function(i, th) { + thresholdData(plot, s, datapoints, th.below, th.color); + }); + } + else { + thresholdData(plot, s, datapoints, s.threshold.below, s.threshold.color); + } + } + + plot.hooks.processDatapoints.push(processThresholds); + } + + $.plot.plugins.push({ + init: init, + options: options, + name: 'threshold', + version: '1.2' + }); +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.flot.time.js b/djangoproject/static/js/lib/jquery-flot/jquery.flot.time.js new file mode 100644 index 000000000..34c1d1212 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.flot.time.js @@ -0,0 +1,432 @@ +/* Pretty handling of time axes. + +Copyright (c) 2007-2014 IOLA and Ole Laursen. +Licensed under the MIT license. + +Set axis.mode to "time" to enable. See the section "Time series data" in +API.txt for details. + +*/ + +(function($) { + + var options = { + xaxis: { + timezone: null, // "browser" for local to the client or timezone for timezone-js + timeformat: null, // format string to use + twelveHourClock: false, // 12 or 24 time in time mode + monthNames: null // list of names of months + } + }; + + // round to nearby lower multiple of base + + function floorInBase(n, base) { + return base * Math.floor(n / base); + } + + // Returns a string with the date d formatted according to fmt. + // A subset of the Open Group's strftime format is supported. + + function formatDate(d, fmt, monthNames, dayNames) { + + if (typeof d.strftime == "function") { + return d.strftime(fmt); + } + + var leftPad = function(n, pad) { + n = "" + n; + pad = "" + (pad == null ? "0" : pad); + return n.length == 1 ? pad + n : n; + }; + + var r = []; + var escape = false; + var hours = d.getHours(); + var isAM = hours < 12; + + if (monthNames == null) { + monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; + } + + if (dayNames == null) { + dayNames = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]; + } + + var hours12; + + if (hours > 12) { + hours12 = hours - 12; + } else if (hours == 0) { + hours12 = 12; + } else { + hours12 = hours; + } + + for (var i = 0; i < fmt.length; ++i) { + + var c = fmt.charAt(i); + + if (escape) { + switch (c) { + case 'a': c = "" + dayNames[d.getDay()]; break; + case 'b': c = "" + monthNames[d.getMonth()]; break; + case 'd': c = leftPad(d.getDate()); break; + case 'e': c = leftPad(d.getDate(), " "); break; + case 'h': // For back-compat with 0.7; remove in 1.0 + case 'H': c = leftPad(hours); break; + case 'I': c = leftPad(hours12); break; + case 'l': c = leftPad(hours12, " "); break; + case 'm': c = leftPad(d.getMonth() + 1); break; + case 'M': c = leftPad(d.getMinutes()); break; + // quarters not in Open Group's strftime specification + case 'q': + c = "" + (Math.floor(d.getMonth() / 3) + 1); break; + case 'S': c = leftPad(d.getSeconds()); break; + case 'y': c = leftPad(d.getFullYear() % 100); break; + case 'Y': c = "" + d.getFullYear(); break; + case 'p': c = (isAM) ? ("" + "am") : ("" + "pm"); break; + case 'P': c = (isAM) ? ("" + "AM") : ("" + "PM"); break; + case 'w': c = "" + d.getDay(); break; + } + r.push(c); + escape = false; + } else { + if (c == "%") { + escape = true; + } else { + r.push(c); + } + } + } + + return r.join(""); + } + + // To have a consistent view of time-based data independent of which time + // zone the client happens to be in we need a date-like object independent + // of time zones. This is done through a wrapper that only calls the UTC + // versions of the accessor methods. + + function makeUtcWrapper(d) { + + function addProxyMethod(sourceObj, sourceMethod, targetObj, targetMethod) { + sourceObj[sourceMethod] = function() { + return targetObj[targetMethod].apply(targetObj, arguments); + }; + }; + + var utc = { + date: d + }; + + // support strftime, if found + + if (d.strftime != undefined) { + addProxyMethod(utc, "strftime", d, "strftime"); + } + + addProxyMethod(utc, "getTime", d, "getTime"); + addProxyMethod(utc, "setTime", d, "setTime"); + + var props = ["Date", "Day", "FullYear", "Hours", "Milliseconds", "Minutes", "Month", "Seconds"]; + + for (var p = 0; p < props.length; p++) { + addProxyMethod(utc, "get" + props[p], d, "getUTC" + props[p]); + addProxyMethod(utc, "set" + props[p], d, "setUTC" + props[p]); + } + + return utc; + }; + + // select time zone strategy. This returns a date-like object tied to the + // desired timezone + + function dateGenerator(ts, opts) { + if (opts.timezone == "browser") { + return new Date(ts); + } else if (!opts.timezone || opts.timezone == "utc") { + return makeUtcWrapper(new Date(ts)); + } else if (typeof timezoneJS != "undefined" && typeof timezoneJS.Date != "undefined") { + var d = new timezoneJS.Date(); + // timezone-js is fickle, so be sure to set the time zone before + // setting the time. + d.setTimezone(opts.timezone); + d.setTime(ts); + return d; + } else { + return makeUtcWrapper(new Date(ts)); + } + } + + // map of app. size of time units in milliseconds + + var timeUnitSize = { + "second": 1000, + "minute": 60 * 1000, + "hour": 60 * 60 * 1000, + "day": 24 * 60 * 60 * 1000, + "month": 30 * 24 * 60 * 60 * 1000, + "quarter": 3 * 30 * 24 * 60 * 60 * 1000, + "year": 365.2425 * 24 * 60 * 60 * 1000 + }; + + // the allowed tick sizes, after 1 year we use + // an integer algorithm + + var baseSpec = [ + [1, "second"], [2, "second"], [5, "second"], [10, "second"], + [30, "second"], + [1, "minute"], [2, "minute"], [5, "minute"], [10, "minute"], + [30, "minute"], + [1, "hour"], [2, "hour"], [4, "hour"], + [8, "hour"], [12, "hour"], + [1, "day"], [2, "day"], [3, "day"], + [0.25, "month"], [0.5, "month"], [1, "month"], + [2, "month"] + ]; + + // we don't know which variant(s) we'll need yet, but generating both is + // cheap + + var specMonths = baseSpec.concat([[3, "month"], [6, "month"], + [1, "year"]]); + var specQuarters = baseSpec.concat([[1, "quarter"], [2, "quarter"], + [1, "year"]]); + + function init(plot) { + plot.hooks.processOptions.push(function (plot, options) { + $.each(plot.getAxes(), function(axisName, axis) { + + var opts = axis.options; + + if (opts.mode == "time") { + axis.tickGenerator = function(axis) { + + var ticks = []; + var d = dateGenerator(axis.min, opts); + var minSize = 0; + + // make quarter use a possibility if quarters are + // mentioned in either of these options + + var spec = (opts.tickSize && opts.tickSize[1] === + "quarter") || + (opts.minTickSize && opts.minTickSize[1] === + "quarter") ? specQuarters : specMonths; + + if (opts.minTickSize != null) { + if (typeof opts.tickSize == "number") { + minSize = opts.tickSize; + } else { + minSize = opts.minTickSize[0] * timeUnitSize[opts.minTickSize[1]]; + } + } + + for (var i = 0; i < spec.length - 1; ++i) { + if (axis.delta < (spec[i][0] * timeUnitSize[spec[i][1]] + + spec[i + 1][0] * timeUnitSize[spec[i + 1][1]]) / 2 + && spec[i][0] * timeUnitSize[spec[i][1]] >= minSize) { + break; + } + } + + var size = spec[i][0]; + var unit = spec[i][1]; + + // special-case the possibility of several years + + if (unit == "year") { + + // if given a minTickSize in years, just use it, + // ensuring that it's an integer + + if (opts.minTickSize != null && opts.minTickSize[1] == "year") { + size = Math.floor(opts.minTickSize[0]); + } else { + + var magn = Math.pow(10, Math.floor(Math.log(axis.delta / timeUnitSize.year) / Math.LN10)); + var norm = (axis.delta / timeUnitSize.year) / magn; + + if (norm < 1.5) { + size = 1; + } else if (norm < 3) { + size = 2; + } else if (norm < 7.5) { + size = 5; + } else { + size = 10; + } + + size *= magn; + } + + // minimum size for years is 1 + + if (size < 1) { + size = 1; + } + } + + axis.tickSize = opts.tickSize || [size, unit]; + var tickSize = axis.tickSize[0]; + unit = axis.tickSize[1]; + + var step = tickSize * timeUnitSize[unit]; + + if (unit == "second") { + d.setSeconds(floorInBase(d.getSeconds(), tickSize)); + } else if (unit == "minute") { + d.setMinutes(floorInBase(d.getMinutes(), tickSize)); + } else if (unit == "hour") { + d.setHours(floorInBase(d.getHours(), tickSize)); + } else if (unit == "month") { + d.setMonth(floorInBase(d.getMonth(), tickSize)); + } else if (unit == "quarter") { + d.setMonth(3 * floorInBase(d.getMonth() / 3, + tickSize)); + } else if (unit == "year") { + d.setFullYear(floorInBase(d.getFullYear(), tickSize)); + } + + // reset smaller components + + d.setMilliseconds(0); + + if (step >= timeUnitSize.minute) { + d.setSeconds(0); + } + if (step >= timeUnitSize.hour) { + d.setMinutes(0); + } + if (step >= timeUnitSize.day) { + d.setHours(0); + } + if (step >= timeUnitSize.day * 4) { + d.setDate(1); + } + if (step >= timeUnitSize.month * 2) { + d.setMonth(floorInBase(d.getMonth(), 3)); + } + if (step >= timeUnitSize.quarter * 2) { + d.setMonth(floorInBase(d.getMonth(), 6)); + } + if (step >= timeUnitSize.year) { + d.setMonth(0); + } + + var carry = 0; + var v = Number.NaN; + var prev; + + do { + + prev = v; + v = d.getTime(); + ticks.push(v); + + if (unit == "month" || unit == "quarter") { + if (tickSize < 1) { + + // a bit complicated - we'll divide the + // month/quarter up but we need to take + // care of fractions so we don't end up in + // the middle of a day + + d.setDate(1); + var start = d.getTime(); + d.setMonth(d.getMonth() + + (unit == "quarter" ? 3 : 1)); + var end = d.getTime(); + d.setTime(v + carry * timeUnitSize.hour + (end - start) * tickSize); + carry = d.getHours(); + d.setHours(0); + } else { + d.setMonth(d.getMonth() + + tickSize * (unit == "quarter" ? 3 : 1)); + } + } else if (unit == "year") { + d.setFullYear(d.getFullYear() + tickSize); + } else { + d.setTime(v + step); + } + } while (v < axis.max && v != prev); + + return ticks; + }; + + axis.tickFormatter = function (v, axis) { + + var d = dateGenerator(v, axis.options); + + // first check global format + + if (opts.timeformat != null) { + return formatDate(d, opts.timeformat, opts.monthNames, opts.dayNames); + } + + // possibly use quarters if quarters are mentioned in + // any of these places + + var useQuarters = (axis.options.tickSize && + axis.options.tickSize[1] == "quarter") || + (axis.options.minTickSize && + axis.options.minTickSize[1] == "quarter"); + + var t = axis.tickSize[0] * timeUnitSize[axis.tickSize[1]]; + var span = axis.max - axis.min; + var suffix = (opts.twelveHourClock) ? " %p" : ""; + var hourCode = (opts.twelveHourClock) ? "%I" : "%H"; + var fmt; + + if (t < timeUnitSize.minute) { + fmt = hourCode + ":%M:%S" + suffix; + } else if (t < timeUnitSize.day) { + if (span < 2 * timeUnitSize.day) { + fmt = hourCode + ":%M" + suffix; + } else { + fmt = "%b %d " + hourCode + ":%M" + suffix; + } + } else if (t < timeUnitSize.month) { + fmt = "%b %d"; + } else if ((useQuarters && t < timeUnitSize.quarter) || + (!useQuarters && t < timeUnitSize.year)) { + if (span < timeUnitSize.year) { + fmt = "%b"; + } else { + fmt = "%b %Y"; + } + } else if (useQuarters && t < timeUnitSize.year) { + if (span < timeUnitSize.year) { + fmt = "Q%q"; + } else { + fmt = "Q%q %Y"; + } + } else { + fmt = "%Y"; + } + + var rt = formatDate(d, fmt, opts.monthNames, opts.dayNames); + + return rt; + }; + } + }); + }); + } + + $.plot.plugins.push({ + init: init, + options: options, + name: 'time', + version: '1.0' + }); + + // Time-axis support used to be in Flot core, which exposed the + // formatDate function on the plot object. Various plugins depend + // on the function, so we need to re-expose it here. + + $.plot.formatDate = formatDate; + $.plot.dateGenerator = dateGenerator; + +})(jQuery); diff --git a/djangoproject/static/js/lib/jquery-flot/jquery.js b/djangoproject/static/js/lib/jquery-flot/jquery.js new file mode 100644 index 000000000..8c24ffc61 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/jquery.js @@ -0,0 +1,9472 @@ +/*! + * jQuery JavaScript Library v1.8.3 + * http://jquery.com/ + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * + * Copyright 2012 jQuery Foundation and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: Tue Nov 13 2012 08:20:33 GMT-0500 (Eastern Standard Time) + */ +(function( window, undefined ) { +var + // A central reference to the root jQuery(document) + rootjQuery, + + // The deferred used on DOM ready + readyList, + + // Use the correct document accordingly with window argument (sandbox) + document = window.document, + location = window.location, + navigator = window.navigator, + + // Map over jQuery in case of overwrite + _jQuery = window.jQuery, + + // Map over the $ in case of overwrite + _$ = window.$, + + // Save a reference to some core methods + core_push = Array.prototype.push, + core_slice = Array.prototype.slice, + core_indexOf = Array.prototype.indexOf, + core_toString = Object.prototype.toString, + core_hasOwn = Object.prototype.hasOwnProperty, + core_trim = String.prototype.trim, + + // Define a local copy of jQuery + jQuery = function( selector, context ) { + // The jQuery object is actually just the init constructor 'enhanced' + return new jQuery.fn.init( selector, context, rootjQuery ); + }, + + // Used for matching numbers + core_pnum = /[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source, + + // Used for detecting and trimming whitespace + core_rnotwhite = /\S/, + core_rspace = /\s+/, + + // Make sure we trim BOM and NBSP (here's looking at you, Safari 5.0 and IE) + rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, + + // A simple way to check for HTML strings + // Prioritize #id over to avoid XSS via location.hash (#9521) + rquickExpr = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/, + + // Match a standalone tag + rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>|)$/, + + // JSON RegExp + rvalidchars = /^[\],:{}\s]*$/, + rvalidbraces = /(?:^|:|,)(?:\s*\[)+/g, + rvalidescape = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g, + rvalidtokens = /"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g, + + // Matches dashed string for camelizing + rmsPrefix = /^-ms-/, + rdashAlpha = /-([\da-z])/gi, + + // Used by jQuery.camelCase as callback to replace() + fcamelCase = function( all, letter ) { + return ( letter + "" ).toUpperCase(); + }, + + // The ready event handler and self cleanup method + DOMContentLoaded = function() { + if ( document.addEventListener ) { + document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false ); + jQuery.ready(); + } else if ( document.readyState === "complete" ) { + // we're here because readyState === "complete" in oldIE + // which is good enough for us to call the dom ready! + document.detachEvent( "onreadystatechange", DOMContentLoaded ); + jQuery.ready(); + } + }, + + // [[Class]] -> type pairs + class2type = {}; + +jQuery.fn = jQuery.prototype = { + constructor: jQuery, + init: function( selector, context, rootjQuery ) { + var match, elem, ret, doc; + + // Handle $(""), $(null), $(undefined), $(false) + if ( !selector ) { + return this; + } + + // Handle $(DOMElement) + if ( selector.nodeType ) { + this.context = this[0] = selector; + this.length = 1; + return this; + } + + // Handle HTML strings + if ( typeof selector === "string" ) { + if ( selector.charAt(0) === "<" && selector.charAt( selector.length - 1 ) === ">" && selector.length >= 3 ) { + // Assume that strings that start and end with <> are HTML and skip the regex check + match = [ null, selector, null ]; + + } else { + match = rquickExpr.exec( selector ); + } + + // Match html or make sure no context is specified for #id + if ( match && (match[1] || !context) ) { + + // HANDLE: $(html) -> $(array) + if ( match[1] ) { + context = context instanceof jQuery ? context[0] : context; + doc = ( context && context.nodeType ? context.ownerDocument || context : document ); + + // scripts is true for back-compat + selector = jQuery.parseHTML( match[1], doc, true ); + if ( rsingleTag.test( match[1] ) && jQuery.isPlainObject( context ) ) { + this.attr.call( selector, context, true ); + } + + return jQuery.merge( this, selector ); + + // HANDLE: $(#id) + } else { + elem = document.getElementById( match[2] ); + + // Check parentNode to catch when Blackberry 4.6 returns + // nodes that are no longer in the document #6963 + if ( elem && elem.parentNode ) { + // Handle the case where IE and Opera return items + // by name instead of ID + if ( elem.id !== match[2] ) { + return rootjQuery.find( selector ); + } + + // Otherwise, we inject the element directly into the jQuery object + this.length = 1; + this[0] = elem; + } + + this.context = document; + this.selector = selector; + return this; + } + + // HANDLE: $(expr, $(...)) + } else if ( !context || context.jquery ) { + return ( context || rootjQuery ).find( selector ); + + // HANDLE: $(expr, context) + // (which is just equivalent to: $(context).find(expr) + } else { + return this.constructor( context ).find( selector ); + } + + // HANDLE: $(function) + // Shortcut for document ready + } else if ( jQuery.isFunction( selector ) ) { + return rootjQuery.ready( selector ); + } + + if ( selector.selector !== undefined ) { + this.selector = selector.selector; + this.context = selector.context; + } + + return jQuery.makeArray( selector, this ); + }, + + // Start with an empty selector + selector: "", + + // The current version of jQuery being used + jquery: "1.8.3", + + // The default length of a jQuery object is 0 + length: 0, + + // The number of elements contained in the matched element set + size: function() { + return this.length; + }, + + toArray: function() { + return core_slice.call( this ); + }, + + // Get the Nth element in the matched element set OR + // Get the whole matched element set as a clean array + get: function( num ) { + return num == null ? + + // Return a 'clean' array + this.toArray() : + + // Return just the object + ( num < 0 ? this[ this.length + num ] : this[ num ] ); + }, + + // Take an array of elements and push it onto the stack + // (returning the new matched element set) + pushStack: function( elems, name, selector ) { + + // Build a new jQuery matched element set + var ret = jQuery.merge( this.constructor(), elems ); + + // Add the old object onto the stack (as a reference) + ret.prevObject = this; + + ret.context = this.context; + + if ( name === "find" ) { + ret.selector = this.selector + ( this.selector ? " " : "" ) + selector; + } else if ( name ) { + ret.selector = this.selector + "." + name + "(" + selector + ")"; + } + + // Return the newly-formed element set + return ret; + }, + + // Execute a callback for every element in the matched set. + // (You can seed the arguments with an array of args, but this is + // only used internally.) + each: function( callback, args ) { + return jQuery.each( this, callback, args ); + }, + + ready: function( fn ) { + // Add the callback + jQuery.ready.promise().done( fn ); + + return this; + }, + + eq: function( i ) { + i = +i; + return i === -1 ? + this.slice( i ) : + this.slice( i, i + 1 ); + }, + + first: function() { + return this.eq( 0 ); + }, + + last: function() { + return this.eq( -1 ); + }, + + slice: function() { + return this.pushStack( core_slice.apply( this, arguments ), + "slice", core_slice.call(arguments).join(",") ); + }, + + map: function( callback ) { + return this.pushStack( jQuery.map(this, function( elem, i ) { + return callback.call( elem, i, elem ); + })); + }, + + end: function() { + return this.prevObject || this.constructor(null); + }, + + // For internal use only. + // Behaves like an Array's method, not like a jQuery method. + push: core_push, + sort: [].sort, + splice: [].splice +}; + +// Give the init function the jQuery prototype for later instantiation +jQuery.fn.init.prototype = jQuery.fn; + +jQuery.extend = jQuery.fn.extend = function() { + var options, name, src, copy, copyIsArray, clone, + target = arguments[0] || {}, + i = 1, + length = arguments.length, + deep = false; + + // Handle a deep copy situation + if ( typeof target === "boolean" ) { + deep = target; + target = arguments[1] || {}; + // skip the boolean and the target + i = 2; + } + + // Handle case when target is a string or something (possible in deep copy) + if ( typeof target !== "object" && !jQuery.isFunction(target) ) { + target = {}; + } + + // extend jQuery itself if only one argument is passed + if ( length === i ) { + target = this; + --i; + } + + for ( ; i < length; i++ ) { + // Only deal with non-null/undefined values + if ( (options = arguments[ i ]) != null ) { + // Extend the base object + for ( name in options ) { + src = target[ name ]; + copy = options[ name ]; + + // Prevent never-ending loop + if ( target === copy ) { + continue; + } + + // Recurse if we're merging plain objects or arrays + if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) { + if ( copyIsArray ) { + copyIsArray = false; + clone = src && jQuery.isArray(src) ? src : []; + + } else { + clone = src && jQuery.isPlainObject(src) ? src : {}; + } + + // Never move original objects, clone them + target[ name ] = jQuery.extend( deep, clone, copy ); + + // Don't bring in undefined values + } else if ( copy !== undefined ) { + target[ name ] = copy; + } + } + } + } + + // Return the modified object + return target; +}; + +jQuery.extend({ + noConflict: function( deep ) { + if ( window.$ === jQuery ) { + window.$ = _$; + } + + if ( deep && window.jQuery === jQuery ) { + window.jQuery = _jQuery; + } + + return jQuery; + }, + + // Is the DOM ready to be used? Set to true once it occurs. + isReady: false, + + // A counter to track how many items to wait for before + // the ready event fires. See #6781 + readyWait: 1, + + // Hold (or release) the ready event + holdReady: function( hold ) { + if ( hold ) { + jQuery.readyWait++; + } else { + jQuery.ready( true ); + } + }, + + // Handle when the DOM is ready + ready: function( wait ) { + + // Abort if there are pending holds or we're already ready + if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { + return; + } + + // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443). + if ( !document.body ) { + return setTimeout( jQuery.ready, 1 ); + } + + // Remember that the DOM is ready + jQuery.isReady = true; + + // If a normal DOM Ready event fired, decrement, and wait if need be + if ( wait !== true && --jQuery.readyWait > 0 ) { + return; + } + + // If there are functions bound, to execute + readyList.resolveWith( document, [ jQuery ] ); + + // Trigger any bound ready events + if ( jQuery.fn.trigger ) { + jQuery( document ).trigger("ready").off("ready"); + } + }, + + // See test/unit/core.js for details concerning isFunction. + // Since version 1.3, DOM methods and functions like alert + // aren't supported. They return false on IE (#2968). + isFunction: function( obj ) { + return jQuery.type(obj) === "function"; + }, + + isArray: Array.isArray || function( obj ) { + return jQuery.type(obj) === "array"; + }, + + isWindow: function( obj ) { + return obj != null && obj == obj.window; + }, + + isNumeric: function( obj ) { + return !isNaN( parseFloat(obj) ) && isFinite( obj ); + }, + + type: function( obj ) { + return obj == null ? + String( obj ) : + class2type[ core_toString.call(obj) ] || "object"; + }, + + isPlainObject: function( obj ) { + // Must be an Object. + // Because of IE, we also have to check the presence of the constructor property. + // Make sure that DOM nodes and window objects don't pass through, as well + if ( !obj || jQuery.type(obj) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) { + return false; + } + + try { + // Not own constructor property must be Object + if ( obj.constructor && + !core_hasOwn.call(obj, "constructor") && + !core_hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) { + return false; + } + } catch ( e ) { + // IE8,9 Will throw exceptions on certain host objects #9897 + return false; + } + + // Own properties are enumerated firstly, so to speed up, + // if last one is own, then all properties are own. + + var key; + for ( key in obj ) {} + + return key === undefined || core_hasOwn.call( obj, key ); + }, + + isEmptyObject: function( obj ) { + var name; + for ( name in obj ) { + return false; + } + return true; + }, + + error: function( msg ) { + throw new Error( msg ); + }, + + // data: string of html + // context (optional): If specified, the fragment will be created in this context, defaults to document + // scripts (optional): If true, will include scripts passed in the html string + parseHTML: function( data, context, scripts ) { + var parsed; + if ( !data || typeof data !== "string" ) { + return null; + } + if ( typeof context === "boolean" ) { + scripts = context; + context = 0; + } + context = context || document; + + // Single tag + if ( (parsed = rsingleTag.exec( data )) ) { + return [ context.createElement( parsed[1] ) ]; + } + + parsed = jQuery.buildFragment( [ data ], context, scripts ? null : [] ); + return jQuery.merge( [], + (parsed.cacheable ? jQuery.clone( parsed.fragment ) : parsed.fragment).childNodes ); + }, + + parseJSON: function( data ) { + if ( !data || typeof data !== "string") { + return null; + } + + // Make sure leading/trailing whitespace is removed (IE can't handle it) + data = jQuery.trim( data ); + + // Attempt to parse using the native JSON parser first + if ( window.JSON && window.JSON.parse ) { + return window.JSON.parse( data ); + } + + // Make sure the incoming data is actual JSON + // Logic borrowed from http://json.org/json2.js + if ( rvalidchars.test( data.replace( rvalidescape, "@" ) + .replace( rvalidtokens, "]" ) + .replace( rvalidbraces, "")) ) { + + return ( new Function( "return " + data ) )(); + + } + jQuery.error( "Invalid JSON: " + data ); + }, + + // Cross-browser xml parsing + parseXML: function( data ) { + var xml, tmp; + if ( !data || typeof data !== "string" ) { + return null; + } + try { + if ( window.DOMParser ) { // Standard + tmp = new DOMParser(); + xml = tmp.parseFromString( data , "text/xml" ); + } else { // IE + xml = new ActiveXObject( "Microsoft.XMLDOM" ); + xml.async = "false"; + xml.loadXML( data ); + } + } catch( e ) { + xml = undefined; + } + if ( !xml || !xml.documentElement || xml.getElementsByTagName( "parsererror" ).length ) { + jQuery.error( "Invalid XML: " + data ); + } + return xml; + }, + + noop: function() {}, + + // Evaluates a script in a global context + // Workarounds based on findings by Jim Driscoll + // http://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context + globalEval: function( data ) { + if ( data && core_rnotwhite.test( data ) ) { + // We use execScript on Internet Explorer + // We use an anonymous function so that context is window + // rather than jQuery in Firefox + ( window.execScript || function( data ) { + window[ "eval" ].call( window, data ); + } )( data ); + } + }, + + // Convert dashed to camelCase; used by the css and data modules + // Microsoft forgot to hump their vendor prefix (#9572) + camelCase: function( string ) { + return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); + }, + + nodeName: function( elem, name ) { + return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); + }, + + // args is for internal usage only + each: function( obj, callback, args ) { + var name, + i = 0, + length = obj.length, + isObj = length === undefined || jQuery.isFunction( obj ); + + if ( args ) { + if ( isObj ) { + for ( name in obj ) { + if ( callback.apply( obj[ name ], args ) === false ) { + break; + } + } + } else { + for ( ; i < length; ) { + if ( callback.apply( obj[ i++ ], args ) === false ) { + break; + } + } + } + + // A special, fast, case for the most common use of each + } else { + if ( isObj ) { + for ( name in obj ) { + if ( callback.call( obj[ name ], name, obj[ name ] ) === false ) { + break; + } + } + } else { + for ( ; i < length; ) { + if ( callback.call( obj[ i ], i, obj[ i++ ] ) === false ) { + break; + } + } + } + } + + return obj; + }, + + // Use native String.trim function wherever possible + trim: core_trim && !core_trim.call("\uFEFF\xA0") ? + function( text ) { + return text == null ? + "" : + core_trim.call( text ); + } : + + // Otherwise use our own trimming functionality + function( text ) { + return text == null ? + "" : + ( text + "" ).replace( rtrim, "" ); + }, + + // results is for internal usage only + makeArray: function( arr, results ) { + var type, + ret = results || []; + + if ( arr != null ) { + // The window, strings (and functions) also have 'length' + // Tweaked logic slightly to handle Blackberry 4.7 RegExp issues #6930 + type = jQuery.type( arr ); + + if ( arr.length == null || type === "string" || type === "function" || type === "regexp" || jQuery.isWindow( arr ) ) { + core_push.call( ret, arr ); + } else { + jQuery.merge( ret, arr ); + } + } + + return ret; + }, + + inArray: function( elem, arr, i ) { + var len; + + if ( arr ) { + if ( core_indexOf ) { + return core_indexOf.call( arr, elem, i ); + } + + len = arr.length; + i = i ? i < 0 ? Math.max( 0, len + i ) : i : 0; + + for ( ; i < len; i++ ) { + // Skip accessing in sparse arrays + if ( i in arr && arr[ i ] === elem ) { + return i; + } + } + } + + return -1; + }, + + merge: function( first, second ) { + var l = second.length, + i = first.length, + j = 0; + + if ( typeof l === "number" ) { + for ( ; j < l; j++ ) { + first[ i++ ] = second[ j ]; + } + + } else { + while ( second[j] !== undefined ) { + first[ i++ ] = second[ j++ ]; + } + } + + first.length = i; + + return first; + }, + + grep: function( elems, callback, inv ) { + var retVal, + ret = [], + i = 0, + length = elems.length; + inv = !!inv; + + // Go through the array, only saving the items + // that pass the validator function + for ( ; i < length; i++ ) { + retVal = !!callback( elems[ i ], i ); + if ( inv !== retVal ) { + ret.push( elems[ i ] ); + } + } + + return ret; + }, + + // arg is for internal usage only + map: function( elems, callback, arg ) { + var value, key, + ret = [], + i = 0, + length = elems.length, + // jquery objects are treated as arrays + isArray = elems instanceof jQuery || length !== undefined && typeof length === "number" && ( ( length > 0 && elems[ 0 ] && elems[ length -1 ] ) || length === 0 || jQuery.isArray( elems ) ) ; + + // Go through the array, translating each of the items to their + if ( isArray ) { + for ( ; i < length; i++ ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret[ ret.length ] = value; + } + } + + // Go through every key on the object, + } else { + for ( key in elems ) { + value = callback( elems[ key ], key, arg ); + + if ( value != null ) { + ret[ ret.length ] = value; + } + } + } + + // Flatten any nested arrays + return ret.concat.apply( [], ret ); + }, + + // A global GUID counter for objects + guid: 1, + + // Bind a function to a context, optionally partially applying any + // arguments. + proxy: function( fn, context ) { + var tmp, args, proxy; + + if ( typeof context === "string" ) { + tmp = fn[ context ]; + context = fn; + fn = tmp; + } + + // Quick check to determine if target is callable, in the spec + // this throws a TypeError, but we will just return undefined. + if ( !jQuery.isFunction( fn ) ) { + return undefined; + } + + // Simulated bind + args = core_slice.call( arguments, 2 ); + proxy = function() { + return fn.apply( context, args.concat( core_slice.call( arguments ) ) ); + }; + + // Set the guid of unique handler to the same of original handler, so it can be removed + proxy.guid = fn.guid = fn.guid || jQuery.guid++; + + return proxy; + }, + + // Multifunctional method to get and set values of a collection + // The value/s can optionally be executed if it's a function + access: function( elems, fn, key, value, chainable, emptyGet, pass ) { + var exec, + bulk = key == null, + i = 0, + length = elems.length; + + // Sets many values + if ( key && typeof key === "object" ) { + for ( i in key ) { + jQuery.access( elems, fn, i, key[i], 1, emptyGet, value ); + } + chainable = 1; + + // Sets one value + } else if ( value !== undefined ) { + // Optionally, function values get executed if exec is true + exec = pass === undefined && jQuery.isFunction( value ); + + if ( bulk ) { + // Bulk operations only iterate when executing function values + if ( exec ) { + exec = fn; + fn = function( elem, key, value ) { + return exec.call( jQuery( elem ), value ); + }; + + // Otherwise they run against the entire set + } else { + fn.call( elems, value ); + fn = null; + } + } + + if ( fn ) { + for (; i < length; i++ ) { + fn( elems[i], key, exec ? value.call( elems[i], i, fn( elems[i], key ) ) : value, pass ); + } + } + + chainable = 1; + } + + return chainable ? + elems : + + // Gets + bulk ? + fn.call( elems ) : + length ? fn( elems[0], key ) : emptyGet; + }, + + now: function() { + return ( new Date() ).getTime(); + } +}); + +jQuery.ready.promise = function( obj ) { + if ( !readyList ) { + + readyList = jQuery.Deferred(); + + // Catch cases where $(document).ready() is called after the browser event has already occurred. + // we once tried to use readyState "interactive" here, but it caused issues like the one + // discovered by ChrisS here: http://bugs.jquery.com/ticket/12282#comment:15 + if ( document.readyState === "complete" ) { + // Handle it asynchronously to allow scripts the opportunity to delay ready + setTimeout( jQuery.ready, 1 ); + + // Standards-based browsers support DOMContentLoaded + } else if ( document.addEventListener ) { + // Use the handy event callback + document.addEventListener( "DOMContentLoaded", DOMContentLoaded, false ); + + // A fallback to window.onload, that will always work + window.addEventListener( "load", jQuery.ready, false ); + + // If IE event model is used + } else { + // Ensure firing before onload, maybe late but safe also for iframes + document.attachEvent( "onreadystatechange", DOMContentLoaded ); + + // A fallback to window.onload, that will always work + window.attachEvent( "onload", jQuery.ready ); + + // If IE and not a frame + // continually check to see if the document is ready + var top = false; + + try { + top = window.frameElement == null && document.documentElement; + } catch(e) {} + + if ( top && top.doScroll ) { + (function doScrollCheck() { + if ( !jQuery.isReady ) { + + try { + // Use the trick by Diego Perini + // http://javascript.nwbox.com/IEContentLoaded/ + top.doScroll("left"); + } catch(e) { + return setTimeout( doScrollCheck, 50 ); + } + + // and execute any waiting functions + jQuery.ready(); + } + })(); + } + } + } + return readyList.promise( obj ); +}; + +// Populate the class2type map +jQuery.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(i, name) { + class2type[ "[object " + name + "]" ] = name.toLowerCase(); +}); + +// All jQuery objects should point back to these +rootjQuery = jQuery(document); +// String to Object options format cache +var optionsCache = {}; + +// Convert String-formatted options into Object-formatted ones and store in cache +function createOptions( options ) { + var object = optionsCache[ options ] = {}; + jQuery.each( options.split( core_rspace ), function( _, flag ) { + object[ flag ] = true; + }); + return object; +} + +/* + * Create a callback list using the following parameters: + * + * options: an optional list of space-separated options that will change how + * the callback list behaves or a more traditional option object + * + * By default a callback list will act like an event callback list and can be + * "fired" multiple times. + * + * Possible options: + * + * once: will ensure the callback list can only be fired once (like a Deferred) + * + * memory: will keep track of previous values and will call any callback added + * after the list has been fired right away with the latest "memorized" + * values (like a Deferred) + * + * unique: will ensure a callback can only be added once (no duplicate in the list) + * + * stopOnFalse: interrupt callings when a callback returns false + * + */ +jQuery.Callbacks = function( options ) { + + // Convert options from String-formatted to Object-formatted if needed + // (we check in cache first) + options = typeof options === "string" ? + ( optionsCache[ options ] || createOptions( options ) ) : + jQuery.extend( {}, options ); + + var // Last fire value (for non-forgettable lists) + memory, + // Flag to know if list was already fired + fired, + // Flag to know if list is currently firing + firing, + // First callback to fire (used internally by add and fireWith) + firingStart, + // End of the loop when firing + firingLength, + // Index of currently firing callback (modified by remove if needed) + firingIndex, + // Actual callback list + list = [], + // Stack of fire calls for repeatable lists + stack = !options.once && [], + // Fire callbacks + fire = function( data ) { + memory = options.memory && data; + fired = true; + firingIndex = firingStart || 0; + firingStart = 0; + firingLength = list.length; + firing = true; + for ( ; list && firingIndex < firingLength; firingIndex++ ) { + if ( list[ firingIndex ].apply( data[ 0 ], data[ 1 ] ) === false && options.stopOnFalse ) { + memory = false; // To prevent further calls using add + break; + } + } + firing = false; + if ( list ) { + if ( stack ) { + if ( stack.length ) { + fire( stack.shift() ); + } + } else if ( memory ) { + list = []; + } else { + self.disable(); + } + } + }, + // Actual Callbacks object + self = { + // Add a callback or a collection of callbacks to the list + add: function() { + if ( list ) { + // First, we save the current length + var start = list.length; + (function add( args ) { + jQuery.each( args, function( _, arg ) { + var type = jQuery.type( arg ); + if ( type === "function" ) { + if ( !options.unique || !self.has( arg ) ) { + list.push( arg ); + } + } else if ( arg && arg.length && type !== "string" ) { + // Inspect recursively + add( arg ); + } + }); + })( arguments ); + // Do we need to add the callbacks to the + // current firing batch? + if ( firing ) { + firingLength = list.length; + // With memory, if we're not firing then + // we should call right away + } else if ( memory ) { + firingStart = start; + fire( memory ); + } + } + return this; + }, + // Remove a callback from the list + remove: function() { + if ( list ) { + jQuery.each( arguments, function( _, arg ) { + var index; + while( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { + list.splice( index, 1 ); + // Handle firing indexes + if ( firing ) { + if ( index <= firingLength ) { + firingLength--; + } + if ( index <= firingIndex ) { + firingIndex--; + } + } + } + }); + } + return this; + }, + // Control if a given callback is in the list + has: function( fn ) { + return jQuery.inArray( fn, list ) > -1; + }, + // Remove all callbacks from the list + empty: function() { + list = []; + return this; + }, + // Have the list do nothing anymore + disable: function() { + list = stack = memory = undefined; + return this; + }, + // Is it disabled? + disabled: function() { + return !list; + }, + // Lock the list in its current state + lock: function() { + stack = undefined; + if ( !memory ) { + self.disable(); + } + return this; + }, + // Is it locked? + locked: function() { + return !stack; + }, + // Call all callbacks with the given context and arguments + fireWith: function( context, args ) { + args = args || []; + args = [ context, args.slice ? args.slice() : args ]; + if ( list && ( !fired || stack ) ) { + if ( firing ) { + stack.push( args ); + } else { + fire( args ); + } + } + return this; + }, + // Call all the callbacks with the given arguments + fire: function() { + self.fireWith( this, arguments ); + return this; + }, + // To know if the callbacks have already been called at least once + fired: function() { + return !!fired; + } + }; + + return self; +}; +jQuery.extend({ + + Deferred: function( func ) { + var tuples = [ + // action, add listener, listener list, final state + [ "resolve", "done", jQuery.Callbacks("once memory"), "resolved" ], + [ "reject", "fail", jQuery.Callbacks("once memory"), "rejected" ], + [ "notify", "progress", jQuery.Callbacks("memory") ] + ], + state = "pending", + promise = { + state: function() { + return state; + }, + always: function() { + deferred.done( arguments ).fail( arguments ); + return this; + }, + then: function( /* fnDone, fnFail, fnProgress */ ) { + var fns = arguments; + return jQuery.Deferred(function( newDefer ) { + jQuery.each( tuples, function( i, tuple ) { + var action = tuple[ 0 ], + fn = fns[ i ]; + // deferred[ done | fail | progress ] for forwarding actions to newDefer + deferred[ tuple[1] ]( jQuery.isFunction( fn ) ? + function() { + var returned = fn.apply( this, arguments ); + if ( returned && jQuery.isFunction( returned.promise ) ) { + returned.promise() + .done( newDefer.resolve ) + .fail( newDefer.reject ) + .progress( newDefer.notify ); + } else { + newDefer[ action + "With" ]( this === deferred ? newDefer : this, [ returned ] ); + } + } : + newDefer[ action ] + ); + }); + fns = null; + }).promise(); + }, + // Get a promise for this deferred + // If obj is provided, the promise aspect is added to the object + promise: function( obj ) { + return obj != null ? jQuery.extend( obj, promise ) : promise; + } + }, + deferred = {}; + + // Keep pipe for back-compat + promise.pipe = promise.then; + + // Add list-specific methods + jQuery.each( tuples, function( i, tuple ) { + var list = tuple[ 2 ], + stateString = tuple[ 3 ]; + + // promise[ done | fail | progress ] = list.add + promise[ tuple[1] ] = list.add; + + // Handle state + if ( stateString ) { + list.add(function() { + // state = [ resolved | rejected ] + state = stateString; + + // [ reject_list | resolve_list ].disable; progress_list.lock + }, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock ); + } + + // deferred[ resolve | reject | notify ] = list.fire + deferred[ tuple[0] ] = list.fire; + deferred[ tuple[0] + "With" ] = list.fireWith; + }); + + // Make the deferred a promise + promise.promise( deferred ); + + // Call given func if any + if ( func ) { + func.call( deferred, deferred ); + } + + // All done! + return deferred; + }, + + // Deferred helper + when: function( subordinate /* , ..., subordinateN */ ) { + var i = 0, + resolveValues = core_slice.call( arguments ), + length = resolveValues.length, + + // the count of uncompleted subordinates + remaining = length !== 1 || ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0, + + // the master Deferred. If resolveValues consist of only a single Deferred, just use that. + deferred = remaining === 1 ? subordinate : jQuery.Deferred(), + + // Update function for both resolve and progress values + updateFunc = function( i, contexts, values ) { + return function( value ) { + contexts[ i ] = this; + values[ i ] = arguments.length > 1 ? core_slice.call( arguments ) : value; + if( values === progressValues ) { + deferred.notifyWith( contexts, values ); + } else if ( !( --remaining ) ) { + deferred.resolveWith( contexts, values ); + } + }; + }, + + progressValues, progressContexts, resolveContexts; + + // add listeners to Deferred subordinates; treat others as resolved + if ( length > 1 ) { + progressValues = new Array( length ); + progressContexts = new Array( length ); + resolveContexts = new Array( length ); + for ( ; i < length; i++ ) { + if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) { + resolveValues[ i ].promise() + .done( updateFunc( i, resolveContexts, resolveValues ) ) + .fail( deferred.reject ) + .progress( updateFunc( i, progressContexts, progressValues ) ); + } else { + --remaining; + } + } + } + + // if we're not waiting on anything, resolve the master + if ( !remaining ) { + deferred.resolveWith( resolveContexts, resolveValues ); + } + + return deferred.promise(); + } +}); +jQuery.support = (function() { + + var support, + all, + a, + select, + opt, + input, + fragment, + eventName, + i, + isSupported, + clickFn, + div = document.createElement("div"); + + // Setup + div.setAttribute( "className", "t" ); + div.innerHTML = "
    a"; + + // Support tests won't run in some limited or non-browser environments + all = div.getElementsByTagName("*"); + a = div.getElementsByTagName("a")[ 0 ]; + if ( !all || !a || !all.length ) { + return {}; + } + + // First batch of tests + select = document.createElement("select"); + opt = select.appendChild( document.createElement("option") ); + input = div.getElementsByTagName("input")[ 0 ]; + + a.style.cssText = "top:1px;float:left;opacity:.5"; + support = { + // IE strips leading whitespace when .innerHTML is used + leadingWhitespace: ( div.firstChild.nodeType === 3 ), + + // Make sure that tbody elements aren't automatically inserted + // IE will insert them into empty tables + tbody: !div.getElementsByTagName("tbody").length, + + // Make sure that link elements get serialized correctly by innerHTML + // This requires a wrapper element in IE + htmlSerialize: !!div.getElementsByTagName("link").length, + + // Get the style information from getAttribute + // (IE uses .cssText instead) + style: /top/.test( a.getAttribute("style") ), + + // Make sure that URLs aren't manipulated + // (IE normalizes it by default) + hrefNormalized: ( a.getAttribute("href") === "/a" ), + + // Make sure that element opacity exists + // (IE uses filter instead) + // Use a regex to work around a WebKit issue. See #5145 + opacity: /^0.5/.test( a.style.opacity ), + + // Verify style float existence + // (IE uses styleFloat instead of cssFloat) + cssFloat: !!a.style.cssFloat, + + // Make sure that if no value is specified for a checkbox + // that it defaults to "on". + // (WebKit defaults to "" instead) + checkOn: ( input.value === "on" ), + + // Make sure that a selected-by-default option has a working selected property. + // (WebKit defaults to false instead of true, IE too, if it's in an optgroup) + optSelected: opt.selected, + + // Test setAttribute on camelCase class. If it works, we need attrFixes when doing get/setAttribute (ie6/7) + getSetAttribute: div.className !== "t", + + // Tests for enctype support on a form (#6743) + enctype: !!document.createElement("form").enctype, + + // Makes sure cloning an html5 element does not cause problems + // Where outerHTML is undefined, this still works + html5Clone: document.createElement("nav").cloneNode( true ).outerHTML !== "<:nav>", + + // jQuery.support.boxModel DEPRECATED in 1.8 since we don't support Quirks Mode + boxModel: ( document.compatMode === "CSS1Compat" ), + + // Will be defined later + submitBubbles: true, + changeBubbles: true, + focusinBubbles: false, + deleteExpando: true, + noCloneEvent: true, + inlineBlockNeedsLayout: false, + shrinkWrapBlocks: false, + reliableMarginRight: true, + boxSizingReliable: true, + pixelPosition: false + }; + + // Make sure checked status is properly cloned + input.checked = true; + support.noCloneChecked = input.cloneNode( true ).checked; + + // Make sure that the options inside disabled selects aren't marked as disabled + // (WebKit marks them as disabled) + select.disabled = true; + support.optDisabled = !opt.disabled; + + // Test to see if it's possible to delete an expando from an element + // Fails in Internet Explorer + try { + delete div.test; + } catch( e ) { + support.deleteExpando = false; + } + + if ( !div.addEventListener && div.attachEvent && div.fireEvent ) { + div.attachEvent( "onclick", clickFn = function() { + // Cloning a node shouldn't copy over any + // bound event handlers (IE does this) + support.noCloneEvent = false; + }); + div.cloneNode( true ).fireEvent("onclick"); + div.detachEvent( "onclick", clickFn ); + } + + // Check if a radio maintains its value + // after being appended to the DOM + input = document.createElement("input"); + input.value = "t"; + input.setAttribute( "type", "radio" ); + support.radioValue = input.value === "t"; + + input.setAttribute( "checked", "checked" ); + + // #11217 - WebKit loses check when the name is after the checked attribute + input.setAttribute( "name", "t" ); + + div.appendChild( input ); + fragment = document.createDocumentFragment(); + fragment.appendChild( div.lastChild ); + + // WebKit doesn't clone checked state correctly in fragments + support.checkClone = fragment.cloneNode( true ).cloneNode( true ).lastChild.checked; + + // Check if a disconnected checkbox will retain its checked + // value of true after appended to the DOM (IE6/7) + support.appendChecked = input.checked; + + fragment.removeChild( input ); + fragment.appendChild( div ); + + // Technique from Juriy Zaytsev + // http://perfectionkills.com/detecting-event-support-without-browser-sniffing/ + // We only care about the case where non-standard event systems + // are used, namely in IE. Short-circuiting here helps us to + // avoid an eval call (in setAttribute) which can cause CSP + // to go haywire. See: https://developer.mozilla.org/en/Security/CSP + if ( div.attachEvent ) { + for ( i in { + submit: true, + change: true, + focusin: true + }) { + eventName = "on" + i; + isSupported = ( eventName in div ); + if ( !isSupported ) { + div.setAttribute( eventName, "return;" ); + isSupported = ( typeof div[ eventName ] === "function" ); + } + support[ i + "Bubbles" ] = isSupported; + } + } + + // Run tests that need a body at doc ready + jQuery(function() { + var container, div, tds, marginDiv, + divReset = "padding:0;margin:0;border:0;display:block;overflow:hidden;", + body = document.getElementsByTagName("body")[0]; + + if ( !body ) { + // Return for frameset docs that don't have a body + return; + } + + container = document.createElement("div"); + container.style.cssText = "visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px"; + body.insertBefore( container, body.firstChild ); + + // Construct the test element + div = document.createElement("div"); + container.appendChild( div ); + + // Check if table cells still have offsetWidth/Height when they are set + // to display:none and there are still other visible table cells in a + // table row; if so, offsetWidth/Height are not reliable for use when + // determining if an element has been hidden directly using + // display:none (it is still safe to use offsets if a parent element is + // hidden; don safety goggles and see bug #4512 for more information). + // (only IE 8 fails this test) + div.innerHTML = "
    t
    "; + tds = div.getElementsByTagName("td"); + tds[ 0 ].style.cssText = "padding:0;margin:0;border:0;display:none"; + isSupported = ( tds[ 0 ].offsetHeight === 0 ); + + tds[ 0 ].style.display = ""; + tds[ 1 ].style.display = "none"; + + // Check if empty table cells still have offsetWidth/Height + // (IE <= 8 fail this test) + support.reliableHiddenOffsets = isSupported && ( tds[ 0 ].offsetHeight === 0 ); + + // Check box-sizing and margin behavior + div.innerHTML = ""; + div.style.cssText = "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;"; + support.boxSizing = ( div.offsetWidth === 4 ); + support.doesNotIncludeMarginInBodyOffset = ( body.offsetTop !== 1 ); + + // NOTE: To any future maintainer, we've window.getComputedStyle + // because jsdom on node.js will break without it. + if ( window.getComputedStyle ) { + support.pixelPosition = ( window.getComputedStyle( div, null ) || {} ).top !== "1%"; + support.boxSizingReliable = ( window.getComputedStyle( div, null ) || { width: "4px" } ).width === "4px"; + + // Check if div with explicit width and no margin-right incorrectly + // gets computed margin-right based on width of container. For more + // info see bug #3333 + // Fails in WebKit before Feb 2011 nightlies + // WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right + marginDiv = document.createElement("div"); + marginDiv.style.cssText = div.style.cssText = divReset; + marginDiv.style.marginRight = marginDiv.style.width = "0"; + div.style.width = "1px"; + div.appendChild( marginDiv ); + support.reliableMarginRight = + !parseFloat( ( window.getComputedStyle( marginDiv, null ) || {} ).marginRight ); + } + + if ( typeof div.style.zoom !== "undefined" ) { + // Check if natively block-level elements act like inline-block + // elements when setting their display to 'inline' and giving + // them layout + // (IE < 8 does this) + div.innerHTML = ""; + div.style.cssText = divReset + "width:1px;padding:1px;display:inline;zoom:1"; + support.inlineBlockNeedsLayout = ( div.offsetWidth === 3 ); + + // Check if elements with layout shrink-wrap their children + // (IE 6 does this) + div.style.display = "block"; + div.style.overflow = "visible"; + div.innerHTML = "
    "; + div.firstChild.style.width = "5px"; + support.shrinkWrapBlocks = ( div.offsetWidth !== 3 ); + + container.style.zoom = 1; + } + + // Null elements to avoid leaks in IE + body.removeChild( container ); + container = div = tds = marginDiv = null; + }); + + // Null elements to avoid leaks in IE + fragment.removeChild( div ); + all = a = select = opt = input = fragment = div = null; + + return support; +})(); +var rbrace = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/, + rmultiDash = /([A-Z])/g; + +jQuery.extend({ + cache: {}, + + deletedIds: [], + + // Remove at next major release (1.9/2.0) + uuid: 0, + + // Unique for each copy of jQuery on the page + // Non-digits removed to match rinlinejQuery + expando: "jQuery" + ( jQuery.fn.jquery + Math.random() ).replace( /\D/g, "" ), + + // The following elements throw uncatchable exceptions if you + // attempt to add expando properties to them. + noData: { + "embed": true, + // Ban all objects except for Flash (which handle expandos) + "object": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000", + "applet": true + }, + + hasData: function( elem ) { + elem = elem.nodeType ? jQuery.cache[ elem[jQuery.expando] ] : elem[ jQuery.expando ]; + return !!elem && !isEmptyDataObject( elem ); + }, + + data: function( elem, name, data, pvt /* Internal Use Only */ ) { + if ( !jQuery.acceptData( elem ) ) { + return; + } + + var thisCache, ret, + internalKey = jQuery.expando, + getByName = typeof name === "string", + + // We have to handle DOM nodes and JS objects differently because IE6-7 + // can't GC object references properly across the DOM-JS boundary + isNode = elem.nodeType, + + // Only DOM nodes need the global jQuery cache; JS object data is + // attached directly to the object so GC can occur automatically + cache = isNode ? jQuery.cache : elem, + + // Only defining an ID for JS objects if its cache already exists allows + // the code to shortcut on the same path as a DOM node with no cache + id = isNode ? elem[ internalKey ] : elem[ internalKey ] && internalKey; + + // Avoid doing any more work than we need to when trying to get data on an + // object that has no data at all + if ( (!id || !cache[id] || (!pvt && !cache[id].data)) && getByName && data === undefined ) { + return; + } + + if ( !id ) { + // Only DOM nodes need a new unique ID for each element since their data + // ends up in the global cache + if ( isNode ) { + elem[ internalKey ] = id = jQuery.deletedIds.pop() || jQuery.guid++; + } else { + id = internalKey; + } + } + + if ( !cache[ id ] ) { + cache[ id ] = {}; + + // Avoids exposing jQuery metadata on plain JS objects when the object + // is serialized using JSON.stringify + if ( !isNode ) { + cache[ id ].toJSON = jQuery.noop; + } + } + + // An object can be passed to jQuery.data instead of a key/value pair; this gets + // shallow copied over onto the existing cache + if ( typeof name === "object" || typeof name === "function" ) { + if ( pvt ) { + cache[ id ] = jQuery.extend( cache[ id ], name ); + } else { + cache[ id ].data = jQuery.extend( cache[ id ].data, name ); + } + } + + thisCache = cache[ id ]; + + // jQuery data() is stored in a separate object inside the object's internal data + // cache in order to avoid key collisions between internal data and user-defined + // data. + if ( !pvt ) { + if ( !thisCache.data ) { + thisCache.data = {}; + } + + thisCache = thisCache.data; + } + + if ( data !== undefined ) { + thisCache[ jQuery.camelCase( name ) ] = data; + } + + // Check for both converted-to-camel and non-converted data property names + // If a data property was specified + if ( getByName ) { + + // First Try to find as-is property data + ret = thisCache[ name ]; + + // Test for null|undefined property data + if ( ret == null ) { + + // Try to find the camelCased property + ret = thisCache[ jQuery.camelCase( name ) ]; + } + } else { + ret = thisCache; + } + + return ret; + }, + + removeData: function( elem, name, pvt /* Internal Use Only */ ) { + if ( !jQuery.acceptData( elem ) ) { + return; + } + + var thisCache, i, l, + + isNode = elem.nodeType, + + // See jQuery.data for more information + cache = isNode ? jQuery.cache : elem, + id = isNode ? elem[ jQuery.expando ] : jQuery.expando; + + // If there is already no cache entry for this object, there is no + // purpose in continuing + if ( !cache[ id ] ) { + return; + } + + if ( name ) { + + thisCache = pvt ? cache[ id ] : cache[ id ].data; + + if ( thisCache ) { + + // Support array or space separated string names for data keys + if ( !jQuery.isArray( name ) ) { + + // try the string as a key before any manipulation + if ( name in thisCache ) { + name = [ name ]; + } else { + + // split the camel cased version by spaces unless a key with the spaces exists + name = jQuery.camelCase( name ); + if ( name in thisCache ) { + name = [ name ]; + } else { + name = name.split(" "); + } + } + } + + for ( i = 0, l = name.length; i < l; i++ ) { + delete thisCache[ name[i] ]; + } + + // If there is no data left in the cache, we want to continue + // and let the cache object itself get destroyed + if ( !( pvt ? isEmptyDataObject : jQuery.isEmptyObject )( thisCache ) ) { + return; + } + } + } + + // See jQuery.data for more information + if ( !pvt ) { + delete cache[ id ].data; + + // Don't destroy the parent cache unless the internal data object + // had been the only thing left in it + if ( !isEmptyDataObject( cache[ id ] ) ) { + return; + } + } + + // Destroy the cache + if ( isNode ) { + jQuery.cleanData( [ elem ], true ); + + // Use delete when supported for expandos or `cache` is not a window per isWindow (#10080) + } else if ( jQuery.support.deleteExpando || cache != cache.window ) { + delete cache[ id ]; + + // When all else fails, null + } else { + cache[ id ] = null; + } + }, + + // For internal use only. + _data: function( elem, name, data ) { + return jQuery.data( elem, name, data, true ); + }, + + // A method for determining if a DOM node can handle the data expando + acceptData: function( elem ) { + var noData = elem.nodeName && jQuery.noData[ elem.nodeName.toLowerCase() ]; + + // nodes accept data unless otherwise specified; rejection can be conditional + return !noData || noData !== true && elem.getAttribute("classid") === noData; + } +}); + +jQuery.fn.extend({ + data: function( key, value ) { + var parts, part, attr, name, l, + elem = this[0], + i = 0, + data = null; + + // Gets all values + if ( key === undefined ) { + if ( this.length ) { + data = jQuery.data( elem ); + + if ( elem.nodeType === 1 && !jQuery._data( elem, "parsedAttrs" ) ) { + attr = elem.attributes; + for ( l = attr.length; i < l; i++ ) { + name = attr[i].name; + + if ( !name.indexOf( "data-" ) ) { + name = jQuery.camelCase( name.substring(5) ); + + dataAttr( elem, name, data[ name ] ); + } + } + jQuery._data( elem, "parsedAttrs", true ); + } + } + + return data; + } + + // Sets multiple values + if ( typeof key === "object" ) { + return this.each(function() { + jQuery.data( this, key ); + }); + } + + parts = key.split( ".", 2 ); + parts[1] = parts[1] ? "." + parts[1] : ""; + part = parts[1] + "!"; + + return jQuery.access( this, function( value ) { + + if ( value === undefined ) { + data = this.triggerHandler( "getData" + part, [ parts[0] ] ); + + // Try to fetch any internally stored data first + if ( data === undefined && elem ) { + data = jQuery.data( elem, key ); + data = dataAttr( elem, key, data ); + } + + return data === undefined && parts[1] ? + this.data( parts[0] ) : + data; + } + + parts[1] = value; + this.each(function() { + var self = jQuery( this ); + + self.triggerHandler( "setData" + part, parts ); + jQuery.data( this, key, value ); + self.triggerHandler( "changeData" + part, parts ); + }); + }, null, value, arguments.length > 1, null, false ); + }, + + removeData: function( key ) { + return this.each(function() { + jQuery.removeData( this, key ); + }); + } +}); + +function dataAttr( elem, key, data ) { + // If nothing was found internally, try to fetch any + // data from the HTML5 data-* attribute + if ( data === undefined && elem.nodeType === 1 ) { + + var name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase(); + + data = elem.getAttribute( name ); + + if ( typeof data === "string" ) { + try { + data = data === "true" ? true : + data === "false" ? false : + data === "null" ? null : + // Only convert to a number if it doesn't change the string + +data + "" === data ? +data : + rbrace.test( data ) ? jQuery.parseJSON( data ) : + data; + } catch( e ) {} + + // Make sure we set the data so it isn't changed later + jQuery.data( elem, key, data ); + + } else { + data = undefined; + } + } + + return data; +} + +// checks a cache object for emptiness +function isEmptyDataObject( obj ) { + var name; + for ( name in obj ) { + + // if the public data object is empty, the private is still empty + if ( name === "data" && jQuery.isEmptyObject( obj[name] ) ) { + continue; + } + if ( name !== "toJSON" ) { + return false; + } + } + + return true; +} +jQuery.extend({ + queue: function( elem, type, data ) { + var queue; + + if ( elem ) { + type = ( type || "fx" ) + "queue"; + queue = jQuery._data( elem, type ); + + // Speed up dequeue by getting out quickly if this is just a lookup + if ( data ) { + if ( !queue || jQuery.isArray(data) ) { + queue = jQuery._data( elem, type, jQuery.makeArray(data) ); + } else { + queue.push( data ); + } + } + return queue || []; + } + }, + + dequeue: function( elem, type ) { + type = type || "fx"; + + var queue = jQuery.queue( elem, type ), + startLength = queue.length, + fn = queue.shift(), + hooks = jQuery._queueHooks( elem, type ), + next = function() { + jQuery.dequeue( elem, type ); + }; + + // If the fx queue is dequeued, always remove the progress sentinel + if ( fn === "inprogress" ) { + fn = queue.shift(); + startLength--; + } + + if ( fn ) { + + // Add a progress sentinel to prevent the fx queue from being + // automatically dequeued + if ( type === "fx" ) { + queue.unshift( "inprogress" ); + } + + // clear up the last queue stop function + delete hooks.stop; + fn.call( elem, next, hooks ); + } + + if ( !startLength && hooks ) { + hooks.empty.fire(); + } + }, + + // not intended for public consumption - generates a queueHooks object, or returns the current one + _queueHooks: function( elem, type ) { + var key = type + "queueHooks"; + return jQuery._data( elem, key ) || jQuery._data( elem, key, { + empty: jQuery.Callbacks("once memory").add(function() { + jQuery.removeData( elem, type + "queue", true ); + jQuery.removeData( elem, key, true ); + }) + }); + } +}); + +jQuery.fn.extend({ + queue: function( type, data ) { + var setter = 2; + + if ( typeof type !== "string" ) { + data = type; + type = "fx"; + setter--; + } + + if ( arguments.length < setter ) { + return jQuery.queue( this[0], type ); + } + + return data === undefined ? + this : + this.each(function() { + var queue = jQuery.queue( this, type, data ); + + // ensure a hooks for this queue + jQuery._queueHooks( this, type ); + + if ( type === "fx" && queue[0] !== "inprogress" ) { + jQuery.dequeue( this, type ); + } + }); + }, + dequeue: function( type ) { + return this.each(function() { + jQuery.dequeue( this, type ); + }); + }, + // Based off of the plugin by Clint Helfers, with permission. + // http://blindsignals.com/index.php/2009/07/jquery-delay/ + delay: function( time, type ) { + time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time; + type = type || "fx"; + + return this.queue( type, function( next, hooks ) { + var timeout = setTimeout( next, time ); + hooks.stop = function() { + clearTimeout( timeout ); + }; + }); + }, + clearQueue: function( type ) { + return this.queue( type || "fx", [] ); + }, + // Get a promise resolved when queues of a certain type + // are emptied (fx is the type by default) + promise: function( type, obj ) { + var tmp, + count = 1, + defer = jQuery.Deferred(), + elements = this, + i = this.length, + resolve = function() { + if ( !( --count ) ) { + defer.resolveWith( elements, [ elements ] ); + } + }; + + if ( typeof type !== "string" ) { + obj = type; + type = undefined; + } + type = type || "fx"; + + while( i-- ) { + tmp = jQuery._data( elements[ i ], type + "queueHooks" ); + if ( tmp && tmp.empty ) { + count++; + tmp.empty.add( resolve ); + } + } + resolve(); + return defer.promise( obj ); + } +}); +var nodeHook, boolHook, fixSpecified, + rclass = /[\t\r\n]/g, + rreturn = /\r/g, + rtype = /^(?:button|input)$/i, + rfocusable = /^(?:button|input|object|select|textarea)$/i, + rclickable = /^a(?:rea|)$/i, + rboolean = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i, + getSetAttribute = jQuery.support.getSetAttribute; + +jQuery.fn.extend({ + attr: function( name, value ) { + return jQuery.access( this, jQuery.attr, name, value, arguments.length > 1 ); + }, + + removeAttr: function( name ) { + return this.each(function() { + jQuery.removeAttr( this, name ); + }); + }, + + prop: function( name, value ) { + return jQuery.access( this, jQuery.prop, name, value, arguments.length > 1 ); + }, + + removeProp: function( name ) { + name = jQuery.propFix[ name ] || name; + return this.each(function() { + // try/catch handles cases where IE balks (such as removing a property on window) + try { + this[ name ] = undefined; + delete this[ name ]; + } catch( e ) {} + }); + }, + + addClass: function( value ) { + var classNames, i, l, elem, + setClass, c, cl; + + if ( jQuery.isFunction( value ) ) { + return this.each(function( j ) { + jQuery( this ).addClass( value.call(this, j, this.className) ); + }); + } + + if ( value && typeof value === "string" ) { + classNames = value.split( core_rspace ); + + for ( i = 0, l = this.length; i < l; i++ ) { + elem = this[ i ]; + + if ( elem.nodeType === 1 ) { + if ( !elem.className && classNames.length === 1 ) { + elem.className = value; + + } else { + setClass = " " + elem.className + " "; + + for ( c = 0, cl = classNames.length; c < cl; c++ ) { + if ( setClass.indexOf( " " + classNames[ c ] + " " ) < 0 ) { + setClass += classNames[ c ] + " "; + } + } + elem.className = jQuery.trim( setClass ); + } + } + } + } + + return this; + }, + + removeClass: function( value ) { + var removes, className, elem, c, cl, i, l; + + if ( jQuery.isFunction( value ) ) { + return this.each(function( j ) { + jQuery( this ).removeClass( value.call(this, j, this.className) ); + }); + } + if ( (value && typeof value === "string") || value === undefined ) { + removes = ( value || "" ).split( core_rspace ); + + for ( i = 0, l = this.length; i < l; i++ ) { + elem = this[ i ]; + if ( elem.nodeType === 1 && elem.className ) { + + className = (" " + elem.className + " ").replace( rclass, " " ); + + // loop over each item in the removal list + for ( c = 0, cl = removes.length; c < cl; c++ ) { + // Remove until there is nothing to remove, + while ( className.indexOf(" " + removes[ c ] + " ") >= 0 ) { + className = className.replace( " " + removes[ c ] + " " , " " ); + } + } + elem.className = value ? jQuery.trim( className ) : ""; + } + } + } + + return this; + }, + + toggleClass: function( value, stateVal ) { + var type = typeof value, + isBool = typeof stateVal === "boolean"; + + if ( jQuery.isFunction( value ) ) { + return this.each(function( i ) { + jQuery( this ).toggleClass( value.call(this, i, this.className, stateVal), stateVal ); + }); + } + + return this.each(function() { + if ( type === "string" ) { + // toggle individual class names + var className, + i = 0, + self = jQuery( this ), + state = stateVal, + classNames = value.split( core_rspace ); + + while ( (className = classNames[ i++ ]) ) { + // check each className given, space separated list + state = isBool ? state : !self.hasClass( className ); + self[ state ? "addClass" : "removeClass" ]( className ); + } + + } else if ( type === "undefined" || type === "boolean" ) { + if ( this.className ) { + // store className if set + jQuery._data( this, "__className__", this.className ); + } + + // toggle whole className + this.className = this.className || value === false ? "" : jQuery._data( this, "__className__" ) || ""; + } + }); + }, + + hasClass: function( selector ) { + var className = " " + selector + " ", + i = 0, + l = this.length; + for ( ; i < l; i++ ) { + if ( this[i].nodeType === 1 && (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) >= 0 ) { + return true; + } + } + + return false; + }, + + val: function( value ) { + var hooks, ret, isFunction, + elem = this[0]; + + if ( !arguments.length ) { + if ( elem ) { + hooks = jQuery.valHooks[ elem.type ] || jQuery.valHooks[ elem.nodeName.toLowerCase() ]; + + if ( hooks && "get" in hooks && (ret = hooks.get( elem, "value" )) !== undefined ) { + return ret; + } + + ret = elem.value; + + return typeof ret === "string" ? + // handle most common string cases + ret.replace(rreturn, "") : + // handle cases where value is null/undef or number + ret == null ? "" : ret; + } + + return; + } + + isFunction = jQuery.isFunction( value ); + + return this.each(function( i ) { + var val, + self = jQuery(this); + + if ( this.nodeType !== 1 ) { + return; + } + + if ( isFunction ) { + val = value.call( this, i, self.val() ); + } else { + val = value; + } + + // Treat null/undefined as ""; convert numbers to string + if ( val == null ) { + val = ""; + } else if ( typeof val === "number" ) { + val += ""; + } else if ( jQuery.isArray( val ) ) { + val = jQuery.map(val, function ( value ) { + return value == null ? "" : value + ""; + }); + } + + hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ]; + + // If set returns undefined, fall back to normal setting + if ( !hooks || !("set" in hooks) || hooks.set( this, val, "value" ) === undefined ) { + this.value = val; + } + }); + } +}); + +jQuery.extend({ + valHooks: { + option: { + get: function( elem ) { + // attributes.value is undefined in Blackberry 4.7 but + // uses .value. See #6932 + var val = elem.attributes.value; + return !val || val.specified ? elem.value : elem.text; + } + }, + select: { + get: function( elem ) { + var value, option, + options = elem.options, + index = elem.selectedIndex, + one = elem.type === "select-one" || index < 0, + values = one ? null : [], + max = one ? index + 1 : options.length, + i = index < 0 ? + max : + one ? index : 0; + + // Loop through all the selected options + for ( ; i < max; i++ ) { + option = options[ i ]; + + // oldIE doesn't update selected after form reset (#2551) + if ( ( option.selected || i === index ) && + // Don't return options that are disabled or in a disabled optgroup + ( jQuery.support.optDisabled ? !option.disabled : option.getAttribute("disabled") === null ) && + ( !option.parentNode.disabled || !jQuery.nodeName( option.parentNode, "optgroup" ) ) ) { + + // Get the specific value for the option + value = jQuery( option ).val(); + + // We don't need an array for one selects + if ( one ) { + return value; + } + + // Multi-Selects return an array + values.push( value ); + } + } + + return values; + }, + + set: function( elem, value ) { + var values = jQuery.makeArray( value ); + + jQuery(elem).find("option").each(function() { + this.selected = jQuery.inArray( jQuery(this).val(), values ) >= 0; + }); + + if ( !values.length ) { + elem.selectedIndex = -1; + } + return values; + } + } + }, + + // Unused in 1.8, left in so attrFn-stabbers won't die; remove in 1.9 + attrFn: {}, + + attr: function( elem, name, value, pass ) { + var ret, hooks, notxml, + nType = elem.nodeType; + + // don't get/set attributes on text, comment and attribute nodes + if ( !elem || nType === 3 || nType === 8 || nType === 2 ) { + return; + } + + if ( pass && jQuery.isFunction( jQuery.fn[ name ] ) ) { + return jQuery( elem )[ name ]( value ); + } + + // Fallback to prop when attributes are not supported + if ( typeof elem.getAttribute === "undefined" ) { + return jQuery.prop( elem, name, value ); + } + + notxml = nType !== 1 || !jQuery.isXMLDoc( elem ); + + // All attributes are lowercase + // Grab necessary hook if one is defined + if ( notxml ) { + name = name.toLowerCase(); + hooks = jQuery.attrHooks[ name ] || ( rboolean.test( name ) ? boolHook : nodeHook ); + } + + if ( value !== undefined ) { + + if ( value === null ) { + jQuery.removeAttr( elem, name ); + return; + + } else if ( hooks && "set" in hooks && notxml && (ret = hooks.set( elem, value, name )) !== undefined ) { + return ret; + + } else { + elem.setAttribute( name, value + "" ); + return value; + } + + } else if ( hooks && "get" in hooks && notxml && (ret = hooks.get( elem, name )) !== null ) { + return ret; + + } else { + + ret = elem.getAttribute( name ); + + // Non-existent attributes return null, we normalize to undefined + return ret === null ? + undefined : + ret; + } + }, + + removeAttr: function( elem, value ) { + var propName, attrNames, name, isBool, + i = 0; + + if ( value && elem.nodeType === 1 ) { + + attrNames = value.split( core_rspace ); + + for ( ; i < attrNames.length; i++ ) { + name = attrNames[ i ]; + + if ( name ) { + propName = jQuery.propFix[ name ] || name; + isBool = rboolean.test( name ); + + // See #9699 for explanation of this approach (setting first, then removal) + // Do not do this for boolean attributes (see #10870) + if ( !isBool ) { + jQuery.attr( elem, name, "" ); + } + elem.removeAttribute( getSetAttribute ? name : propName ); + + // Set corresponding property to false for boolean attributes + if ( isBool && propName in elem ) { + elem[ propName ] = false; + } + } + } + } + }, + + attrHooks: { + type: { + set: function( elem, value ) { + // We can't allow the type property to be changed (since it causes problems in IE) + if ( rtype.test( elem.nodeName ) && elem.parentNode ) { + jQuery.error( "type property can't be changed" ); + } else if ( !jQuery.support.radioValue && value === "radio" && jQuery.nodeName(elem, "input") ) { + // Setting the type on a radio button after the value resets the value in IE6-9 + // Reset value to it's default in case type is set after value + // This is for element creation + var val = elem.value; + elem.setAttribute( "type", value ); + if ( val ) { + elem.value = val; + } + return value; + } + } + }, + // Use the value property for back compat + // Use the nodeHook for button elements in IE6/7 (#1954) + value: { + get: function( elem, name ) { + if ( nodeHook && jQuery.nodeName( elem, "button" ) ) { + return nodeHook.get( elem, name ); + } + return name in elem ? + elem.value : + null; + }, + set: function( elem, value, name ) { + if ( nodeHook && jQuery.nodeName( elem, "button" ) ) { + return nodeHook.set( elem, value, name ); + } + // Does not return so that setAttribute is also used + elem.value = value; + } + } + }, + + propFix: { + tabindex: "tabIndex", + readonly: "readOnly", + "for": "htmlFor", + "class": "className", + maxlength: "maxLength", + cellspacing: "cellSpacing", + cellpadding: "cellPadding", + rowspan: "rowSpan", + colspan: "colSpan", + usemap: "useMap", + frameborder: "frameBorder", + contenteditable: "contentEditable" + }, + + prop: function( elem, name, value ) { + var ret, hooks, notxml, + nType = elem.nodeType; + + // don't get/set properties on text, comment and attribute nodes + if ( !elem || nType === 3 || nType === 8 || nType === 2 ) { + return; + } + + notxml = nType !== 1 || !jQuery.isXMLDoc( elem ); + + if ( notxml ) { + // Fix name and attach hooks + name = jQuery.propFix[ name ] || name; + hooks = jQuery.propHooks[ name ]; + } + + if ( value !== undefined ) { + if ( hooks && "set" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ) { + return ret; + + } else { + return ( elem[ name ] = value ); + } + + } else { + if ( hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== null ) { + return ret; + + } else { + return elem[ name ]; + } + } + }, + + propHooks: { + tabIndex: { + get: function( elem ) { + // elem.tabIndex doesn't always return the correct value when it hasn't been explicitly set + // http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ + var attributeNode = elem.getAttributeNode("tabindex"); + + return attributeNode && attributeNode.specified ? + parseInt( attributeNode.value, 10 ) : + rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ? + 0 : + undefined; + } + } + } +}); + +// Hook for boolean attributes +boolHook = { + get: function( elem, name ) { + // Align boolean attributes with corresponding properties + // Fall back to attribute presence where some booleans are not supported + var attrNode, + property = jQuery.prop( elem, name ); + return property === true || typeof property !== "boolean" && ( attrNode = elem.getAttributeNode(name) ) && attrNode.nodeValue !== false ? + name.toLowerCase() : + undefined; + }, + set: function( elem, value, name ) { + var propName; + if ( value === false ) { + // Remove boolean attributes when set to false + jQuery.removeAttr( elem, name ); + } else { + // value is true since we know at this point it's type boolean and not false + // Set boolean attributes to the same name and set the DOM property + propName = jQuery.propFix[ name ] || name; + if ( propName in elem ) { + // Only set the IDL specifically if it already exists on the element + elem[ propName ] = true; + } + + elem.setAttribute( name, name.toLowerCase() ); + } + return name; + } +}; + +// IE6/7 do not support getting/setting some attributes with get/setAttribute +if ( !getSetAttribute ) { + + fixSpecified = { + name: true, + id: true, + coords: true + }; + + // Use this for any attribute in IE6/7 + // This fixes almost every IE6/7 issue + nodeHook = jQuery.valHooks.button = { + get: function( elem, name ) { + var ret; + ret = elem.getAttributeNode( name ); + return ret && ( fixSpecified[ name ] ? ret.value !== "" : ret.specified ) ? + ret.value : + undefined; + }, + set: function( elem, value, name ) { + // Set the existing or create a new attribute node + var ret = elem.getAttributeNode( name ); + if ( !ret ) { + ret = document.createAttribute( name ); + elem.setAttributeNode( ret ); + } + return ( ret.value = value + "" ); + } + }; + + // Set width and height to auto instead of 0 on empty string( Bug #8150 ) + // This is for removals + jQuery.each([ "width", "height" ], function( i, name ) { + jQuery.attrHooks[ name ] = jQuery.extend( jQuery.attrHooks[ name ], { + set: function( elem, value ) { + if ( value === "" ) { + elem.setAttribute( name, "auto" ); + return value; + } + } + }); + }); + + // Set contenteditable to false on removals(#10429) + // Setting to empty string throws an error as an invalid value + jQuery.attrHooks.contenteditable = { + get: nodeHook.get, + set: function( elem, value, name ) { + if ( value === "" ) { + value = "false"; + } + nodeHook.set( elem, value, name ); + } + }; +} + + +// Some attributes require a special call on IE +if ( !jQuery.support.hrefNormalized ) { + jQuery.each([ "href", "src", "width", "height" ], function( i, name ) { + jQuery.attrHooks[ name ] = jQuery.extend( jQuery.attrHooks[ name ], { + get: function( elem ) { + var ret = elem.getAttribute( name, 2 ); + return ret === null ? undefined : ret; + } + }); + }); +} + +if ( !jQuery.support.style ) { + jQuery.attrHooks.style = { + get: function( elem ) { + // Return undefined in the case of empty string + // Normalize to lowercase since IE uppercases css property names + return elem.style.cssText.toLowerCase() || undefined; + }, + set: function( elem, value ) { + return ( elem.style.cssText = value + "" ); + } + }; +} + +// Safari mis-reports the default selected property of an option +// Accessing the parent's selectedIndex property fixes it +if ( !jQuery.support.optSelected ) { + jQuery.propHooks.selected = jQuery.extend( jQuery.propHooks.selected, { + get: function( elem ) { + var parent = elem.parentNode; + + if ( parent ) { + parent.selectedIndex; + + // Make sure that it also works with optgroups, see #5701 + if ( parent.parentNode ) { + parent.parentNode.selectedIndex; + } + } + return null; + } + }); +} + +// IE6/7 call enctype encoding +if ( !jQuery.support.enctype ) { + jQuery.propFix.enctype = "encoding"; +} + +// Radios and checkboxes getter/setter +if ( !jQuery.support.checkOn ) { + jQuery.each([ "radio", "checkbox" ], function() { + jQuery.valHooks[ this ] = { + get: function( elem ) { + // Handle the case where in Webkit "" is returned instead of "on" if a value isn't specified + return elem.getAttribute("value") === null ? "on" : elem.value; + } + }; + }); +} +jQuery.each([ "radio", "checkbox" ], function() { + jQuery.valHooks[ this ] = jQuery.extend( jQuery.valHooks[ this ], { + set: function( elem, value ) { + if ( jQuery.isArray( value ) ) { + return ( elem.checked = jQuery.inArray( jQuery(elem).val(), value ) >= 0 ); + } + } + }); +}); +var rformElems = /^(?:textarea|input|select)$/i, + rtypenamespace = /^([^\.]*|)(?:\.(.+)|)$/, + rhoverHack = /(?:^|\s)hover(\.\S+|)\b/, + rkeyEvent = /^key/, + rmouseEvent = /^(?:mouse|contextmenu)|click/, + rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, + hoverHack = function( events ) { + return jQuery.event.special.hover ? events : events.replace( rhoverHack, "mouseenter$1 mouseleave$1" ); + }; + +/* + * Helper functions for managing events -- not part of the public interface. + * Props to Dean Edwards' addEvent library for many of the ideas. + */ +jQuery.event = { + + add: function( elem, types, handler, data, selector ) { + + var elemData, eventHandle, events, + t, tns, type, namespaces, handleObj, + handleObjIn, handlers, special; + + // Don't attach events to noData or text/comment nodes (allow plain objects tho) + if ( elem.nodeType === 3 || elem.nodeType === 8 || !types || !handler || !(elemData = jQuery._data( elem )) ) { + return; + } + + // Caller can pass in an object of custom data in lieu of the handler + if ( handler.handler ) { + handleObjIn = handler; + handler = handleObjIn.handler; + selector = handleObjIn.selector; + } + + // Make sure that the handler has a unique ID, used to find/remove it later + if ( !handler.guid ) { + handler.guid = jQuery.guid++; + } + + // Init the element's event structure and main handler, if this is the first + events = elemData.events; + if ( !events ) { + elemData.events = events = {}; + } + eventHandle = elemData.handle; + if ( !eventHandle ) { + elemData.handle = eventHandle = function( e ) { + // Discard the second event of a jQuery.event.trigger() and + // when an event is called after a page has unloaded + return typeof jQuery !== "undefined" && (!e || jQuery.event.triggered !== e.type) ? + jQuery.event.dispatch.apply( eventHandle.elem, arguments ) : + undefined; + }; + // Add elem as a property of the handle fn to prevent a memory leak with IE non-native events + eventHandle.elem = elem; + } + + // Handle multiple events separated by a space + // jQuery(...).bind("mouseover mouseout", fn); + types = jQuery.trim( hoverHack(types) ).split( " " ); + for ( t = 0; t < types.length; t++ ) { + + tns = rtypenamespace.exec( types[t] ) || []; + type = tns[1]; + namespaces = ( tns[2] || "" ).split( "." ).sort(); + + // If event changes its type, use the special event handlers for the changed type + special = jQuery.event.special[ type ] || {}; + + // If selector defined, determine special event api type, otherwise given type + type = ( selector ? special.delegateType : special.bindType ) || type; + + // Update special based on newly reset type + special = jQuery.event.special[ type ] || {}; + + // handleObj is passed to all event handlers + handleObj = jQuery.extend({ + type: type, + origType: tns[1], + data: data, + handler: handler, + guid: handler.guid, + selector: selector, + needsContext: selector && jQuery.expr.match.needsContext.test( selector ), + namespace: namespaces.join(".") + }, handleObjIn ); + + // Init the event handler queue if we're the first + handlers = events[ type ]; + if ( !handlers ) { + handlers = events[ type ] = []; + handlers.delegateCount = 0; + + // Only use addEventListener/attachEvent if the special events handler returns false + if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) { + // Bind the global event handler to the element + if ( elem.addEventListener ) { + elem.addEventListener( type, eventHandle, false ); + + } else if ( elem.attachEvent ) { + elem.attachEvent( "on" + type, eventHandle ); + } + } + } + + if ( special.add ) { + special.add.call( elem, handleObj ); + + if ( !handleObj.handler.guid ) { + handleObj.handler.guid = handler.guid; + } + } + + // Add to the element's handler list, delegates in front + if ( selector ) { + handlers.splice( handlers.delegateCount++, 0, handleObj ); + } else { + handlers.push( handleObj ); + } + + // Keep track of which events have ever been used, for event optimization + jQuery.event.global[ type ] = true; + } + + // Nullify elem to prevent memory leaks in IE + elem = null; + }, + + global: {}, + + // Detach an event or set of events from an element + remove: function( elem, types, handler, selector, mappedTypes ) { + + var t, tns, type, origType, namespaces, origCount, + j, events, special, eventType, handleObj, + elemData = jQuery.hasData( elem ) && jQuery._data( elem ); + + if ( !elemData || !(events = elemData.events) ) { + return; + } + + // Once for each type.namespace in types; type may be omitted + types = jQuery.trim( hoverHack( types || "" ) ).split(" "); + for ( t = 0; t < types.length; t++ ) { + tns = rtypenamespace.exec( types[t] ) || []; + type = origType = tns[1]; + namespaces = tns[2]; + + // Unbind all events (on this namespace, if provided) for the element + if ( !type ) { + for ( type in events ) { + jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); + } + continue; + } + + special = jQuery.event.special[ type ] || {}; + type = ( selector? special.delegateType : special.bindType ) || type; + eventType = events[ type ] || []; + origCount = eventType.length; + namespaces = namespaces ? new RegExp("(^|\\.)" + namespaces.split(".").sort().join("\\.(?:.*\\.|)") + "(\\.|$)") : null; + + // Remove matching events + for ( j = 0; j < eventType.length; j++ ) { + handleObj = eventType[ j ]; + + if ( ( mappedTypes || origType === handleObj.origType ) && + ( !handler || handler.guid === handleObj.guid ) && + ( !namespaces || namespaces.test( handleObj.namespace ) ) && + ( !selector || selector === handleObj.selector || selector === "**" && handleObj.selector ) ) { + eventType.splice( j--, 1 ); + + if ( handleObj.selector ) { + eventType.delegateCount--; + } + if ( special.remove ) { + special.remove.call( elem, handleObj ); + } + } + } + + // Remove generic event handler if we removed something and no more handlers exist + // (avoids potential for endless recursion during removal of special event handlers) + if ( eventType.length === 0 && origCount !== eventType.length ) { + if ( !special.teardown || special.teardown.call( elem, namespaces, elemData.handle ) === false ) { + jQuery.removeEvent( elem, type, elemData.handle ); + } + + delete events[ type ]; + } + } + + // Remove the expando if it's no longer used + if ( jQuery.isEmptyObject( events ) ) { + delete elemData.handle; + + // removeData also checks for emptiness and clears the expando if empty + // so use it instead of delete + jQuery.removeData( elem, "events", true ); + } + }, + + // Events that are safe to short-circuit if no handlers are attached. + // Native DOM events should not be added, they may have inline handlers. + customEvent: { + "getData": true, + "setData": true, + "changeData": true + }, + + trigger: function( event, data, elem, onlyHandlers ) { + // Don't do events on text and comment nodes + if ( elem && (elem.nodeType === 3 || elem.nodeType === 8) ) { + return; + } + + // Event object or event type + var cache, exclusive, i, cur, old, ontype, special, handle, eventPath, bubbleType, + type = event.type || event, + namespaces = []; + + // focus/blur morphs to focusin/out; ensure we're not firing them right now + if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { + return; + } + + if ( type.indexOf( "!" ) >= 0 ) { + // Exclusive events trigger only for the exact event (no namespaces) + type = type.slice(0, -1); + exclusive = true; + } + + if ( type.indexOf( "." ) >= 0 ) { + // Namespaced trigger; create a regexp to match event type in handle() + namespaces = type.split("."); + type = namespaces.shift(); + namespaces.sort(); + } + + if ( (!elem || jQuery.event.customEvent[ type ]) && !jQuery.event.global[ type ] ) { + // No jQuery handlers for this event type, and it can't have inline handlers + return; + } + + // Caller can pass in an Event, Object, or just an event type string + event = typeof event === "object" ? + // jQuery.Event object + event[ jQuery.expando ] ? event : + // Object literal + new jQuery.Event( type, event ) : + // Just the event type (string) + new jQuery.Event( type ); + + event.type = type; + event.isTrigger = true; + event.exclusive = exclusive; + event.namespace = namespaces.join( "." ); + event.namespace_re = event.namespace? new RegExp("(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)") : null; + ontype = type.indexOf( ":" ) < 0 ? "on" + type : ""; + + // Handle a global trigger + if ( !elem ) { + + // TODO: Stop taunting the data cache; remove global events and always attach to document + cache = jQuery.cache; + for ( i in cache ) { + if ( cache[ i ].events && cache[ i ].events[ type ] ) { + jQuery.event.trigger( event, data, cache[ i ].handle.elem, true ); + } + } + return; + } + + // Clean up the event in case it is being reused + event.result = undefined; + if ( !event.target ) { + event.target = elem; + } + + // Clone any incoming data and prepend the event, creating the handler arg list + data = data != null ? jQuery.makeArray( data ) : []; + data.unshift( event ); + + // Allow special events to draw outside the lines + special = jQuery.event.special[ type ] || {}; + if ( special.trigger && special.trigger.apply( elem, data ) === false ) { + return; + } + + // Determine event propagation path in advance, per W3C events spec (#9951) + // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) + eventPath = [[ elem, special.bindType || type ]]; + if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) { + + bubbleType = special.delegateType || type; + cur = rfocusMorph.test( bubbleType + type ) ? elem : elem.parentNode; + for ( old = elem; cur; cur = cur.parentNode ) { + eventPath.push([ cur, bubbleType ]); + old = cur; + } + + // Only add window if we got to document (e.g., not plain obj or detached DOM) + if ( old === (elem.ownerDocument || document) ) { + eventPath.push([ old.defaultView || old.parentWindow || window, bubbleType ]); + } + } + + // Fire handlers on the event path + for ( i = 0; i < eventPath.length && !event.isPropagationStopped(); i++ ) { + + cur = eventPath[i][0]; + event.type = eventPath[i][1]; + + handle = ( jQuery._data( cur, "events" ) || {} )[ event.type ] && jQuery._data( cur, "handle" ); + if ( handle ) { + handle.apply( cur, data ); + } + // Note that this is a bare JS function and not a jQuery handler + handle = ontype && cur[ ontype ]; + if ( handle && jQuery.acceptData( cur ) && handle.apply && handle.apply( cur, data ) === false ) { + event.preventDefault(); + } + } + event.type = type; + + // If nobody prevented the default action, do it now + if ( !onlyHandlers && !event.isDefaultPrevented() ) { + + if ( (!special._default || special._default.apply( elem.ownerDocument, data ) === false) && + !(type === "click" && jQuery.nodeName( elem, "a" )) && jQuery.acceptData( elem ) ) { + + // Call a native DOM method on the target with the same name name as the event. + // Can't use an .isFunction() check here because IE6/7 fails that test. + // Don't do default actions on window, that's where global variables be (#6170) + // IE<9 dies on focus/blur to hidden element (#1486) + if ( ontype && elem[ type ] && ((type !== "focus" && type !== "blur") || event.target.offsetWidth !== 0) && !jQuery.isWindow( elem ) ) { + + // Don't re-trigger an onFOO event when we call its FOO() method + old = elem[ ontype ]; + + if ( old ) { + elem[ ontype ] = null; + } + + // Prevent re-triggering of the same event, since we already bubbled it above + jQuery.event.triggered = type; + elem[ type ](); + jQuery.event.triggered = undefined; + + if ( old ) { + elem[ ontype ] = old; + } + } + } + } + + return event.result; + }, + + dispatch: function( event ) { + + // Make a writable jQuery.Event from the native event object + event = jQuery.event.fix( event || window.event ); + + var i, j, cur, ret, selMatch, matched, matches, handleObj, sel, related, + handlers = ( (jQuery._data( this, "events" ) || {} )[ event.type ] || []), + delegateCount = handlers.delegateCount, + args = core_slice.call( arguments ), + run_all = !event.exclusive && !event.namespace, + special = jQuery.event.special[ event.type ] || {}, + handlerQueue = []; + + // Use the fix-ed jQuery.Event rather than the (read-only) native event + args[0] = event; + event.delegateTarget = this; + + // Call the preDispatch hook for the mapped type, and let it bail if desired + if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { + return; + } + + // Determine handlers that should run if there are delegated events + // Avoid non-left-click bubbling in Firefox (#3861) + if ( delegateCount && !(event.button && event.type === "click") ) { + + for ( cur = event.target; cur != this; cur = cur.parentNode || this ) { + + // Don't process clicks (ONLY) on disabled elements (#6911, #8165, #11382, #11764) + if ( cur.disabled !== true || event.type !== "click" ) { + selMatch = {}; + matches = []; + for ( i = 0; i < delegateCount; i++ ) { + handleObj = handlers[ i ]; + sel = handleObj.selector; + + if ( selMatch[ sel ] === undefined ) { + selMatch[ sel ] = handleObj.needsContext ? + jQuery( sel, this ).index( cur ) >= 0 : + jQuery.find( sel, this, null, [ cur ] ).length; + } + if ( selMatch[ sel ] ) { + matches.push( handleObj ); + } + } + if ( matches.length ) { + handlerQueue.push({ elem: cur, matches: matches }); + } + } + } + } + + // Add the remaining (directly-bound) handlers + if ( handlers.length > delegateCount ) { + handlerQueue.push({ elem: this, matches: handlers.slice( delegateCount ) }); + } + + // Run delegates first; they may want to stop propagation beneath us + for ( i = 0; i < handlerQueue.length && !event.isPropagationStopped(); i++ ) { + matched = handlerQueue[ i ]; + event.currentTarget = matched.elem; + + for ( j = 0; j < matched.matches.length && !event.isImmediatePropagationStopped(); j++ ) { + handleObj = matched.matches[ j ]; + + // Triggered event must either 1) be non-exclusive and have no namespace, or + // 2) have namespace(s) a subset or equal to those in the bound event (both can have no namespace). + if ( run_all || (!event.namespace && !handleObj.namespace) || event.namespace_re && event.namespace_re.test( handleObj.namespace ) ) { + + event.data = handleObj.data; + event.handleObj = handleObj; + + ret = ( (jQuery.event.special[ handleObj.origType ] || {}).handle || handleObj.handler ) + .apply( matched.elem, args ); + + if ( ret !== undefined ) { + event.result = ret; + if ( ret === false ) { + event.preventDefault(); + event.stopPropagation(); + } + } + } + } + } + + // Call the postDispatch hook for the mapped type + if ( special.postDispatch ) { + special.postDispatch.call( this, event ); + } + + return event.result; + }, + + // Includes some event props shared by KeyEvent and MouseEvent + // *** attrChange attrName relatedNode srcElement are not normalized, non-W3C, deprecated, will be removed in 1.8 *** + props: "attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "), + + fixHooks: {}, + + keyHooks: { + props: "char charCode key keyCode".split(" "), + filter: function( event, original ) { + + // Add which for key events + if ( event.which == null ) { + event.which = original.charCode != null ? original.charCode : original.keyCode; + } + + return event; + } + }, + + mouseHooks: { + props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "), + filter: function( event, original ) { + var eventDoc, doc, body, + button = original.button, + fromElement = original.fromElement; + + // Calculate pageX/Y if missing and clientX/Y available + if ( event.pageX == null && original.clientX != null ) { + eventDoc = event.target.ownerDocument || document; + doc = eventDoc.documentElement; + body = eventDoc.body; + + event.pageX = original.clientX + ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - ( doc && doc.clientLeft || body && body.clientLeft || 0 ); + event.pageY = original.clientY + ( doc && doc.scrollTop || body && body.scrollTop || 0 ) - ( doc && doc.clientTop || body && body.clientTop || 0 ); + } + + // Add relatedTarget, if necessary + if ( !event.relatedTarget && fromElement ) { + event.relatedTarget = fromElement === event.target ? original.toElement : fromElement; + } + + // Add which for click: 1 === left; 2 === middle; 3 === right + // Note: button is not normalized, so don't use it + if ( !event.which && button !== undefined ) { + event.which = ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) ); + } + + return event; + } + }, + + fix: function( event ) { + if ( event[ jQuery.expando ] ) { + return event; + } + + // Create a writable copy of the event object and normalize some properties + var i, prop, + originalEvent = event, + fixHook = jQuery.event.fixHooks[ event.type ] || {}, + copy = fixHook.props ? this.props.concat( fixHook.props ) : this.props; + + event = jQuery.Event( originalEvent ); + + for ( i = copy.length; i; ) { + prop = copy[ --i ]; + event[ prop ] = originalEvent[ prop ]; + } + + // Fix target property, if necessary (#1925, IE 6/7/8 & Safari2) + if ( !event.target ) { + event.target = originalEvent.srcElement || document; + } + + // Target should not be a text node (#504, Safari) + if ( event.target.nodeType === 3 ) { + event.target = event.target.parentNode; + } + + // For mouse/key events, metaKey==false if it's undefined (#3368, #11328; IE6/7/8) + event.metaKey = !!event.metaKey; + + return fixHook.filter? fixHook.filter( event, originalEvent ) : event; + }, + + special: { + load: { + // Prevent triggered image.load events from bubbling to window.load + noBubble: true + }, + + focus: { + delegateType: "focusin" + }, + blur: { + delegateType: "focusout" + }, + + beforeunload: { + setup: function( data, namespaces, eventHandle ) { + // We only want to do this special case on windows + if ( jQuery.isWindow( this ) ) { + this.onbeforeunload = eventHandle; + } + }, + + teardown: function( namespaces, eventHandle ) { + if ( this.onbeforeunload === eventHandle ) { + this.onbeforeunload = null; + } + } + } + }, + + simulate: function( type, elem, event, bubble ) { + // Piggyback on a donor event to simulate a different one. + // Fake originalEvent to avoid donor's stopPropagation, but if the + // simulated event prevents default then we do the same on the donor. + var e = jQuery.extend( + new jQuery.Event(), + event, + { type: type, + isSimulated: true, + originalEvent: {} + } + ); + if ( bubble ) { + jQuery.event.trigger( e, null, elem ); + } else { + jQuery.event.dispatch.call( elem, e ); + } + if ( e.isDefaultPrevented() ) { + event.preventDefault(); + } + } +}; + +// Some plugins are using, but it's undocumented/deprecated and will be removed. +// The 1.7 special event interface should provide all the hooks needed now. +jQuery.event.handle = jQuery.event.dispatch; + +jQuery.removeEvent = document.removeEventListener ? + function( elem, type, handle ) { + if ( elem.removeEventListener ) { + elem.removeEventListener( type, handle, false ); + } + } : + function( elem, type, handle ) { + var name = "on" + type; + + if ( elem.detachEvent ) { + + // #8545, #7054, preventing memory leaks for custom events in IE6-8 + // detachEvent needed property on element, by name of that event, to properly expose it to GC + if ( typeof elem[ name ] === "undefined" ) { + elem[ name ] = null; + } + + elem.detachEvent( name, handle ); + } + }; + +jQuery.Event = function( src, props ) { + // Allow instantiation without the 'new' keyword + if ( !(this instanceof jQuery.Event) ) { + return new jQuery.Event( src, props ); + } + + // Event object + if ( src && src.type ) { + this.originalEvent = src; + this.type = src.type; + + // Events bubbling up the document may have been marked as prevented + // by a handler lower down the tree; reflect the correct value. + this.isDefaultPrevented = ( src.defaultPrevented || src.returnValue === false || + src.getPreventDefault && src.getPreventDefault() ) ? returnTrue : returnFalse; + + // Event type + } else { + this.type = src; + } + + // Put explicitly provided properties onto the event object + if ( props ) { + jQuery.extend( this, props ); + } + + // Create a timestamp if incoming event doesn't have one + this.timeStamp = src && src.timeStamp || jQuery.now(); + + // Mark it as fixed + this[ jQuery.expando ] = true; +}; + +function returnFalse() { + return false; +} +function returnTrue() { + return true; +} + +// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding +// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html +jQuery.Event.prototype = { + preventDefault: function() { + this.isDefaultPrevented = returnTrue; + + var e = this.originalEvent; + if ( !e ) { + return; + } + + // if preventDefault exists run it on the original event + if ( e.preventDefault ) { + e.preventDefault(); + + // otherwise set the returnValue property of the original event to false (IE) + } else { + e.returnValue = false; + } + }, + stopPropagation: function() { + this.isPropagationStopped = returnTrue; + + var e = this.originalEvent; + if ( !e ) { + return; + } + // if stopPropagation exists run it on the original event + if ( e.stopPropagation ) { + e.stopPropagation(); + } + // otherwise set the cancelBubble property of the original event to true (IE) + e.cancelBubble = true; + }, + stopImmediatePropagation: function() { + this.isImmediatePropagationStopped = returnTrue; + this.stopPropagation(); + }, + isDefaultPrevented: returnFalse, + isPropagationStopped: returnFalse, + isImmediatePropagationStopped: returnFalse +}; + +// Create mouseenter/leave events using mouseover/out and event-time checks +jQuery.each({ + mouseenter: "mouseover", + mouseleave: "mouseout" +}, function( orig, fix ) { + jQuery.event.special[ orig ] = { + delegateType: fix, + bindType: fix, + + handle: function( event ) { + var ret, + target = this, + related = event.relatedTarget, + handleObj = event.handleObj, + selector = handleObj.selector; + + // For mousenter/leave call the handler if related is outside the target. + // NB: No relatedTarget if the mouse left/entered the browser window + if ( !related || (related !== target && !jQuery.contains( target, related )) ) { + event.type = handleObj.origType; + ret = handleObj.handler.apply( this, arguments ); + event.type = fix; + } + return ret; + } + }; +}); + +// IE submit delegation +if ( !jQuery.support.submitBubbles ) { + + jQuery.event.special.submit = { + setup: function() { + // Only need this for delegated form submit events + if ( jQuery.nodeName( this, "form" ) ) { + return false; + } + + // Lazy-add a submit handler when a descendant form may potentially be submitted + jQuery.event.add( this, "click._submit keypress._submit", function( e ) { + // Node name check avoids a VML-related crash in IE (#9807) + var elem = e.target, + form = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? elem.form : undefined; + if ( form && !jQuery._data( form, "_submit_attached" ) ) { + jQuery.event.add( form, "submit._submit", function( event ) { + event._submit_bubble = true; + }); + jQuery._data( form, "_submit_attached", true ); + } + }); + // return undefined since we don't need an event listener + }, + + postDispatch: function( event ) { + // If form was submitted by the user, bubble the event up the tree + if ( event._submit_bubble ) { + delete event._submit_bubble; + if ( this.parentNode && !event.isTrigger ) { + jQuery.event.simulate( "submit", this.parentNode, event, true ); + } + } + }, + + teardown: function() { + // Only need this for delegated form submit events + if ( jQuery.nodeName( this, "form" ) ) { + return false; + } + + // Remove delegated handlers; cleanData eventually reaps submit handlers attached above + jQuery.event.remove( this, "._submit" ); + } + }; +} + +// IE change delegation and checkbox/radio fix +if ( !jQuery.support.changeBubbles ) { + + jQuery.event.special.change = { + + setup: function() { + + if ( rformElems.test( this.nodeName ) ) { + // IE doesn't fire change on a check/radio until blur; trigger it on click + // after a propertychange. Eat the blur-change in special.change.handle. + // This still fires onchange a second time for check/radio after blur. + if ( this.type === "checkbox" || this.type === "radio" ) { + jQuery.event.add( this, "propertychange._change", function( event ) { + if ( event.originalEvent.propertyName === "checked" ) { + this._just_changed = true; + } + }); + jQuery.event.add( this, "click._change", function( event ) { + if ( this._just_changed && !event.isTrigger ) { + this._just_changed = false; + } + // Allow triggered, simulated change events (#11500) + jQuery.event.simulate( "change", this, event, true ); + }); + } + return false; + } + // Delegated event; lazy-add a change handler on descendant inputs + jQuery.event.add( this, "beforeactivate._change", function( e ) { + var elem = e.target; + + if ( rformElems.test( elem.nodeName ) && !jQuery._data( elem, "_change_attached" ) ) { + jQuery.event.add( elem, "change._change", function( event ) { + if ( this.parentNode && !event.isSimulated && !event.isTrigger ) { + jQuery.event.simulate( "change", this.parentNode, event, true ); + } + }); + jQuery._data( elem, "_change_attached", true ); + } + }); + }, + + handle: function( event ) { + var elem = event.target; + + // Swallow native change events from checkbox/radio, we already triggered them above + if ( this !== elem || event.isSimulated || event.isTrigger || (elem.type !== "radio" && elem.type !== "checkbox") ) { + return event.handleObj.handler.apply( this, arguments ); + } + }, + + teardown: function() { + jQuery.event.remove( this, "._change" ); + + return !rformElems.test( this.nodeName ); + } + }; +} + +// Create "bubbling" focus and blur events +if ( !jQuery.support.focusinBubbles ) { + jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) { + + // Attach a single capturing handler while someone wants focusin/focusout + var attaches = 0, + handler = function( event ) { + jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ), true ); + }; + + jQuery.event.special[ fix ] = { + setup: function() { + if ( attaches++ === 0 ) { + document.addEventListener( orig, handler, true ); + } + }, + teardown: function() { + if ( --attaches === 0 ) { + document.removeEventListener( orig, handler, true ); + } + } + }; + }); +} + +jQuery.fn.extend({ + + on: function( types, selector, data, fn, /*INTERNAL*/ one ) { + var origFn, type; + + // Types can be a map of types/handlers + if ( typeof types === "object" ) { + // ( types-Object, selector, data ) + if ( typeof selector !== "string" ) { // && selector != null + // ( types-Object, data ) + data = data || selector; + selector = undefined; + } + for ( type in types ) { + this.on( type, selector, data, types[ type ], one ); + } + return this; + } + + if ( data == null && fn == null ) { + // ( types, fn ) + fn = selector; + data = selector = undefined; + } else if ( fn == null ) { + if ( typeof selector === "string" ) { + // ( types, selector, fn ) + fn = data; + data = undefined; + } else { + // ( types, data, fn ) + fn = data; + data = selector; + selector = undefined; + } + } + if ( fn === false ) { + fn = returnFalse; + } else if ( !fn ) { + return this; + } + + if ( one === 1 ) { + origFn = fn; + fn = function( event ) { + // Can use an empty set, since event contains the info + jQuery().off( event ); + return origFn.apply( this, arguments ); + }; + // Use same guid so caller can remove using origFn + fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); + } + return this.each( function() { + jQuery.event.add( this, types, fn, data, selector ); + }); + }, + one: function( types, selector, data, fn ) { + return this.on( types, selector, data, fn, 1 ); + }, + off: function( types, selector, fn ) { + var handleObj, type; + if ( types && types.preventDefault && types.handleObj ) { + // ( event ) dispatched jQuery.Event + handleObj = types.handleObj; + jQuery( types.delegateTarget ).off( + handleObj.namespace ? handleObj.origType + "." + handleObj.namespace : handleObj.origType, + handleObj.selector, + handleObj.handler + ); + return this; + } + if ( typeof types === "object" ) { + // ( types-object [, selector] ) + for ( type in types ) { + this.off( type, selector, types[ type ] ); + } + return this; + } + if ( selector === false || typeof selector === "function" ) { + // ( types [, fn] ) + fn = selector; + selector = undefined; + } + if ( fn === false ) { + fn = returnFalse; + } + return this.each(function() { + jQuery.event.remove( this, types, fn, selector ); + }); + }, + + bind: function( types, data, fn ) { + return this.on( types, null, data, fn ); + }, + unbind: function( types, fn ) { + return this.off( types, null, fn ); + }, + + live: function( types, data, fn ) { + jQuery( this.context ).on( types, this.selector, data, fn ); + return this; + }, + die: function( types, fn ) { + jQuery( this.context ).off( types, this.selector || "**", fn ); + return this; + }, + + delegate: function( selector, types, data, fn ) { + return this.on( types, selector, data, fn ); + }, + undelegate: function( selector, types, fn ) { + // ( namespace ) or ( selector, types [, fn] ) + return arguments.length === 1 ? this.off( selector, "**" ) : this.off( types, selector || "**", fn ); + }, + + trigger: function( type, data ) { + return this.each(function() { + jQuery.event.trigger( type, data, this ); + }); + }, + triggerHandler: function( type, data ) { + if ( this[0] ) { + return jQuery.event.trigger( type, data, this[0], true ); + } + }, + + toggle: function( fn ) { + // Save reference to arguments for access in closure + var args = arguments, + guid = fn.guid || jQuery.guid++, + i = 0, + toggler = function( event ) { + // Figure out which function to execute + var lastToggle = ( jQuery._data( this, "lastToggle" + fn.guid ) || 0 ) % i; + jQuery._data( this, "lastToggle" + fn.guid, lastToggle + 1 ); + + // Make sure that clicks stop + event.preventDefault(); + + // and execute the function + return args[ lastToggle ].apply( this, arguments ) || false; + }; + + // link all the functions, so any of them can unbind this click handler + toggler.guid = guid; + while ( i < args.length ) { + args[ i++ ].guid = guid; + } + + return this.click( toggler ); + }, + + hover: function( fnOver, fnOut ) { + return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver ); + } +}); + +jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " + + "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " + + "change select submit keydown keypress keyup error contextmenu").split(" "), function( i, name ) { + + // Handle event binding + jQuery.fn[ name ] = function( data, fn ) { + if ( fn == null ) { + fn = data; + data = null; + } + + return arguments.length > 0 ? + this.on( name, null, data, fn ) : + this.trigger( name ); + }; + + if ( rkeyEvent.test( name ) ) { + jQuery.event.fixHooks[ name ] = jQuery.event.keyHooks; + } + + if ( rmouseEvent.test( name ) ) { + jQuery.event.fixHooks[ name ] = jQuery.event.mouseHooks; + } +}); +/*! + * Sizzle CSS Selector Engine + * Copyright 2012 jQuery Foundation and other contributors + * Released under the MIT license + * http://sizzlejs.com/ + */ +(function( window, undefined ) { + +var cachedruns, + assertGetIdNotName, + Expr, + getText, + isXML, + contains, + compile, + sortOrder, + hasDuplicate, + outermostContext, + + baseHasDuplicate = true, + strundefined = "undefined", + + expando = ( "sizcache" + Math.random() ).replace( ".", "" ), + + Token = String, + document = window.document, + docElem = document.documentElement, + dirruns = 0, + done = 0, + pop = [].pop, + push = [].push, + slice = [].slice, + // Use a stripped-down indexOf if a native one is unavailable + indexOf = [].indexOf || function( elem ) { + var i = 0, + len = this.length; + for ( ; i < len; i++ ) { + if ( this[i] === elem ) { + return i; + } + } + return -1; + }, + + // Augment a function for special use by Sizzle + markFunction = function( fn, value ) { + fn[ expando ] = value == null || value; + return fn; + }, + + createCache = function() { + var cache = {}, + keys = []; + + return markFunction(function( key, value ) { + // Only keep the most recent entries + if ( keys.push( key ) > Expr.cacheLength ) { + delete cache[ keys.shift() ]; + } + + // Retrieve with (key + " ") to avoid collision with native Object.prototype properties (see Issue #157) + return (cache[ key + " " ] = value); + }, cache ); + }, + + classCache = createCache(), + tokenCache = createCache(), + compilerCache = createCache(), + + // Regex + + // Whitespace characters http://www.w3.org/TR/css3-selectors/#whitespace + whitespace = "[\\x20\\t\\r\\n\\f]", + // http://www.w3.org/TR/css3-syntax/#characters + characterEncoding = "(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+", + + // Loosely modeled on CSS identifier characters + // An unquoted value should be a CSS identifier (http://www.w3.org/TR/css3-selectors/#attribute-selectors) + // Proper syntax: http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier + identifier = characterEncoding.replace( "w", "w#" ), + + // Acceptable operators http://www.w3.org/TR/selectors/#attribute-selectors + operators = "([*^$|!~]?=)", + attributes = "\\[" + whitespace + "*(" + characterEncoding + ")" + whitespace + + "*(?:" + operators + whitespace + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + identifier + ")|)|)" + whitespace + "*\\]", + + // Prefer arguments not in parens/brackets, + // then attribute selectors and non-pseudos (denoted by :), + // then anything else + // These preferences are here to reduce the number of selectors + // needing tokenize in the PSEUDO preFilter + pseudos = ":(" + characterEncoding + ")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:" + attributes + ")|[^:]|\\\\.)*|.*))\\)|)", + + // For matchExpr.POS and matchExpr.needsContext + pos = ":(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + whitespace + + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", + + // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter + rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ), + + rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), + rcombinators = new RegExp( "^" + whitespace + "*([\\x20\\t\\r\\n\\f>+~])" + whitespace + "*" ), + rpseudo = new RegExp( pseudos ), + + // Easily-parseable/retrievable ID or TAG or CLASS selectors + rquickExpr = /^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/, + + rnot = /^:not/, + rsibling = /[\x20\t\r\n\f]*[+~]/, + rendsWithNot = /:not\($/, + + rheader = /h\d/i, + rinputs = /input|select|textarea|button/i, + + rbackslash = /\\(?!\\)/g, + + matchExpr = { + "ID": new RegExp( "^#(" + characterEncoding + ")" ), + "CLASS": new RegExp( "^\\.(" + characterEncoding + ")" ), + "NAME": new RegExp( "^\\[name=['\"]?(" + characterEncoding + ")['\"]?\\]" ), + "TAG": new RegExp( "^(" + characterEncoding.replace( "w", "w*" ) + ")" ), + "ATTR": new RegExp( "^" + attributes ), + "PSEUDO": new RegExp( "^" + pseudos ), + "POS": new RegExp( pos, "i" ), + "CHILD": new RegExp( "^:(only|nth|first|last)-child(?:\\(" + whitespace + + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + + "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), + // For use in libraries implementing .is() + "needsContext": new RegExp( "^" + whitespace + "*[>+~]|" + pos, "i" ) + }, + + // Support + + // Used for testing something on an element + assert = function( fn ) { + var div = document.createElement("div"); + + try { + return fn( div ); + } catch (e) { + return false; + } finally { + // release memory in IE + div = null; + } + }, + + // Check if getElementsByTagName("*") returns only elements + assertTagNameNoComments = assert(function( div ) { + div.appendChild( document.createComment("") ); + return !div.getElementsByTagName("*").length; + }), + + // Check if getAttribute returns normalized href attributes + assertHrefNotNormalized = assert(function( div ) { + div.innerHTML = ""; + return div.firstChild && typeof div.firstChild.getAttribute !== strundefined && + div.firstChild.getAttribute("href") === "#"; + }), + + // Check if attributes should be retrieved by attribute nodes + assertAttributes = assert(function( div ) { + div.innerHTML = ""; + var type = typeof div.lastChild.getAttribute("multiple"); + // IE8 returns a string for some attributes even when not present + return type !== "boolean" && type !== "string"; + }), + + // Check if getElementsByClassName can be trusted + assertUsableClassName = assert(function( div ) { + // Opera can't find a second classname (in 9.6) + div.innerHTML = ""; + if ( !div.getElementsByClassName || !div.getElementsByClassName("e").length ) { + return false; + } + + // Safari 3.2 caches class attributes and doesn't catch changes + div.lastChild.className = "e"; + return div.getElementsByClassName("e").length === 2; + }), + + // Check if getElementById returns elements by name + // Check if getElementsByName privileges form controls or returns elements by ID + assertUsableName = assert(function( div ) { + // Inject content + div.id = expando + 0; + div.innerHTML = "
    "; + docElem.insertBefore( div, docElem.firstChild ); + + // Test + var pass = document.getElementsByName && + // buggy browsers will return fewer than the correct 2 + document.getElementsByName( expando ).length === 2 + + // buggy browsers will return more than the correct 0 + document.getElementsByName( expando + 0 ).length; + assertGetIdNotName = !document.getElementById( expando ); + + // Cleanup + docElem.removeChild( div ); + + return pass; + }); + +// If slice is not available, provide a backup +try { + slice.call( docElem.childNodes, 0 )[0].nodeType; +} catch ( e ) { + slice = function( i ) { + var elem, + results = []; + for ( ; (elem = this[i]); i++ ) { + results.push( elem ); + } + return results; + }; +} + +function Sizzle( selector, context, results, seed ) { + results = results || []; + context = context || document; + var match, elem, xml, m, + nodeType = context.nodeType; + + if ( !selector || typeof selector !== "string" ) { + return results; + } + + if ( nodeType !== 1 && nodeType !== 9 ) { + return []; + } + + xml = isXML( context ); + + if ( !xml && !seed ) { + if ( (match = rquickExpr.exec( selector )) ) { + // Speed-up: Sizzle("#ID") + if ( (m = match[1]) ) { + if ( nodeType === 9 ) { + elem = context.getElementById( m ); + // Check parentNode to catch when Blackberry 4.6 returns + // nodes that are no longer in the document #6963 + if ( elem && elem.parentNode ) { + // Handle the case where IE, Opera, and Webkit return items + // by name instead of ID + if ( elem.id === m ) { + results.push( elem ); + return results; + } + } else { + return results; + } + } else { + // Context is not a document + if ( context.ownerDocument && (elem = context.ownerDocument.getElementById( m )) && + contains( context, elem ) && elem.id === m ) { + results.push( elem ); + return results; + } + } + + // Speed-up: Sizzle("TAG") + } else if ( match[2] ) { + push.apply( results, slice.call(context.getElementsByTagName( selector ), 0) ); + return results; + + // Speed-up: Sizzle(".CLASS") + } else if ( (m = match[3]) && assertUsableClassName && context.getElementsByClassName ) { + push.apply( results, slice.call(context.getElementsByClassName( m ), 0) ); + return results; + } + } + } + + // All others + return select( selector.replace( rtrim, "$1" ), context, results, seed, xml ); +} + +Sizzle.matches = function( expr, elements ) { + return Sizzle( expr, null, null, elements ); +}; + +Sizzle.matchesSelector = function( elem, expr ) { + return Sizzle( expr, null, null, [ elem ] ).length > 0; +}; + +// Returns a function to use in pseudos for input types +function createInputPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === type; + }; +} + +// Returns a function to use in pseudos for buttons +function createButtonPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return (name === "input" || name === "button") && elem.type === type; + }; +} + +// Returns a function to use in pseudos for positionals +function createPositionalPseudo( fn ) { + return markFunction(function( argument ) { + argument = +argument; + return markFunction(function( seed, matches ) { + var j, + matchIndexes = fn( [], seed.length, argument ), + i = matchIndexes.length; + + // Match elements found at the specified indexes + while ( i-- ) { + if ( seed[ (j = matchIndexes[i]) ] ) { + seed[j] = !(matches[j] = seed[j]); + } + } + }); + }); +} + +/** + * Utility function for retrieving the text value of an array of DOM nodes + * @param {Array|Element} elem + */ +getText = Sizzle.getText = function( elem ) { + var node, + ret = "", + i = 0, + nodeType = elem.nodeType; + + if ( nodeType ) { + if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { + // Use textContent for elements + // innerText usage removed for consistency of new lines (see #11153) + if ( typeof elem.textContent === "string" ) { + return elem.textContent; + } else { + // Traverse its children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + ret += getText( elem ); + } + } + } else if ( nodeType === 3 || nodeType === 4 ) { + return elem.nodeValue; + } + // Do not include comment or processing instruction nodes + } else { + + // If no nodeType, this is expected to be an array + for ( ; (node = elem[i]); i++ ) { + // Do not traverse comment nodes + ret += getText( node ); + } + } + return ret; +}; + +isXML = Sizzle.isXML = function( elem ) { + // documentElement is verified for cases where it doesn't yet exist + // (such as loading iframes in IE - #4833) + var documentElement = elem && (elem.ownerDocument || elem).documentElement; + return documentElement ? documentElement.nodeName !== "HTML" : false; +}; + +// Element contains another +contains = Sizzle.contains = docElem.contains ? + function( a, b ) { + var adown = a.nodeType === 9 ? a.documentElement : a, + bup = b && b.parentNode; + return a === bup || !!( bup && bup.nodeType === 1 && adown.contains && adown.contains(bup) ); + } : + docElem.compareDocumentPosition ? + function( a, b ) { + return b && !!( a.compareDocumentPosition( b ) & 16 ); + } : + function( a, b ) { + while ( (b = b.parentNode) ) { + if ( b === a ) { + return true; + } + } + return false; + }; + +Sizzle.attr = function( elem, name ) { + var val, + xml = isXML( elem ); + + if ( !xml ) { + name = name.toLowerCase(); + } + if ( (val = Expr.attrHandle[ name ]) ) { + return val( elem ); + } + if ( xml || assertAttributes ) { + return elem.getAttribute( name ); + } + val = elem.getAttributeNode( name ); + return val ? + typeof elem[ name ] === "boolean" ? + elem[ name ] ? name : null : + val.specified ? val.value : null : + null; +}; + +Expr = Sizzle.selectors = { + + // Can be adjusted by the user + cacheLength: 50, + + createPseudo: markFunction, + + match: matchExpr, + + // IE6/7 return a modified href + attrHandle: assertHrefNotNormalized ? + {} : + { + "href": function( elem ) { + return elem.getAttribute( "href", 2 ); + }, + "type": function( elem ) { + return elem.getAttribute("type"); + } + }, + + find: { + "ID": assertGetIdNotName ? + function( id, context, xml ) { + if ( typeof context.getElementById !== strundefined && !xml ) { + var m = context.getElementById( id ); + // Check parentNode to catch when Blackberry 4.6 returns + // nodes that are no longer in the document #6963 + return m && m.parentNode ? [m] : []; + } + } : + function( id, context, xml ) { + if ( typeof context.getElementById !== strundefined && !xml ) { + var m = context.getElementById( id ); + + return m ? + m.id === id || typeof m.getAttributeNode !== strundefined && m.getAttributeNode("id").value === id ? + [m] : + undefined : + []; + } + }, + + "TAG": assertTagNameNoComments ? + function( tag, context ) { + if ( typeof context.getElementsByTagName !== strundefined ) { + return context.getElementsByTagName( tag ); + } + } : + function( tag, context ) { + var results = context.getElementsByTagName( tag ); + + // Filter out possible comments + if ( tag === "*" ) { + var elem, + tmp = [], + i = 0; + + for ( ; (elem = results[i]); i++ ) { + if ( elem.nodeType === 1 ) { + tmp.push( elem ); + } + } + + return tmp; + } + return results; + }, + + "NAME": assertUsableName && function( tag, context ) { + if ( typeof context.getElementsByName !== strundefined ) { + return context.getElementsByName( name ); + } + }, + + "CLASS": assertUsableClassName && function( className, context, xml ) { + if ( typeof context.getElementsByClassName !== strundefined && !xml ) { + return context.getElementsByClassName( className ); + } + } + }, + + relative: { + ">": { dir: "parentNode", first: true }, + " ": { dir: "parentNode" }, + "+": { dir: "previousSibling", first: true }, + "~": { dir: "previousSibling" } + }, + + preFilter: { + "ATTR": function( match ) { + match[1] = match[1].replace( rbackslash, "" ); + + // Move the given value to match[3] whether quoted or unquoted + match[3] = ( match[4] || match[5] || "" ).replace( rbackslash, "" ); + + if ( match[2] === "~=" ) { + match[3] = " " + match[3] + " "; + } + + return match.slice( 0, 4 ); + }, + + "CHILD": function( match ) { + /* matches from matchExpr["CHILD"] + 1 type (only|nth|...) + 2 argument (even|odd|\d*|\d*n([+-]\d+)?|...) + 3 xn-component of xn+y argument ([+-]?\d*n|) + 4 sign of xn-component + 5 x of xn-component + 6 sign of y-component + 7 y of y-component + */ + match[1] = match[1].toLowerCase(); + + if ( match[1] === "nth" ) { + // nth-child requires argument + if ( !match[2] ) { + Sizzle.error( match[0] ); + } + + // numeric x and y parameters for Expr.filter.CHILD + // remember that false/true cast respectively to 0/1 + match[3] = +( match[3] ? match[4] + (match[5] || 1) : 2 * ( match[2] === "even" || match[2] === "odd" ) ); + match[4] = +( ( match[6] + match[7] ) || match[2] === "odd" ); + + // other types prohibit arguments + } else if ( match[2] ) { + Sizzle.error( match[0] ); + } + + return match; + }, + + "PSEUDO": function( match ) { + var unquoted, excess; + if ( matchExpr["CHILD"].test( match[0] ) ) { + return null; + } + + if ( match[3] ) { + match[2] = match[3]; + } else if ( (unquoted = match[4]) ) { + // Only check arguments that contain a pseudo + if ( rpseudo.test(unquoted) && + // Get excess from tokenize (recursively) + (excess = tokenize( unquoted, true )) && + // advance to the next closing parenthesis + (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) { + + // excess is a negative index + unquoted = unquoted.slice( 0, excess ); + match[0] = match[0].slice( 0, excess ); + } + match[2] = unquoted; + } + + // Return only captures needed by the pseudo filter method (type and argument) + return match.slice( 0, 3 ); + } + }, + + filter: { + "ID": assertGetIdNotName ? + function( id ) { + id = id.replace( rbackslash, "" ); + return function( elem ) { + return elem.getAttribute("id") === id; + }; + } : + function( id ) { + id = id.replace( rbackslash, "" ); + return function( elem ) { + var node = typeof elem.getAttributeNode !== strundefined && elem.getAttributeNode("id"); + return node && node.value === id; + }; + }, + + "TAG": function( nodeName ) { + if ( nodeName === "*" ) { + return function() { return true; }; + } + nodeName = nodeName.replace( rbackslash, "" ).toLowerCase(); + + return function( elem ) { + return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; + }; + }, + + "CLASS": function( className ) { + var pattern = classCache[ expando ][ className + " " ]; + + return pattern || + (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) && + classCache( className, function( elem ) { + return pattern.test( elem.className || (typeof elem.getAttribute !== strundefined && elem.getAttribute("class")) || "" ); + }); + }, + + "ATTR": function( name, operator, check ) { + return function( elem, context ) { + var result = Sizzle.attr( elem, name ); + + if ( result == null ) { + return operator === "!="; + } + if ( !operator ) { + return true; + } + + result += ""; + + return operator === "=" ? result === check : + operator === "!=" ? result !== check : + operator === "^=" ? check && result.indexOf( check ) === 0 : + operator === "*=" ? check && result.indexOf( check ) > -1 : + operator === "$=" ? check && result.substr( result.length - check.length ) === check : + operator === "~=" ? ( " " + result + " " ).indexOf( check ) > -1 : + operator === "|=" ? result === check || result.substr( 0, check.length + 1 ) === check + "-" : + false; + }; + }, + + "CHILD": function( type, argument, first, last ) { + + if ( type === "nth" ) { + return function( elem ) { + var node, diff, + parent = elem.parentNode; + + if ( first === 1 && last === 0 ) { + return true; + } + + if ( parent ) { + diff = 0; + for ( node = parent.firstChild; node; node = node.nextSibling ) { + if ( node.nodeType === 1 ) { + diff++; + if ( elem === node ) { + break; + } + } + } + } + + // Incorporate the offset (or cast to NaN), then check against cycle size + diff -= last; + return diff === first || ( diff % first === 0 && diff / first >= 0 ); + }; + } + + return function( elem ) { + var node = elem; + + switch ( type ) { + case "only": + case "first": + while ( (node = node.previousSibling) ) { + if ( node.nodeType === 1 ) { + return false; + } + } + + if ( type === "first" ) { + return true; + } + + node = elem; + + /* falls through */ + case "last": + while ( (node = node.nextSibling) ) { + if ( node.nodeType === 1 ) { + return false; + } + } + + return true; + } + }; + }, + + "PSEUDO": function( pseudo, argument ) { + // pseudo-class names are case-insensitive + // http://www.w3.org/TR/selectors/#pseudo-classes + // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters + // Remember that setFilters inherits from pseudos + var args, + fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || + Sizzle.error( "unsupported pseudo: " + pseudo ); + + // The user may use createPseudo to indicate that + // arguments are needed to create the filter function + // just as Sizzle does + if ( fn[ expando ] ) { + return fn( argument ); + } + + // But maintain support for old signatures + if ( fn.length > 1 ) { + args = [ pseudo, pseudo, "", argument ]; + return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? + markFunction(function( seed, matches ) { + var idx, + matched = fn( seed, argument ), + i = matched.length; + while ( i-- ) { + idx = indexOf.call( seed, matched[i] ); + seed[ idx ] = !( matches[ idx ] = matched[i] ); + } + }) : + function( elem ) { + return fn( elem, 0, args ); + }; + } + + return fn; + } + }, + + pseudos: { + "not": markFunction(function( selector ) { + // Trim the selector passed to compile + // to avoid treating leading and trailing + // spaces as combinators + var input = [], + results = [], + matcher = compile( selector.replace( rtrim, "$1" ) ); + + return matcher[ expando ] ? + markFunction(function( seed, matches, context, xml ) { + var elem, + unmatched = matcher( seed, null, xml, [] ), + i = seed.length; + + // Match elements unmatched by `matcher` + while ( i-- ) { + if ( (elem = unmatched[i]) ) { + seed[i] = !(matches[i] = elem); + } + } + }) : + function( elem, context, xml ) { + input[0] = elem; + matcher( input, null, xml, results ); + return !results.pop(); + }; + }), + + "has": markFunction(function( selector ) { + return function( elem ) { + return Sizzle( selector, elem ).length > 0; + }; + }), + + "contains": markFunction(function( text ) { + return function( elem ) { + return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1; + }; + }), + + "enabled": function( elem ) { + return elem.disabled === false; + }, + + "disabled": function( elem ) { + return elem.disabled === true; + }, + + "checked": function( elem ) { + // In CSS3, :checked should return both checked and selected elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + var nodeName = elem.nodeName.toLowerCase(); + return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected); + }, + + "selected": function( elem ) { + // Accessing this property makes selected-by-default + // options in Safari work properly + if ( elem.parentNode ) { + elem.parentNode.selectedIndex; + } + + return elem.selected === true; + }, + + "parent": function( elem ) { + return !Expr.pseudos["empty"]( elem ); + }, + + "empty": function( elem ) { + // http://www.w3.org/TR/selectors/#empty-pseudo + // :empty is only affected by element nodes and content nodes(including text(3), cdata(4)), + // not comment, processing instructions, or others + // Thanks to Diego Perini for the nodeName shortcut + // Greater than "@" means alpha characters (specifically not starting with "#" or "?") + var nodeType; + elem = elem.firstChild; + while ( elem ) { + if ( elem.nodeName > "@" || (nodeType = elem.nodeType) === 3 || nodeType === 4 ) { + return false; + } + elem = elem.nextSibling; + } + return true; + }, + + "header": function( elem ) { + return rheader.test( elem.nodeName ); + }, + + "text": function( elem ) { + var type, attr; + // IE6 and 7 will map elem.type to 'text' for new HTML5 types (search, etc) + // use getAttribute instead to test this case + return elem.nodeName.toLowerCase() === "input" && + (type = elem.type) === "text" && + ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === type ); + }, + + // Input types + "radio": createInputPseudo("radio"), + "checkbox": createInputPseudo("checkbox"), + "file": createInputPseudo("file"), + "password": createInputPseudo("password"), + "image": createInputPseudo("image"), + + "submit": createButtonPseudo("submit"), + "reset": createButtonPseudo("reset"), + + "button": function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === "button" || name === "button"; + }, + + "input": function( elem ) { + return rinputs.test( elem.nodeName ); + }, + + "focus": function( elem ) { + var doc = elem.ownerDocument; + return elem === doc.activeElement && (!doc.hasFocus || doc.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex); + }, + + "active": function( elem ) { + return elem === elem.ownerDocument.activeElement; + }, + + // Positional types + "first": createPositionalPseudo(function() { + return [ 0 ]; + }), + + "last": createPositionalPseudo(function( matchIndexes, length ) { + return [ length - 1 ]; + }), + + "eq": createPositionalPseudo(function( matchIndexes, length, argument ) { + return [ argument < 0 ? argument + length : argument ]; + }), + + "even": createPositionalPseudo(function( matchIndexes, length ) { + for ( var i = 0; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + }), + + "odd": createPositionalPseudo(function( matchIndexes, length ) { + for ( var i = 1; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + }), + + "lt": createPositionalPseudo(function( matchIndexes, length, argument ) { + for ( var i = argument < 0 ? argument + length : argument; --i >= 0; ) { + matchIndexes.push( i ); + } + return matchIndexes; + }), + + "gt": createPositionalPseudo(function( matchIndexes, length, argument ) { + for ( var i = argument < 0 ? argument + length : argument; ++i < length; ) { + matchIndexes.push( i ); + } + return matchIndexes; + }) + } +}; + +function siblingCheck( a, b, ret ) { + if ( a === b ) { + return ret; + } + + var cur = a.nextSibling; + + while ( cur ) { + if ( cur === b ) { + return -1; + } + + cur = cur.nextSibling; + } + + return 1; +} + +sortOrder = docElem.compareDocumentPosition ? + function( a, b ) { + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + return ( !a.compareDocumentPosition || !b.compareDocumentPosition ? + a.compareDocumentPosition : + a.compareDocumentPosition(b) & 4 + ) ? -1 : 1; + } : + function( a, b ) { + // The nodes are identical, we can exit early + if ( a === b ) { + hasDuplicate = true; + return 0; + + // Fallback to using sourceIndex (in IE) if it's available on both nodes + } else if ( a.sourceIndex && b.sourceIndex ) { + return a.sourceIndex - b.sourceIndex; + } + + var al, bl, + ap = [], + bp = [], + aup = a.parentNode, + bup = b.parentNode, + cur = aup; + + // If the nodes are siblings (or identical) we can do a quick check + if ( aup === bup ) { + return siblingCheck( a, b ); + + // If no parents were found then the nodes are disconnected + } else if ( !aup ) { + return -1; + + } else if ( !bup ) { + return 1; + } + + // Otherwise they're somewhere else in the tree so we need + // to build up a full list of the parentNodes for comparison + while ( cur ) { + ap.unshift( cur ); + cur = cur.parentNode; + } + + cur = bup; + + while ( cur ) { + bp.unshift( cur ); + cur = cur.parentNode; + } + + al = ap.length; + bl = bp.length; + + // Start walking down the tree looking for a discrepancy + for ( var i = 0; i < al && i < bl; i++ ) { + if ( ap[i] !== bp[i] ) { + return siblingCheck( ap[i], bp[i] ); + } + } + + // We ended someplace up the tree so do a sibling check + return i === al ? + siblingCheck( a, bp[i], -1 ) : + siblingCheck( ap[i], b, 1 ); + }; + +// Always assume the presence of duplicates if sort doesn't +// pass them to our comparison function (as in Google Chrome). +[0, 0].sort( sortOrder ); +baseHasDuplicate = !hasDuplicate; + +// Document sorting and removing duplicates +Sizzle.uniqueSort = function( results ) { + var elem, + duplicates = [], + i = 1, + j = 0; + + hasDuplicate = baseHasDuplicate; + results.sort( sortOrder ); + + if ( hasDuplicate ) { + for ( ; (elem = results[i]); i++ ) { + if ( elem === results[ i - 1 ] ) { + j = duplicates.push( i ); + } + } + while ( j-- ) { + results.splice( duplicates[ j ], 1 ); + } + } + + return results; +}; + +Sizzle.error = function( msg ) { + throw new Error( "Syntax error, unrecognized expression: " + msg ); +}; + +function tokenize( selector, parseOnly ) { + var matched, match, tokens, type, + soFar, groups, preFilters, + cached = tokenCache[ expando ][ selector + " " ]; + + if ( cached ) { + return parseOnly ? 0 : cached.slice( 0 ); + } + + soFar = selector; + groups = []; + preFilters = Expr.preFilter; + + while ( soFar ) { + + // Comma and first run + if ( !matched || (match = rcomma.exec( soFar )) ) { + if ( match ) { + // Don't consume trailing commas as valid + soFar = soFar.slice( match[0].length ) || soFar; + } + groups.push( tokens = [] ); + } + + matched = false; + + // Combinators + if ( (match = rcombinators.exec( soFar )) ) { + tokens.push( matched = new Token( match.shift() ) ); + soFar = soFar.slice( matched.length ); + + // Cast descendant combinators to space + matched.type = match[0].replace( rtrim, " " ); + } + + // Filters + for ( type in Expr.filter ) { + if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] || + (match = preFilters[ type ]( match ))) ) { + + tokens.push( matched = new Token( match.shift() ) ); + soFar = soFar.slice( matched.length ); + matched.type = type; + matched.matches = match; + } + } + + if ( !matched ) { + break; + } + } + + // Return the length of the invalid excess + // if we're just parsing + // Otherwise, throw an error or return tokens + return parseOnly ? + soFar.length : + soFar ? + Sizzle.error( selector ) : + // Cache the tokens + tokenCache( selector, groups ).slice( 0 ); +} + +function addCombinator( matcher, combinator, base ) { + var dir = combinator.dir, + checkNonElements = base && combinator.dir === "parentNode", + doneName = done++; + + return combinator.first ? + // Check against closest ancestor/preceding element + function( elem, context, xml ) { + while ( (elem = elem[ dir ]) ) { + if ( checkNonElements || elem.nodeType === 1 ) { + return matcher( elem, context, xml ); + } + } + } : + + // Check against all ancestor/preceding elements + function( elem, context, xml ) { + // We can't set arbitrary data on XML nodes, so they don't benefit from dir caching + if ( !xml ) { + var cache, + dirkey = dirruns + " " + doneName + " ", + cachedkey = dirkey + cachedruns; + while ( (elem = elem[ dir ]) ) { + if ( checkNonElements || elem.nodeType === 1 ) { + if ( (cache = elem[ expando ]) === cachedkey ) { + return elem.sizset; + } else if ( typeof cache === "string" && cache.indexOf(dirkey) === 0 ) { + if ( elem.sizset ) { + return elem; + } + } else { + elem[ expando ] = cachedkey; + if ( matcher( elem, context, xml ) ) { + elem.sizset = true; + return elem; + } + elem.sizset = false; + } + } + } + } else { + while ( (elem = elem[ dir ]) ) { + if ( checkNonElements || elem.nodeType === 1 ) { + if ( matcher( elem, context, xml ) ) { + return elem; + } + } + } + } + }; +} + +function elementMatcher( matchers ) { + return matchers.length > 1 ? + function( elem, context, xml ) { + var i = matchers.length; + while ( i-- ) { + if ( !matchers[i]( elem, context, xml ) ) { + return false; + } + } + return true; + } : + matchers[0]; +} + +function condense( unmatched, map, filter, context, xml ) { + var elem, + newUnmatched = [], + i = 0, + len = unmatched.length, + mapped = map != null; + + for ( ; i < len; i++ ) { + if ( (elem = unmatched[i]) ) { + if ( !filter || filter( elem, context, xml ) ) { + newUnmatched.push( elem ); + if ( mapped ) { + map.push( i ); + } + } + } + } + + return newUnmatched; +} + +function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { + if ( postFilter && !postFilter[ expando ] ) { + postFilter = setMatcher( postFilter ); + } + if ( postFinder && !postFinder[ expando ] ) { + postFinder = setMatcher( postFinder, postSelector ); + } + return markFunction(function( seed, results, context, xml ) { + var temp, i, elem, + preMap = [], + postMap = [], + preexisting = results.length, + + // Get initial elements from seed or context + elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ), + + // Prefilter to get matcher input, preserving a map for seed-results synchronization + matcherIn = preFilter && ( seed || !selector ) ? + condense( elems, preMap, preFilter, context, xml ) : + elems, + + matcherOut = matcher ? + // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, + postFinder || ( seed ? preFilter : preexisting || postFilter ) ? + + // ...intermediate processing is necessary + [] : + + // ...otherwise use results directly + results : + matcherIn; + + // Find primary matches + if ( matcher ) { + matcher( matcherIn, matcherOut, context, xml ); + } + + // Apply postFilter + if ( postFilter ) { + temp = condense( matcherOut, postMap ); + postFilter( temp, [], context, xml ); + + // Un-match failing elements by moving them back to matcherIn + i = temp.length; + while ( i-- ) { + if ( (elem = temp[i]) ) { + matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem); + } + } + } + + if ( seed ) { + if ( postFinder || preFilter ) { + if ( postFinder ) { + // Get the final matcherOut by condensing this intermediate into postFinder contexts + temp = []; + i = matcherOut.length; + while ( i-- ) { + if ( (elem = matcherOut[i]) ) { + // Restore matcherIn since elem is not yet a final match + temp.push( (matcherIn[i] = elem) ); + } + } + postFinder( null, (matcherOut = []), temp, xml ); + } + + // Move matched elements from seed to results to keep them synchronized + i = matcherOut.length; + while ( i-- ) { + if ( (elem = matcherOut[i]) && + (temp = postFinder ? indexOf.call( seed, elem ) : preMap[i]) > -1 ) { + + seed[temp] = !(results[temp] = elem); + } + } + } + + // Add elements to results, through postFinder if defined + } else { + matcherOut = condense( + matcherOut === results ? + matcherOut.splice( preexisting, matcherOut.length ) : + matcherOut + ); + if ( postFinder ) { + postFinder( null, results, matcherOut, xml ); + } else { + push.apply( results, matcherOut ); + } + } + }); +} + +function matcherFromTokens( tokens ) { + var checkContext, matcher, j, + len = tokens.length, + leadingRelative = Expr.relative[ tokens[0].type ], + implicitRelative = leadingRelative || Expr.relative[" "], + i = leadingRelative ? 1 : 0, + + // The foundational matcher ensures that elements are reachable from top-level context(s) + matchContext = addCombinator( function( elem ) { + return elem === checkContext; + }, implicitRelative, true ), + matchAnyContext = addCombinator( function( elem ) { + return indexOf.call( checkContext, elem ) > -1; + }, implicitRelative, true ), + matchers = [ function( elem, context, xml ) { + return ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( + (checkContext = context).nodeType ? + matchContext( elem, context, xml ) : + matchAnyContext( elem, context, xml ) ); + } ]; + + for ( ; i < len; i++ ) { + if ( (matcher = Expr.relative[ tokens[i].type ]) ) { + matchers = [ addCombinator( elementMatcher( matchers ), matcher ) ]; + } else { + matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches ); + + // Return special upon seeing a positional matcher + if ( matcher[ expando ] ) { + // Find the next relative operator (if any) for proper handling + j = ++i; + for ( ; j < len; j++ ) { + if ( Expr.relative[ tokens[j].type ] ) { + break; + } + } + return setMatcher( + i > 1 && elementMatcher( matchers ), + i > 1 && tokens.slice( 0, i - 1 ).join("").replace( rtrim, "$1" ), + matcher, + i < j && matcherFromTokens( tokens.slice( i, j ) ), + j < len && matcherFromTokens( (tokens = tokens.slice( j )) ), + j < len && tokens.join("") + ); + } + matchers.push( matcher ); + } + } + + return elementMatcher( matchers ); +} + +function matcherFromGroupMatchers( elementMatchers, setMatchers ) { + var bySet = setMatchers.length > 0, + byElement = elementMatchers.length > 0, + superMatcher = function( seed, context, xml, results, expandContext ) { + var elem, j, matcher, + setMatched = [], + matchedCount = 0, + i = "0", + unmatched = seed && [], + outermost = expandContext != null, + contextBackup = outermostContext, + // We must always have either seed elements or context + elems = seed || byElement && Expr.find["TAG"]( "*", expandContext && context.parentNode || context ), + // Nested matchers should use non-integer dirruns + dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.E); + + if ( outermost ) { + outermostContext = context !== document && context; + cachedruns = superMatcher.el; + } + + // Add elements passing elementMatchers directly to results + for ( ; (elem = elems[i]) != null; i++ ) { + if ( byElement && elem ) { + for ( j = 0; (matcher = elementMatchers[j]); j++ ) { + if ( matcher( elem, context, xml ) ) { + results.push( elem ); + break; + } + } + if ( outermost ) { + dirruns = dirrunsUnique; + cachedruns = ++superMatcher.el; + } + } + + // Track unmatched elements for set filters + if ( bySet ) { + // They will have gone through all possible matchers + if ( (elem = !matcher && elem) ) { + matchedCount--; + } + + // Lengthen the array for every element, matched or not + if ( seed ) { + unmatched.push( elem ); + } + } + } + + // Apply set filters to unmatched elements + matchedCount += i; + if ( bySet && i !== matchedCount ) { + for ( j = 0; (matcher = setMatchers[j]); j++ ) { + matcher( unmatched, setMatched, context, xml ); + } + + if ( seed ) { + // Reintegrate element matches to eliminate the need for sorting + if ( matchedCount > 0 ) { + while ( i-- ) { + if ( !(unmatched[i] || setMatched[i]) ) { + setMatched[i] = pop.call( results ); + } + } + } + + // Discard index placeholder values to get only actual matches + setMatched = condense( setMatched ); + } + + // Add matches to results + push.apply( results, setMatched ); + + // Seedless set matches succeeding multiple successful matchers stipulate sorting + if ( outermost && !seed && setMatched.length > 0 && + ( matchedCount + setMatchers.length ) > 1 ) { + + Sizzle.uniqueSort( results ); + } + } + + // Override manipulation of globals by nested matchers + if ( outermost ) { + dirruns = dirrunsUnique; + outermostContext = contextBackup; + } + + return unmatched; + }; + + superMatcher.el = 0; + return bySet ? + markFunction( superMatcher ) : + superMatcher; +} + +compile = Sizzle.compile = function( selector, group /* Internal Use Only */ ) { + var i, + setMatchers = [], + elementMatchers = [], + cached = compilerCache[ expando ][ selector + " " ]; + + if ( !cached ) { + // Generate a function of recursive functions that can be used to check each element + if ( !group ) { + group = tokenize( selector ); + } + i = group.length; + while ( i-- ) { + cached = matcherFromTokens( group[i] ); + if ( cached[ expando ] ) { + setMatchers.push( cached ); + } else { + elementMatchers.push( cached ); + } + } + + // Cache the compiled function + cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) ); + } + return cached; +}; + +function multipleContexts( selector, contexts, results ) { + var i = 0, + len = contexts.length; + for ( ; i < len; i++ ) { + Sizzle( selector, contexts[i], results ); + } + return results; +} + +function select( selector, context, results, seed, xml ) { + var i, tokens, token, type, find, + match = tokenize( selector ), + j = match.length; + + if ( !seed ) { + // Try to minimize operations if there is only one group + if ( match.length === 1 ) { + + // Take a shortcut and set the context if the root selector is an ID + tokens = match[0] = match[0].slice( 0 ); + if ( tokens.length > 2 && (token = tokens[0]).type === "ID" && + context.nodeType === 9 && !xml && + Expr.relative[ tokens[1].type ] ) { + + context = Expr.find["ID"]( token.matches[0].replace( rbackslash, "" ), context, xml )[0]; + if ( !context ) { + return results; + } + + selector = selector.slice( tokens.shift().length ); + } + + // Fetch a seed set for right-to-left matching + for ( i = matchExpr["POS"].test( selector ) ? -1 : tokens.length - 1; i >= 0; i-- ) { + token = tokens[i]; + + // Abort if we hit a combinator + if ( Expr.relative[ (type = token.type) ] ) { + break; + } + if ( (find = Expr.find[ type ]) ) { + // Search, expanding context for leading sibling combinators + if ( (seed = find( + token.matches[0].replace( rbackslash, "" ), + rsibling.test( tokens[0].type ) && context.parentNode || context, + xml + )) ) { + + // If seed is empty or no tokens remain, we can return early + tokens.splice( i, 1 ); + selector = seed.length && tokens.join(""); + if ( !selector ) { + push.apply( results, slice.call( seed, 0 ) ); + return results; + } + + break; + } + } + } + } + } + + // Compile and execute a filtering function + // Provide `match` to avoid retokenization if we modified the selector above + compile( selector, match )( + seed, + context, + xml, + results, + rsibling.test( selector ) + ); + return results; +} + +if ( document.querySelectorAll ) { + (function() { + var disconnectedMatch, + oldSelect = select, + rescape = /'|\\/g, + rattributeQuotes = /\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g, + + // qSa(:focus) reports false when true (Chrome 21), no need to also add to buggyMatches since matches checks buggyQSA + // A support test would require too much code (would include document ready) + rbuggyQSA = [ ":focus" ], + + // matchesSelector(:active) reports false when true (IE9/Opera 11.5) + // A support test would require too much code (would include document ready) + // just skip matchesSelector for :active + rbuggyMatches = [ ":active" ], + matches = docElem.matchesSelector || + docElem.mozMatchesSelector || + docElem.webkitMatchesSelector || + docElem.oMatchesSelector || + docElem.msMatchesSelector; + + // Build QSA regex + // Regex strategy adopted from Diego Perini + assert(function( div ) { + // Select is set to empty string on purpose + // This is to test IE's treatment of not explictly + // setting a boolean content attribute, + // since its presence should be enough + // http://bugs.jquery.com/ticket/12359 + div.innerHTML = ""; + + // IE8 - Some boolean attributes are not treated correctly + if ( !div.querySelectorAll("[selected]").length ) { + rbuggyQSA.push( "\\[" + whitespace + "*(?:checked|disabled|ismap|multiple|readonly|selected|value)" ); + } + + // Webkit/Opera - :checked should return selected option elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + // IE8 throws error here (do not put tests after this one) + if ( !div.querySelectorAll(":checked").length ) { + rbuggyQSA.push(":checked"); + } + }); + + assert(function( div ) { + + // Opera 10-12/IE9 - ^= $= *= and empty values + // Should not select anything + div.innerHTML = "

    "; + if ( div.querySelectorAll("[test^='']").length ) { + rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:\"\"|'')" ); + } + + // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) + // IE8 throws error here (do not put tests after this one) + div.innerHTML = ""; + if ( !div.querySelectorAll(":enabled").length ) { + rbuggyQSA.push(":enabled", ":disabled"); + } + }); + + // rbuggyQSA always contains :focus, so no need for a length check + rbuggyQSA = /* rbuggyQSA.length && */ new RegExp( rbuggyQSA.join("|") ); + + select = function( selector, context, results, seed, xml ) { + // Only use querySelectorAll when not filtering, + // when this is not xml, + // and when no QSA bugs apply + if ( !seed && !xml && !rbuggyQSA.test( selector ) ) { + var groups, i, + old = true, + nid = expando, + newContext = context, + newSelector = context.nodeType === 9 && selector; + + // qSA works strangely on Element-rooted queries + // We can work around this by specifying an extra ID on the root + // and working up from there (Thanks to Andrew Dupont for the technique) + // IE 8 doesn't work on object elements + if ( context.nodeType === 1 && context.nodeName.toLowerCase() !== "object" ) { + groups = tokenize( selector ); + + if ( (old = context.getAttribute("id")) ) { + nid = old.replace( rescape, "\\$&" ); + } else { + context.setAttribute( "id", nid ); + } + nid = "[id='" + nid + "'] "; + + i = groups.length; + while ( i-- ) { + groups[i] = nid + groups[i].join(""); + } + newContext = rsibling.test( selector ) && context.parentNode || context; + newSelector = groups.join(","); + } + + if ( newSelector ) { + try { + push.apply( results, slice.call( newContext.querySelectorAll( + newSelector + ), 0 ) ); + return results; + } catch(qsaError) { + } finally { + if ( !old ) { + context.removeAttribute("id"); + } + } + } + } + + return oldSelect( selector, context, results, seed, xml ); + }; + + if ( matches ) { + assert(function( div ) { + // Check to see if it's possible to do matchesSelector + // on a disconnected node (IE 9) + disconnectedMatch = matches.call( div, "div" ); + + // This should fail with an exception + // Gecko does not error, returns false instead + try { + matches.call( div, "[test!='']:sizzle" ); + rbuggyMatches.push( "!=", pseudos ); + } catch ( e ) {} + }); + + // rbuggyMatches always contains :active and :focus, so no need for a length check + rbuggyMatches = /* rbuggyMatches.length && */ new RegExp( rbuggyMatches.join("|") ); + + Sizzle.matchesSelector = function( elem, expr ) { + // Make sure that attribute selectors are quoted + expr = expr.replace( rattributeQuotes, "='$1']" ); + + // rbuggyMatches always contains :active, so no need for an existence check + if ( !isXML( elem ) && !rbuggyMatches.test( expr ) && !rbuggyQSA.test( expr ) ) { + try { + var ret = matches.call( elem, expr ); + + // IE 9's matchesSelector returns false on disconnected nodes + if ( ret || disconnectedMatch || + // As well, disconnected nodes are said to be in a document + // fragment in IE 9 + elem.document && elem.document.nodeType !== 11 ) { + return ret; + } + } catch(e) {} + } + + return Sizzle( expr, null, null, [ elem ] ).length > 0; + }; + } + })(); +} + +// Deprecated +Expr.pseudos["nth"] = Expr.pseudos["eq"]; + +// Back-compat +function setFilters() {} +Expr.filters = setFilters.prototype = Expr.pseudos; +Expr.setFilters = new setFilters(); + +// Override sizzle attribute retrieval +Sizzle.attr = jQuery.attr; +jQuery.find = Sizzle; +jQuery.expr = Sizzle.selectors; +jQuery.expr[":"] = jQuery.expr.pseudos; +jQuery.unique = Sizzle.uniqueSort; +jQuery.text = Sizzle.getText; +jQuery.isXMLDoc = Sizzle.isXML; +jQuery.contains = Sizzle.contains; + + +})( window ); +var runtil = /Until$/, + rparentsprev = /^(?:parents|prev(?:Until|All))/, + isSimple = /^.[^:#\[\.,]*$/, + rneedsContext = jQuery.expr.match.needsContext, + // methods guaranteed to produce a unique set when starting from a unique set + guaranteedUnique = { + children: true, + contents: true, + next: true, + prev: true + }; + +jQuery.fn.extend({ + find: function( selector ) { + var i, l, length, n, r, ret, + self = this; + + if ( typeof selector !== "string" ) { + return jQuery( selector ).filter(function() { + for ( i = 0, l = self.length; i < l; i++ ) { + if ( jQuery.contains( self[ i ], this ) ) { + return true; + } + } + }); + } + + ret = this.pushStack( "", "find", selector ); + + for ( i = 0, l = this.length; i < l; i++ ) { + length = ret.length; + jQuery.find( selector, this[i], ret ); + + if ( i > 0 ) { + // Make sure that the results are unique + for ( n = length; n < ret.length; n++ ) { + for ( r = 0; r < length; r++ ) { + if ( ret[r] === ret[n] ) { + ret.splice(n--, 1); + break; + } + } + } + } + } + + return ret; + }, + + has: function( target ) { + var i, + targets = jQuery( target, this ), + len = targets.length; + + return this.filter(function() { + for ( i = 0; i < len; i++ ) { + if ( jQuery.contains( this, targets[i] ) ) { + return true; + } + } + }); + }, + + not: function( selector ) { + return this.pushStack( winnow(this, selector, false), "not", selector); + }, + + filter: function( selector ) { + return this.pushStack( winnow(this, selector, true), "filter", selector ); + }, + + is: function( selector ) { + return !!selector && ( + typeof selector === "string" ? + // If this is a positional/relative selector, check membership in the returned set + // so $("p:first").is("p:last") won't return true for a doc with two "p". + rneedsContext.test( selector ) ? + jQuery( selector, this.context ).index( this[0] ) >= 0 : + jQuery.filter( selector, this ).length > 0 : + this.filter( selector ).length > 0 ); + }, + + closest: function( selectors, context ) { + var cur, + i = 0, + l = this.length, + ret = [], + pos = rneedsContext.test( selectors ) || typeof selectors !== "string" ? + jQuery( selectors, context || this.context ) : + 0; + + for ( ; i < l; i++ ) { + cur = this[i]; + + while ( cur && cur.ownerDocument && cur !== context && cur.nodeType !== 11 ) { + if ( pos ? pos.index(cur) > -1 : jQuery.find.matchesSelector(cur, selectors) ) { + ret.push( cur ); + break; + } + cur = cur.parentNode; + } + } + + ret = ret.length > 1 ? jQuery.unique( ret ) : ret; + + return this.pushStack( ret, "closest", selectors ); + }, + + // Determine the position of an element within + // the matched set of elements + index: function( elem ) { + + // No argument, return index in parent + if ( !elem ) { + return ( this[0] && this[0].parentNode ) ? this.prevAll().length : -1; + } + + // index in selector + if ( typeof elem === "string" ) { + return jQuery.inArray( this[0], jQuery( elem ) ); + } + + // Locate the position of the desired element + return jQuery.inArray( + // If it receives a jQuery object, the first element is used + elem.jquery ? elem[0] : elem, this ); + }, + + add: function( selector, context ) { + var set = typeof selector === "string" ? + jQuery( selector, context ) : + jQuery.makeArray( selector && selector.nodeType ? [ selector ] : selector ), + all = jQuery.merge( this.get(), set ); + + return this.pushStack( isDisconnected( set[0] ) || isDisconnected( all[0] ) ? + all : + jQuery.unique( all ) ); + }, + + addBack: function( selector ) { + return this.add( selector == null ? + this.prevObject : this.prevObject.filter(selector) + ); + } +}); + +jQuery.fn.andSelf = jQuery.fn.addBack; + +// A painfully simple check to see if an element is disconnected +// from a document (should be improved, where feasible). +function isDisconnected( node ) { + return !node || !node.parentNode || node.parentNode.nodeType === 11; +} + +function sibling( cur, dir ) { + do { + cur = cur[ dir ]; + } while ( cur && cur.nodeType !== 1 ); + + return cur; +} + +jQuery.each({ + parent: function( elem ) { + var parent = elem.parentNode; + return parent && parent.nodeType !== 11 ? parent : null; + }, + parents: function( elem ) { + return jQuery.dir( elem, "parentNode" ); + }, + parentsUntil: function( elem, i, until ) { + return jQuery.dir( elem, "parentNode", until ); + }, + next: function( elem ) { + return sibling( elem, "nextSibling" ); + }, + prev: function( elem ) { + return sibling( elem, "previousSibling" ); + }, + nextAll: function( elem ) { + return jQuery.dir( elem, "nextSibling" ); + }, + prevAll: function( elem ) { + return jQuery.dir( elem, "previousSibling" ); + }, + nextUntil: function( elem, i, until ) { + return jQuery.dir( elem, "nextSibling", until ); + }, + prevUntil: function( elem, i, until ) { + return jQuery.dir( elem, "previousSibling", until ); + }, + siblings: function( elem ) { + return jQuery.sibling( ( elem.parentNode || {} ).firstChild, elem ); + }, + children: function( elem ) { + return jQuery.sibling( elem.firstChild ); + }, + contents: function( elem ) { + return jQuery.nodeName( elem, "iframe" ) ? + elem.contentDocument || elem.contentWindow.document : + jQuery.merge( [], elem.childNodes ); + } +}, function( name, fn ) { + jQuery.fn[ name ] = function( until, selector ) { + var ret = jQuery.map( this, fn, until ); + + if ( !runtil.test( name ) ) { + selector = until; + } + + if ( selector && typeof selector === "string" ) { + ret = jQuery.filter( selector, ret ); + } + + ret = this.length > 1 && !guaranteedUnique[ name ] ? jQuery.unique( ret ) : ret; + + if ( this.length > 1 && rparentsprev.test( name ) ) { + ret = ret.reverse(); + } + + return this.pushStack( ret, name, core_slice.call( arguments ).join(",") ); + }; +}); + +jQuery.extend({ + filter: function( expr, elems, not ) { + if ( not ) { + expr = ":not(" + expr + ")"; + } + + return elems.length === 1 ? + jQuery.find.matchesSelector(elems[0], expr) ? [ elems[0] ] : [] : + jQuery.find.matches(expr, elems); + }, + + dir: function( elem, dir, until ) { + var matched = [], + cur = elem[ dir ]; + + while ( cur && cur.nodeType !== 9 && (until === undefined || cur.nodeType !== 1 || !jQuery( cur ).is( until )) ) { + if ( cur.nodeType === 1 ) { + matched.push( cur ); + } + cur = cur[dir]; + } + return matched; + }, + + sibling: function( n, elem ) { + var r = []; + + for ( ; n; n = n.nextSibling ) { + if ( n.nodeType === 1 && n !== elem ) { + r.push( n ); + } + } + + return r; + } +}); + +// Implement the identical functionality for filter and not +function winnow( elements, qualifier, keep ) { + + // Can't pass null or undefined to indexOf in Firefox 4 + // Set to 0 to skip string check + qualifier = qualifier || 0; + + if ( jQuery.isFunction( qualifier ) ) { + return jQuery.grep(elements, function( elem, i ) { + var retVal = !!qualifier.call( elem, i, elem ); + return retVal === keep; + }); + + } else if ( qualifier.nodeType ) { + return jQuery.grep(elements, function( elem, i ) { + return ( elem === qualifier ) === keep; + }); + + } else if ( typeof qualifier === "string" ) { + var filtered = jQuery.grep(elements, function( elem ) { + return elem.nodeType === 1; + }); + + if ( isSimple.test( qualifier ) ) { + return jQuery.filter(qualifier, filtered, !keep); + } else { + qualifier = jQuery.filter( qualifier, filtered ); + } + } + + return jQuery.grep(elements, function( elem, i ) { + return ( jQuery.inArray( elem, qualifier ) >= 0 ) === keep; + }); +} +function createSafeFragment( document ) { + var list = nodeNames.split( "|" ), + safeFrag = document.createDocumentFragment(); + + if ( safeFrag.createElement ) { + while ( list.length ) { + safeFrag.createElement( + list.pop() + ); + } + } + return safeFrag; +} + +var nodeNames = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|" + + "header|hgroup|mark|meter|nav|output|progress|section|summary|time|video", + rinlinejQuery = / jQuery\d+="(?:null|\d+)"/g, + rleadingWhitespace = /^\s+/, + rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, + rtagName = /<([\w:]+)/, + rtbody = /]", "i"), + rcheckableType = /^(?:checkbox|radio)$/, + // checked="checked" or checked + rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i, + rscriptType = /\/(java|ecma)script/i, + rcleanScript = /^\s*\s*$/g, + wrapMap = { + option: [ 1, "" ], + legend: [ 1, "
    ", "
    " ], + thead: [ 1, "", "
    " ], + tr: [ 2, "", "
    " ], + td: [ 3, "", "
    " ], + col: [ 2, "", "
    " ], + area: [ 1, "", "" ], + _default: [ 0, "", "" ] + }, + safeFragment = createSafeFragment( document ), + fragmentDiv = safeFragment.appendChild( document.createElement("div") ); + +wrapMap.optgroup = wrapMap.option; +wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; +wrapMap.th = wrapMap.td; + +// IE6-8 can't serialize link, script, style, or any html5 (NoScope) tags, +// unless wrapped in a div with non-breaking characters in front of it. +if ( !jQuery.support.htmlSerialize ) { + wrapMap._default = [ 1, "X
    ", "
    " ]; +} + +jQuery.fn.extend({ + text: function( value ) { + return jQuery.access( this, function( value ) { + return value === undefined ? + jQuery.text( this ) : + this.empty().append( ( this[0] && this[0].ownerDocument || document ).createTextNode( value ) ); + }, null, value, arguments.length ); + }, + + wrapAll: function( html ) { + if ( jQuery.isFunction( html ) ) { + return this.each(function(i) { + jQuery(this).wrapAll( html.call(this, i) ); + }); + } + + if ( this[0] ) { + // The elements to wrap the target around + var wrap = jQuery( html, this[0].ownerDocument ).eq(0).clone(true); + + if ( this[0].parentNode ) { + wrap.insertBefore( this[0] ); + } + + wrap.map(function() { + var elem = this; + + while ( elem.firstChild && elem.firstChild.nodeType === 1 ) { + elem = elem.firstChild; + } + + return elem; + }).append( this ); + } + + return this; + }, + + wrapInner: function( html ) { + if ( jQuery.isFunction( html ) ) { + return this.each(function(i) { + jQuery(this).wrapInner( html.call(this, i) ); + }); + } + + return this.each(function() { + var self = jQuery( this ), + contents = self.contents(); + + if ( contents.length ) { + contents.wrapAll( html ); + + } else { + self.append( html ); + } + }); + }, + + wrap: function( html ) { + var isFunction = jQuery.isFunction( html ); + + return this.each(function(i) { + jQuery( this ).wrapAll( isFunction ? html.call(this, i) : html ); + }); + }, + + unwrap: function() { + return this.parent().each(function() { + if ( !jQuery.nodeName( this, "body" ) ) { + jQuery( this ).replaceWith( this.childNodes ); + } + }).end(); + }, + + append: function() { + return this.domManip(arguments, true, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 ) { + this.appendChild( elem ); + } + }); + }, + + prepend: function() { + return this.domManip(arguments, true, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 ) { + this.insertBefore( elem, this.firstChild ); + } + }); + }, + + before: function() { + if ( !isDisconnected( this[0] ) ) { + return this.domManip(arguments, false, function( elem ) { + this.parentNode.insertBefore( elem, this ); + }); + } + + if ( arguments.length ) { + var set = jQuery.clean( arguments ); + return this.pushStack( jQuery.merge( set, this ), "before", this.selector ); + } + }, + + after: function() { + if ( !isDisconnected( this[0] ) ) { + return this.domManip(arguments, false, function( elem ) { + this.parentNode.insertBefore( elem, this.nextSibling ); + }); + } + + if ( arguments.length ) { + var set = jQuery.clean( arguments ); + return this.pushStack( jQuery.merge( this, set ), "after", this.selector ); + } + }, + + // keepData is for internal use only--do not document + remove: function( selector, keepData ) { + var elem, + i = 0; + + for ( ; (elem = this[i]) != null; i++ ) { + if ( !selector || jQuery.filter( selector, [ elem ] ).length ) { + if ( !keepData && elem.nodeType === 1 ) { + jQuery.cleanData( elem.getElementsByTagName("*") ); + jQuery.cleanData( [ elem ] ); + } + + if ( elem.parentNode ) { + elem.parentNode.removeChild( elem ); + } + } + } + + return this; + }, + + empty: function() { + var elem, + i = 0; + + for ( ; (elem = this[i]) != null; i++ ) { + // Remove element nodes and prevent memory leaks + if ( elem.nodeType === 1 ) { + jQuery.cleanData( elem.getElementsByTagName("*") ); + } + + // Remove any remaining nodes + while ( elem.firstChild ) { + elem.removeChild( elem.firstChild ); + } + } + + return this; + }, + + clone: function( dataAndEvents, deepDataAndEvents ) { + dataAndEvents = dataAndEvents == null ? false : dataAndEvents; + deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; + + return this.map( function () { + return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); + }); + }, + + html: function( value ) { + return jQuery.access( this, function( value ) { + var elem = this[0] || {}, + i = 0, + l = this.length; + + if ( value === undefined ) { + return elem.nodeType === 1 ? + elem.innerHTML.replace( rinlinejQuery, "" ) : + undefined; + } + + // See if we can take a shortcut and just use innerHTML + if ( typeof value === "string" && !rnoInnerhtml.test( value ) && + ( jQuery.support.htmlSerialize || !rnoshimcache.test( value ) ) && + ( jQuery.support.leadingWhitespace || !rleadingWhitespace.test( value ) ) && + !wrapMap[ ( rtagName.exec( value ) || ["", ""] )[1].toLowerCase() ] ) { + + value = value.replace( rxhtmlTag, "<$1>" ); + + try { + for (; i < l; i++ ) { + // Remove element nodes and prevent memory leaks + elem = this[i] || {}; + if ( elem.nodeType === 1 ) { + jQuery.cleanData( elem.getElementsByTagName( "*" ) ); + elem.innerHTML = value; + } + } + + elem = 0; + + // If using innerHTML throws an exception, use the fallback method + } catch(e) {} + } + + if ( elem ) { + this.empty().append( value ); + } + }, null, value, arguments.length ); + }, + + replaceWith: function( value ) { + if ( !isDisconnected( this[0] ) ) { + // Make sure that the elements are removed from the DOM before they are inserted + // this can help fix replacing a parent with child elements + if ( jQuery.isFunction( value ) ) { + return this.each(function(i) { + var self = jQuery(this), old = self.html(); + self.replaceWith( value.call( this, i, old ) ); + }); + } + + if ( typeof value !== "string" ) { + value = jQuery( value ).detach(); + } + + return this.each(function() { + var next = this.nextSibling, + parent = this.parentNode; + + jQuery( this ).remove(); + + if ( next ) { + jQuery(next).before( value ); + } else { + jQuery(parent).append( value ); + } + }); + } + + return this.length ? + this.pushStack( jQuery(jQuery.isFunction(value) ? value() : value), "replaceWith", value ) : + this; + }, + + detach: function( selector ) { + return this.remove( selector, true ); + }, + + domManip: function( args, table, callback ) { + + // Flatten any nested arrays + args = [].concat.apply( [], args ); + + var results, first, fragment, iNoClone, + i = 0, + value = args[0], + scripts = [], + l = this.length; + + // We can't cloneNode fragments that contain checked, in WebKit + if ( !jQuery.support.checkClone && l > 1 && typeof value === "string" && rchecked.test( value ) ) { + return this.each(function() { + jQuery(this).domManip( args, table, callback ); + }); + } + + if ( jQuery.isFunction(value) ) { + return this.each(function(i) { + var self = jQuery(this); + args[0] = value.call( this, i, table ? self.html() : undefined ); + self.domManip( args, table, callback ); + }); + } + + if ( this[0] ) { + results = jQuery.buildFragment( args, this, scripts ); + fragment = results.fragment; + first = fragment.firstChild; + + if ( fragment.childNodes.length === 1 ) { + fragment = first; + } + + if ( first ) { + table = table && jQuery.nodeName( first, "tr" ); + + // Use the original fragment for the last item instead of the first because it can end up + // being emptied incorrectly in certain situations (#8070). + // Fragments from the fragment cache must always be cloned and never used in place. + for ( iNoClone = results.cacheable || l - 1; i < l; i++ ) { + callback.call( + table && jQuery.nodeName( this[i], "table" ) ? + findOrAppend( this[i], "tbody" ) : + this[i], + i === iNoClone ? + fragment : + jQuery.clone( fragment, true, true ) + ); + } + } + + // Fix #11809: Avoid leaking memory + fragment = first = null; + + if ( scripts.length ) { + jQuery.each( scripts, function( i, elem ) { + if ( elem.src ) { + if ( jQuery.ajax ) { + jQuery.ajax({ + url: elem.src, + type: "GET", + dataType: "script", + async: false, + global: false, + "throws": true + }); + } else { + jQuery.error("no ajax"); + } + } else { + jQuery.globalEval( ( elem.text || elem.textContent || elem.innerHTML || "" ).replace( rcleanScript, "" ) ); + } + + if ( elem.parentNode ) { + elem.parentNode.removeChild( elem ); + } + }); + } + } + + return this; + } +}); + +function findOrAppend( elem, tag ) { + return elem.getElementsByTagName( tag )[0] || elem.appendChild( elem.ownerDocument.createElement( tag ) ); +} + +function cloneCopyEvent( src, dest ) { + + if ( dest.nodeType !== 1 || !jQuery.hasData( src ) ) { + return; + } + + var type, i, l, + oldData = jQuery._data( src ), + curData = jQuery._data( dest, oldData ), + events = oldData.events; + + if ( events ) { + delete curData.handle; + curData.events = {}; + + for ( type in events ) { + for ( i = 0, l = events[ type ].length; i < l; i++ ) { + jQuery.event.add( dest, type, events[ type ][ i ] ); + } + } + } + + // make the cloned public data object a copy from the original + if ( curData.data ) { + curData.data = jQuery.extend( {}, curData.data ); + } +} + +function cloneFixAttributes( src, dest ) { + var nodeName; + + // We do not need to do anything for non-Elements + if ( dest.nodeType !== 1 ) { + return; + } + + // clearAttributes removes the attributes, which we don't want, + // but also removes the attachEvent events, which we *do* want + if ( dest.clearAttributes ) { + dest.clearAttributes(); + } + + // mergeAttributes, in contrast, only merges back on the + // original attributes, not the events + if ( dest.mergeAttributes ) { + dest.mergeAttributes( src ); + } + + nodeName = dest.nodeName.toLowerCase(); + + if ( nodeName === "object" ) { + // IE6-10 improperly clones children of object elements using classid. + // IE10 throws NoModificationAllowedError if parent is null, #12132. + if ( dest.parentNode ) { + dest.outerHTML = src.outerHTML; + } + + // This path appears unavoidable for IE9. When cloning an object + // element in IE9, the outerHTML strategy above is not sufficient. + // If the src has innerHTML and the destination does not, + // copy the src.innerHTML into the dest.innerHTML. #10324 + if ( jQuery.support.html5Clone && (src.innerHTML && !jQuery.trim(dest.innerHTML)) ) { + dest.innerHTML = src.innerHTML; + } + + } else if ( nodeName === "input" && rcheckableType.test( src.type ) ) { + // IE6-8 fails to persist the checked state of a cloned checkbox + // or radio button. Worse, IE6-7 fail to give the cloned element + // a checked appearance if the defaultChecked value isn't also set + + dest.defaultChecked = dest.checked = src.checked; + + // IE6-7 get confused and end up setting the value of a cloned + // checkbox/radio button to an empty string instead of "on" + if ( dest.value !== src.value ) { + dest.value = src.value; + } + + // IE6-8 fails to return the selected option to the default selected + // state when cloning options + } else if ( nodeName === "option" ) { + dest.selected = src.defaultSelected; + + // IE6-8 fails to set the defaultValue to the correct value when + // cloning other types of input fields + } else if ( nodeName === "input" || nodeName === "textarea" ) { + dest.defaultValue = src.defaultValue; + + // IE blanks contents when cloning scripts + } else if ( nodeName === "script" && dest.text !== src.text ) { + dest.text = src.text; + } + + // Event data gets referenced instead of copied if the expando + // gets copied too + dest.removeAttribute( jQuery.expando ); +} + +jQuery.buildFragment = function( args, context, scripts ) { + var fragment, cacheable, cachehit, + first = args[ 0 ]; + + // Set context from what may come in as undefined or a jQuery collection or a node + // Updated to fix #12266 where accessing context[0] could throw an exception in IE9/10 & + // also doubles as fix for #8950 where plain objects caused createDocumentFragment exception + context = context || document; + context = !context.nodeType && context[0] || context; + context = context.ownerDocument || context; + + // Only cache "small" (1/2 KB) HTML strings that are associated with the main document + // Cloning options loses the selected state, so don't cache them + // IE 6 doesn't like it when you put or elements in a fragment + // Also, WebKit does not clone 'checked' attributes on cloneNode, so don't cache + // Lastly, IE6,7,8 will not correctly reuse cached fragments that were created from unknown elems #10501 + if ( args.length === 1 && typeof first === "string" && first.length < 512 && context === document && + first.charAt(0) === "<" && !rnocache.test( first ) && + (jQuery.support.checkClone || !rchecked.test( first )) && + (jQuery.support.html5Clone || !rnoshimcache.test( first )) ) { + + // Mark cacheable and look for a hit + cacheable = true; + fragment = jQuery.fragments[ first ]; + cachehit = fragment !== undefined; + } + + if ( !fragment ) { + fragment = context.createDocumentFragment(); + jQuery.clean( args, context, fragment, scripts ); + + // Update the cache, but only store false + // unless this is a second parsing of the same content + if ( cacheable ) { + jQuery.fragments[ first ] = cachehit && fragment; + } + } + + return { fragment: fragment, cacheable: cacheable }; +}; + +jQuery.fragments = {}; + +jQuery.each({ + appendTo: "append", + prependTo: "prepend", + insertBefore: "before", + insertAfter: "after", + replaceAll: "replaceWith" +}, function( name, original ) { + jQuery.fn[ name ] = function( selector ) { + var elems, + i = 0, + ret = [], + insert = jQuery( selector ), + l = insert.length, + parent = this.length === 1 && this[0].parentNode; + + if ( (parent == null || parent && parent.nodeType === 11 && parent.childNodes.length === 1) && l === 1 ) { + insert[ original ]( this[0] ); + return this; + } else { + for ( ; i < l; i++ ) { + elems = ( i > 0 ? this.clone(true) : this ).get(); + jQuery( insert[i] )[ original ]( elems ); + ret = ret.concat( elems ); + } + + return this.pushStack( ret, name, insert.selector ); + } + }; +}); + +function getAll( elem ) { + if ( typeof elem.getElementsByTagName !== "undefined" ) { + return elem.getElementsByTagName( "*" ); + + } else if ( typeof elem.querySelectorAll !== "undefined" ) { + return elem.querySelectorAll( "*" ); + + } else { + return []; + } +} + +// Used in clean, fixes the defaultChecked property +function fixDefaultChecked( elem ) { + if ( rcheckableType.test( elem.type ) ) { + elem.defaultChecked = elem.checked; + } +} + +jQuery.extend({ + clone: function( elem, dataAndEvents, deepDataAndEvents ) { + var srcElements, + destElements, + i, + clone; + + if ( jQuery.support.html5Clone || jQuery.isXMLDoc(elem) || !rnoshimcache.test( "<" + elem.nodeName + ">" ) ) { + clone = elem.cloneNode( true ); + + // IE<=8 does not properly clone detached, unknown element nodes + } else { + fragmentDiv.innerHTML = elem.outerHTML; + fragmentDiv.removeChild( clone = fragmentDiv.firstChild ); + } + + if ( (!jQuery.support.noCloneEvent || !jQuery.support.noCloneChecked) && + (elem.nodeType === 1 || elem.nodeType === 11) && !jQuery.isXMLDoc(elem) ) { + // IE copies events bound via attachEvent when using cloneNode. + // Calling detachEvent on the clone will also remove the events + // from the original. In order to get around this, we use some + // proprietary methods to clear the events. Thanks to MooTools + // guys for this hotness. + + cloneFixAttributes( elem, clone ); + + // Using Sizzle here is crazy slow, so we use getElementsByTagName instead + srcElements = getAll( elem ); + destElements = getAll( clone ); + + // Weird iteration because IE will replace the length property + // with an element if you are cloning the body and one of the + // elements on the page has a name or id of "length" + for ( i = 0; srcElements[i]; ++i ) { + // Ensure that the destination node is not null; Fixes #9587 + if ( destElements[i] ) { + cloneFixAttributes( srcElements[i], destElements[i] ); + } + } + } + + // Copy the events from the original to the clone + if ( dataAndEvents ) { + cloneCopyEvent( elem, clone ); + + if ( deepDataAndEvents ) { + srcElements = getAll( elem ); + destElements = getAll( clone ); + + for ( i = 0; srcElements[i]; ++i ) { + cloneCopyEvent( srcElements[i], destElements[i] ); + } + } + } + + srcElements = destElements = null; + + // Return the cloned set + return clone; + }, + + clean: function( elems, context, fragment, scripts ) { + var i, j, elem, tag, wrap, depth, div, hasBody, tbody, len, handleScript, jsTags, + safe = context === document && safeFragment, + ret = []; + + // Ensure that context is a document + if ( !context || typeof context.createDocumentFragment === "undefined" ) { + context = document; + } + + // Use the already-created safe fragment if context permits + for ( i = 0; (elem = elems[i]) != null; i++ ) { + if ( typeof elem === "number" ) { + elem += ""; + } + + if ( !elem ) { + continue; + } + + // Convert html string into DOM nodes + if ( typeof elem === "string" ) { + if ( !rhtml.test( elem ) ) { + elem = context.createTextNode( elem ); + } else { + // Ensure a safe container in which to render the html + safe = safe || createSafeFragment( context ); + div = context.createElement("div"); + safe.appendChild( div ); + + // Fix "XHTML"-style tags in all browsers + elem = elem.replace(rxhtmlTag, "<$1>"); + + // Go to html and back, then peel off extra wrappers + tag = ( rtagName.exec( elem ) || ["", ""] )[1].toLowerCase(); + wrap = wrapMap[ tag ] || wrapMap._default; + depth = wrap[0]; + div.innerHTML = wrap[1] + elem + wrap[2]; + + // Move to the right depth + while ( depth-- ) { + div = div.lastChild; + } + + // Remove IE's autoinserted from table fragments + if ( !jQuery.support.tbody ) { + + // String was a , *may* have spurious + hasBody = rtbody.test(elem); + tbody = tag === "table" && !hasBody ? + div.firstChild && div.firstChild.childNodes : + + // String was a bare or + wrap[1] === "
    " && !hasBody ? + div.childNodes : + []; + + for ( j = tbody.length - 1; j >= 0 ; --j ) { + if ( jQuery.nodeName( tbody[ j ], "tbody" ) && !tbody[ j ].childNodes.length ) { + tbody[ j ].parentNode.removeChild( tbody[ j ] ); + } + } + } + + // IE completely kills leading whitespace when innerHTML is used + if ( !jQuery.support.leadingWhitespace && rleadingWhitespace.test( elem ) ) { + div.insertBefore( context.createTextNode( rleadingWhitespace.exec(elem)[0] ), div.firstChild ); + } + + elem = div.childNodes; + + // Take out of fragment container (we need a fresh div each time) + div.parentNode.removeChild( div ); + } + } + + if ( elem.nodeType ) { + ret.push( elem ); + } else { + jQuery.merge( ret, elem ); + } + } + + // Fix #11356: Clear elements from safeFragment + if ( div ) { + elem = div = safe = null; + } + + // Reset defaultChecked for any radios and checkboxes + // about to be appended to the DOM in IE 6/7 (#8060) + if ( !jQuery.support.appendChecked ) { + for ( i = 0; (elem = ret[i]) != null; i++ ) { + if ( jQuery.nodeName( elem, "input" ) ) { + fixDefaultChecked( elem ); + } else if ( typeof elem.getElementsByTagName !== "undefined" ) { + jQuery.grep( elem.getElementsByTagName("input"), fixDefaultChecked ); + } + } + } + + // Append elements to a provided document fragment + if ( fragment ) { + // Special handling of each script element + handleScript = function( elem ) { + // Check if we consider it executable + if ( !elem.type || rscriptType.test( elem.type ) ) { + // Detach the script and store it in the scripts array (if provided) or the fragment + // Return truthy to indicate that it has been handled + return scripts ? + scripts.push( elem.parentNode ? elem.parentNode.removeChild( elem ) : elem ) : + fragment.appendChild( elem ); + } + }; + + for ( i = 0; (elem = ret[i]) != null; i++ ) { + // Check if we're done after handling an executable script + if ( !( jQuery.nodeName( elem, "script" ) && handleScript( elem ) ) ) { + // Append to fragment and handle embedded scripts + fragment.appendChild( elem ); + if ( typeof elem.getElementsByTagName !== "undefined" ) { + // handleScript alters the DOM, so use jQuery.merge to ensure snapshot iteration + jsTags = jQuery.grep( jQuery.merge( [], elem.getElementsByTagName("script") ), handleScript ); + + // Splice the scripts into ret after their former ancestor and advance our index beyond them + ret.splice.apply( ret, [i + 1, 0].concat( jsTags ) ); + i += jsTags.length; + } + } + } + } + + return ret; + }, + + cleanData: function( elems, /* internal */ acceptData ) { + var data, id, elem, type, + i = 0, + internalKey = jQuery.expando, + cache = jQuery.cache, + deleteExpando = jQuery.support.deleteExpando, + special = jQuery.event.special; + + for ( ; (elem = elems[i]) != null; i++ ) { + + if ( acceptData || jQuery.acceptData( elem ) ) { + + id = elem[ internalKey ]; + data = id && cache[ id ]; + + if ( data ) { + if ( data.events ) { + for ( type in data.events ) { + if ( special[ type ] ) { + jQuery.event.remove( elem, type ); + + // This is a shortcut to avoid jQuery.event.remove's overhead + } else { + jQuery.removeEvent( elem, type, data.handle ); + } + } + } + + // Remove cache only if it was not already removed by jQuery.event.remove + if ( cache[ id ] ) { + + delete cache[ id ]; + + // IE does not allow us to delete expando properties from nodes, + // nor does it have a removeAttribute function on Document nodes; + // we must handle all of these cases + if ( deleteExpando ) { + delete elem[ internalKey ]; + + } else if ( elem.removeAttribute ) { + elem.removeAttribute( internalKey ); + + } else { + elem[ internalKey ] = null; + } + + jQuery.deletedIds.push( id ); + } + } + } + } + } +}); +// Limit scope pollution from any deprecated API +(function() { + +var matched, browser; + +// Use of jQuery.browser is frowned upon. +// More details: http://api.jquery.com/jQuery.browser +// jQuery.uaMatch maintained for back-compat +jQuery.uaMatch = function( ua ) { + ua = ua.toLowerCase(); + + var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) || + /(webkit)[ \/]([\w.]+)/.exec( ua ) || + /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) || + /(msie) ([\w.]+)/.exec( ua ) || + ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) || + []; + + return { + browser: match[ 1 ] || "", + version: match[ 2 ] || "0" + }; +}; + +matched = jQuery.uaMatch( navigator.userAgent ); +browser = {}; + +if ( matched.browser ) { + browser[ matched.browser ] = true; + browser.version = matched.version; +} + +// Chrome is Webkit, but Webkit is also Safari. +if ( browser.chrome ) { + browser.webkit = true; +} else if ( browser.webkit ) { + browser.safari = true; +} + +jQuery.browser = browser; + +jQuery.sub = function() { + function jQuerySub( selector, context ) { + return new jQuerySub.fn.init( selector, context ); + } + jQuery.extend( true, jQuerySub, this ); + jQuerySub.superclass = this; + jQuerySub.fn = jQuerySub.prototype = this(); + jQuerySub.fn.constructor = jQuerySub; + jQuerySub.sub = this.sub; + jQuerySub.fn.init = function init( selector, context ) { + if ( context && context instanceof jQuery && !(context instanceof jQuerySub) ) { + context = jQuerySub( context ); + } + + return jQuery.fn.init.call( this, selector, context, rootjQuerySub ); + }; + jQuerySub.fn.init.prototype = jQuerySub.fn; + var rootjQuerySub = jQuerySub(document); + return jQuerySub; +}; + +})(); +var curCSS, iframe, iframeDoc, + ralpha = /alpha\([^)]*\)/i, + ropacity = /opacity=([^)]*)/, + rposition = /^(top|right|bottom|left)$/, + // swappable if display is none or starts with table except "table", "table-cell", or "table-caption" + // see here for display values: https://developer.mozilla.org/en-US/docs/CSS/display + rdisplayswap = /^(none|table(?!-c[ea]).+)/, + rmargin = /^margin/, + rnumsplit = new RegExp( "^(" + core_pnum + ")(.*)$", "i" ), + rnumnonpx = new RegExp( "^(" + core_pnum + ")(?!px)[a-z%]+$", "i" ), + rrelNum = new RegExp( "^([-+])=(" + core_pnum + ")", "i" ), + elemdisplay = { BODY: "block" }, + + cssShow = { position: "absolute", visibility: "hidden", display: "block" }, + cssNormalTransform = { + letterSpacing: 0, + fontWeight: 400 + }, + + cssExpand = [ "Top", "Right", "Bottom", "Left" ], + cssPrefixes = [ "Webkit", "O", "Moz", "ms" ], + + eventsToggle = jQuery.fn.toggle; + +// return a css property mapped to a potentially vendor prefixed property +function vendorPropName( style, name ) { + + // shortcut for names that are not vendor prefixed + if ( name in style ) { + return name; + } + + // check for vendor prefixed names + var capName = name.charAt(0).toUpperCase() + name.slice(1), + origName = name, + i = cssPrefixes.length; + + while ( i-- ) { + name = cssPrefixes[ i ] + capName; + if ( name in style ) { + return name; + } + } + + return origName; +} + +function isHidden( elem, el ) { + elem = el || elem; + return jQuery.css( elem, "display" ) === "none" || !jQuery.contains( elem.ownerDocument, elem ); +} + +function showHide( elements, show ) { + var elem, display, + values = [], + index = 0, + length = elements.length; + + for ( ; index < length; index++ ) { + elem = elements[ index ]; + if ( !elem.style ) { + continue; + } + values[ index ] = jQuery._data( elem, "olddisplay" ); + if ( show ) { + // Reset the inline display of this element to learn if it is + // being hidden by cascaded rules or not + if ( !values[ index ] && elem.style.display === "none" ) { + elem.style.display = ""; + } + + // Set elements which have been overridden with display: none + // in a stylesheet to whatever the default browser style is + // for such an element + if ( elem.style.display === "" && isHidden( elem ) ) { + values[ index ] = jQuery._data( elem, "olddisplay", css_defaultDisplay(elem.nodeName) ); + } + } else { + display = curCSS( elem, "display" ); + + if ( !values[ index ] && display !== "none" ) { + jQuery._data( elem, "olddisplay", display ); + } + } + } + + // Set the display of most of the elements in a second loop + // to avoid the constant reflow + for ( index = 0; index < length; index++ ) { + elem = elements[ index ]; + if ( !elem.style ) { + continue; + } + if ( !show || elem.style.display === "none" || elem.style.display === "" ) { + elem.style.display = show ? values[ index ] || "" : "none"; + } + } + + return elements; +} + +jQuery.fn.extend({ + css: function( name, value ) { + return jQuery.access( this, function( elem, name, value ) { + return value !== undefined ? + jQuery.style( elem, name, value ) : + jQuery.css( elem, name ); + }, name, value, arguments.length > 1 ); + }, + show: function() { + return showHide( this, true ); + }, + hide: function() { + return showHide( this ); + }, + toggle: function( state, fn2 ) { + var bool = typeof state === "boolean"; + + if ( jQuery.isFunction( state ) && jQuery.isFunction( fn2 ) ) { + return eventsToggle.apply( this, arguments ); + } + + return this.each(function() { + if ( bool ? state : isHidden( this ) ) { + jQuery( this ).show(); + } else { + jQuery( this ).hide(); + } + }); + } +}); + +jQuery.extend({ + // Add in style property hooks for overriding the default + // behavior of getting and setting a style property + cssHooks: { + opacity: { + get: function( elem, computed ) { + if ( computed ) { + // We should always get a number back from opacity + var ret = curCSS( elem, "opacity" ); + return ret === "" ? "1" : ret; + + } + } + } + }, + + // Exclude the following css properties to add px + cssNumber: { + "fillOpacity": true, + "fontWeight": true, + "lineHeight": true, + "opacity": true, + "orphans": true, + "widows": true, + "zIndex": true, + "zoom": true + }, + + // Add in properties whose names you wish to fix before + // setting or getting the value + cssProps: { + // normalize float css property + "float": jQuery.support.cssFloat ? "cssFloat" : "styleFloat" + }, + + // Get and set the style property on a DOM Node + style: function( elem, name, value, extra ) { + // Don't set styles on text and comment nodes + if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) { + return; + } + + // Make sure that we're working with the right name + var ret, type, hooks, + origName = jQuery.camelCase( name ), + style = elem.style; + + name = jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] = vendorPropName( style, origName ) ); + + // gets hook for the prefixed version + // followed by the unprefixed version + hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; + + // Check if we're setting a value + if ( value !== undefined ) { + type = typeof value; + + // convert relative number strings (+= or -=) to relative numbers. #7345 + if ( type === "string" && (ret = rrelNum.exec( value )) ) { + value = ( ret[1] + 1 ) * ret[2] + parseFloat( jQuery.css( elem, name ) ); + // Fixes bug #9237 + type = "number"; + } + + // Make sure that NaN and null values aren't set. See: #7116 + if ( value == null || type === "number" && isNaN( value ) ) { + return; + } + + // If a number was passed in, add 'px' to the (except for certain CSS properties) + if ( type === "number" && !jQuery.cssNumber[ origName ] ) { + value += "px"; + } + + // If a hook was provided, use that value, otherwise just set the specified value + if ( !hooks || !("set" in hooks) || (value = hooks.set( elem, value, extra )) !== undefined ) { + // Wrapped to prevent IE from throwing errors when 'invalid' values are provided + // Fixes bug #5509 + try { + style[ name ] = value; + } catch(e) {} + } + + } else { + // If a hook was provided get the non-computed value from there + if ( hooks && "get" in hooks && (ret = hooks.get( elem, false, extra )) !== undefined ) { + return ret; + } + + // Otherwise just get the value from the style object + return style[ name ]; + } + }, + + css: function( elem, name, numeric, extra ) { + var val, num, hooks, + origName = jQuery.camelCase( name ); + + // Make sure that we're working with the right name + name = jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] = vendorPropName( elem.style, origName ) ); + + // gets hook for the prefixed version + // followed by the unprefixed version + hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; + + // If a hook was provided get the computed value from there + if ( hooks && "get" in hooks ) { + val = hooks.get( elem, true, extra ); + } + + // Otherwise, if a way to get the computed value exists, use that + if ( val === undefined ) { + val = curCSS( elem, name ); + } + + //convert "normal" to computed value + if ( val === "normal" && name in cssNormalTransform ) { + val = cssNormalTransform[ name ]; + } + + // Return, converting to number if forced or a qualifier was provided and val looks numeric + if ( numeric || extra !== undefined ) { + num = parseFloat( val ); + return numeric || jQuery.isNumeric( num ) ? num || 0 : val; + } + return val; + }, + + // A method for quickly swapping in/out CSS properties to get correct calculations + swap: function( elem, options, callback ) { + var ret, name, + old = {}; + + // Remember the old values, and insert the new ones + for ( name in options ) { + old[ name ] = elem.style[ name ]; + elem.style[ name ] = options[ name ]; + } + + ret = callback.call( elem ); + + // Revert the old values + for ( name in options ) { + elem.style[ name ] = old[ name ]; + } + + return ret; + } +}); + +// NOTE: To any future maintainer, we've window.getComputedStyle +// because jsdom on node.js will break without it. +if ( window.getComputedStyle ) { + curCSS = function( elem, name ) { + var ret, width, minWidth, maxWidth, + computed = window.getComputedStyle( elem, null ), + style = elem.style; + + if ( computed ) { + + // getPropertyValue is only needed for .css('filter') in IE9, see #12537 + ret = computed.getPropertyValue( name ) || computed[ name ]; + + if ( ret === "" && !jQuery.contains( elem.ownerDocument, elem ) ) { + ret = jQuery.style( elem, name ); + } + + // A tribute to the "awesome hack by Dean Edwards" + // Chrome < 17 and Safari 5.0 uses "computed value" instead of "used value" for margin-right + // Safari 5.1.7 (at least) returns percentage for a larger set of values, but width seems to be reliably pixels + // this is against the CSSOM draft spec: http://dev.w3.org/csswg/cssom/#resolved-values + if ( rnumnonpx.test( ret ) && rmargin.test( name ) ) { + width = style.width; + minWidth = style.minWidth; + maxWidth = style.maxWidth; + + style.minWidth = style.maxWidth = style.width = ret; + ret = computed.width; + + style.width = width; + style.minWidth = minWidth; + style.maxWidth = maxWidth; + } + } + + return ret; + }; +} else if ( document.documentElement.currentStyle ) { + curCSS = function( elem, name ) { + var left, rsLeft, + ret = elem.currentStyle && elem.currentStyle[ name ], + style = elem.style; + + // Avoid setting ret to empty string here + // so we don't default to auto + if ( ret == null && style && style[ name ] ) { + ret = style[ name ]; + } + + // From the awesome hack by Dean Edwards + // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291 + + // If we're not dealing with a regular pixel number + // but a number that has a weird ending, we need to convert it to pixels + // but not position css attributes, as those are proportional to the parent element instead + // and we can't measure the parent instead because it might trigger a "stacking dolls" problem + if ( rnumnonpx.test( ret ) && !rposition.test( name ) ) { + + // Remember the original values + left = style.left; + rsLeft = elem.runtimeStyle && elem.runtimeStyle.left; + + // Put in the new values to get a computed value out + if ( rsLeft ) { + elem.runtimeStyle.left = elem.currentStyle.left; + } + style.left = name === "fontSize" ? "1em" : ret; + ret = style.pixelLeft + "px"; + + // Revert the changed values + style.left = left; + if ( rsLeft ) { + elem.runtimeStyle.left = rsLeft; + } + } + + return ret === "" ? "auto" : ret; + }; +} + +function setPositiveNumber( elem, value, subtract ) { + var matches = rnumsplit.exec( value ); + return matches ? + Math.max( 0, matches[ 1 ] - ( subtract || 0 ) ) + ( matches[ 2 ] || "px" ) : + value; +} + +function augmentWidthOrHeight( elem, name, extra, isBorderBox ) { + var i = extra === ( isBorderBox ? "border" : "content" ) ? + // If we already have the right measurement, avoid augmentation + 4 : + // Otherwise initialize for horizontal or vertical properties + name === "width" ? 1 : 0, + + val = 0; + + for ( ; i < 4; i += 2 ) { + // both box models exclude margin, so add it if we want it + if ( extra === "margin" ) { + // we use jQuery.css instead of curCSS here + // because of the reliableMarginRight CSS hook! + val += jQuery.css( elem, extra + cssExpand[ i ], true ); + } + + // From this point on we use curCSS for maximum performance (relevant in animations) + if ( isBorderBox ) { + // border-box includes padding, so remove it if we want content + if ( extra === "content" ) { + val -= parseFloat( curCSS( elem, "padding" + cssExpand[ i ] ) ) || 0; + } + + // at this point, extra isn't border nor margin, so remove border + if ( extra !== "margin" ) { + val -= parseFloat( curCSS( elem, "border" + cssExpand[ i ] + "Width" ) ) || 0; + } + } else { + // at this point, extra isn't content, so add padding + val += parseFloat( curCSS( elem, "padding" + cssExpand[ i ] ) ) || 0; + + // at this point, extra isn't content nor padding, so add border + if ( extra !== "padding" ) { + val += parseFloat( curCSS( elem, "border" + cssExpand[ i ] + "Width" ) ) || 0; + } + } + } + + return val; +} + +function getWidthOrHeight( elem, name, extra ) { + + // Start with offset property, which is equivalent to the border-box value + var val = name === "width" ? elem.offsetWidth : elem.offsetHeight, + valueIsBorderBox = true, + isBorderBox = jQuery.support.boxSizing && jQuery.css( elem, "boxSizing" ) === "border-box"; + + // some non-html elements return undefined for offsetWidth, so check for null/undefined + // svg - https://bugzilla.mozilla.org/show_bug.cgi?id=649285 + // MathML - https://bugzilla.mozilla.org/show_bug.cgi?id=491668 + if ( val <= 0 || val == null ) { + // Fall back to computed then uncomputed css if necessary + val = curCSS( elem, name ); + if ( val < 0 || val == null ) { + val = elem.style[ name ]; + } + + // Computed unit is not pixels. Stop here and return. + if ( rnumnonpx.test(val) ) { + return val; + } + + // we need the check for style in case a browser which returns unreliable values + // for getComputedStyle silently falls back to the reliable elem.style + valueIsBorderBox = isBorderBox && ( jQuery.support.boxSizingReliable || val === elem.style[ name ] ); + + // Normalize "", auto, and prepare for extra + val = parseFloat( val ) || 0; + } + + // use the active box-sizing model to add/subtract irrelevant styles + return ( val + + augmentWidthOrHeight( + elem, + name, + extra || ( isBorderBox ? "border" : "content" ), + valueIsBorderBox + ) + ) + "px"; +} + + +// Try to determine the default display value of an element +function css_defaultDisplay( nodeName ) { + if ( elemdisplay[ nodeName ] ) { + return elemdisplay[ nodeName ]; + } + + var elem = jQuery( "<" + nodeName + ">" ).appendTo( document.body ), + display = elem.css("display"); + elem.remove(); + + // If the simple way fails, + // get element's real default display by attaching it to a temp iframe + if ( display === "none" || display === "" ) { + // Use the already-created iframe if possible + iframe = document.body.appendChild( + iframe || jQuery.extend( document.createElement("iframe"), { + frameBorder: 0, + width: 0, + height: 0 + }) + ); + + // Create a cacheable copy of the iframe document on first call. + // IE and Opera will allow us to reuse the iframeDoc without re-writing the fake HTML + // document to it; WebKit & Firefox won't allow reusing the iframe document. + if ( !iframeDoc || !iframe.createElement ) { + iframeDoc = ( iframe.contentWindow || iframe.contentDocument ).document; + iframeDoc.write(""); + iframeDoc.close(); + } + + elem = iframeDoc.body.appendChild( iframeDoc.createElement(nodeName) ); + + display = curCSS( elem, "display" ); + document.body.removeChild( iframe ); + } + + // Store the correct default display + elemdisplay[ nodeName ] = display; + + return display; +} + +jQuery.each([ "height", "width" ], function( i, name ) { + jQuery.cssHooks[ name ] = { + get: function( elem, computed, extra ) { + if ( computed ) { + // certain elements can have dimension info if we invisibly show them + // however, it must have a current display style that would benefit from this + if ( elem.offsetWidth === 0 && rdisplayswap.test( curCSS( elem, "display" ) ) ) { + return jQuery.swap( elem, cssShow, function() { + return getWidthOrHeight( elem, name, extra ); + }); + } else { + return getWidthOrHeight( elem, name, extra ); + } + } + }, + + set: function( elem, value, extra ) { + return setPositiveNumber( elem, value, extra ? + augmentWidthOrHeight( + elem, + name, + extra, + jQuery.support.boxSizing && jQuery.css( elem, "boxSizing" ) === "border-box" + ) : 0 + ); + } + }; +}); + +if ( !jQuery.support.opacity ) { + jQuery.cssHooks.opacity = { + get: function( elem, computed ) { + // IE uses filters for opacity + return ropacity.test( (computed && elem.currentStyle ? elem.currentStyle.filter : elem.style.filter) || "" ) ? + ( 0.01 * parseFloat( RegExp.$1 ) ) + "" : + computed ? "1" : ""; + }, + + set: function( elem, value ) { + var style = elem.style, + currentStyle = elem.currentStyle, + opacity = jQuery.isNumeric( value ) ? "alpha(opacity=" + value * 100 + ")" : "", + filter = currentStyle && currentStyle.filter || style.filter || ""; + + // IE has trouble with opacity if it does not have layout + // Force it by setting the zoom level + style.zoom = 1; + + // if setting opacity to 1, and no other filters exist - attempt to remove filter attribute #6652 + if ( value >= 1 && jQuery.trim( filter.replace( ralpha, "" ) ) === "" && + style.removeAttribute ) { + + // Setting style.filter to null, "" & " " still leave "filter:" in the cssText + // if "filter:" is present at all, clearType is disabled, we want to avoid this + // style.removeAttribute is IE Only, but so apparently is this code path... + style.removeAttribute( "filter" ); + + // if there there is no filter style applied in a css rule, we are done + if ( currentStyle && !currentStyle.filter ) { + return; + } + } + + // otherwise, set new filter values + style.filter = ralpha.test( filter ) ? + filter.replace( ralpha, opacity ) : + filter + " " + opacity; + } + }; +} + +// These hooks cannot be added until DOM ready because the support test +// for it is not run until after DOM ready +jQuery(function() { + if ( !jQuery.support.reliableMarginRight ) { + jQuery.cssHooks.marginRight = { + get: function( elem, computed ) { + // WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right + // Work around by temporarily setting element display to inline-block + return jQuery.swap( elem, { "display": "inline-block" }, function() { + if ( computed ) { + return curCSS( elem, "marginRight" ); + } + }); + } + }; + } + + // Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084 + // getComputedStyle returns percent when specified for top/left/bottom/right + // rather than make the css module depend on the offset module, we just check for it here + if ( !jQuery.support.pixelPosition && jQuery.fn.position ) { + jQuery.each( [ "top", "left" ], function( i, prop ) { + jQuery.cssHooks[ prop ] = { + get: function( elem, computed ) { + if ( computed ) { + var ret = curCSS( elem, prop ); + // if curCSS returns percentage, fallback to offset + return rnumnonpx.test( ret ) ? jQuery( elem ).position()[ prop ] + "px" : ret; + } + } + }; + }); + } + +}); + +if ( jQuery.expr && jQuery.expr.filters ) { + jQuery.expr.filters.hidden = function( elem ) { + return ( elem.offsetWidth === 0 && elem.offsetHeight === 0 ) || (!jQuery.support.reliableHiddenOffsets && ((elem.style && elem.style.display) || curCSS( elem, "display" )) === "none"); + }; + + jQuery.expr.filters.visible = function( elem ) { + return !jQuery.expr.filters.hidden( elem ); + }; +} + +// These hooks are used by animate to expand properties +jQuery.each({ + margin: "", + padding: "", + border: "Width" +}, function( prefix, suffix ) { + jQuery.cssHooks[ prefix + suffix ] = { + expand: function( value ) { + var i, + + // assumes a single number if not a string + parts = typeof value === "string" ? value.split(" ") : [ value ], + expanded = {}; + + for ( i = 0; i < 4; i++ ) { + expanded[ prefix + cssExpand[ i ] + suffix ] = + parts[ i ] || parts[ i - 2 ] || parts[ 0 ]; + } + + return expanded; + } + }; + + if ( !rmargin.test( prefix ) ) { + jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber; + } +}); +var r20 = /%20/g, + rbracket = /\[\]$/, + rCRLF = /\r?\n/g, + rinput = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i, + rselectTextarea = /^(?:select|textarea)/i; + +jQuery.fn.extend({ + serialize: function() { + return jQuery.param( this.serializeArray() ); + }, + serializeArray: function() { + return this.map(function(){ + return this.elements ? jQuery.makeArray( this.elements ) : this; + }) + .filter(function(){ + return this.name && !this.disabled && + ( this.checked || rselectTextarea.test( this.nodeName ) || + rinput.test( this.type ) ); + }) + .map(function( i, elem ){ + var val = jQuery( this ).val(); + + return val == null ? + null : + jQuery.isArray( val ) ? + jQuery.map( val, function( val, i ){ + return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; + }) : + { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; + }).get(); + } +}); + +//Serialize an array of form elements or a set of +//key/values into a query string +jQuery.param = function( a, traditional ) { + var prefix, + s = [], + add = function( key, value ) { + // If value is a function, invoke it and return its value + value = jQuery.isFunction( value ) ? value() : ( value == null ? "" : value ); + s[ s.length ] = encodeURIComponent( key ) + "=" + encodeURIComponent( value ); + }; + + // Set traditional to true for jQuery <= 1.3.2 behavior. + if ( traditional === undefined ) { + traditional = jQuery.ajaxSettings && jQuery.ajaxSettings.traditional; + } + + // If an array was passed in, assume that it is an array of form elements. + if ( jQuery.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) { + // Serialize the form elements + jQuery.each( a, function() { + add( this.name, this.value ); + }); + + } else { + // If traditional, encode the "old" way (the way 1.3.2 or older + // did it), otherwise encode params recursively. + for ( prefix in a ) { + buildParams( prefix, a[ prefix ], traditional, add ); + } + } + + // Return the resulting serialization + return s.join( "&" ).replace( r20, "+" ); +}; + +function buildParams( prefix, obj, traditional, add ) { + var name; + + if ( jQuery.isArray( obj ) ) { + // Serialize array item. + jQuery.each( obj, function( i, v ) { + if ( traditional || rbracket.test( prefix ) ) { + // Treat each array item as a scalar. + add( prefix, v ); + + } else { + // If array item is non-scalar (array or object), encode its + // numeric index to resolve deserialization ambiguity issues. + // Note that rack (as of 1.0.0) can't currently deserialize + // nested arrays properly, and attempting to do so may cause + // a server error. Possible fixes are to modify rack's + // deserialization algorithm or to provide an option or flag + // to force array serialization to be shallow. + buildParams( prefix + "[" + ( typeof v === "object" ? i : "" ) + "]", v, traditional, add ); + } + }); + + } else if ( !traditional && jQuery.type( obj ) === "object" ) { + // Serialize object item. + for ( name in obj ) { + buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add ); + } + + } else { + // Serialize scalar item. + add( prefix, obj ); + } +} +var + // Document location + ajaxLocParts, + ajaxLocation, + + rhash = /#.*$/, + rheaders = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, // IE leaves an \r character at EOL + // #7653, #8125, #8152: local protocol detection + rlocalProtocol = /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/, + rnoContent = /^(?:GET|HEAD)$/, + rprotocol = /^\/\//, + rquery = /\?/, + rscript = /)<[^<]*)*<\/script>/gi, + rts = /([?&])_=[^&]*/, + rurl = /^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/, + + // Keep a copy of the old load method + _load = jQuery.fn.load, + + /* Prefilters + * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example) + * 2) These are called: + * - BEFORE asking for a transport + * - AFTER param serialization (s.data is a string if s.processData is true) + * 3) key is the dataType + * 4) the catchall symbol "*" can be used + * 5) execution will start with transport dataType and THEN continue down to "*" if needed + */ + prefilters = {}, + + /* Transports bindings + * 1) key is the dataType + * 2) the catchall symbol "*" can be used + * 3) selection will start with transport dataType and THEN go to "*" if needed + */ + transports = {}, + + // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression + allTypes = ["*/"] + ["*"]; + +// #8138, IE may throw an exception when accessing +// a field from window.location if document.domain has been set +try { + ajaxLocation = location.href; +} catch( e ) { + // Use the href attribute of an A element + // since IE will modify it given document.location + ajaxLocation = document.createElement( "a" ); + ajaxLocation.href = ""; + ajaxLocation = ajaxLocation.href; +} + +// Segment location into parts +ajaxLocParts = rurl.exec( ajaxLocation.toLowerCase() ) || []; + +// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport +function addToPrefiltersOrTransports( structure ) { + + // dataTypeExpression is optional and defaults to "*" + return function( dataTypeExpression, func ) { + + if ( typeof dataTypeExpression !== "string" ) { + func = dataTypeExpression; + dataTypeExpression = "*"; + } + + var dataType, list, placeBefore, + dataTypes = dataTypeExpression.toLowerCase().split( core_rspace ), + i = 0, + length = dataTypes.length; + + if ( jQuery.isFunction( func ) ) { + // For each dataType in the dataTypeExpression + for ( ; i < length; i++ ) { + dataType = dataTypes[ i ]; + // We control if we're asked to add before + // any existing element + placeBefore = /^\+/.test( dataType ); + if ( placeBefore ) { + dataType = dataType.substr( 1 ) || "*"; + } + list = structure[ dataType ] = structure[ dataType ] || []; + // then we add to the structure accordingly + list[ placeBefore ? "unshift" : "push" ]( func ); + } + } + }; +} + +// Base inspection function for prefilters and transports +function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR, + dataType /* internal */, inspected /* internal */ ) { + + dataType = dataType || options.dataTypes[ 0 ]; + inspected = inspected || {}; + + inspected[ dataType ] = true; + + var selection, + list = structure[ dataType ], + i = 0, + length = list ? list.length : 0, + executeOnly = ( structure === prefilters ); + + for ( ; i < length && ( executeOnly || !selection ); i++ ) { + selection = list[ i ]( options, originalOptions, jqXHR ); + // If we got redirected to another dataType + // we try there if executing only and not done already + if ( typeof selection === "string" ) { + if ( !executeOnly || inspected[ selection ] ) { + selection = undefined; + } else { + options.dataTypes.unshift( selection ); + selection = inspectPrefiltersOrTransports( + structure, options, originalOptions, jqXHR, selection, inspected ); + } + } + } + // If we're only executing or nothing was selected + // we try the catchall dataType if not done already + if ( ( executeOnly || !selection ) && !inspected[ "*" ] ) { + selection = inspectPrefiltersOrTransports( + structure, options, originalOptions, jqXHR, "*", inspected ); + } + // unnecessary when only executing (prefilters) + // but it'll be ignored by the caller in that case + return selection; +} + +// A special extend for ajax options +// that takes "flat" options (not to be deep extended) +// Fixes #9887 +function ajaxExtend( target, src ) { + var key, deep, + flatOptions = jQuery.ajaxSettings.flatOptions || {}; + for ( key in src ) { + if ( src[ key ] !== undefined ) { + ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ]; + } + } + if ( deep ) { + jQuery.extend( true, target, deep ); + } +} + +jQuery.fn.load = function( url, params, callback ) { + if ( typeof url !== "string" && _load ) { + return _load.apply( this, arguments ); + } + + // Don't do a request if no elements are being requested + if ( !this.length ) { + return this; + } + + var selector, type, response, + self = this, + off = url.indexOf(" "); + + if ( off >= 0 ) { + selector = url.slice( off, url.length ); + url = url.slice( 0, off ); + } + + // If it's a function + if ( jQuery.isFunction( params ) ) { + + // We assume that it's the callback + callback = params; + params = undefined; + + // Otherwise, build a param string + } else if ( params && typeof params === "object" ) { + type = "POST"; + } + + // Request the remote document + jQuery.ajax({ + url: url, + + // if "type" variable is undefined, then "GET" method will be used + type: type, + dataType: "html", + data: params, + complete: function( jqXHR, status ) { + if ( callback ) { + self.each( callback, response || [ jqXHR.responseText, status, jqXHR ] ); + } + } + }).done(function( responseText ) { + + // Save response for use in complete callback + response = arguments; + + // See if a selector was specified + self.html( selector ? + + // Create a dummy div to hold the results + jQuery("
    ") + + // inject the contents of the document in, removing the scripts + // to avoid any 'Permission Denied' errors in IE + .append( responseText.replace( rscript, "" ) ) + + // Locate the specified elements + .find( selector ) : + + // If not, just inject the full result + responseText ); + + }); + + return this; +}; + +// Attach a bunch of functions for handling common AJAX events +jQuery.each( "ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split( " " ), function( i, o ){ + jQuery.fn[ o ] = function( f ){ + return this.on( o, f ); + }; +}); + +jQuery.each( [ "get", "post" ], function( i, method ) { + jQuery[ method ] = function( url, data, callback, type ) { + // shift arguments if data argument was omitted + if ( jQuery.isFunction( data ) ) { + type = type || callback; + callback = data; + data = undefined; + } + + return jQuery.ajax({ + type: method, + url: url, + data: data, + success: callback, + dataType: type + }); + }; +}); + +jQuery.extend({ + + getScript: function( url, callback ) { + return jQuery.get( url, undefined, callback, "script" ); + }, + + getJSON: function( url, data, callback ) { + return jQuery.get( url, data, callback, "json" ); + }, + + // Creates a full fledged settings object into target + // with both ajaxSettings and settings fields. + // If target is omitted, writes into ajaxSettings. + ajaxSetup: function( target, settings ) { + if ( settings ) { + // Building a settings object + ajaxExtend( target, jQuery.ajaxSettings ); + } else { + // Extending ajaxSettings + settings = target; + target = jQuery.ajaxSettings; + } + ajaxExtend( target, settings ); + return target; + }, + + ajaxSettings: { + url: ajaxLocation, + isLocal: rlocalProtocol.test( ajaxLocParts[ 1 ] ), + global: true, + type: "GET", + contentType: "application/x-www-form-urlencoded; charset=UTF-8", + processData: true, + async: true, + /* + timeout: 0, + data: null, + dataType: null, + username: null, + password: null, + cache: null, + throws: false, + traditional: false, + headers: {}, + */ + + accepts: { + xml: "application/xml, text/xml", + html: "text/html", + text: "text/plain", + json: "application/json, text/javascript", + "*": allTypes + }, + + contents: { + xml: /xml/, + html: /html/, + json: /json/ + }, + + responseFields: { + xml: "responseXML", + text: "responseText" + }, + + // List of data converters + // 1) key format is "source_type destination_type" (a single space in-between) + // 2) the catchall symbol "*" can be used for source_type + converters: { + + // Convert anything to text + "* text": window.String, + + // Text to html (true = no transformation) + "text html": true, + + // Evaluate text as a json expression + "text json": jQuery.parseJSON, + + // Parse text as xml + "text xml": jQuery.parseXML + }, + + // For options that shouldn't be deep extended: + // you can add your own custom options here if + // and when you create one that shouldn't be + // deep extended (see ajaxExtend) + flatOptions: { + context: true, + url: true + } + }, + + ajaxPrefilter: addToPrefiltersOrTransports( prefilters ), + ajaxTransport: addToPrefiltersOrTransports( transports ), + + // Main method + ajax: function( url, options ) { + + // If url is an object, simulate pre-1.5 signature + if ( typeof url === "object" ) { + options = url; + url = undefined; + } + + // Force options to be an object + options = options || {}; + + var // ifModified key + ifModifiedKey, + // Response headers + responseHeadersString, + responseHeaders, + // transport + transport, + // timeout handle + timeoutTimer, + // Cross-domain detection vars + parts, + // To know if global events are to be dispatched + fireGlobals, + // Loop variable + i, + // Create the final options object + s = jQuery.ajaxSetup( {}, options ), + // Callbacks context + callbackContext = s.context || s, + // Context for global events + // It's the callbackContext if one was provided in the options + // and if it's a DOM node or a jQuery collection + globalEventContext = callbackContext !== s && + ( callbackContext.nodeType || callbackContext instanceof jQuery ) ? + jQuery( callbackContext ) : jQuery.event, + // Deferreds + deferred = jQuery.Deferred(), + completeDeferred = jQuery.Callbacks( "once memory" ), + // Status-dependent callbacks + statusCode = s.statusCode || {}, + // Headers (they are sent all at once) + requestHeaders = {}, + requestHeadersNames = {}, + // The jqXHR state + state = 0, + // Default abort message + strAbort = "canceled", + // Fake xhr + jqXHR = { + + readyState: 0, + + // Caches the header + setRequestHeader: function( name, value ) { + if ( !state ) { + var lname = name.toLowerCase(); + name = requestHeadersNames[ lname ] = requestHeadersNames[ lname ] || name; + requestHeaders[ name ] = value; + } + return this; + }, + + // Raw string + getAllResponseHeaders: function() { + return state === 2 ? responseHeadersString : null; + }, + + // Builds headers hashtable if needed + getResponseHeader: function( key ) { + var match; + if ( state === 2 ) { + if ( !responseHeaders ) { + responseHeaders = {}; + while( ( match = rheaders.exec( responseHeadersString ) ) ) { + responseHeaders[ match[1].toLowerCase() ] = match[ 2 ]; + } + } + match = responseHeaders[ key.toLowerCase() ]; + } + return match === undefined ? null : match; + }, + + // Overrides response content-type header + overrideMimeType: function( type ) { + if ( !state ) { + s.mimeType = type; + } + return this; + }, + + // Cancel the request + abort: function( statusText ) { + statusText = statusText || strAbort; + if ( transport ) { + transport.abort( statusText ); + } + done( 0, statusText ); + return this; + } + }; + + // Callback for when everything is done + // It is defined here because jslint complains if it is declared + // at the end of the function (which would be more logical and readable) + function done( status, nativeStatusText, responses, headers ) { + var isSuccess, success, error, response, modified, + statusText = nativeStatusText; + + // Called once + if ( state === 2 ) { + return; + } + + // State is "done" now + state = 2; + + // Clear timeout if it exists + if ( timeoutTimer ) { + clearTimeout( timeoutTimer ); + } + + // Dereference transport for early garbage collection + // (no matter how long the jqXHR object will be used) + transport = undefined; + + // Cache response headers + responseHeadersString = headers || ""; + + // Set readyState + jqXHR.readyState = status > 0 ? 4 : 0; + + // Get response data + if ( responses ) { + response = ajaxHandleResponses( s, jqXHR, responses ); + } + + // If successful, handle type chaining + if ( status >= 200 && status < 300 || status === 304 ) { + + // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. + if ( s.ifModified ) { + + modified = jqXHR.getResponseHeader("Last-Modified"); + if ( modified ) { + jQuery.lastModified[ ifModifiedKey ] = modified; + } + modified = jqXHR.getResponseHeader("Etag"); + if ( modified ) { + jQuery.etag[ ifModifiedKey ] = modified; + } + } + + // If not modified + if ( status === 304 ) { + + statusText = "notmodified"; + isSuccess = true; + + // If we have data + } else { + + isSuccess = ajaxConvert( s, response ); + statusText = isSuccess.state; + success = isSuccess.data; + error = isSuccess.error; + isSuccess = !error; + } + } else { + // We extract error from statusText + // then normalize statusText and status for non-aborts + error = statusText; + if ( !statusText || status ) { + statusText = "error"; + if ( status < 0 ) { + status = 0; + } + } + } + + // Set data for the fake xhr object + jqXHR.status = status; + jqXHR.statusText = ( nativeStatusText || statusText ) + ""; + + // Success/Error + if ( isSuccess ) { + deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] ); + } else { + deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] ); + } + + // Status-dependent callbacks + jqXHR.statusCode( statusCode ); + statusCode = undefined; + + if ( fireGlobals ) { + globalEventContext.trigger( "ajax" + ( isSuccess ? "Success" : "Error" ), + [ jqXHR, s, isSuccess ? success : error ] ); + } + + // Complete + completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] ); + + if ( fireGlobals ) { + globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] ); + // Handle the global AJAX counter + if ( !( --jQuery.active ) ) { + jQuery.event.trigger( "ajaxStop" ); + } + } + } + + // Attach deferreds + deferred.promise( jqXHR ); + jqXHR.success = jqXHR.done; + jqXHR.error = jqXHR.fail; + jqXHR.complete = completeDeferred.add; + + // Status-dependent callbacks + jqXHR.statusCode = function( map ) { + if ( map ) { + var tmp; + if ( state < 2 ) { + for ( tmp in map ) { + statusCode[ tmp ] = [ statusCode[tmp], map[tmp] ]; + } + } else { + tmp = map[ jqXHR.status ]; + jqXHR.always( tmp ); + } + } + return this; + }; + + // Remove hash character (#7531: and string promotion) + // Add protocol if not provided (#5866: IE7 issue with protocol-less urls) + // We also use the url parameter if available + s.url = ( ( url || s.url ) + "" ).replace( rhash, "" ).replace( rprotocol, ajaxLocParts[ 1 ] + "//" ); + + // Extract dataTypes list + s.dataTypes = jQuery.trim( s.dataType || "*" ).toLowerCase().split( core_rspace ); + + // A cross-domain request is in order when we have a protocol:host:port mismatch + if ( s.crossDomain == null ) { + parts = rurl.exec( s.url.toLowerCase() ); + s.crossDomain = !!( parts && + ( parts[ 1 ] !== ajaxLocParts[ 1 ] || parts[ 2 ] !== ajaxLocParts[ 2 ] || + ( parts[ 3 ] || ( parts[ 1 ] === "http:" ? 80 : 443 ) ) != + ( ajaxLocParts[ 3 ] || ( ajaxLocParts[ 1 ] === "http:" ? 80 : 443 ) ) ) + ); + } + + // Convert data if not already a string + if ( s.data && s.processData && typeof s.data !== "string" ) { + s.data = jQuery.param( s.data, s.traditional ); + } + + // Apply prefilters + inspectPrefiltersOrTransports( prefilters, s, options, jqXHR ); + + // If request was aborted inside a prefilter, stop there + if ( state === 2 ) { + return jqXHR; + } + + // We can fire global events as of now if asked to + fireGlobals = s.global; + + // Uppercase the type + s.type = s.type.toUpperCase(); + + // Determine if request has content + s.hasContent = !rnoContent.test( s.type ); + + // Watch for a new set of requests + if ( fireGlobals && jQuery.active++ === 0 ) { + jQuery.event.trigger( "ajaxStart" ); + } + + // More options handling for requests with no content + if ( !s.hasContent ) { + + // If data is available, append data to url + if ( s.data ) { + s.url += ( rquery.test( s.url ) ? "&" : "?" ) + s.data; + // #9682: remove data so that it's not used in an eventual retry + delete s.data; + } + + // Get ifModifiedKey before adding the anti-cache parameter + ifModifiedKey = s.url; + + // Add anti-cache in url if needed + if ( s.cache === false ) { + + var ts = jQuery.now(), + // try replacing _= if it is there + ret = s.url.replace( rts, "$1_=" + ts ); + + // if nothing was replaced, add timestamp to the end + s.url = ret + ( ( ret === s.url ) ? ( rquery.test( s.url ) ? "&" : "?" ) + "_=" + ts : "" ); + } + } + + // Set the correct header, if data is being sent + if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) { + jqXHR.setRequestHeader( "Content-Type", s.contentType ); + } + + // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. + if ( s.ifModified ) { + ifModifiedKey = ifModifiedKey || s.url; + if ( jQuery.lastModified[ ifModifiedKey ] ) { + jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ ifModifiedKey ] ); + } + if ( jQuery.etag[ ifModifiedKey ] ) { + jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ ifModifiedKey ] ); + } + } + + // Set the Accepts header for the server, depending on the dataType + jqXHR.setRequestHeader( + "Accept", + s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[0] ] ? + s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) : + s.accepts[ "*" ] + ); + + // Check for headers option + for ( i in s.headers ) { + jqXHR.setRequestHeader( i, s.headers[ i ] ); + } + + // Allow custom headers/mimetypes and early abort + if ( s.beforeSend && ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || state === 2 ) ) { + // Abort if not done already and return + return jqXHR.abort(); + + } + + // aborting is no longer a cancellation + strAbort = "abort"; + + // Install callbacks on deferreds + for ( i in { success: 1, error: 1, complete: 1 } ) { + jqXHR[ i ]( s[ i ] ); + } + + // Get transport + transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR ); + + // If no transport, we auto-abort + if ( !transport ) { + done( -1, "No Transport" ); + } else { + jqXHR.readyState = 1; + // Send global event + if ( fireGlobals ) { + globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] ); + } + // Timeout + if ( s.async && s.timeout > 0 ) { + timeoutTimer = setTimeout( function(){ + jqXHR.abort( "timeout" ); + }, s.timeout ); + } + + try { + state = 1; + transport.send( requestHeaders, done ); + } catch (e) { + // Propagate exception as error if not done + if ( state < 2 ) { + done( -1, e ); + // Simply rethrow otherwise + } else { + throw e; + } + } + } + + return jqXHR; + }, + + // Counter for holding the number of active queries + active: 0, + + // Last-Modified header cache for next request + lastModified: {}, + etag: {} + +}); + +/* Handles responses to an ajax request: + * - sets all responseXXX fields accordingly + * - finds the right dataType (mediates between content-type and expected dataType) + * - returns the corresponding response + */ +function ajaxHandleResponses( s, jqXHR, responses ) { + + var ct, type, finalDataType, firstDataType, + contents = s.contents, + dataTypes = s.dataTypes, + responseFields = s.responseFields; + + // Fill responseXXX fields + for ( type in responseFields ) { + if ( type in responses ) { + jqXHR[ responseFields[type] ] = responses[ type ]; + } + } + + // Remove auto dataType and get content-type in the process + while( dataTypes[ 0 ] === "*" ) { + dataTypes.shift(); + if ( ct === undefined ) { + ct = s.mimeType || jqXHR.getResponseHeader( "content-type" ); + } + } + + // Check if we're dealing with a known content-type + if ( ct ) { + for ( type in contents ) { + if ( contents[ type ] && contents[ type ].test( ct ) ) { + dataTypes.unshift( type ); + break; + } + } + } + + // Check to see if we have a response for the expected dataType + if ( dataTypes[ 0 ] in responses ) { + finalDataType = dataTypes[ 0 ]; + } else { + // Try convertible dataTypes + for ( type in responses ) { + if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[0] ] ) { + finalDataType = type; + break; + } + if ( !firstDataType ) { + firstDataType = type; + } + } + // Or just use first one + finalDataType = finalDataType || firstDataType; + } + + // If we found a dataType + // We add the dataType to the list if needed + // and return the corresponding response + if ( finalDataType ) { + if ( finalDataType !== dataTypes[ 0 ] ) { + dataTypes.unshift( finalDataType ); + } + return responses[ finalDataType ]; + } +} + +// Chain conversions given the request and the original response +function ajaxConvert( s, response ) { + + var conv, conv2, current, tmp, + // Work with a copy of dataTypes in case we need to modify it for conversion + dataTypes = s.dataTypes.slice(), + prev = dataTypes[ 0 ], + converters = {}, + i = 0; + + // Apply the dataFilter if provided + if ( s.dataFilter ) { + response = s.dataFilter( response, s.dataType ); + } + + // Create converters map with lowercased keys + if ( dataTypes[ 1 ] ) { + for ( conv in s.converters ) { + converters[ conv.toLowerCase() ] = s.converters[ conv ]; + } + } + + // Convert to each sequential dataType, tolerating list modification + for ( ; (current = dataTypes[++i]); ) { + + // There's only work to do if current dataType is non-auto + if ( current !== "*" ) { + + // Convert response if prev dataType is non-auto and differs from current + if ( prev !== "*" && prev !== current ) { + + // Seek a direct converter + conv = converters[ prev + " " + current ] || converters[ "* " + current ]; + + // If none found, seek a pair + if ( !conv ) { + for ( conv2 in converters ) { + + // If conv2 outputs current + tmp = conv2.split(" "); + if ( tmp[ 1 ] === current ) { + + // If prev can be converted to accepted input + conv = converters[ prev + " " + tmp[ 0 ] ] || + converters[ "* " + tmp[ 0 ] ]; + if ( conv ) { + // Condense equivalence converters + if ( conv === true ) { + conv = converters[ conv2 ]; + + // Otherwise, insert the intermediate dataType + } else if ( converters[ conv2 ] !== true ) { + current = tmp[ 0 ]; + dataTypes.splice( i--, 0, current ); + } + + break; + } + } + } + } + + // Apply converter (if not an equivalence) + if ( conv !== true ) { + + // Unless errors are allowed to bubble, catch and return them + if ( conv && s["throws"] ) { + response = conv( response ); + } else { + try { + response = conv( response ); + } catch ( e ) { + return { state: "parsererror", error: conv ? e : "No conversion from " + prev + " to " + current }; + } + } + } + } + + // Update prev for next iteration + prev = current; + } + } + + return { state: "success", data: response }; +} +var oldCallbacks = [], + rquestion = /\?/, + rjsonp = /(=)\?(?=&|$)|\?\?/, + nonce = jQuery.now(); + +// Default jsonp settings +jQuery.ajaxSetup({ + jsonp: "callback", + jsonpCallback: function() { + var callback = oldCallbacks.pop() || ( jQuery.expando + "_" + ( nonce++ ) ); + this[ callback ] = true; + return callback; + } +}); + +// Detect, normalize options and install callbacks for jsonp requests +jQuery.ajaxPrefilter( "json jsonp", function( s, originalSettings, jqXHR ) { + + var callbackName, overwritten, responseContainer, + data = s.data, + url = s.url, + hasCallback = s.jsonp !== false, + replaceInUrl = hasCallback && rjsonp.test( url ), + replaceInData = hasCallback && !replaceInUrl && typeof data === "string" && + !( s.contentType || "" ).indexOf("application/x-www-form-urlencoded") && + rjsonp.test( data ); + + // Handle iff the expected data type is "jsonp" or we have a parameter to set + if ( s.dataTypes[ 0 ] === "jsonp" || replaceInUrl || replaceInData ) { + + // Get callback name, remembering preexisting value associated with it + callbackName = s.jsonpCallback = jQuery.isFunction( s.jsonpCallback ) ? + s.jsonpCallback() : + s.jsonpCallback; + overwritten = window[ callbackName ]; + + // Insert callback into url or form data + if ( replaceInUrl ) { + s.url = url.replace( rjsonp, "$1" + callbackName ); + } else if ( replaceInData ) { + s.data = data.replace( rjsonp, "$1" + callbackName ); + } else if ( hasCallback ) { + s.url += ( rquestion.test( url ) ? "&" : "?" ) + s.jsonp + "=" + callbackName; + } + + // Use data converter to retrieve json after script execution + s.converters["script json"] = function() { + if ( !responseContainer ) { + jQuery.error( callbackName + " was not called" ); + } + return responseContainer[ 0 ]; + }; + + // force json dataType + s.dataTypes[ 0 ] = "json"; + + // Install callback + window[ callbackName ] = function() { + responseContainer = arguments; + }; + + // Clean-up function (fires after converters) + jqXHR.always(function() { + // Restore preexisting value + window[ callbackName ] = overwritten; + + // Save back as free + if ( s[ callbackName ] ) { + // make sure that re-using the options doesn't screw things around + s.jsonpCallback = originalSettings.jsonpCallback; + + // save the callback name for future use + oldCallbacks.push( callbackName ); + } + + // Call if it was a function and we have a response + if ( responseContainer && jQuery.isFunction( overwritten ) ) { + overwritten( responseContainer[ 0 ] ); + } + + responseContainer = overwritten = undefined; + }); + + // Delegate to script + return "script"; + } +}); +// Install script dataType +jQuery.ajaxSetup({ + accepts: { + script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" + }, + contents: { + script: /javascript|ecmascript/ + }, + converters: { + "text script": function( text ) { + jQuery.globalEval( text ); + return text; + } + } +}); + +// Handle cache's special case and global +jQuery.ajaxPrefilter( "script", function( s ) { + if ( s.cache === undefined ) { + s.cache = false; + } + if ( s.crossDomain ) { + s.type = "GET"; + s.global = false; + } +}); + +// Bind script tag hack transport +jQuery.ajaxTransport( "script", function(s) { + + // This transport only deals with cross domain requests + if ( s.crossDomain ) { + + var script, + head = document.head || document.getElementsByTagName( "head" )[0] || document.documentElement; + + return { + + send: function( _, callback ) { + + script = document.createElement( "script" ); + + script.async = "async"; + + if ( s.scriptCharset ) { + script.charset = s.scriptCharset; + } + + script.src = s.url; + + // Attach handlers for all browsers + script.onload = script.onreadystatechange = function( _, isAbort ) { + + if ( isAbort || !script.readyState || /loaded|complete/.test( script.readyState ) ) { + + // Handle memory leak in IE + script.onload = script.onreadystatechange = null; + + // Remove the script + if ( head && script.parentNode ) { + head.removeChild( script ); + } + + // Dereference the script + script = undefined; + + // Callback if not abort + if ( !isAbort ) { + callback( 200, "success" ); + } + } + }; + // Use insertBefore instead of appendChild to circumvent an IE6 bug. + // This arises when a base node is used (#2709 and #4378). + head.insertBefore( script, head.firstChild ); + }, + + abort: function() { + if ( script ) { + script.onload( 0, 1 ); + } + } + }; + } +}); +var xhrCallbacks, + // #5280: Internet Explorer will keep connections alive if we don't abort on unload + xhrOnUnloadAbort = window.ActiveXObject ? function() { + // Abort all pending requests + for ( var key in xhrCallbacks ) { + xhrCallbacks[ key ]( 0, 1 ); + } + } : false, + xhrId = 0; + +// Functions to create xhrs +function createStandardXHR() { + try { + return new window.XMLHttpRequest(); + } catch( e ) {} +} + +function createActiveXHR() { + try { + return new window.ActiveXObject( "Microsoft.XMLHTTP" ); + } catch( e ) {} +} + +// Create the request object +// (This is still attached to ajaxSettings for backward compatibility) +jQuery.ajaxSettings.xhr = window.ActiveXObject ? + /* Microsoft failed to properly + * implement the XMLHttpRequest in IE7 (can't request local files), + * so we use the ActiveXObject when it is available + * Additionally XMLHttpRequest can be disabled in IE7/IE8 so + * we need a fallback. + */ + function() { + return !this.isLocal && createStandardXHR() || createActiveXHR(); + } : + // For all other browsers, use the standard XMLHttpRequest object + createStandardXHR; + +// Determine support properties +(function( xhr ) { + jQuery.extend( jQuery.support, { + ajax: !!xhr, + cors: !!xhr && ( "withCredentials" in xhr ) + }); +})( jQuery.ajaxSettings.xhr() ); + +// Create transport if the browser can provide an xhr +if ( jQuery.support.ajax ) { + + jQuery.ajaxTransport(function( s ) { + // Cross domain only allowed if supported through XMLHttpRequest + if ( !s.crossDomain || jQuery.support.cors ) { + + var callback; + + return { + send: function( headers, complete ) { + + // Get a new xhr + var handle, i, + xhr = s.xhr(); + + // Open the socket + // Passing null username, generates a login popup on Opera (#2865) + if ( s.username ) { + xhr.open( s.type, s.url, s.async, s.username, s.password ); + } else { + xhr.open( s.type, s.url, s.async ); + } + + // Apply custom fields if provided + if ( s.xhrFields ) { + for ( i in s.xhrFields ) { + xhr[ i ] = s.xhrFields[ i ]; + } + } + + // Override mime type if needed + if ( s.mimeType && xhr.overrideMimeType ) { + xhr.overrideMimeType( s.mimeType ); + } + + // X-Requested-With header + // For cross-domain requests, seeing as conditions for a preflight are + // akin to a jigsaw puzzle, we simply never set it to be sure. + // (it can always be set on a per-request basis or even using ajaxSetup) + // For same-domain requests, won't change header if already provided. + if ( !s.crossDomain && !headers["X-Requested-With"] ) { + headers[ "X-Requested-With" ] = "XMLHttpRequest"; + } + + // Need an extra try/catch for cross domain requests in Firefox 3 + try { + for ( i in headers ) { + xhr.setRequestHeader( i, headers[ i ] ); + } + } catch( _ ) {} + + // Do send the request + // This may raise an exception which is actually + // handled in jQuery.ajax (so no try/catch here) + xhr.send( ( s.hasContent && s.data ) || null ); + + // Listener + callback = function( _, isAbort ) { + + var status, + statusText, + responseHeaders, + responses, + xml; + + // Firefox throws exceptions when accessing properties + // of an xhr when a network error occurred + // http://helpful.knobs-dials.com/index.php/Component_returned_failure_code:_0x80040111_(NS_ERROR_NOT_AVAILABLE) + try { + + // Was never called and is aborted or complete + if ( callback && ( isAbort || xhr.readyState === 4 ) ) { + + // Only called once + callback = undefined; + + // Do not keep as active anymore + if ( handle ) { + xhr.onreadystatechange = jQuery.noop; + if ( xhrOnUnloadAbort ) { + delete xhrCallbacks[ handle ]; + } + } + + // If it's an abort + if ( isAbort ) { + // Abort it manually if needed + if ( xhr.readyState !== 4 ) { + xhr.abort(); + } + } else { + status = xhr.status; + responseHeaders = xhr.getAllResponseHeaders(); + responses = {}; + xml = xhr.responseXML; + + // Construct response list + if ( xml && xml.documentElement /* #4958 */ ) { + responses.xml = xml; + } + + // When requesting binary data, IE6-9 will throw an exception + // on any attempt to access responseText (#11426) + try { + responses.text = xhr.responseText; + } catch( e ) { + } + + // Firefox throws an exception when accessing + // statusText for faulty cross-domain requests + try { + statusText = xhr.statusText; + } catch( e ) { + // We normalize with Webkit giving an empty statusText + statusText = ""; + } + + // Filter status for non standard behaviors + + // If the request is local and we have data: assume a success + // (success with no data won't get notified, that's the best we + // can do given current implementations) + if ( !status && s.isLocal && !s.crossDomain ) { + status = responses.text ? 200 : 404; + // IE - #1450: sometimes returns 1223 when it should be 204 + } else if ( status === 1223 ) { + status = 204; + } + } + } + } catch( firefoxAccessException ) { + if ( !isAbort ) { + complete( -1, firefoxAccessException ); + } + } + + // Call complete if needed + if ( responses ) { + complete( status, statusText, responses, responseHeaders ); + } + }; + + if ( !s.async ) { + // if we're in sync mode we fire the callback + callback(); + } else if ( xhr.readyState === 4 ) { + // (IE6 & IE7) if it's in cache and has been + // retrieved directly we need to fire the callback + setTimeout( callback, 0 ); + } else { + handle = ++xhrId; + if ( xhrOnUnloadAbort ) { + // Create the active xhrs callbacks list if needed + // and attach the unload handler + if ( !xhrCallbacks ) { + xhrCallbacks = {}; + jQuery( window ).unload( xhrOnUnloadAbort ); + } + // Add to list of active xhrs callbacks + xhrCallbacks[ handle ] = callback; + } + xhr.onreadystatechange = callback; + } + }, + + abort: function() { + if ( callback ) { + callback(0,1); + } + } + }; + } + }); +} +var fxNow, timerId, + rfxtypes = /^(?:toggle|show|hide)$/, + rfxnum = new RegExp( "^(?:([-+])=|)(" + core_pnum + ")([a-z%]*)$", "i" ), + rrun = /queueHooks$/, + animationPrefilters = [ defaultPrefilter ], + tweeners = { + "*": [function( prop, value ) { + var end, unit, + tween = this.createTween( prop, value ), + parts = rfxnum.exec( value ), + target = tween.cur(), + start = +target || 0, + scale = 1, + maxIterations = 20; + + if ( parts ) { + end = +parts[2]; + unit = parts[3] || ( jQuery.cssNumber[ prop ] ? "" : "px" ); + + // We need to compute starting value + if ( unit !== "px" && start ) { + // Iteratively approximate from a nonzero starting point + // Prefer the current property, because this process will be trivial if it uses the same units + // Fallback to end or a simple constant + start = jQuery.css( tween.elem, prop, true ) || end || 1; + + do { + // If previous iteration zeroed out, double until we get *something* + // Use a string for doubling factor so we don't accidentally see scale as unchanged below + scale = scale || ".5"; + + // Adjust and apply + start = start / scale; + jQuery.style( tween.elem, prop, start + unit ); + + // Update scale, tolerating zero or NaN from tween.cur() + // And breaking the loop if scale is unchanged or perfect, or if we've just had enough + } while ( scale !== (scale = tween.cur() / target) && scale !== 1 && --maxIterations ); + } + + tween.unit = unit; + tween.start = start; + // If a +=/-= token was provided, we're doing a relative animation + tween.end = parts[1] ? start + ( parts[1] + 1 ) * end : end; + } + return tween; + }] + }; + +// Animations created synchronously will run synchronously +function createFxNow() { + setTimeout(function() { + fxNow = undefined; + }, 0 ); + return ( fxNow = jQuery.now() ); +} + +function createTweens( animation, props ) { + jQuery.each( props, function( prop, value ) { + var collection = ( tweeners[ prop ] || [] ).concat( tweeners[ "*" ] ), + index = 0, + length = collection.length; + for ( ; index < length; index++ ) { + if ( collection[ index ].call( animation, prop, value ) ) { + + // we're done with this property + return; + } + } + }); +} + +function Animation( elem, properties, options ) { + var result, + index = 0, + tweenerIndex = 0, + length = animationPrefilters.length, + deferred = jQuery.Deferred().always( function() { + // don't match elem in the :animated selector + delete tick.elem; + }), + tick = function() { + var currentTime = fxNow || createFxNow(), + remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ), + // archaic crash bug won't allow us to use 1 - ( 0.5 || 0 ) (#12497) + temp = remaining / animation.duration || 0, + percent = 1 - temp, + index = 0, + length = animation.tweens.length; + + for ( ; index < length ; index++ ) { + animation.tweens[ index ].run( percent ); + } + + deferred.notifyWith( elem, [ animation, percent, remaining ]); + + if ( percent < 1 && length ) { + return remaining; + } else { + deferred.resolveWith( elem, [ animation ] ); + return false; + } + }, + animation = deferred.promise({ + elem: elem, + props: jQuery.extend( {}, properties ), + opts: jQuery.extend( true, { specialEasing: {} }, options ), + originalProperties: properties, + originalOptions: options, + startTime: fxNow || createFxNow(), + duration: options.duration, + tweens: [], + createTween: function( prop, end, easing ) { + var tween = jQuery.Tween( elem, animation.opts, prop, end, + animation.opts.specialEasing[ prop ] || animation.opts.easing ); + animation.tweens.push( tween ); + return tween; + }, + stop: function( gotoEnd ) { + var index = 0, + // if we are going to the end, we want to run all the tweens + // otherwise we skip this part + length = gotoEnd ? animation.tweens.length : 0; + + for ( ; index < length ; index++ ) { + animation.tweens[ index ].run( 1 ); + } + + // resolve when we played the last frame + // otherwise, reject + if ( gotoEnd ) { + deferred.resolveWith( elem, [ animation, gotoEnd ] ); + } else { + deferred.rejectWith( elem, [ animation, gotoEnd ] ); + } + return this; + } + }), + props = animation.props; + + propFilter( props, animation.opts.specialEasing ); + + for ( ; index < length ; index++ ) { + result = animationPrefilters[ index ].call( animation, elem, props, animation.opts ); + if ( result ) { + return result; + } + } + + createTweens( animation, props ); + + if ( jQuery.isFunction( animation.opts.start ) ) { + animation.opts.start.call( elem, animation ); + } + + jQuery.fx.timer( + jQuery.extend( tick, { + anim: animation, + queue: animation.opts.queue, + elem: elem + }) + ); + + // attach callbacks from options + return animation.progress( animation.opts.progress ) + .done( animation.opts.done, animation.opts.complete ) + .fail( animation.opts.fail ) + .always( animation.opts.always ); +} + +function propFilter( props, specialEasing ) { + var index, name, easing, value, hooks; + + // camelCase, specialEasing and expand cssHook pass + for ( index in props ) { + name = jQuery.camelCase( index ); + easing = specialEasing[ name ]; + value = props[ index ]; + if ( jQuery.isArray( value ) ) { + easing = value[ 1 ]; + value = props[ index ] = value[ 0 ]; + } + + if ( index !== name ) { + props[ name ] = value; + delete props[ index ]; + } + + hooks = jQuery.cssHooks[ name ]; + if ( hooks && "expand" in hooks ) { + value = hooks.expand( value ); + delete props[ name ]; + + // not quite $.extend, this wont overwrite keys already present. + // also - reusing 'index' from above because we have the correct "name" + for ( index in value ) { + if ( !( index in props ) ) { + props[ index ] = value[ index ]; + specialEasing[ index ] = easing; + } + } + } else { + specialEasing[ name ] = easing; + } + } +} + +jQuery.Animation = jQuery.extend( Animation, { + + tweener: function( props, callback ) { + if ( jQuery.isFunction( props ) ) { + callback = props; + props = [ "*" ]; + } else { + props = props.split(" "); + } + + var prop, + index = 0, + length = props.length; + + for ( ; index < length ; index++ ) { + prop = props[ index ]; + tweeners[ prop ] = tweeners[ prop ] || []; + tweeners[ prop ].unshift( callback ); + } + }, + + prefilter: function( callback, prepend ) { + if ( prepend ) { + animationPrefilters.unshift( callback ); + } else { + animationPrefilters.push( callback ); + } + } +}); + +function defaultPrefilter( elem, props, opts ) { + var index, prop, value, length, dataShow, toggle, tween, hooks, oldfire, + anim = this, + style = elem.style, + orig = {}, + handled = [], + hidden = elem.nodeType && isHidden( elem ); + + // handle queue: false promises + if ( !opts.queue ) { + hooks = jQuery._queueHooks( elem, "fx" ); + if ( hooks.unqueued == null ) { + hooks.unqueued = 0; + oldfire = hooks.empty.fire; + hooks.empty.fire = function() { + if ( !hooks.unqueued ) { + oldfire(); + } + }; + } + hooks.unqueued++; + + anim.always(function() { + // doing this makes sure that the complete handler will be called + // before this completes + anim.always(function() { + hooks.unqueued--; + if ( !jQuery.queue( elem, "fx" ).length ) { + hooks.empty.fire(); + } + }); + }); + } + + // height/width overflow pass + if ( elem.nodeType === 1 && ( "height" in props || "width" in props ) ) { + // Make sure that nothing sneaks out + // Record all 3 overflow attributes because IE does not + // change the overflow attribute when overflowX and + // overflowY are set to the same value + opts.overflow = [ style.overflow, style.overflowX, style.overflowY ]; + + // Set display property to inline-block for height/width + // animations on inline elements that are having width/height animated + if ( jQuery.css( elem, "display" ) === "inline" && + jQuery.css( elem, "float" ) === "none" ) { + + // inline-level elements accept inline-block; + // block-level elements need to be inline with layout + if ( !jQuery.support.inlineBlockNeedsLayout || css_defaultDisplay( elem.nodeName ) === "inline" ) { + style.display = "inline-block"; + + } else { + style.zoom = 1; + } + } + } + + if ( opts.overflow ) { + style.overflow = "hidden"; + if ( !jQuery.support.shrinkWrapBlocks ) { + anim.done(function() { + style.overflow = opts.overflow[ 0 ]; + style.overflowX = opts.overflow[ 1 ]; + style.overflowY = opts.overflow[ 2 ]; + }); + } + } + + + // show/hide pass + for ( index in props ) { + value = props[ index ]; + if ( rfxtypes.exec( value ) ) { + delete props[ index ]; + toggle = toggle || value === "toggle"; + if ( value === ( hidden ? "hide" : "show" ) ) { + continue; + } + handled.push( index ); + } + } + + length = handled.length; + if ( length ) { + dataShow = jQuery._data( elem, "fxshow" ) || jQuery._data( elem, "fxshow", {} ); + if ( "hidden" in dataShow ) { + hidden = dataShow.hidden; + } + + // store state if its toggle - enables .stop().toggle() to "reverse" + if ( toggle ) { + dataShow.hidden = !hidden; + } + if ( hidden ) { + jQuery( elem ).show(); + } else { + anim.done(function() { + jQuery( elem ).hide(); + }); + } + anim.done(function() { + var prop; + jQuery.removeData( elem, "fxshow", true ); + for ( prop in orig ) { + jQuery.style( elem, prop, orig[ prop ] ); + } + }); + for ( index = 0 ; index < length ; index++ ) { + prop = handled[ index ]; + tween = anim.createTween( prop, hidden ? dataShow[ prop ] : 0 ); + orig[ prop ] = dataShow[ prop ] || jQuery.style( elem, prop ); + + if ( !( prop in dataShow ) ) { + dataShow[ prop ] = tween.start; + if ( hidden ) { + tween.end = tween.start; + tween.start = prop === "width" || prop === "height" ? 1 : 0; + } + } + } + } +} + +function Tween( elem, options, prop, end, easing ) { + return new Tween.prototype.init( elem, options, prop, end, easing ); +} +jQuery.Tween = Tween; + +Tween.prototype = { + constructor: Tween, + init: function( elem, options, prop, end, easing, unit ) { + this.elem = elem; + this.prop = prop; + this.easing = easing || "swing"; + this.options = options; + this.start = this.now = this.cur(); + this.end = end; + this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" ); + }, + cur: function() { + var hooks = Tween.propHooks[ this.prop ]; + + return hooks && hooks.get ? + hooks.get( this ) : + Tween.propHooks._default.get( this ); + }, + run: function( percent ) { + var eased, + hooks = Tween.propHooks[ this.prop ]; + + if ( this.options.duration ) { + this.pos = eased = jQuery.easing[ this.easing ]( + percent, this.options.duration * percent, 0, 1, this.options.duration + ); + } else { + this.pos = eased = percent; + } + this.now = ( this.end - this.start ) * eased + this.start; + + if ( this.options.step ) { + this.options.step.call( this.elem, this.now, this ); + } + + if ( hooks && hooks.set ) { + hooks.set( this ); + } else { + Tween.propHooks._default.set( this ); + } + return this; + } +}; + +Tween.prototype.init.prototype = Tween.prototype; + +Tween.propHooks = { + _default: { + get: function( tween ) { + var result; + + if ( tween.elem[ tween.prop ] != null && + (!tween.elem.style || tween.elem.style[ tween.prop ] == null) ) { + return tween.elem[ tween.prop ]; + } + + // passing any value as a 4th parameter to .css will automatically + // attempt a parseFloat and fallback to a string if the parse fails + // so, simple values such as "10px" are parsed to Float. + // complex values such as "rotate(1rad)" are returned as is. + result = jQuery.css( tween.elem, tween.prop, false, "" ); + // Empty strings, null, undefined and "auto" are converted to 0. + return !result || result === "auto" ? 0 : result; + }, + set: function( tween ) { + // use step hook for back compat - use cssHook if its there - use .style if its + // available and use plain properties where available + if ( jQuery.fx.step[ tween.prop ] ) { + jQuery.fx.step[ tween.prop ]( tween ); + } else if ( tween.elem.style && ( tween.elem.style[ jQuery.cssProps[ tween.prop ] ] != null || jQuery.cssHooks[ tween.prop ] ) ) { + jQuery.style( tween.elem, tween.prop, tween.now + tween.unit ); + } else { + tween.elem[ tween.prop ] = tween.now; + } + } + } +}; + +// Remove in 2.0 - this supports IE8's panic based approach +// to setting things on disconnected nodes + +Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = { + set: function( tween ) { + if ( tween.elem.nodeType && tween.elem.parentNode ) { + tween.elem[ tween.prop ] = tween.now; + } + } +}; + +jQuery.each([ "toggle", "show", "hide" ], function( i, name ) { + var cssFn = jQuery.fn[ name ]; + jQuery.fn[ name ] = function( speed, easing, callback ) { + return speed == null || typeof speed === "boolean" || + // special check for .toggle( handler, handler, ... ) + ( !i && jQuery.isFunction( speed ) && jQuery.isFunction( easing ) ) ? + cssFn.apply( this, arguments ) : + this.animate( genFx( name, true ), speed, easing, callback ); + }; +}); + +jQuery.fn.extend({ + fadeTo: function( speed, to, easing, callback ) { + + // show any hidden elements after setting opacity to 0 + return this.filter( isHidden ).css( "opacity", 0 ).show() + + // animate to the value specified + .end().animate({ opacity: to }, speed, easing, callback ); + }, + animate: function( prop, speed, easing, callback ) { + var empty = jQuery.isEmptyObject( prop ), + optall = jQuery.speed( speed, easing, callback ), + doAnimation = function() { + // Operate on a copy of prop so per-property easing won't be lost + var anim = Animation( this, jQuery.extend( {}, prop ), optall ); + + // Empty animations resolve immediately + if ( empty ) { + anim.stop( true ); + } + }; + + return empty || optall.queue === false ? + this.each( doAnimation ) : + this.queue( optall.queue, doAnimation ); + }, + stop: function( type, clearQueue, gotoEnd ) { + var stopQueue = function( hooks ) { + var stop = hooks.stop; + delete hooks.stop; + stop( gotoEnd ); + }; + + if ( typeof type !== "string" ) { + gotoEnd = clearQueue; + clearQueue = type; + type = undefined; + } + if ( clearQueue && type !== false ) { + this.queue( type || "fx", [] ); + } + + return this.each(function() { + var dequeue = true, + index = type != null && type + "queueHooks", + timers = jQuery.timers, + data = jQuery._data( this ); + + if ( index ) { + if ( data[ index ] && data[ index ].stop ) { + stopQueue( data[ index ] ); + } + } else { + for ( index in data ) { + if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) { + stopQueue( data[ index ] ); + } + } + } + + for ( index = timers.length; index--; ) { + if ( timers[ index ].elem === this && (type == null || timers[ index ].queue === type) ) { + timers[ index ].anim.stop( gotoEnd ); + dequeue = false; + timers.splice( index, 1 ); + } + } + + // start the next in the queue if the last step wasn't forced + // timers currently will call their complete callbacks, which will dequeue + // but only if they were gotoEnd + if ( dequeue || !gotoEnd ) { + jQuery.dequeue( this, type ); + } + }); + } +}); + +// Generate parameters to create a standard animation +function genFx( type, includeWidth ) { + var which, + attrs = { height: type }, + i = 0; + + // if we include width, step value is 1 to do all cssExpand values, + // if we don't include width, step value is 2 to skip over Left and Right + includeWidth = includeWidth? 1 : 0; + for( ; i < 4 ; i += 2 - includeWidth ) { + which = cssExpand[ i ]; + attrs[ "margin" + which ] = attrs[ "padding" + which ] = type; + } + + if ( includeWidth ) { + attrs.opacity = attrs.width = type; + } + + return attrs; +} + +// Generate shortcuts for custom animations +jQuery.each({ + slideDown: genFx("show"), + slideUp: genFx("hide"), + slideToggle: genFx("toggle"), + fadeIn: { opacity: "show" }, + fadeOut: { opacity: "hide" }, + fadeToggle: { opacity: "toggle" } +}, function( name, props ) { + jQuery.fn[ name ] = function( speed, easing, callback ) { + return this.animate( props, speed, easing, callback ); + }; +}); + +jQuery.speed = function( speed, easing, fn ) { + var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : { + complete: fn || !fn && easing || + jQuery.isFunction( speed ) && speed, + duration: speed, + easing: fn && easing || easing && !jQuery.isFunction( easing ) && easing + }; + + opt.duration = jQuery.fx.off ? 0 : typeof opt.duration === "number" ? opt.duration : + opt.duration in jQuery.fx.speeds ? jQuery.fx.speeds[ opt.duration ] : jQuery.fx.speeds._default; + + // normalize opt.queue - true/undefined/null -> "fx" + if ( opt.queue == null || opt.queue === true ) { + opt.queue = "fx"; + } + + // Queueing + opt.old = opt.complete; + + opt.complete = function() { + if ( jQuery.isFunction( opt.old ) ) { + opt.old.call( this ); + } + + if ( opt.queue ) { + jQuery.dequeue( this, opt.queue ); + } + }; + + return opt; +}; + +jQuery.easing = { + linear: function( p ) { + return p; + }, + swing: function( p ) { + return 0.5 - Math.cos( p*Math.PI ) / 2; + } +}; + +jQuery.timers = []; +jQuery.fx = Tween.prototype.init; +jQuery.fx.tick = function() { + var timer, + timers = jQuery.timers, + i = 0; + + fxNow = jQuery.now(); + + for ( ; i < timers.length; i++ ) { + timer = timers[ i ]; + // Checks the timer has not already been removed + if ( !timer() && timers[ i ] === timer ) { + timers.splice( i--, 1 ); + } + } + + if ( !timers.length ) { + jQuery.fx.stop(); + } + fxNow = undefined; +}; + +jQuery.fx.timer = function( timer ) { + if ( timer() && jQuery.timers.push( timer ) && !timerId ) { + timerId = setInterval( jQuery.fx.tick, jQuery.fx.interval ); + } +}; + +jQuery.fx.interval = 13; + +jQuery.fx.stop = function() { + clearInterval( timerId ); + timerId = null; +}; + +jQuery.fx.speeds = { + slow: 600, + fast: 200, + // Default speed + _default: 400 +}; + +// Back Compat <1.8 extension point +jQuery.fx.step = {}; + +if ( jQuery.expr && jQuery.expr.filters ) { + jQuery.expr.filters.animated = function( elem ) { + return jQuery.grep(jQuery.timers, function( fn ) { + return elem === fn.elem; + }).length; + }; +} +var rroot = /^(?:body|html)$/i; + +jQuery.fn.offset = function( options ) { + if ( arguments.length ) { + return options === undefined ? + this : + this.each(function( i ) { + jQuery.offset.setOffset( this, options, i ); + }); + } + + var docElem, body, win, clientTop, clientLeft, scrollTop, scrollLeft, + box = { top: 0, left: 0 }, + elem = this[ 0 ], + doc = elem && elem.ownerDocument; + + if ( !doc ) { + return; + } + + if ( (body = doc.body) === elem ) { + return jQuery.offset.bodyOffset( elem ); + } + + docElem = doc.documentElement; + + // Make sure it's not a disconnected DOM node + if ( !jQuery.contains( docElem, elem ) ) { + return box; + } + + // If we don't have gBCR, just use 0,0 rather than error + // BlackBerry 5, iOS 3 (original iPhone) + if ( typeof elem.getBoundingClientRect !== "undefined" ) { + box = elem.getBoundingClientRect(); + } + win = getWindow( doc ); + clientTop = docElem.clientTop || body.clientTop || 0; + clientLeft = docElem.clientLeft || body.clientLeft || 0; + scrollTop = win.pageYOffset || docElem.scrollTop; + scrollLeft = win.pageXOffset || docElem.scrollLeft; + return { + top: box.top + scrollTop - clientTop, + left: box.left + scrollLeft - clientLeft + }; +}; + +jQuery.offset = { + + bodyOffset: function( body ) { + var top = body.offsetTop, + left = body.offsetLeft; + + if ( jQuery.support.doesNotIncludeMarginInBodyOffset ) { + top += parseFloat( jQuery.css(body, "marginTop") ) || 0; + left += parseFloat( jQuery.css(body, "marginLeft") ) || 0; + } + + return { top: top, left: left }; + }, + + setOffset: function( elem, options, i ) { + var position = jQuery.css( elem, "position" ); + + // set position first, in-case top/left are set even on static elem + if ( position === "static" ) { + elem.style.position = "relative"; + } + + var curElem = jQuery( elem ), + curOffset = curElem.offset(), + curCSSTop = jQuery.css( elem, "top" ), + curCSSLeft = jQuery.css( elem, "left" ), + calculatePosition = ( position === "absolute" || position === "fixed" ) && jQuery.inArray("auto", [curCSSTop, curCSSLeft]) > -1, + props = {}, curPosition = {}, curTop, curLeft; + + // need to be able to calculate position if either top or left is auto and position is either absolute or fixed + if ( calculatePosition ) { + curPosition = curElem.position(); + curTop = curPosition.top; + curLeft = curPosition.left; + } else { + curTop = parseFloat( curCSSTop ) || 0; + curLeft = parseFloat( curCSSLeft ) || 0; + } + + if ( jQuery.isFunction( options ) ) { + options = options.call( elem, i, curOffset ); + } + + if ( options.top != null ) { + props.top = ( options.top - curOffset.top ) + curTop; + } + if ( options.left != null ) { + props.left = ( options.left - curOffset.left ) + curLeft; + } + + if ( "using" in options ) { + options.using.call( elem, props ); + } else { + curElem.css( props ); + } + } +}; + + +jQuery.fn.extend({ + + position: function() { + if ( !this[0] ) { + return; + } + + var elem = this[0], + + // Get *real* offsetParent + offsetParent = this.offsetParent(), + + // Get correct offsets + offset = this.offset(), + parentOffset = rroot.test(offsetParent[0].nodeName) ? { top: 0, left: 0 } : offsetParent.offset(); + + // Subtract element margins + // note: when an element has margin: auto the offsetLeft and marginLeft + // are the same in Safari causing offset.left to incorrectly be 0 + offset.top -= parseFloat( jQuery.css(elem, "marginTop") ) || 0; + offset.left -= parseFloat( jQuery.css(elem, "marginLeft") ) || 0; + + // Add offsetParent borders + parentOffset.top += parseFloat( jQuery.css(offsetParent[0], "borderTopWidth") ) || 0; + parentOffset.left += parseFloat( jQuery.css(offsetParent[0], "borderLeftWidth") ) || 0; + + // Subtract the two offsets + return { + top: offset.top - parentOffset.top, + left: offset.left - parentOffset.left + }; + }, + + offsetParent: function() { + return this.map(function() { + var offsetParent = this.offsetParent || document.body; + while ( offsetParent && (!rroot.test(offsetParent.nodeName) && jQuery.css(offsetParent, "position") === "static") ) { + offsetParent = offsetParent.offsetParent; + } + return offsetParent || document.body; + }); + } +}); + + +// Create scrollLeft and scrollTop methods +jQuery.each( {scrollLeft: "pageXOffset", scrollTop: "pageYOffset"}, function( method, prop ) { + var top = /Y/.test( prop ); + + jQuery.fn[ method ] = function( val ) { + return jQuery.access( this, function( elem, method, val ) { + var win = getWindow( elem ); + + if ( val === undefined ) { + return win ? (prop in win) ? win[ prop ] : + win.document.documentElement[ method ] : + elem[ method ]; + } + + if ( win ) { + win.scrollTo( + !top ? val : jQuery( win ).scrollLeft(), + top ? val : jQuery( win ).scrollTop() + ); + + } else { + elem[ method ] = val; + } + }, method, val, arguments.length, null ); + }; +}); + +function getWindow( elem ) { + return jQuery.isWindow( elem ) ? + elem : + elem.nodeType === 9 ? + elem.defaultView || elem.parentWindow : + false; +} +// Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods +jQuery.each( { Height: "height", Width: "width" }, function( name, type ) { + jQuery.each( { padding: "inner" + name, content: type, "": "outer" + name }, function( defaultExtra, funcName ) { + // margin is only for outerHeight, outerWidth + jQuery.fn[ funcName ] = function( margin, value ) { + var chainable = arguments.length && ( defaultExtra || typeof margin !== "boolean" ), + extra = defaultExtra || ( margin === true || value === true ? "margin" : "border" ); + + return jQuery.access( this, function( elem, type, value ) { + var doc; + + if ( jQuery.isWindow( elem ) ) { + // As of 5/8/2012 this will yield incorrect results for Mobile Safari, but there + // isn't a whole lot we can do. See pull request at this URL for discussion: + // https://github.com/jquery/jquery/pull/764 + return elem.document.documentElement[ "client" + name ]; + } + + // Get document width or height + if ( elem.nodeType === 9 ) { + doc = elem.documentElement; + + // Either scroll[Width/Height] or offset[Width/Height] or client[Width/Height], whichever is greatest + // unfortunately, this causes bug #3838 in IE6/8 only, but there is currently no good, small way to fix it. + return Math.max( + elem.body[ "scroll" + name ], doc[ "scroll" + name ], + elem.body[ "offset" + name ], doc[ "offset" + name ], + doc[ "client" + name ] + ); + } + + return value === undefined ? + // Get width or height on the element, requesting but not forcing parseFloat + jQuery.css( elem, type, value, extra ) : + + // Set width or height on the element + jQuery.style( elem, type, value, extra ); + }, type, chainable ? margin : undefined, chainable, null ); + }; + }); +}); +// Expose jQuery to the global object +window.jQuery = window.$ = jQuery; + +// Expose jQuery as an AMD module, but only for AMD loaders that +// understand the issues with loading multiple versions of jQuery +// in a page that all might call define(). The loader will indicate +// they have special allowances for multiple jQuery versions by +// specifying define.amd.jQuery = true. Register as a named module, +// since jQuery can be concatenated with other files that may use define, +// but not use a proper concatenation script that understands anonymous +// AMD modules. A named AMD is safest and most robust way to register. +// Lowercase jquery is used because AMD module names are derived from +// file names, and jQuery is normally delivered in a lowercase file name. +// Do this after creating the global so that if an AMD module wants to call +// noConflict to hide this version of jQuery, it will work. +if ( typeof define === "function" && define.amd && define.amd.jQuery ) { + define( "jquery", [], function () { return jQuery; } ); +} + +})( window ); diff --git a/djangoproject/static/js/lib/jquery-flot/package.json b/djangoproject/static/js/lib/jquery-flot/package.json new file mode 100644 index 000000000..deb965177 --- /dev/null +++ b/djangoproject/static/js/lib/jquery-flot/package.json @@ -0,0 +1,11 @@ +{ + "name": "Flot", + "version": "0.8.3", + "main": "jquery.flot.js", + "scripts": { + "test": "make test" + }, + "devDependencies": { + "jshint": "0.9.1" + } +} diff --git a/djangoproject/static/js/main.js b/djangoproject/static/js/main.js index 8613d82a5..266879527 100644 --- a/djangoproject/static/js/main.js +++ b/djangoproject/static/js/main.js @@ -67,4 +67,11 @@ define(function(){ } require(mods); + + if (document.getElementById('dashboard')) { + require(['dashboard/index']); + } else if (document.getElementById('dashboard-detail')) { + require(['dashboard/detail']); + } + }); diff --git a/djangoproject/static/scss/_dashboard.scss b/djangoproject/static/scss/_dashboard.scss new file mode 100644 index 000000000..dfc1a88a7 --- /dev/null +++ b/djangoproject/static/scss/_dashboard.scss @@ -0,0 +1,73 @@ +#dashboard { + .full-width [role="main"] { + width: 80%; + max-width: 1200px; + margin: 0 auto; + text-align: center; + } +} + +.metric { + height: 8em; + width: 240px; + padding: 0 20px 10px 20px; + margin: 10px 10px 20px 10px; + border: 1px solid $gray-line; + @include border-radius(4px); + display: inline-block; + position: relative; + + h3 { + padding: 10px; + margin: 0 -20px; + @include font-size(18); + font-weight: 200; + display: block; + text-align: left; + color: $green-very-light; + background: $green-medium; + a { + color: $green-very-light; + } + } + + .value { + position: absolute; + bottom: 0; + left: 0; + width: 100%; + height: 80%; + padding: 0; + margin: 0; + text-align: center; + font-size: 5em; + line-height: 1.5em; + @include sans-serif(); + z-index: 10; + pointer-events:none; + + a { + text-decoration: none; + z-index: 10; + } + .timestamp { + font-size: 0.16em; + line-height: 1em; + } + } + + .sparkline { + position: absolute; + bottom: 0; + left: 0; + width: 100%; + height: 54px; + z-index: 1; + } +} + +.graph { + width: 100%; + margin: 0 auto; + height: 500px; +} diff --git a/djangoproject/static/scss/output.scss b/djangoproject/static/scss/output.scss index df28fcfa6..61a64ba3d 100755 --- a/djangoproject/static/scss/output.scss +++ b/djangoproject/static/scss/output.scss @@ -6,3 +6,4 @@ @import "pygments"; // code highlighting @import "styleguide"; // code highlighting @import "print"; // print styles +@import "dashboard"; diff --git a/djangoproject/templates/base.html b/djangoproject/templates/base.html index 2a3ebb3f9..60963c8c8 100644 --- a/djangoproject/templates/base.html +++ b/djangoproject/templates/base.html @@ -88,6 +88,7 @@ 'jquery': [], 'jquery.inview': ["jquery"], 'jquery.payment': ["jquery"], + 'jquery.flot': ["jquery"], 'stripe': { exports: 'Stripe' } @@ -97,6 +98,7 @@ "jquery.inview": extless("{% static 'js/lib/jquery.inview/jquery.inview.min.js' %}"), "jquery.payment": extless("{% static 'js/lib/jquery.payment/lib/jquery.payment.js' %}"), "modernizr-retina-test": extless("{% static 'js/lib/modernizr-retina-test/modernizr-retina-test.js' %}"), + "jquery.flot": extless("{% static 'js/lib/jquery-flot/jquery.flot.min.js' %}"), "mod/floating-warning": extless("{% static 'js/mod/floating-warning.js' %}"), "mod/list-collapsing": extless("{% static 'js/mod/list-collapsing.js' %}"), "mod/list-feature": extless("{% static 'js/mod/list-feature.js' %}"), diff --git a/djangoproject/templates/base_dashboard.html b/djangoproject/templates/base_dashboard.html new file mode 100644 index 000000000..be90120f6 --- /dev/null +++ b/djangoproject/templates/base_dashboard.html @@ -0,0 +1,8 @@ +{% extends "base.html" %} +{% load i18n %} + +{% block sectionid %}dashboard{% endblock %} + +{% block title %}{% trans 'Dashboard' %}{% endblock %} +{% block layout_class %}full-width{% endblock %} +{% block header %}

    {% trans 'Django development dashboard' %}

    {% endblock %} diff --git a/djangoproject/templates/dashboard/detail.html b/djangoproject/templates/dashboard/detail.html new file mode 100644 index 000000000..9b90f4a7e --- /dev/null +++ b/djangoproject/templates/dashboard/detail.html @@ -0,0 +1,10 @@ +{% extends "base_dashboard.html" %} + +{% block title %}{{ metric }} - {{ block.super }}{% endblock %} + +{% block sectionid %}dashboard-detail{% endblock %} + +{% block content %} +

    {{ metric }}

    +
    +{% endblock %} diff --git a/djangoproject/templates/dashboard/index.html b/djangoproject/templates/dashboard/index.html new file mode 100644 index 000000000..1d0cdb094 --- /dev/null +++ b/djangoproject/templates/dashboard/index.html @@ -0,0 +1,23 @@ +{% extends "base_dashboard.html" %} +{% load i18n %} + +{% block content %} + {% for report in data %} + {% ifchanged report.metric.category %} + {% if report.metric.category %}

    {{ report.metric.category }}

    {% endif %} + {% endifchanged %} +
    +

    {{ report.metric.name }}

    + + {% if report.metric.show_sparkline %} +
    + {% endif %} +
    + {% endfor %} +

    + {% blocktrans %}Updated {{ data.0.latest.timestamp|timesince }} ago.{% endblocktrans %} +

    +{% endblock %} diff --git a/requirements/dev.txt b/requirements/dev.txt index f699e5800..e11bff069 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -2,3 +2,4 @@ Fabric==1.10.1 whoosh<2.5 +rmoq==0.2.5 From 2a3c25ff3c28c59e1b88647be8aaa7a70c14eea6 Mon Sep 17 00:00:00 2001 From: Jannis Leidel Date: Mon, 26 Jan 2015 14:29:17 +0100 Subject: [PATCH 2/6] Use requests-mock instead of rmoq. --- Makefile | 2 +- ...pulls_state=closed_per_page=100_page=1.txt | 2 - ...pulls_state=closed_per_page=100_page=2.txt | 2 - ...k=7_format=rss.txt => rss_feed_metric.xml} | 357 +++++++++--------- dashboard/tests.py | 32 +- requirements/dev.txt | 1 - 6 files changed, 200 insertions(+), 196 deletions(-) delete mode 100644 dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=1.txt delete mode 100644 dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=2.txt rename dashboard/fixtures/{code.djangoproject.com_timeline_changeset=on_max=0_daysback=7_format=rss.txt => rss_feed_metric.xml} (99%) diff --git a/Makefile b/Makefile index 1dce4a6ba..195fd957c 100644 --- a/Makefile +++ b/Makefile @@ -22,7 +22,7 @@ install: pip install -r requirements/dev.txt test: - @coverage run manage.py test -v2 aggregator contact docs fundraising legacy releases svntogit + @coverage run manage.py test -v2 aggregator contact docs fundraising legacy releases svntogit dashboard ci: test @coverage report diff --git a/dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=1.txt b/dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=1.txt deleted file mode 100644 index 9bb913caa..000000000 --- a/dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=1.txt +++ /dev/null @@ -1,2 +0,0 @@ -application/json; charset=utf-8 -[{"url":"https://api.github.com/repos/django/django/pulls/3936","id":27549738,"html_url":"https://github.com/django/django/pull/3936","diff_url":"https://github.com/django/django/pull/3936.diff","patch_url":"https://github.com/django/django/pull/3936.patch","issue_url":"https://api.github.com/repos/django/django/issues/3936","number":3936,"state":"closed","locked":false,"title":"Fixed typo in 'Django Template Language'","user":{"login":"davidrobles","id":164460,"avatar_url":"https://avatars.githubusercontent.com/u/164460?v=3","gravatar_id":"","url":"https://api.github.com/users/davidrobles","html_url":"https://github.com/davidrobles","followers_url":"https://api.github.com/users/davidrobles/followers","following_url":"https://api.github.com/users/davidrobles/following{/other_user}","gists_url":"https://api.github.com/users/davidrobles/gists{/gist_id}","starred_url":"https://api.github.com/users/davidrobles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidrobles/subscriptions","organizations_url":"https://api.github.com/users/davidrobles/orgs","repos_url":"https://api.github.com/users/davidrobles/repos","events_url":"https://api.github.com/users/davidrobles/events{/privacy}","received_events_url":"https://api.github.com/users/davidrobles/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-17T01:48:23Z","updated_at":"2015-01-17T02:06:21Z","closed_at":"2015-01-17T02:06:21Z","merged_at":null,"merge_commit_sha":"145dfcba8f156f760a6ffa010cb875586b35e94e","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3936/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3936/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3936/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/fe6e643909ce398aae6f346b5b5a0495e075f3b1","head":{"label":"davidrobles:master","ref":"master","sha":"fe6e643909ce398aae6f346b5b5a0495e075f3b1","user":{"login":"davidrobles","id":164460,"avatar_url":"https://avatars.githubusercontent.com/u/164460?v=3","gravatar_id":"","url":"https://api.github.com/users/davidrobles","html_url":"https://github.com/davidrobles","followers_url":"https://api.github.com/users/davidrobles/followers","following_url":"https://api.github.com/users/davidrobles/following{/other_user}","gists_url":"https://api.github.com/users/davidrobles/gists{/gist_id}","starred_url":"https://api.github.com/users/davidrobles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidrobles/subscriptions","organizations_url":"https://api.github.com/users/davidrobles/orgs","repos_url":"https://api.github.com/users/davidrobles/repos","events_url":"https://api.github.com/users/davidrobles/events{/privacy}","received_events_url":"https://api.github.com/users/davidrobles/received_events","type":"User","site_admin":false},"repo":{"id":29375696,"name":"django","full_name":"davidrobles/django","owner":{"login":"davidrobles","id":164460,"avatar_url":"https://avatars.githubusercontent.com/u/164460?v=3","gravatar_id":"","url":"https://api.github.com/users/davidrobles","html_url":"https://github.com/davidrobles","followers_url":"https://api.github.com/users/davidrobles/followers","following_url":"https://api.github.com/users/davidrobles/following{/other_user}","gists_url":"https://api.github.com/users/davidrobles/gists{/gist_id}","starred_url":"https://api.github.com/users/davidrobles/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidrobles/subscriptions","organizations_url":"https://api.github.com/users/davidrobles/orgs","repos_url":"https://api.github.com/users/davidrobles/repos","events_url":"https://api.github.com/users/davidrobles/events{/privacy}","received_events_url":"https://api.github.com/users/davidrobles/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/davidrobles/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/davidrobles/django","forks_url":"https://api.github.com/repos/davidrobles/django/forks","keys_url":"https://api.github.com/repos/davidrobles/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/davidrobles/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/davidrobles/django/teams","hooks_url":"https://api.github.com/repos/davidrobles/django/hooks","issue_events_url":"https://api.github.com/repos/davidrobles/django/issues/events{/number}","events_url":"https://api.github.com/repos/davidrobles/django/events","assignees_url":"https://api.github.com/repos/davidrobles/django/assignees{/user}","branches_url":"https://api.github.com/repos/davidrobles/django/branches{/branch}","tags_url":"https://api.github.com/repos/davidrobles/django/tags","blobs_url":"https://api.github.com/repos/davidrobles/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/davidrobles/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/davidrobles/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/davidrobles/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/davidrobles/django/statuses/{sha}","languages_url":"https://api.github.com/repos/davidrobles/django/languages","stargazers_url":"https://api.github.com/repos/davidrobles/django/stargazers","contributors_url":"https://api.github.com/repos/davidrobles/django/contributors","subscribers_url":"https://api.github.com/repos/davidrobles/django/subscribers","subscription_url":"https://api.github.com/repos/davidrobles/django/subscription","commits_url":"https://api.github.com/repos/davidrobles/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/davidrobles/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/davidrobles/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/davidrobles/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/davidrobles/django/contents/{+path}","compare_url":"https://api.github.com/repos/davidrobles/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/davidrobles/django/merges","archive_url":"https://api.github.com/repos/davidrobles/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/davidrobles/django/downloads","issues_url":"https://api.github.com/repos/davidrobles/django/issues{/number}","pulls_url":"https://api.github.com/repos/davidrobles/django/pulls{/number}","milestones_url":"https://api.github.com/repos/davidrobles/django/milestones{/number}","notifications_url":"https://api.github.com/repos/davidrobles/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/davidrobles/django/labels{/name}","releases_url":"https://api.github.com/repos/davidrobles/django/releases{/id}","created_at":"2015-01-17T01:28:53Z","updated_at":"2015-01-17T01:47:34Z","pushed_at":"2015-01-17T01:47:34Z","git_url":"git://github.com/davidrobles/django.git","ssh_url":"git@github.com:davidrobles/django.git","clone_url":"https://github.com/davidrobles/django.git","svn_url":"https://github.com/davidrobles/django","homepage":"https://www.djangoproject.com/","size":118910,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"c51258882bbf388f5c4cfc379340097ebe9beda9","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3936"},"html":{"href":"https://github.com/django/django/pull/3936"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3936"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3936/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3936/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3936/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/fe6e643909ce398aae6f346b5b5a0495e075f3b1"}}},{"url":"https://api.github.com/repos/django/django/pulls/3935","id":27546736,"html_url":"https://github.com/django/django/pull/3935","diff_url":"https://github.com/django/django/pull/3935.diff","patch_url":"https://github.com/django/django/pull/3935.patch","issue_url":"https://api.github.com/repos/django/django/issues/3935","number":3935,"state":"closed","locked":false,"title":"Cleaned up migration writer tests","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-17T00:08:48Z","updated_at":"2015-01-17T19:30:54Z","closed_at":"2015-01-17T19:30:53Z","merged_at":null,"merge_commit_sha":"1a2eba1821beed67560011fe3e71e03e96a65d72","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3935/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3935/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3935/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/7437648a3d10157ad5921db8b324d07e872b4e4a","head":{"label":"MarkusH:cleanup-migration-writer","ref":"cleanup-migration-writer","sha":"7437648a3d10157ad5921db8b324d07e872b4e4a","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"53e1423eda369acb1882d6939a7f9e11617e5591","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3935"},"html":{"href":"https://github.com/django/django/pull/3935"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3935"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3935/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3935/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3935/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/7437648a3d10157ad5921db8b324d07e872b4e4a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3934","id":27545983,"html_url":"https://github.com/django/django/pull/3934","diff_url":"https://github.com/django/django/pull/3934.diff","patch_url":"https://github.com/django/django/pull/3934.patch","issue_url":"https://api.github.com/repos/django/django/issues/3934","number":3934,"state":"closed","locked":false,"title":"Removed some compatibility bits for Python 3.2.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-16T23:50:14Z","updated_at":"2015-01-17T14:02:26Z","closed_at":"2015-01-17T14:02:24Z","merged_at":"2015-01-17T14:02:24Z","merge_commit_sha":"1bed988eaec55817ade9f88aacf26abc52a24258","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3934/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3934/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3934/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/fed25f1105ff0d5fe46cd217b29371ee7f1907f2","head":{"label":"timgraham:drop-py32","ref":"drop-py32","sha":"fed25f1105ff0d5fe46cd217b29371ee7f1907f2","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4e65f195e1b10d83bb7edc38c908747c4fd537b8","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3934"},"html":{"href":"https://github.com/django/django/pull/3934"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3934"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3934/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3934/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3934/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/fed25f1105ff0d5fe46cd217b29371ee7f1907f2"}}},{"url":"https://api.github.com/repos/django/django/pulls/3933","id":27543021,"html_url":"https://github.com/django/django/pull/3933","diff_url":"https://github.com/django/django/pull/3933.diff","patch_url":"https://github.com/django/django/pull/3933.patch","issue_url":"https://api.github.com/repos/django/django/issues/3933","number":3933,"state":"closed","locked":false,"title":"Fix typo in Response object description.","user":{"login":"rickhutcheson","id":689515,"avatar_url":"https://avatars.githubusercontent.com/u/689515?v=3","gravatar_id":"","url":"https://api.github.com/users/rickhutcheson","html_url":"https://github.com/rickhutcheson","followers_url":"https://api.github.com/users/rickhutcheson/followers","following_url":"https://api.github.com/users/rickhutcheson/following{/other_user}","gists_url":"https://api.github.com/users/rickhutcheson/gists{/gist_id}","starred_url":"https://api.github.com/users/rickhutcheson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rickhutcheson/subscriptions","organizations_url":"https://api.github.com/users/rickhutcheson/orgs","repos_url":"https://api.github.com/users/rickhutcheson/repos","events_url":"https://api.github.com/users/rickhutcheson/events{/privacy}","received_events_url":"https://api.github.com/users/rickhutcheson/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-16T22:51:03Z","updated_at":"2015-01-16T23:18:36Z","closed_at":"2015-01-16T23:18:36Z","merged_at":null,"merge_commit_sha":"1bf6b40763e10581bb13b6f6f015db5cc81cbd0e","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3933/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3933/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3933/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/456cc77a109f4071e90f5b6305a3beb34d73e877","head":{"label":"rickhutcheson:patch-1","ref":"patch-1","sha":"456cc77a109f4071e90f5b6305a3beb34d73e877","user":{"login":"rickhutcheson","id":689515,"avatar_url":"https://avatars.githubusercontent.com/u/689515?v=3","gravatar_id":"","url":"https://api.github.com/users/rickhutcheson","html_url":"https://github.com/rickhutcheson","followers_url":"https://api.github.com/users/rickhutcheson/followers","following_url":"https://api.github.com/users/rickhutcheson/following{/other_user}","gists_url":"https://api.github.com/users/rickhutcheson/gists{/gist_id}","starred_url":"https://api.github.com/users/rickhutcheson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rickhutcheson/subscriptions","organizations_url":"https://api.github.com/users/rickhutcheson/orgs","repos_url":"https://api.github.com/users/rickhutcheson/repos","events_url":"https://api.github.com/users/rickhutcheson/events{/privacy}","received_events_url":"https://api.github.com/users/rickhutcheson/received_events","type":"User","site_admin":false},"repo":null},"base":{"label":"django:master","ref":"master","sha":"3f23f1cfb472e77bb1f9260a71b40f895438658d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3933"},"html":{"href":"https://github.com/django/django/pull/3933"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3933"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3933/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3933/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3933/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/456cc77a109f4071e90f5b6305a3beb34d73e877"}}},{"url":"https://api.github.com/repos/django/django/pulls/3931","id":27532275,"html_url":"https://github.com/django/django/pull/3931","diff_url":"https://github.com/django/django/pull/3931.diff","patch_url":"https://github.com/django/django/pull/3931.patch","issue_url":"https://api.github.com/repos/django/django/issues/3931","number":3931,"state":"closed","locked":false,"title":"Fixed #24092 -- Widened base field support for ArrayField.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"rebased from https://github.com/django/django/pull/3878","created_at":"2015-01-16T20:02:56Z","updated_at":"2015-01-16T21:16:41Z","closed_at":"2015-01-16T21:16:21Z","merged_at":"2015-01-16T21:16:20Z","merge_commit_sha":"6ba67893c4a497590b220d06215b8d30df6293de","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3931/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3931/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3931/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/39d95fb6ada99c59d47fa0eae6d3128abafe2d58","head":{"label":"timgraham:24092","ref":"24092","sha":"39d95fb6ada99c59d47fa0eae6d3128abafe2d58","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"a17724b791275578334bcdc66b3a8113eb86605e","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3931"},"html":{"href":"https://github.com/django/django/pull/3931"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3931"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3931/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3931/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3931/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/39d95fb6ada99c59d47fa0eae6d3128abafe2d58"}}},{"url":"https://api.github.com/repos/django/django/pulls/3930","id":27518406,"html_url":"https://github.com/django/django/pull/3930","diff_url":"https://github.com/django/django/pull/3930.diff","patch_url":"https://github.com/django/django/pull/3930.patch","issue_url":"https://api.github.com/repos/django/django/issues/3930","number":3930,"state":"closed","locked":false,"title":"Fixed #24160 -- Fixed test suite error on Windows","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24160","created_at":"2015-01-16T16:43:09Z","updated_at":"2015-01-16T17:04:08Z","closed_at":"2015-01-16T17:04:08Z","merged_at":null,"merge_commit_sha":"475d8cd79614f32ba647f95aacc38e96b0bb479d","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3930/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3930/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3930/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/16142e26bbcaa51242c5dda15fabe3d694b53002","head":{"label":"collinanderson:24160","ref":"24160","sha":"16142e26bbcaa51242c5dda15fabe3d694b53002","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"726a9550db5129badc1c44809b0bed728fa1ad90","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3930"},"html":{"href":"https://github.com/django/django/pull/3930"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3930"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3930/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3930/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3930/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/16142e26bbcaa51242c5dda15fabe3d694b53002"}}},{"url":"https://api.github.com/repos/django/django/pulls/3928","id":27466863,"html_url":"https://github.com/django/django/pull/3928","diff_url":"https://github.com/django/django/pull/3928.diff","patch_url":"https://github.com/django/django/pull/3928.patch","issue_url":"https://api.github.com/repos/django/django/issues/3928","number":3928,"state":"closed","locked":false,"title":"Fix typo in template caching doc","user":{"login":"merwok","id":635179,"avatar_url":"https://avatars.githubusercontent.com/u/635179?v=3","gravatar_id":"","url":"https://api.github.com/users/merwok","html_url":"https://github.com/merwok","followers_url":"https://api.github.com/users/merwok/followers","following_url":"https://api.github.com/users/merwok/following{/other_user}","gists_url":"https://api.github.com/users/merwok/gists{/gist_id}","starred_url":"https://api.github.com/users/merwok/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/merwok/subscriptions","organizations_url":"https://api.github.com/users/merwok/orgs","repos_url":"https://api.github.com/users/merwok/repos","events_url":"https://api.github.com/users/merwok/events{/privacy}","received_events_url":"https://api.github.com/users/merwok/received_events","type":"User","site_admin":false},"body":"Noticed this while reading the docs for django.core.cache.utils.make_template_fragment_key. I did not check the code, but it makes sense for the objects in the *vary_on* arguments to be strings.","created_at":"2015-01-15T22:09:13Z","updated_at":"2015-01-16T01:10:06Z","closed_at":"2015-01-16T01:10:06Z","merged_at":null,"merge_commit_sha":"7f1fb4402d3e9a673778ccf97863d6051e30e2b3","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3928/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3928/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3928/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/1cb75582a9a5ec52eb730ec3bbbbac8349bc5f01","head":{"label":"merwok:patch-1","ref":"patch-1","sha":"1cb75582a9a5ec52eb730ec3bbbbac8349bc5f01","user":{"login":"merwok","id":635179,"avatar_url":"https://avatars.githubusercontent.com/u/635179?v=3","gravatar_id":"","url":"https://api.github.com/users/merwok","html_url":"https://github.com/merwok","followers_url":"https://api.github.com/users/merwok/followers","following_url":"https://api.github.com/users/merwok/following{/other_user}","gists_url":"https://api.github.com/users/merwok/gists{/gist_id}","starred_url":"https://api.github.com/users/merwok/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/merwok/subscriptions","organizations_url":"https://api.github.com/users/merwok/orgs","repos_url":"https://api.github.com/users/merwok/repos","events_url":"https://api.github.com/users/merwok/events{/privacy}","received_events_url":"https://api.github.com/users/merwok/received_events","type":"User","site_admin":false},"repo":{"id":19798455,"name":"django","full_name":"merwok/django","owner":{"login":"merwok","id":635179,"avatar_url":"https://avatars.githubusercontent.com/u/635179?v=3","gravatar_id":"","url":"https://api.github.com/users/merwok","html_url":"https://github.com/merwok","followers_url":"https://api.github.com/users/merwok/followers","following_url":"https://api.github.com/users/merwok/following{/other_user}","gists_url":"https://api.github.com/users/merwok/gists{/gist_id}","starred_url":"https://api.github.com/users/merwok/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/merwok/subscriptions","organizations_url":"https://api.github.com/users/merwok/orgs","repos_url":"https://api.github.com/users/merwok/repos","events_url":"https://api.github.com/users/merwok/events{/privacy}","received_events_url":"https://api.github.com/users/merwok/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/merwok/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/merwok/django","forks_url":"https://api.github.com/repos/merwok/django/forks","keys_url":"https://api.github.com/repos/merwok/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/merwok/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/merwok/django/teams","hooks_url":"https://api.github.com/repos/merwok/django/hooks","issue_events_url":"https://api.github.com/repos/merwok/django/issues/events{/number}","events_url":"https://api.github.com/repos/merwok/django/events","assignees_url":"https://api.github.com/repos/merwok/django/assignees{/user}","branches_url":"https://api.github.com/repos/merwok/django/branches{/branch}","tags_url":"https://api.github.com/repos/merwok/django/tags","blobs_url":"https://api.github.com/repos/merwok/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/merwok/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/merwok/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/merwok/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/merwok/django/statuses/{sha}","languages_url":"https://api.github.com/repos/merwok/django/languages","stargazers_url":"https://api.github.com/repos/merwok/django/stargazers","contributors_url":"https://api.github.com/repos/merwok/django/contributors","subscribers_url":"https://api.github.com/repos/merwok/django/subscribers","subscription_url":"https://api.github.com/repos/merwok/django/subscription","commits_url":"https://api.github.com/repos/merwok/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/merwok/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/merwok/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/merwok/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/merwok/django/contents/{+path}","compare_url":"https://api.github.com/repos/merwok/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/merwok/django/merges","archive_url":"https://api.github.com/repos/merwok/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/merwok/django/downloads","issues_url":"https://api.github.com/repos/merwok/django/issues{/number}","pulls_url":"https://api.github.com/repos/merwok/django/pulls{/number}","milestones_url":"https://api.github.com/repos/merwok/django/milestones{/number}","notifications_url":"https://api.github.com/repos/merwok/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/merwok/django/labels{/name}","releases_url":"https://api.github.com/repos/merwok/django/releases{/id}","created_at":"2014-05-14T22:32:43Z","updated_at":"2014-07-01T18:20:54Z","pushed_at":"2015-01-15T22:07:21Z","git_url":"git://github.com/merwok/django.git","ssh_url":"git@github.com:merwok/django.git","clone_url":"https://github.com/merwok/django.git","svn_url":"https://github.com/merwok/django","homepage":"http://www.djangoproject.com/","size":118634,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"51dc617b21e67636d96cf645905797a4d6ff4bf0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3928"},"html":{"href":"https://github.com/django/django/pull/3928"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3928"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3928/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3928/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3928/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/1cb75582a9a5ec52eb730ec3bbbbac8349bc5f01"}}},{"url":"https://api.github.com/repos/django/django/pulls/3926","id":27465222,"html_url":"https://github.com/django/django/pull/3926","diff_url":"https://github.com/django/django/pull/3926.diff","patch_url":"https://github.com/django/django/pull/3926.patch","issue_url":"https://api.github.com/repos/django/django/issues/3926","number":3926,"state":"closed","locked":false,"title":"Refs #24148 -- Documented the bug with case expressions in SQLite < 3.7....","user":{"login":"michalmo","id":9825131,"avatar_url":"https://avatars.githubusercontent.com/u/9825131?v=3","gravatar_id":"","url":"https://api.github.com/users/michalmo","html_url":"https://github.com/michalmo","followers_url":"https://api.github.com/users/michalmo/followers","following_url":"https://api.github.com/users/michalmo/following{/other_user}","gists_url":"https://api.github.com/users/michalmo/gists{/gist_id}","starred_url":"https://api.github.com/users/michalmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalmo/subscriptions","organizations_url":"https://api.github.com/users/michalmo/orgs","repos_url":"https://api.github.com/users/michalmo/repos","events_url":"https://api.github.com/users/michalmo/events{/privacy}","received_events_url":"https://api.github.com/users/michalmo/received_events","type":"User","site_admin":false},"body":"...0\r\n\r\nI've done some testing, and SQLite 3.7.0 is the first version where the failing test case passes.","created_at":"2015-01-15T21:48:16Z","updated_at":"2015-01-16T00:43:19Z","closed_at":"2015-01-16T00:43:19Z","merged_at":null,"merge_commit_sha":"84e6665c5b2868a879de37ce92a4dbedcdd691aa","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3926/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3926/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3926/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/e6a4ccdf393c65ac0f519a4ef69763eed70a3768","head":{"label":"michalmo:ticket_24148","ref":"ticket_24148","sha":"e6a4ccdf393c65ac0f519a4ef69763eed70a3768","user":{"login":"michalmo","id":9825131,"avatar_url":"https://avatars.githubusercontent.com/u/9825131?v=3","gravatar_id":"","url":"https://api.github.com/users/michalmo","html_url":"https://github.com/michalmo","followers_url":"https://api.github.com/users/michalmo/followers","following_url":"https://api.github.com/users/michalmo/following{/other_user}","gists_url":"https://api.github.com/users/michalmo/gists{/gist_id}","starred_url":"https://api.github.com/users/michalmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalmo/subscriptions","organizations_url":"https://api.github.com/users/michalmo/orgs","repos_url":"https://api.github.com/users/michalmo/repos","events_url":"https://api.github.com/users/michalmo/events{/privacy}","received_events_url":"https://api.github.com/users/michalmo/received_events","type":"User","site_admin":false},"repo":{"id":28709403,"name":"django","full_name":"michalmo/django","owner":{"login":"michalmo","id":9825131,"avatar_url":"https://avatars.githubusercontent.com/u/9825131?v=3","gravatar_id":"","url":"https://api.github.com/users/michalmo","html_url":"https://github.com/michalmo","followers_url":"https://api.github.com/users/michalmo/followers","following_url":"https://api.github.com/users/michalmo/following{/other_user}","gists_url":"https://api.github.com/users/michalmo/gists{/gist_id}","starred_url":"https://api.github.com/users/michalmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalmo/subscriptions","organizations_url":"https://api.github.com/users/michalmo/orgs","repos_url":"https://api.github.com/users/michalmo/repos","events_url":"https://api.github.com/users/michalmo/events{/privacy}","received_events_url":"https://api.github.com/users/michalmo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/michalmo/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/michalmo/django","forks_url":"https://api.github.com/repos/michalmo/django/forks","keys_url":"https://api.github.com/repos/michalmo/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/michalmo/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/michalmo/django/teams","hooks_url":"https://api.github.com/repos/michalmo/django/hooks","issue_events_url":"https://api.github.com/repos/michalmo/django/issues/events{/number}","events_url":"https://api.github.com/repos/michalmo/django/events","assignees_url":"https://api.github.com/repos/michalmo/django/assignees{/user}","branches_url":"https://api.github.com/repos/michalmo/django/branches{/branch}","tags_url":"https://api.github.com/repos/michalmo/django/tags","blobs_url":"https://api.github.com/repos/michalmo/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/michalmo/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/michalmo/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/michalmo/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/michalmo/django/statuses/{sha}","languages_url":"https://api.github.com/repos/michalmo/django/languages","stargazers_url":"https://api.github.com/repos/michalmo/django/stargazers","contributors_url":"https://api.github.com/repos/michalmo/django/contributors","subscribers_url":"https://api.github.com/repos/michalmo/django/subscribers","subscription_url":"https://api.github.com/repos/michalmo/django/subscription","commits_url":"https://api.github.com/repos/michalmo/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/michalmo/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/michalmo/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/michalmo/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/michalmo/django/contents/{+path}","compare_url":"https://api.github.com/repos/michalmo/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/michalmo/django/merges","archive_url":"https://api.github.com/repos/michalmo/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/michalmo/django/downloads","issues_url":"https://api.github.com/repos/michalmo/django/issues{/number}","pulls_url":"https://api.github.com/repos/michalmo/django/pulls{/number}","milestones_url":"https://api.github.com/repos/michalmo/django/milestones{/number}","notifications_url":"https://api.github.com/repos/michalmo/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/michalmo/django/labels{/name}","releases_url":"https://api.github.com/repos/michalmo/django/releases{/id}","created_at":"2015-01-02T09:47:52Z","updated_at":"2015-01-02T09:48:09Z","pushed_at":"2015-01-15T21:47:01Z","git_url":"git://github.com/michalmo/django.git","ssh_url":"git@github.com:michalmo/django.git","clone_url":"https://github.com/michalmo/django.git","svn_url":"https://github.com/michalmo/django","homepage":"https://www.djangoproject.com/","size":118464,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"51dc617b21e67636d96cf645905797a4d6ff4bf0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3926"},"html":{"href":"https://github.com/django/django/pull/3926"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3926"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3926/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3926/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3926/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/e6a4ccdf393c65ac0f519a4ef69763eed70a3768"}}},{"url":"https://api.github.com/repos/django/django/pulls/3925","id":27447127,"html_url":"https://github.com/django/django/pull/3925","diff_url":"https://github.com/django/django/pull/3925.diff","patch_url":"https://github.com/django/django/pull/3925.patch","issue_url":"https://api.github.com/repos/django/django/issues/3925","number":3925,"state":"closed","locked":false,"title":"Make expresison tests work without Pillow","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-15T17:41:50Z","updated_at":"2015-01-15T19:03:56Z","closed_at":"2015-01-15T19:03:56Z","merged_at":null,"merge_commit_sha":"8e0f744c186d8641546f79df240fe1a61e896c55","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3925/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3925/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3925/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/0b5d79332a673dd04bb98c96fba5a9b0c0bdd710","head":{"label":"collinanderson:expressiontests","ref":"expressiontests","sha":"0b5d79332a673dd04bb98c96fba5a9b0c0bdd710","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4832c004e88a68b98b976b4f68a1c9fdb4ea3530","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3925"},"html":{"href":"https://github.com/django/django/pull/3925"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3925"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3925/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3925/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3925/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/0b5d79332a673dd04bb98c96fba5a9b0c0bdd710"}}},{"url":"https://api.github.com/repos/django/django/pulls/3924","id":27439320,"html_url":"https://github.com/django/django/pull/3924","diff_url":"https://github.com/django/django/pull/3924.diff","patch_url":"https://github.com/django/django/pull/3924.patch","issue_url":"https://api.github.com/repos/django/django/issues/3924","number":3924,"state":"closed","locked":false,"title":"Fixed #23850 -- Fixed a migrations test failure on Mac OSX & Python 3","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/23850","created_at":"2015-01-15T16:05:52Z","updated_at":"2015-01-16T00:47:39Z","closed_at":"2015-01-16T00:47:39Z","merged_at":null,"merge_commit_sha":"1f01f5836eb061377676d8982db41635ae5bd5ef","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3924/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3924/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3924/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/58b0ea7417cb52b6acf6e7f806fa6afe46b20d25","head":{"label":"collinanderson:23850","ref":"23850","sha":"58b0ea7417cb52b6acf6e7f806fa6afe46b20d25","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4832c004e88a68b98b976b4f68a1c9fdb4ea3530","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3924"},"html":{"href":"https://github.com/django/django/pull/3924"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3924"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3924/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3924/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3924/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/58b0ea7417cb52b6acf6e7f806fa6afe46b20d25"}}},{"url":"https://api.github.com/repos/django/django/pulls/3923","id":27433732,"html_url":"https://github.com/django/django/pull/3923","diff_url":"https://github.com/django/django/pull/3923.diff","patch_url":"https://github.com/django/django/pull/3923.patch","issue_url":"https://api.github.com/repos/django/django/issues/3923","number":3923,"state":"closed","locked":false,"title":"Fixed #24135 -- Made RenameModel rename many-to-many tables.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24135","created_at":"2015-01-15T14:57:12Z","updated_at":"2015-01-16T01:40:21Z","closed_at":"2015-01-16T01:36:50Z","merged_at":"2015-01-16T01:36:50Z","merge_commit_sha":"bb5d203ad1cf9fb41f566d91d45d45478da2c14e","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3923/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3923/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3923/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/28db4af80a319485c0da724d692e2f8396aa57e3","head":{"label":"timgraham:24135","ref":"24135","sha":"28db4af80a319485c0da724d692e2f8396aa57e3","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"3f9ec12d9c9eff9a3b1a205d87c7e66587cf9967","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3923"},"html":{"href":"https://github.com/django/django/pull/3923"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3923"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3923/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3923/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3923/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/28db4af80a319485c0da724d692e2f8396aa57e3"}}},{"url":"https://api.github.com/repos/django/django/pulls/3922","id":27424775,"html_url":"https://github.com/django/django/pull/3922","diff_url":"https://github.com/django/django/pull/3922.diff","patch_url":"https://github.com/django/django/pull/3922.patch","issue_url":"https://api.github.com/repos/django/django/issues/3922","number":3922,"state":"closed","locked":false,"title":"Simplified a bit GeoAggregate classes","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-15T12:26:44Z","updated_at":"2015-01-16T09:43:50Z","closed_at":"2015-01-16T09:43:27Z","merged_at":null,"merge_commit_sha":"78eae1f1fd2bbd8a7c6adb7412dc4a59e3db0440","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3922/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3922/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3922/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/c9cec2d057a07c2575291bed5113d7845b07538a","head":{"label":"claudep:gis_aggregate_simplify","ref":"gis_aggregate_simplify","sha":"c9cec2d057a07c2575291bed5113d7845b07538a","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4832c004e88a68b98b976b4f68a1c9fdb4ea3530","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3922"},"html":{"href":"https://github.com/django/django/pull/3922"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3922"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3922/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3922/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3922/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/c9cec2d057a07c2575291bed5113d7845b07538a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3921","id":27401154,"html_url":"https://github.com/django/django/pull/3921","diff_url":"https://github.com/django/django/pull/3921.diff","patch_url":"https://github.com/django/django/pull/3921.patch","issue_url":"https://api.github.com/repos/django/django/issues/3921","number":3921,"state":"closed","locked":false,"title":"Fixed #23935 -- Example Failing test case.","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/23935","created_at":"2015-01-15T02:08:55Z","updated_at":"2015-01-15T20:06:39Z","closed_at":"2015-01-15T20:06:39Z","merged_at":null,"merge_commit_sha":"a871a17226ceefd749df38e8c064f16a59fe4fa4","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3921/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3921/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3921/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/6ffc08f8c56c1b0be1679444ef323078be18f25c","head":{"label":"collinanderson:23935","ref":"23935","sha":"6ffc08f8c56c1b0be1679444ef323078be18f25c","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"67dbc56ec8657e02247c97ec06f7cde8d4808f0d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3921"},"html":{"href":"https://github.com/django/django/pull/3921"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3921"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3921/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3921/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3921/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/6ffc08f8c56c1b0be1679444ef323078be18f25c"}}},{"url":"https://api.github.com/repos/django/django/pulls/3920","id":27385851,"html_url":"https://github.com/django/django/pull/3920","diff_url":"https://github.com/django/django/pull/3920.diff","patch_url":"https://github.com/django/django/pull/3920.patch","issue_url":"https://api.github.com/repos/django/django/issues/3920","number":3920,"state":"closed","locked":false,"title":"Fixed #24152 -- Deprecated GeoQuerySet aggregate methods","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-14T21:40:36Z","updated_at":"2015-01-16T18:55:00Z","closed_at":"2015-01-16T18:53:48Z","merged_at":"2015-01-16T18:54:01Z","merge_commit_sha":"be4fcc08912270fb3417555e3d7da9c36512562f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3920/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3920/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3920/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a79e6b67175f532049967268c10609af6d31d140","head":{"label":"claudep:gis_deprecate_aggregate","ref":"gis_deprecate_aggregate","sha":"a79e6b67175f532049967268c10609af6d31d140","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"5338ff4808c822a8b00e90154b884b7be3011e60","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3920"},"html":{"href":"https://github.com/django/django/pull/3920"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3920"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3920/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3920/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3920/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a79e6b67175f532049967268c10609af6d31d140"}}},{"url":"https://api.github.com/repos/django/django/pulls/3919","id":27372618,"html_url":"https://github.com/django/django/pull/3919","diff_url":"https://github.com/django/django/pull/3919.diff","patch_url":"https://github.com/django/django/pull/3919.patch","issue_url":"https://api.github.com/repos/django/django/issues/3919","number":3919,"state":"closed","locked":false,"title":"Fixed incorrect error message","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"(sorry about the double pull request here. replaces #3916)","created_at":"2015-01-14T18:43:33Z","updated_at":"2015-01-14T19:51:26Z","closed_at":"2015-01-14T19:51:26Z","merged_at":null,"merge_commit_sha":"5d67c815cb5b8564e360af4e07502dbe6b3feade","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3919/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3919/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3919/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/0d9b9a109b477f07a54d3b336bb91c2b53413d70","head":{"label":"collinanderson:patch-10","ref":"patch-10","sha":"0d9b9a109b477f07a54d3b336bb91c2b53413d70","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"88786afbffc5c095f6491e080afea394f63bb44a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3919"},"html":{"href":"https://github.com/django/django/pull/3919"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3919"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3919/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3919/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3919/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/0d9b9a109b477f07a54d3b336bb91c2b53413d70"}}},{"url":"https://api.github.com/repos/django/django/pulls/3918","id":27371775,"html_url":"https://github.com/django/django/pull/3918","diff_url":"https://github.com/django/django/pull/3918.diff","patch_url":"https://github.com/django/django/pull/3918.patch","issue_url":"https://api.github.com/repos/django/django/issues/3918","number":3918,"state":"closed","locked":false,"title":"Fixed #24146 -- Allow using get_field() early in the process","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24146","created_at":"2015-01-14T18:32:04Z","updated_at":"2015-01-17T10:00:45Z","closed_at":"2015-01-16T19:47:53Z","merged_at":null,"merge_commit_sha":"3c1af5e03f3666bc92c0750a190aca9f761c5d56","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3918/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3918/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3918/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/0eac88ecf66042039e6427a2c4b777ea9fae3bb0","head":{"label":"collinanderson:24146","ref":"24146","sha":"0eac88ecf66042039e6427a2c4b777ea9fae3bb0","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"a79e6b67175f532049967268c10609af6d31d140","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3918"},"html":{"href":"https://github.com/django/django/pull/3918"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3918"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3918/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3918/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3918/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/0eac88ecf66042039e6427a2c4b777ea9fae3bb0"}}},{"url":"https://api.github.com/repos/django/django/pulls/3917","id":27371240,"html_url":"https://github.com/django/django/pull/3917","diff_url":"https://github.com/django/django/pull/3917.diff","patch_url":"https://github.com/django/django/pull/3917.patch","issue_url":"https://api.github.com/repos/django/django/issues/3917","number":3917,"state":"closed","locked":false,"title":"Moved check_aggregate_support to BaseSpatialOperations","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-14T18:24:48Z","updated_at":"2015-01-14T21:40:14Z","closed_at":"2015-01-14T21:37:05Z","merged_at":null,"merge_commit_sha":"d7ff972306a4957cf4185965dc5a91fbbf5447fd","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3917/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3917/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3917/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/9bb682d6397f54826def3d981e720a97daf0d3ab","head":{"label":"claudep:gis_check_aggregate","ref":"gis_check_aggregate","sha":"9bb682d6397f54826def3d981e720a97daf0d3ab","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"737d24923ac69bb8b89af1bb2f3f4c4c744349e8","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3917"},"html":{"href":"https://github.com/django/django/pull/3917"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3917"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3917/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3917/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3917/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/9bb682d6397f54826def3d981e720a97daf0d3ab"}}},{"url":"https://api.github.com/repos/django/django/pulls/3916","id":27370637,"html_url":"https://github.com/django/django/pull/3916","diff_url":"https://github.com/django/django/pull/3916.diff","patch_url":"https://github.com/django/django/pull/3916.patch","issue_url":"https://api.github.com/repos/django/django/issues/3916","number":3916,"state":"closed","locked":false,"title":"Fixed incorrect error message in get_fields().","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-14T18:15:14Z","updated_at":"2015-01-14T18:44:16Z","closed_at":"2015-01-14T18:39:48Z","merged_at":null,"merge_commit_sha":"e461c13344cf14f17b7929b3439878bda15248c4","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3916/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3916/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3916/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/88786afbffc5c095f6491e080afea394f63bb44a","head":{"label":"collinanderson:patch-10","ref":"patch-10","sha":"88786afbffc5c095f6491e080afea394f63bb44a","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"88786afbffc5c095f6491e080afea394f63bb44a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3916"},"html":{"href":"https://github.com/django/django/pull/3916"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3916"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3916/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3916/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3916/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/88786afbffc5c095f6491e080afea394f63bb44a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3914","id":27332903,"html_url":"https://github.com/django/django/pull/3914","diff_url":"https://github.com/django/django/pull/3914.diff","patch_url":"https://github.com/django/django/pull/3914.patch","issue_url":"https://api.github.com/repos/django/django/issues/3914","number":3914,"state":"closed","locked":false,"title":"Removed unused import","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-14T08:15:10Z","updated_at":"2015-01-14T08:32:12Z","closed_at":"2015-01-14T08:32:12Z","merged_at":null,"merge_commit_sha":"ff42d51eeb6d4bd4bac1fc3a334274e2fae99a94","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3914/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3914/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3914/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/78b9a34a9c9c66bbd555f948f7ecd7d97583a97d","head":{"label":"claudep:removed_import","ref":"removed_import","sha":"78b9a34a9c9c66bbd555f948f7ecd7d97583a97d","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"1913c1ac2190cdc31de9dcd81687f5dad057e2f0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3914"},"html":{"href":"https://github.com/django/django/pull/3914"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3914"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3914/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3914/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3914/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/78b9a34a9c9c66bbd555f948f7ecd7d97583a97d"}}},{"url":"https://api.github.com/repos/django/django/pulls/3913","id":27288107,"html_url":"https://github.com/django/django/pull/3913","diff_url":"https://github.com/django/django/pull/3913.diff","patch_url":"https://github.com/django/django/pull/3913.patch","issue_url":"https://api.github.com/repos/django/django/issues/3913","number":3913,"state":"closed","locked":false,"title":"Fixed #24147 -- Prevented managers leaking model during migrations","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24147","created_at":"2015-01-13T17:22:26Z","updated_at":"2015-01-14T15:14:09Z","closed_at":"2015-01-14T15:14:06Z","merged_at":null,"merge_commit_sha":"b3b8bea3e0681d99f99068478618c25a105ce5a5","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3913/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3913/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3913/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/c08a2865dc0e53de16000f01c61cd1d3bfee0824","head":{"label":"MarkusH:ticket24147","ref":"ticket24147","sha":"c08a2865dc0e53de16000f01c61cd1d3bfee0824","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"dc90bf2ac823ed9841cc8ca4035fe0b62a18c958","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3913"},"html":{"href":"https://github.com/django/django/pull/3913"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3913"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3913/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3913/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3913/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/c08a2865dc0e53de16000f01c61cd1d3bfee0824"}}},{"url":"https://api.github.com/repos/django/django/pulls/3912","id":27287754,"html_url":"https://github.com/django/django/pull/3912","diff_url":"https://github.com/django/django/pull/3912.diff","patch_url":"https://github.com/django/django/pull/3912.patch","issue_url":"https://api.github.com/repos/django/django/issues/3912","number":3912,"state":"closed","locked":false,"title":"Fixed #24146 -- Allow using get_field() early in the process","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24146\r\n\r\nThis would modify the API (maybe there's a better way to do this).\r\n\r\nI also don't know a good way to test this. There's a good `books_contributed` example model, but the admin checks need to run on it.","created_at":"2015-01-13T17:18:01Z","updated_at":"2015-01-14T18:34:22Z","closed_at":"2015-01-14T18:29:36Z","merged_at":null,"merge_commit_sha":"b7091fa76175aa10305c7ddb0da5bc7e4f7fb24f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3912/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3912/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3912/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/88786afbffc5c095f6491e080afea394f63bb44a","head":{"label":"collinanderson:24146","ref":"24146","sha":"88786afbffc5c095f6491e080afea394f63bb44a","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"88786afbffc5c095f6491e080afea394f63bb44a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3912"},"html":{"href":"https://github.com/django/django/pull/3912"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3912"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3912/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3912/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3912/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/88786afbffc5c095f6491e080afea394f63bb44a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3911","id":27283808,"html_url":"https://github.com/django/django/pull/3911","diff_url":"https://github.com/django/django/pull/3911.diff","patch_url":"https://github.com/django/django/pull/3911.patch","issue_url":"https://api.github.com/repos/django/django/issues/3911","number":3911,"state":"closed","locked":false,"title":"tweaked a bad model example","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-13T16:28:56Z","updated_at":"2015-01-13T16:54:26Z","closed_at":"2015-01-13T16:54:26Z","merged_at":null,"merge_commit_sha":"25199eb9844eb1e4a28a688b79ab47bff37da869","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3911/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3911/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3911/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a0a6aa2b3cdc7875f04810b231e5e22cfc344d81","head":{"label":"collinanderson:patch-9","ref":"patch-9","sha":"a0a6aa2b3cdc7875f04810b231e5e22cfc344d81","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"e084ff01f27a28717eef471ff8e86b074d452f44","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3911"},"html":{"href":"https://github.com/django/django/pull/3911"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3911"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3911/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3911/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3911/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a0a6aa2b3cdc7875f04810b231e5e22cfc344d81"}}},{"url":"https://api.github.com/repos/django/django/pulls/3910","id":27281914,"html_url":"https://github.com/django/django/pull/3910","diff_url":"https://github.com/django/django/pull/3910.diff","patch_url":"https://github.com/django/django/pull/3910.patch","issue_url":"https://api.github.com/repos/django/django/issues/3910","number":3910,"state":"closed","locked":false,"title":"Fixed #24136 -- Prevented crash when convert_extent input is None","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Thanks Max Demars for the report.","created_at":"2015-01-13T16:06:37Z","updated_at":"2015-01-13T16:45:51Z","closed_at":"2015-01-13T16:28:22Z","merged_at":"2015-01-13T16:28:22Z","merge_commit_sha":"2301c0aa54ea00629eaa95adabb31cd8079bf386","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3910/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3910/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3910/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/e084ff01f27a28717eef471ff8e86b074d452f44","head":{"label":"claudep:24136","ref":"24136","sha":"e084ff01f27a28717eef471ff8e86b074d452f44","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"65246de7b1d70d25831ab394c4f4a75813f629fe","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3910"},"html":{"href":"https://github.com/django/django/pull/3910"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3910"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3910/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3910/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3910/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/e084ff01f27a28717eef471ff8e86b074d452f44"}}},{"url":"https://api.github.com/repos/django/django/pulls/3907","id":27254396,"html_url":"https://github.com/django/django/pull/3907","diff_url":"https://github.com/django/django/pull/3907.diff","patch_url":"https://github.com/django/django/pull/3907.patch","issue_url":"https://api.github.com/repos/django/django/issues/3907","number":3907,"state":"closed","locked":false,"title":"Fixed #24143 - Changed Http404 usages in docs to use instantiated versions","user":{"login":"kezabelle","id":118377,"avatar_url":"https://avatars.githubusercontent.com/u/118377?v=3","gravatar_id":"","url":"https://api.github.com/users/kezabelle","html_url":"https://github.com/kezabelle","followers_url":"https://api.github.com/users/kezabelle/followers","following_url":"https://api.github.com/users/kezabelle/following{/other_user}","gists_url":"https://api.github.com/users/kezabelle/gists{/gist_id}","starred_url":"https://api.github.com/users/kezabelle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kezabelle/subscriptions","organizations_url":"https://api.github.com/users/kezabelle/orgs","repos_url":"https://api.github.com/users/kezabelle/repos","events_url":"https://api.github.com/users/kezabelle/events{/privacy}","received_events_url":"https://api.github.com/users/kezabelle/received_events","type":"User","site_admin":false},"body":"Preferring `raise Http404(\"message\")` over `raise Http404`","created_at":"2015-01-13T08:22:06Z","updated_at":"2015-01-16T14:42:14Z","closed_at":"2015-01-16T14:42:14Z","merged_at":null,"merge_commit_sha":"f595633b8a4737977af2a5a1393d5c1b0a865d06","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3907/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3907/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3907/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/11626eae15444c8fedae6856999ea3bfc6f80fe2","head":{"label":"kezabelle:docs/http404","ref":"docs/http404","sha":"11626eae15444c8fedae6856999ea3bfc6f80fe2","user":{"login":"kezabelle","id":118377,"avatar_url":"https://avatars.githubusercontent.com/u/118377?v=3","gravatar_id":"","url":"https://api.github.com/users/kezabelle","html_url":"https://github.com/kezabelle","followers_url":"https://api.github.com/users/kezabelle/followers","following_url":"https://api.github.com/users/kezabelle/following{/other_user}","gists_url":"https://api.github.com/users/kezabelle/gists{/gist_id}","starred_url":"https://api.github.com/users/kezabelle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kezabelle/subscriptions","organizations_url":"https://api.github.com/users/kezabelle/orgs","repos_url":"https://api.github.com/users/kezabelle/repos","events_url":"https://api.github.com/users/kezabelle/events{/privacy}","received_events_url":"https://api.github.com/users/kezabelle/received_events","type":"User","site_admin":false},"repo":{"id":8197083,"name":"django","full_name":"kezabelle/django","owner":{"login":"kezabelle","id":118377,"avatar_url":"https://avatars.githubusercontent.com/u/118377?v=3","gravatar_id":"","url":"https://api.github.com/users/kezabelle","html_url":"https://github.com/kezabelle","followers_url":"https://api.github.com/users/kezabelle/followers","following_url":"https://api.github.com/users/kezabelle/following{/other_user}","gists_url":"https://api.github.com/users/kezabelle/gists{/gist_id}","starred_url":"https://api.github.com/users/kezabelle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kezabelle/subscriptions","organizations_url":"https://api.github.com/users/kezabelle/orgs","repos_url":"https://api.github.com/users/kezabelle/repos","events_url":"https://api.github.com/users/kezabelle/events{/privacy}","received_events_url":"https://api.github.com/users/kezabelle/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/kezabelle/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/kezabelle/django","forks_url":"https://api.github.com/repos/kezabelle/django/forks","keys_url":"https://api.github.com/repos/kezabelle/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/kezabelle/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/kezabelle/django/teams","hooks_url":"https://api.github.com/repos/kezabelle/django/hooks","issue_events_url":"https://api.github.com/repos/kezabelle/django/issues/events{/number}","events_url":"https://api.github.com/repos/kezabelle/django/events","assignees_url":"https://api.github.com/repos/kezabelle/django/assignees{/user}","branches_url":"https://api.github.com/repos/kezabelle/django/branches{/branch}","tags_url":"https://api.github.com/repos/kezabelle/django/tags","blobs_url":"https://api.github.com/repos/kezabelle/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/kezabelle/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/kezabelle/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/kezabelle/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/kezabelle/django/statuses/{sha}","languages_url":"https://api.github.com/repos/kezabelle/django/languages","stargazers_url":"https://api.github.com/repos/kezabelle/django/stargazers","contributors_url":"https://api.github.com/repos/kezabelle/django/contributors","subscribers_url":"https://api.github.com/repos/kezabelle/django/subscribers","subscription_url":"https://api.github.com/repos/kezabelle/django/subscription","commits_url":"https://api.github.com/repos/kezabelle/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/kezabelle/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/kezabelle/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/kezabelle/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/kezabelle/django/contents/{+path}","compare_url":"https://api.github.com/repos/kezabelle/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/kezabelle/django/merges","archive_url":"https://api.github.com/repos/kezabelle/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/kezabelle/django/downloads","issues_url":"https://api.github.com/repos/kezabelle/django/issues{/number}","pulls_url":"https://api.github.com/repos/kezabelle/django/pulls{/number}","milestones_url":"https://api.github.com/repos/kezabelle/django/milestones{/number}","notifications_url":"https://api.github.com/repos/kezabelle/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/kezabelle/django/labels{/name}","releases_url":"https://api.github.com/repos/kezabelle/django/releases{/id}","created_at":"2013-02-14T09:58:44Z","updated_at":"2014-01-21T18:39:16Z","pushed_at":"2015-01-16T08:38:50Z","git_url":"git://github.com/kezabelle/django.git","ssh_url":"git@github.com:kezabelle/django.git","clone_url":"https://github.com/kezabelle/django.git","svn_url":"https://github.com/kezabelle/django","homepage":"http://www.djangoproject.com/","size":105613,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"28db4af80a319485c0da724d692e2f8396aa57e3","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3907"},"html":{"href":"https://github.com/django/django/pull/3907"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3907"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3907/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3907/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3907/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/11626eae15444c8fedae6856999ea3bfc6f80fe2"}}},{"url":"https://api.github.com/repos/django/django/pulls/3906","id":27250531,"html_url":"https://github.com/django/django/pull/3906","diff_url":"https://github.com/django/django/pull/3906.diff","patch_url":"https://github.com/django/django/pull/3906.patch","issue_url":"https://api.github.com/repos/django/django/issues/3906","number":3906,"state":"closed","locked":false,"title":"Efficient QuerySet.__contains__","user":{"login":"gormster","id":152158,"avatar_url":"https://avatars.githubusercontent.com/u/152158?v=3","gravatar_id":"","url":"https://api.github.com/users/gormster","html_url":"https://github.com/gormster","followers_url":"https://api.github.com/users/gormster/followers","following_url":"https://api.github.com/users/gormster/following{/other_user}","gists_url":"https://api.github.com/users/gormster/gists{/gist_id}","starred_url":"https://api.github.com/users/gormster/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gormster/subscriptions","organizations_url":"https://api.github.com/users/gormster/orgs","repos_url":"https://api.github.com/users/gormster/repos","events_url":"https://api.github.com/users/gormster/events{/privacy}","received_events_url":"https://api.github.com/users/gormster/received_events","type":"User","site_admin":false},"body":"Doing `x in qs` current involves iterating over every single row in the\r\ndatabase. This allows the search to be done in the database with the\r\nindexed primary key.","created_at":"2015-01-13T06:27:03Z","updated_at":"2015-01-13T07:16:44Z","closed_at":"2015-01-13T06:39:52Z","merged_at":null,"merge_commit_sha":"8b8de05ea87379f027e3792363cc97f798d1d6c2","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3906/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3906/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3906/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/9786a6db1cc672f17551c0ae44ea8aec37dabecc","head":{"label":"gormster:master","ref":"master","sha":"9786a6db1cc672f17551c0ae44ea8aec37dabecc","user":{"login":"gormster","id":152158,"avatar_url":"https://avatars.githubusercontent.com/u/152158?v=3","gravatar_id":"","url":"https://api.github.com/users/gormster","html_url":"https://github.com/gormster","followers_url":"https://api.github.com/users/gormster/followers","following_url":"https://api.github.com/users/gormster/following{/other_user}","gists_url":"https://api.github.com/users/gormster/gists{/gist_id}","starred_url":"https://api.github.com/users/gormster/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gormster/subscriptions","organizations_url":"https://api.github.com/users/gormster/orgs","repos_url":"https://api.github.com/users/gormster/repos","events_url":"https://api.github.com/users/gormster/events{/privacy}","received_events_url":"https://api.github.com/users/gormster/received_events","type":"User","site_admin":false},"repo":{"id":29175784,"name":"django","full_name":"gormster/django","owner":{"login":"gormster","id":152158,"avatar_url":"https://avatars.githubusercontent.com/u/152158?v=3","gravatar_id":"","url":"https://api.github.com/users/gormster","html_url":"https://github.com/gormster","followers_url":"https://api.github.com/users/gormster/followers","following_url":"https://api.github.com/users/gormster/following{/other_user}","gists_url":"https://api.github.com/users/gormster/gists{/gist_id}","starred_url":"https://api.github.com/users/gormster/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gormster/subscriptions","organizations_url":"https://api.github.com/users/gormster/orgs","repos_url":"https://api.github.com/users/gormster/repos","events_url":"https://api.github.com/users/gormster/events{/privacy}","received_events_url":"https://api.github.com/users/gormster/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/gormster/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/gormster/django","forks_url":"https://api.github.com/repos/gormster/django/forks","keys_url":"https://api.github.com/repos/gormster/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gormster/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gormster/django/teams","hooks_url":"https://api.github.com/repos/gormster/django/hooks","issue_events_url":"https://api.github.com/repos/gormster/django/issues/events{/number}","events_url":"https://api.github.com/repos/gormster/django/events","assignees_url":"https://api.github.com/repos/gormster/django/assignees{/user}","branches_url":"https://api.github.com/repos/gormster/django/branches{/branch}","tags_url":"https://api.github.com/repos/gormster/django/tags","blobs_url":"https://api.github.com/repos/gormster/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gormster/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gormster/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/gormster/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gormster/django/statuses/{sha}","languages_url":"https://api.github.com/repos/gormster/django/languages","stargazers_url":"https://api.github.com/repos/gormster/django/stargazers","contributors_url":"https://api.github.com/repos/gormster/django/contributors","subscribers_url":"https://api.github.com/repos/gormster/django/subscribers","subscription_url":"https://api.github.com/repos/gormster/django/subscription","commits_url":"https://api.github.com/repos/gormster/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/gormster/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/gormster/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/gormster/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/gormster/django/contents/{+path}","compare_url":"https://api.github.com/repos/gormster/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gormster/django/merges","archive_url":"https://api.github.com/repos/gormster/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gormster/django/downloads","issues_url":"https://api.github.com/repos/gormster/django/issues{/number}","pulls_url":"https://api.github.com/repos/gormster/django/pulls{/number}","milestones_url":"https://api.github.com/repos/gormster/django/milestones{/number}","notifications_url":"https://api.github.com/repos/gormster/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gormster/django/labels{/name}","releases_url":"https://api.github.com/repos/gormster/django/releases{/id}","created_at":"2015-01-13T06:17:57Z","updated_at":"2015-01-13T07:02:04Z","pushed_at":"2015-01-13T07:02:03Z","git_url":"git://github.com/gormster/django.git","ssh_url":"git@github.com:gormster/django.git","clone_url":"https://github.com/gormster/django.git","svn_url":"https://github.com/gormster/django","homepage":"https://www.djangoproject.com/","size":117920,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"65246de7b1d70d25831ab394c4f4a75813f629fe","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3906"},"html":{"href":"https://github.com/django/django/pull/3906"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3906"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3906/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3906/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3906/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/9786a6db1cc672f17551c0ae44ea8aec37dabecc"}}},{"url":"https://api.github.com/repos/django/django/pulls/3905","id":27240342,"html_url":"https://github.com/django/django/pull/3905","diff_url":"https://github.com/django/django/pull/3905.diff","patch_url":"https://github.com/django/django/pull/3905.patch","issue_url":"https://api.github.com/repos/django/django/issues/3905","number":3905,"state":"closed","locked":false,"title":"Replaced inner functions by class methods.","user":{"login":"charettes","id":9293,"avatar_url":"https://avatars.githubusercontent.com/u/9293?v=3","gravatar_id":"","url":"https://api.github.com/users/charettes","html_url":"https://github.com/charettes","followers_url":"https://api.github.com/users/charettes/followers","following_url":"https://api.github.com/users/charettes/following{/other_user}","gists_url":"https://api.github.com/users/charettes/gists{/gist_id}","starred_url":"https://api.github.com/users/charettes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/charettes/subscriptions","organizations_url":"https://api.github.com/users/charettes/orgs","repos_url":"https://api.github.com/users/charettes/repos","events_url":"https://api.github.com/users/charettes/events{/privacy}","received_events_url":"https://api.github.com/users/charettes/received_events","type":"User","site_admin":false},"body":"refs #24031","created_at":"2015-01-13T00:57:37Z","updated_at":"2015-01-15T18:07:56Z","closed_at":"2015-01-15T18:05:52Z","merged_at":"2015-01-15T18:05:52Z","merge_commit_sha":"60112bb1c229b77770e2a5bfd9d164ff85dd9bdc","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3905/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3905/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3905/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/47bdad4e6b3bf70aec0d19d65eeb6a7319ad045a","head":{"label":"charettes:ticket-24031-avoid-func-creation","ref":"ticket-24031-avoid-func-creation","sha":"47bdad4e6b3bf70aec0d19d65eeb6a7319ad045a","user":{"login":"charettes","id":9293,"avatar_url":"https://avatars.githubusercontent.com/u/9293?v=3","gravatar_id":"","url":"https://api.github.com/users/charettes","html_url":"https://github.com/charettes","followers_url":"https://api.github.com/users/charettes/followers","following_url":"https://api.github.com/users/charettes/following{/other_user}","gists_url":"https://api.github.com/users/charettes/gists{/gist_id}","starred_url":"https://api.github.com/users/charettes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/charettes/subscriptions","organizations_url":"https://api.github.com/users/charettes/orgs","repos_url":"https://api.github.com/users/charettes/repos","events_url":"https://api.github.com/users/charettes/events{/privacy}","received_events_url":"https://api.github.com/users/charettes/received_events","type":"User","site_admin":false},"repo":{"id":4164938,"name":"django","full_name":"charettes/django","owner":{"login":"charettes","id":9293,"avatar_url":"https://avatars.githubusercontent.com/u/9293?v=3","gravatar_id":"","url":"https://api.github.com/users/charettes","html_url":"https://github.com/charettes","followers_url":"https://api.github.com/users/charettes/followers","following_url":"https://api.github.com/users/charettes/following{/other_user}","gists_url":"https://api.github.com/users/charettes/gists{/gist_id}","starred_url":"https://api.github.com/users/charettes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/charettes/subscriptions","organizations_url":"https://api.github.com/users/charettes/orgs","repos_url":"https://api.github.com/users/charettes/repos","events_url":"https://api.github.com/users/charettes/events{/privacy}","received_events_url":"https://api.github.com/users/charettes/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/charettes/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/charettes/django","forks_url":"https://api.github.com/repos/charettes/django/forks","keys_url":"https://api.github.com/repos/charettes/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/charettes/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/charettes/django/teams","hooks_url":"https://api.github.com/repos/charettes/django/hooks","issue_events_url":"https://api.github.com/repos/charettes/django/issues/events{/number}","events_url":"https://api.github.com/repos/charettes/django/events","assignees_url":"https://api.github.com/repos/charettes/django/assignees{/user}","branches_url":"https://api.github.com/repos/charettes/django/branches{/branch}","tags_url":"https://api.github.com/repos/charettes/django/tags","blobs_url":"https://api.github.com/repos/charettes/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/charettes/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/charettes/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/charettes/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/charettes/django/statuses/{sha}","languages_url":"https://api.github.com/repos/charettes/django/languages","stargazers_url":"https://api.github.com/repos/charettes/django/stargazers","contributors_url":"https://api.github.com/repos/charettes/django/contributors","subscribers_url":"https://api.github.com/repos/charettes/django/subscribers","subscription_url":"https://api.github.com/repos/charettes/django/subscription","commits_url":"https://api.github.com/repos/charettes/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/charettes/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/charettes/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/charettes/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/charettes/django/contents/{+path}","compare_url":"https://api.github.com/repos/charettes/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/charettes/django/merges","archive_url":"https://api.github.com/repos/charettes/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/charettes/django/downloads","issues_url":"https://api.github.com/repos/charettes/django/issues{/number}","pulls_url":"https://api.github.com/repos/charettes/django/pulls{/number}","milestones_url":"https://api.github.com/repos/charettes/django/milestones{/number}","notifications_url":"https://api.github.com/repos/charettes/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/charettes/django/labels{/name}","releases_url":"https://api.github.com/repos/charettes/django/releases{/id}","created_at":"2012-04-28T04:23:16Z","updated_at":"2014-06-01T14:49:26Z","pushed_at":"2015-01-16T21:30:40Z","git_url":"git://github.com/charettes/django.git","ssh_url":"git@github.com:charettes/django.git","clone_url":"https://github.com/charettes/django.git","svn_url":"https://github.com/charettes/django","homepage":"http://www.djangoproject.com/","size":90951,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4832c004e88a68b98b976b4f68a1c9fdb4ea3530","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3905"},"html":{"href":"https://github.com/django/django/pull/3905"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3905"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3905/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3905/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3905/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/47bdad4e6b3bf70aec0d19d65eeb6a7319ad045a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3904","id":27239934,"html_url":"https://github.com/django/django/pull/3904","diff_url":"https://github.com/django/django/pull/3904.diff","patch_url":"https://github.com/django/django/pull/3904.patch","issue_url":"https://api.github.com/repos/django/django/issues/3904","number":3904,"state":"closed","locked":false,"title":"Fixed #24099 -- Removed contenttype.name deprecated field","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"Ticket: https://code.djangoproject.com/ticket/24099\r\nSupersedes: https://github.com/django/django/pull/3858","created_at":"2015-01-13T00:48:25Z","updated_at":"2015-01-16T19:26:07Z","closed_at":"2015-01-16T19:26:03Z","merged_at":null,"merge_commit_sha":"71f1045259949fd287b698b8ee19e194e1508207","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3904/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3904/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3904/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/db95e51320a89bb82e35768d5d4fdc1f25bf3fd1","head":{"label":"MarkusH:ticket24099","ref":"ticket24099","sha":"db95e51320a89bb82e35768d5d4fdc1f25bf3fd1","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"faf0d66a80e09be3656a337c33a8e70c7fbab7e3","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3904"},"html":{"href":"https://github.com/django/django/pull/3904"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3904"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3904/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3904/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3904/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/db95e51320a89bb82e35768d5d4fdc1f25bf3fd1"}}},{"url":"https://api.github.com/repos/django/django/pulls/3901","id":27229359,"html_url":"https://github.com/django/django/pull/3901","diff_url":"https://github.com/django/django/pull/3901.diff","patch_url":"https://github.com/django/django/pull/3901.patch","issue_url":"https://api.github.com/repos/django/django/issues/3901","number":3901,"state":"closed","locked":false,"title":"Fixes #24138 - make modelform_factory public","user":{"login":"jschneier","id":2245080,"avatar_url":"https://avatars.githubusercontent.com/u/2245080?v=3","gravatar_id":"","url":"https://api.github.com/users/jschneier","html_url":"https://github.com/jschneier","followers_url":"https://api.github.com/users/jschneier/followers","following_url":"https://api.github.com/users/jschneier/following{/other_user}","gists_url":"https://api.github.com/users/jschneier/gists{/gist_id}","starred_url":"https://api.github.com/users/jschneier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jschneier/subscriptions","organizations_url":"https://api.github.com/users/jschneier/orgs","repos_url":"https://api.github.com/users/jschneier/repos","events_url":"https://api.github.com/users/jschneier/events{/privacy}","received_events_url":"https://api.github.com/users/jschneier/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-12T21:52:49Z","updated_at":"2015-01-12T22:45:07Z","closed_at":"2015-01-12T22:45:07Z","merged_at":null,"merge_commit_sha":"89171e93fbf8cb207876187cd96bdd42edd7a3e7","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3901/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3901/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3901/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/41e642e3ea11564821396c4eb532d4d2d84eb255","head":{"label":"jschneier:patch-1","ref":"patch-1","sha":"41e642e3ea11564821396c4eb532d4d2d84eb255","user":{"login":"jschneier","id":2245080,"avatar_url":"https://avatars.githubusercontent.com/u/2245080?v=3","gravatar_id":"","url":"https://api.github.com/users/jschneier","html_url":"https://github.com/jschneier","followers_url":"https://api.github.com/users/jschneier/followers","following_url":"https://api.github.com/users/jschneier/following{/other_user}","gists_url":"https://api.github.com/users/jschneier/gists{/gist_id}","starred_url":"https://api.github.com/users/jschneier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jschneier/subscriptions","organizations_url":"https://api.github.com/users/jschneier/orgs","repos_url":"https://api.github.com/users/jschneier/repos","events_url":"https://api.github.com/users/jschneier/events{/privacy}","received_events_url":"https://api.github.com/users/jschneier/received_events","type":"User","site_admin":false},"repo":{"id":28159097,"name":"django","full_name":"jschneier/django","owner":{"login":"jschneier","id":2245080,"avatar_url":"https://avatars.githubusercontent.com/u/2245080?v=3","gravatar_id":"","url":"https://api.github.com/users/jschneier","html_url":"https://github.com/jschneier","followers_url":"https://api.github.com/users/jschneier/followers","following_url":"https://api.github.com/users/jschneier/following{/other_user}","gists_url":"https://api.github.com/users/jschneier/gists{/gist_id}","starred_url":"https://api.github.com/users/jschneier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jschneier/subscriptions","organizations_url":"https://api.github.com/users/jschneier/orgs","repos_url":"https://api.github.com/users/jschneier/repos","events_url":"https://api.github.com/users/jschneier/events{/privacy}","received_events_url":"https://api.github.com/users/jschneier/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jschneier/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/jschneier/django","forks_url":"https://api.github.com/repos/jschneier/django/forks","keys_url":"https://api.github.com/repos/jschneier/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jschneier/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jschneier/django/teams","hooks_url":"https://api.github.com/repos/jschneier/django/hooks","issue_events_url":"https://api.github.com/repos/jschneier/django/issues/events{/number}","events_url":"https://api.github.com/repos/jschneier/django/events","assignees_url":"https://api.github.com/repos/jschneier/django/assignees{/user}","branches_url":"https://api.github.com/repos/jschneier/django/branches{/branch}","tags_url":"https://api.github.com/repos/jschneier/django/tags","blobs_url":"https://api.github.com/repos/jschneier/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jschneier/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jschneier/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jschneier/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jschneier/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jschneier/django/languages","stargazers_url":"https://api.github.com/repos/jschneier/django/stargazers","contributors_url":"https://api.github.com/repos/jschneier/django/contributors","subscribers_url":"https://api.github.com/repos/jschneier/django/subscribers","subscription_url":"https://api.github.com/repos/jschneier/django/subscription","commits_url":"https://api.github.com/repos/jschneier/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jschneier/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jschneier/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jschneier/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jschneier/django/contents/{+path}","compare_url":"https://api.github.com/repos/jschneier/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jschneier/django/merges","archive_url":"https://api.github.com/repos/jschneier/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jschneier/django/downloads","issues_url":"https://api.github.com/repos/jschneier/django/issues{/number}","pulls_url":"https://api.github.com/repos/jschneier/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jschneier/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jschneier/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jschneier/django/labels{/name}","releases_url":"https://api.github.com/repos/jschneier/django/releases{/id}","created_at":"2014-12-17T22:52:03Z","updated_at":"2014-12-17T22:52:20Z","pushed_at":"2015-01-12T21:52:37Z","git_url":"git://github.com/jschneier/django.git","ssh_url":"git@github.com:jschneier/django.git","clone_url":"https://github.com/jschneier/django.git","svn_url":"https://github.com/jschneier/django","homepage":"https://www.djangoproject.com/","size":118140,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"f48e2258a96a08dcec843921206bcf7656e3ae45","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3901"},"html":{"href":"https://github.com/django/django/pull/3901"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3901"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3901/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3901/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3901/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/41e642e3ea11564821396c4eb532d4d2d84eb255"}}},{"url":"https://api.github.com/repos/django/django/pulls/3900","id":27227574,"html_url":"https://github.com/django/django/pull/3900","diff_url":"https://github.com/django/django/pull/3900.diff","patch_url":"https://github.com/django/django/pull/3900.patch","issue_url":"https://api.github.com/repos/django/django/issues/3900","number":3900,"state":"closed","locked":false,"title":"Fixed #24124 -- Used default context_processors in tests.","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"Patch from Aymeric\r\n\r\nhttps://code.djangoproject.com/ticket/24124","created_at":"2015-01-12T21:27:31Z","updated_at":"2015-01-12T21:37:59Z","closed_at":"2015-01-12T21:37:59Z","merged_at":null,"merge_commit_sha":"f05112e4e22cae7022e0a1e95324dcc4b6286967","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3900/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3900/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3900/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d17189d5478fabe6aba940f9647f1ebd57ffb25b","head":{"label":"collinanderson:24124-complement","ref":"24124-complement","sha":"d17189d5478fabe6aba940f9647f1ebd57ffb25b","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"511a53b3142551a1bc3093ed1b6655f57634f510","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3900"},"html":{"href":"https://github.com/django/django/pull/3900"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3900"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3900/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3900/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3900/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d17189d5478fabe6aba940f9647f1ebd57ffb25b"}}},{"url":"https://api.github.com/repos/django/django/pulls/3899","id":27223175,"html_url":"https://github.com/django/django/pull/3899","diff_url":"https://github.com/django/django/pull/3899.diff","patch_url":"https://github.com/django/django/pull/3899.patch","issue_url":"https://api.github.com/repos/django/django/issues/3899","number":3899,"state":"closed","locked":false,"title":"Fixed #22603 -- Organized django.db.backends classes","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"Not sure if `DatabaseWrapper` classes should remain in `base.py` or if it's more clear to have them in a new `wrapper.py` file as I've done. Some `base.py`'s have version checking logic so it seemed a bit cleaner to have the wrapper separated from that, and also every other `DatabaseFoo` class is in `foo.py`.","created_at":"2015-01-12T20:23:44Z","updated_at":"2015-01-14T19:19:01Z","closed_at":"2015-01-14T19:18:32Z","merged_at":"2015-01-14T19:18:32Z","merge_commit_sha":"e4ad23bb8edcba036f7e5da9c5cd358b1aa9a001","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3899/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3899/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3899/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/28308078f397d1de36fd0da417ac7da2544ba12d","head":{"label":"timgraham:22603","ref":"22603","sha":"28308078f397d1de36fd0da417ac7da2544ba12d","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"737d24923ac69bb8b89af1bb2f3f4c4c744349e8","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3899"},"html":{"href":"https://github.com/django/django/pull/3899"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3899"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3899/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3899/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3899/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/28308078f397d1de36fd0da417ac7da2544ba12d"}}},{"url":"https://api.github.com/repos/django/django/pulls/3897","id":27203153,"html_url":"https://github.com/django/django/pull/3897","diff_url":"https://github.com/django/django/pull/3897.diff","patch_url":"https://github.com/django/django/pull/3897.patch","issue_url":"https://api.github.com/repos/django/django/issues/3897","number":3897,"state":"closed","locked":false,"title":"Fixed #24124 -- Changed context_processors in the default settings.py","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24124\r\nhttps://groups.google.com/d/topic/django-developers/WlK_7OoThaQ/discussion","created_at":"2015-01-12T15:50:14Z","updated_at":"2015-01-12T18:22:46Z","closed_at":"2015-01-12T18:20:54Z","merged_at":"2015-01-12T18:20:54Z","merge_commit_sha":"9f7ae3e98413a5e747ac9c683f6abec437eee05e","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3897/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3897/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3897/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/26a92619f62aeb6f60e15c62e8322c96744eff26","head":{"label":"collinanderson:3897","ref":"3897","sha":"26a92619f62aeb6f60e15c62e8322c96744eff26","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"bbbed99f6260a8b3e65cb990e49721b1ce4a441b","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3897"},"html":{"href":"https://github.com/django/django/pull/3897"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3897"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3897/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3897/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3897/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/26a92619f62aeb6f60e15c62e8322c96744eff26"}}},{"url":"https://api.github.com/repos/django/django/pulls/3896","id":27193799,"html_url":"https://github.com/django/django/pull/3896","diff_url":"https://github.com/django/django/pull/3896.diff","patch_url":"https://github.com/django/django/pull/3896.patch","issue_url":"https://api.github.com/repos/django/django/issues/3896","number":3896,"state":"closed","locked":false,"title":"Made Django's templates get their own language variables.","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"Refs #24117\r\n\r\nThis is the minimum change needed for the current context_processors proposal.\r\n\r\nhttps://code.djangoproject.com/ticket/24117","created_at":"2015-01-12T13:30:48Z","updated_at":"2015-01-12T15:56:57Z","closed_at":"2015-01-12T15:56:46Z","merged_at":null,"merge_commit_sha":"63b57053db86add9ab6254ab6154cb60f6356191","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3896/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3896/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3896/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/80d1504bfc70f54a47356580f5a175cc770ca475","head":{"label":"collinanderson:24117lang","ref":"24117lang","sha":"80d1504bfc70f54a47356580f5a175cc770ca475","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"a7c256cb5491bf2a77abdff01638239db5bfd9d5","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3896"},"html":{"href":"https://github.com/django/django/pull/3896"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3896"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3896/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3896/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3896/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/80d1504bfc70f54a47356580f5a175cc770ca475"}}},{"url":"https://api.github.com/repos/django/django/pulls/3895","id":27186606,"html_url":"https://github.com/django/django/pull/3895","diff_url":"https://github.com/django/django/pull/3895.diff","patch_url":"https://github.com/django/django/pull/3895.patch","issue_url":"https://api.github.com/repos/django/django/issues/3895","number":3895,"state":"closed","locked":false,"title":"Fixed #24133 -- Replaced formatting syntax in success_url placeholders","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Thanks Laurent Payot for the report.","created_at":"2015-01-12T11:04:05Z","updated_at":"2015-01-12T21:52:19Z","closed_at":"2015-01-12T21:52:18Z","merged_at":"2015-01-12T21:52:18Z","merge_commit_sha":"12cc5767cb609b3a2b0b4a56a4f5d9ba4448dcb2","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3895/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3895/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3895/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/f48e2258a96a08dcec843921206bcf7656e3ae45","head":{"label":"claudep:24133","ref":"24133","sha":"f48e2258a96a08dcec843921206bcf7656e3ae45","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"5f7230e12f0d237cdc19d8930006b0fc7d9dbaa6","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3895"},"html":{"href":"https://github.com/django/django/pull/3895"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3895"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3895/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3895/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3895/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/f48e2258a96a08dcec843921206bcf7656e3ae45"}}},{"url":"https://api.github.com/repos/django/django/pulls/3894","id":27172025,"html_url":"https://github.com/django/django/pull/3894","diff_url":"https://github.com/django/django/pull/3894.diff","patch_url":"https://github.com/django/django/pull/3894.patch","issue_url":"https://api.github.com/repos/django/django/issues/3894","number":3894,"state":"closed","locked":false,"title":"Fixed #24075 -- Prevented running post_migrate signals when unapplying initial migrations of contenttypes and auth","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24075","created_at":"2015-01-12T01:55:57Z","updated_at":"2015-01-14T20:12:57Z","closed_at":"2015-01-14T19:38:37Z","merged_at":null,"merge_commit_sha":"8ac90cf950795550ce234c57ca8f63ec7ecc0250","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3894/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3894/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3894/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/284ad4060b1bd09bd1f55ad2aeb018eb6c8dd8a3","head":{"label":"MarkusH:ticket24075","ref":"ticket24075","sha":"284ad4060b1bd09bd1f55ad2aeb018eb6c8dd8a3","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"88786afbffc5c095f6491e080afea394f63bb44a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3894"},"html":{"href":"https://github.com/django/django/pull/3894"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3894"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3894/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3894/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3894/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/284ad4060b1bd09bd1f55ad2aeb018eb6c8dd8a3"}}},{"url":"https://api.github.com/repos/django/django/pulls/3893","id":27167623,"html_url":"https://github.com/django/django/pull/3893","diff_url":"https://github.com/django/django/pull/3893.diff","patch_url":"https://github.com/django/django/pull/3893.patch","issue_url":"https://api.github.com/repos/django/django/issues/3893","number":3893,"state":"closed","locked":false,"title":"Mention flup6 for deploying on FastCGI + Python 3.x.","user":{"login":"davidfstr","id":764688,"avatar_url":"https://avatars.githubusercontent.com/u/764688?v=3","gravatar_id":"","url":"https://api.github.com/users/davidfstr","html_url":"https://github.com/davidfstr","followers_url":"https://api.github.com/users/davidfstr/followers","following_url":"https://api.github.com/users/davidfstr/following{/other_user}","gists_url":"https://api.github.com/users/davidfstr/gists{/gist_id}","starred_url":"https://api.github.com/users/davidfstr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidfstr/subscriptions","organizations_url":"https://api.github.com/users/davidfstr/orgs","repos_url":"https://api.github.com/users/davidfstr/repos","events_url":"https://api.github.com/users/davidfstr/events{/privacy}","received_events_url":"https://api.github.com/users/davidfstr/received_events","type":"User","site_admin":false},"body":"See ticket: https://code.djangoproject.com/ticket/24130","created_at":"2015-01-11T20:22:41Z","updated_at":"2015-01-11T20:36:50Z","closed_at":"2015-01-11T20:36:50Z","merged_at":null,"merge_commit_sha":"60cb4d590aeaa5aa189ec51b86edc8db4470af9b","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3893/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3893/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3893/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/32a96f5edcbadd465e1dc0810bfe6b3332feb539","head":{"label":"davidfstr:doc_flup6","ref":"doc_flup6","sha":"32a96f5edcbadd465e1dc0810bfe6b3332feb539","user":{"login":"davidfstr","id":764688,"avatar_url":"https://avatars.githubusercontent.com/u/764688?v=3","gravatar_id":"","url":"https://api.github.com/users/davidfstr","html_url":"https://github.com/davidfstr","followers_url":"https://api.github.com/users/davidfstr/followers","following_url":"https://api.github.com/users/davidfstr/following{/other_user}","gists_url":"https://api.github.com/users/davidfstr/gists{/gist_id}","starred_url":"https://api.github.com/users/davidfstr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidfstr/subscriptions","organizations_url":"https://api.github.com/users/davidfstr/orgs","repos_url":"https://api.github.com/users/davidfstr/repos","events_url":"https://api.github.com/users/davidfstr/events{/privacy}","received_events_url":"https://api.github.com/users/davidfstr/received_events","type":"User","site_admin":false},"repo":{"id":29104309,"name":"django","full_name":"davidfstr/django","owner":{"login":"davidfstr","id":764688,"avatar_url":"https://avatars.githubusercontent.com/u/764688?v=3","gravatar_id":"","url":"https://api.github.com/users/davidfstr","html_url":"https://github.com/davidfstr","followers_url":"https://api.github.com/users/davidfstr/followers","following_url":"https://api.github.com/users/davidfstr/following{/other_user}","gists_url":"https://api.github.com/users/davidfstr/gists{/gist_id}","starred_url":"https://api.github.com/users/davidfstr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidfstr/subscriptions","organizations_url":"https://api.github.com/users/davidfstr/orgs","repos_url":"https://api.github.com/users/davidfstr/repos","events_url":"https://api.github.com/users/davidfstr/events{/privacy}","received_events_url":"https://api.github.com/users/davidfstr/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/davidfstr/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/davidfstr/django","forks_url":"https://api.github.com/repos/davidfstr/django/forks","keys_url":"https://api.github.com/repos/davidfstr/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/davidfstr/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/davidfstr/django/teams","hooks_url":"https://api.github.com/repos/davidfstr/django/hooks","issue_events_url":"https://api.github.com/repos/davidfstr/django/issues/events{/number}","events_url":"https://api.github.com/repos/davidfstr/django/events","assignees_url":"https://api.github.com/repos/davidfstr/django/assignees{/user}","branches_url":"https://api.github.com/repos/davidfstr/django/branches{/branch}","tags_url":"https://api.github.com/repos/davidfstr/django/tags","blobs_url":"https://api.github.com/repos/davidfstr/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/davidfstr/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/davidfstr/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/davidfstr/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/davidfstr/django/statuses/{sha}","languages_url":"https://api.github.com/repos/davidfstr/django/languages","stargazers_url":"https://api.github.com/repos/davidfstr/django/stargazers","contributors_url":"https://api.github.com/repos/davidfstr/django/contributors","subscribers_url":"https://api.github.com/repos/davidfstr/django/subscribers","subscription_url":"https://api.github.com/repos/davidfstr/django/subscription","commits_url":"https://api.github.com/repos/davidfstr/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/davidfstr/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/davidfstr/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/davidfstr/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/davidfstr/django/contents/{+path}","compare_url":"https://api.github.com/repos/davidfstr/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/davidfstr/django/merges","archive_url":"https://api.github.com/repos/davidfstr/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/davidfstr/django/downloads","issues_url":"https://api.github.com/repos/davidfstr/django/issues{/number}","pulls_url":"https://api.github.com/repos/davidfstr/django/pulls{/number}","milestones_url":"https://api.github.com/repos/davidfstr/django/milestones{/number}","notifications_url":"https://api.github.com/repos/davidfstr/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/davidfstr/django/labels{/name}","releases_url":"https://api.github.com/repos/davidfstr/django/releases{/id}","created_at":"2015-01-11T20:11:21Z","updated_at":"2015-01-11T20:11:34Z","pushed_at":"2015-01-11T20:13:25Z","git_url":"git://github.com/davidfstr/django.git","ssh_url":"git@github.com:davidfstr/django.git","clone_url":"https://github.com/davidfstr/django.git","svn_url":"https://github.com/davidfstr/django","homepage":"https://www.djangoproject.com/","size":117704,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"412066e71e81e899bca63523f239e56138ec9e9d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3893"},"html":{"href":"https://github.com/django/django/pull/3893"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3893"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3893/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3893/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3893/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/32a96f5edcbadd465e1dc0810bfe6b3332feb539"}}},{"url":"https://api.github.com/repos/django/django/pulls/3892","id":27167604,"html_url":"https://github.com/django/django/pull/3892","diff_url":"https://github.com/django/django/pull/3892.diff","patch_url":"https://github.com/django/django/pull/3892.patch","issue_url":"https://api.github.com/repos/django/django/issues/3892","number":3892,"state":"closed","locked":false,"title":"Updated supports_binary_field flag for MySQL-Python3","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"The current recommended MySQL driver for Python 3 (mysqlclient)\r\ndoes support binary fields. Refs #20377.","created_at":"2015-01-11T20:21:44Z","updated_at":"2015-01-11T22:35:55Z","closed_at":"2015-01-11T22:35:55Z","merged_at":null,"merge_commit_sha":"9d3841b9ebeff3cc3f43baa0860099e95ecc1c42","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3892/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3892/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3892/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/925a65b487111c82687d8a173480b5e8faf4f094","head":{"label":"claudep:20377","ref":"20377","sha":"925a65b487111c82687d8a173480b5e8faf4f094","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"412066e71e81e899bca63523f239e56138ec9e9d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3892"},"html":{"href":"https://github.com/django/django/pull/3892"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3892"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3892/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3892/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3892/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/925a65b487111c82687d8a173480b5e8faf4f094"}}},{"url":"https://api.github.com/repos/django/django/pulls/3891","id":27167589,"html_url":"https://github.com/django/django/pull/3891","diff_url":"https://github.com/django/django/pull/3891.diff","patch_url":"https://github.com/django/django/pull/3891.patch","issue_url":"https://api.github.com/repos/django/django/issues/3891","number":3891,"state":"closed","locked":false,"title":"Fixed #24129 -- Added indicator that migrations are rendering the initial state","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24129\r\n\r\nThe first commit is part of #3890 ","created_at":"2015-01-11T20:20:39Z","updated_at":"2015-01-12T18:25:51Z","closed_at":"2015-01-12T18:25:47Z","merged_at":null,"merge_commit_sha":"d8e94e4c252f5cd8c4b995c4d7d0dbf861f73844","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3891/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3891/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3891/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a41571ae11951bf0c9b6962c6b17688eed711787","head":{"label":"MarkusH:ticket24129","ref":"ticket24129","sha":"a41571ae11951bf0c9b6962c6b17688eed711787","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"bbbed99f6260a8b3e65cb990e49721b1ce4a441b","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3891"},"html":{"href":"https://github.com/django/django/pull/3891"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3891"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3891/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3891/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3891/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a41571ae11951bf0c9b6962c6b17688eed711787"}}},{"url":"https://api.github.com/repos/django/django/pulls/3890","id":27167501,"html_url":"https://github.com/django/django/pull/3890","diff_url":"https://github.com/django/django/pull/3890.diff","patch_url":"https://github.com/django/django/pull/3890.patch","issue_url":"https://api.github.com/repos/django/django/issues/3890","number":3890,"state":"closed","locked":false,"title":"Fixed #24123 -- Used all available migrations to generate the initial migration state","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"Thanks Collin Anderson for asking me the right questions\r\n\r\nhttps://code.djangoproject.com/ticket/24123","created_at":"2015-01-11T20:13:52Z","updated_at":"2015-01-12T17:43:43Z","closed_at":"2015-01-12T17:43:14Z","merged_at":null,"merge_commit_sha":"faf793ee2218b3272a8d56116a2ea389b2b9ca82","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3890/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3890/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3890/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/e337e85225858556c411cf78d573cb36c69cc6ea","head":{"label":"MarkusH:ticket24123","ref":"ticket24123","sha":"e337e85225858556c411cf78d573cb36c69cc6ea","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"8f5d6c77b6bbe0390b683cea649de6ad24d80fef","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3890"},"html":{"href":"https://github.com/django/django/pull/3890"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3890"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3890/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3890/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3890/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/e337e85225858556c411cf78d573cb36c69cc6ea"}}},{"url":"https://api.github.com/repos/django/django/pulls/3889","id":27167413,"html_url":"https://github.com/django/django/pull/3889","diff_url":"https://github.com/django/django/pull/3889.diff","patch_url":"https://github.com/django/django/pull/3889.patch","issue_url":"https://api.github.com/repos/django/django/issues/3889","number":3889,"state":"closed","locked":false,"title":"Fixed #23878 -- Move Query and Prefetch documentation","user":{"login":"ngzhian","id":1749303,"avatar_url":"https://avatars.githubusercontent.com/u/1749303?v=3","gravatar_id":"","url":"https://api.github.com/users/ngzhian","html_url":"https://github.com/ngzhian","followers_url":"https://api.github.com/users/ngzhian/followers","following_url":"https://api.github.com/users/ngzhian/following{/other_user}","gists_url":"https://api.github.com/users/ngzhian/gists{/gist_id}","starred_url":"https://api.github.com/users/ngzhian/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ngzhian/subscriptions","organizations_url":"https://api.github.com/users/ngzhian/orgs","repos_url":"https://api.github.com/users/ngzhian/repos","events_url":"https://api.github.com/users/ngzhian/events{/privacy}","received_events_url":"https://api.github.com/users/ngzhian/received_events","type":"User","site_admin":false},"body":"Previously they were in queries.txt, as per discussion on the ticket, they have been moved to the bottom of querysets.txt, with relevant links added into the same page.\r\n","created_at":"2015-01-11T20:07:39Z","updated_at":"2015-01-12T16:38:49Z","closed_at":"2015-01-12T16:38:49Z","merged_at":null,"merge_commit_sha":"3bb7ee4cedc3c2d087fff4902071a8421e90bfda","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3889/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3889/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3889/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/25c2b7ac99df7e873655eb422a359a76d86ce5bd","head":{"label":"ngzhian:ticket_23878","ref":"ticket_23878","sha":"25c2b7ac99df7e873655eb422a359a76d86ce5bd","user":{"login":"ngzhian","id":1749303,"avatar_url":"https://avatars.githubusercontent.com/u/1749303?v=3","gravatar_id":"","url":"https://api.github.com/users/ngzhian","html_url":"https://github.com/ngzhian","followers_url":"https://api.github.com/users/ngzhian/followers","following_url":"https://api.github.com/users/ngzhian/following{/other_user}","gists_url":"https://api.github.com/users/ngzhian/gists{/gist_id}","starred_url":"https://api.github.com/users/ngzhian/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ngzhian/subscriptions","organizations_url":"https://api.github.com/users/ngzhian/orgs","repos_url":"https://api.github.com/users/ngzhian/repos","events_url":"https://api.github.com/users/ngzhian/events{/privacy}","received_events_url":"https://api.github.com/users/ngzhian/received_events","type":"User","site_admin":false},"repo":{"id":29103921,"name":"django","full_name":"ngzhian/django","owner":{"login":"ngzhian","id":1749303,"avatar_url":"https://avatars.githubusercontent.com/u/1749303?v=3","gravatar_id":"","url":"https://api.github.com/users/ngzhian","html_url":"https://github.com/ngzhian","followers_url":"https://api.github.com/users/ngzhian/followers","following_url":"https://api.github.com/users/ngzhian/following{/other_user}","gists_url":"https://api.github.com/users/ngzhian/gists{/gist_id}","starred_url":"https://api.github.com/users/ngzhian/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ngzhian/subscriptions","organizations_url":"https://api.github.com/users/ngzhian/orgs","repos_url":"https://api.github.com/users/ngzhian/repos","events_url":"https://api.github.com/users/ngzhian/events{/privacy}","received_events_url":"https://api.github.com/users/ngzhian/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ngzhian/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/ngzhian/django","forks_url":"https://api.github.com/repos/ngzhian/django/forks","keys_url":"https://api.github.com/repos/ngzhian/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ngzhian/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ngzhian/django/teams","hooks_url":"https://api.github.com/repos/ngzhian/django/hooks","issue_events_url":"https://api.github.com/repos/ngzhian/django/issues/events{/number}","events_url":"https://api.github.com/repos/ngzhian/django/events","assignees_url":"https://api.github.com/repos/ngzhian/django/assignees{/user}","branches_url":"https://api.github.com/repos/ngzhian/django/branches{/branch}","tags_url":"https://api.github.com/repos/ngzhian/django/tags","blobs_url":"https://api.github.com/repos/ngzhian/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ngzhian/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ngzhian/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/ngzhian/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ngzhian/django/statuses/{sha}","languages_url":"https://api.github.com/repos/ngzhian/django/languages","stargazers_url":"https://api.github.com/repos/ngzhian/django/stargazers","contributors_url":"https://api.github.com/repos/ngzhian/django/contributors","subscribers_url":"https://api.github.com/repos/ngzhian/django/subscribers","subscription_url":"https://api.github.com/repos/ngzhian/django/subscription","commits_url":"https://api.github.com/repos/ngzhian/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/ngzhian/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/ngzhian/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/ngzhian/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/ngzhian/django/contents/{+path}","compare_url":"https://api.github.com/repos/ngzhian/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ngzhian/django/merges","archive_url":"https://api.github.com/repos/ngzhian/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ngzhian/django/downloads","issues_url":"https://api.github.com/repos/ngzhian/django/issues{/number}","pulls_url":"https://api.github.com/repos/ngzhian/django/pulls{/number}","milestones_url":"https://api.github.com/repos/ngzhian/django/milestones{/number}","notifications_url":"https://api.github.com/repos/ngzhian/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ngzhian/django/labels{/name}","releases_url":"https://api.github.com/repos/ngzhian/django/releases{/id}","created_at":"2015-01-11T19:59:40Z","updated_at":"2015-01-17T23:03:29Z","pushed_at":"2015-01-18T02:22:20Z","git_url":"git://github.com/ngzhian/django.git","ssh_url":"git@github.com:ngzhian/django.git","clone_url":"https://github.com/ngzhian/django.git","svn_url":"https://github.com/ngzhian/django","homepage":"https://www.djangoproject.com/","size":117691,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"412066e71e81e899bca63523f239e56138ec9e9d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3889"},"html":{"href":"https://github.com/django/django/pull/3889"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3889"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3889/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3889/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3889/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/25c2b7ac99df7e873655eb422a359a76d86ce5bd"}}},{"url":"https://api.github.com/repos/django/django/pulls/3887","id":27167069,"html_url":"https://github.com/django/django/pull/3887","diff_url":"https://github.com/django/django/pull/3887.diff","patch_url":"https://github.com/django/django/pull/3887.patch","issue_url":"https://api.github.com/repos/django/django/issues/3887","number":3887,"state":"closed","locked":false,"title":"Fixed #23913 -- Deprecated the `=` comparison in `if` template tag.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-11T19:39:47Z","updated_at":"2015-01-11T20:23:48Z","closed_at":"2015-01-11T20:23:36Z","merged_at":"2015-01-11T20:23:36Z","merge_commit_sha":"3442b0d30ec93d3e78d3ab9951e6adc43c94313a","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3887/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3887/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3887/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d563e3be68369694a3bac1efd7779d8e03bb6a51","head":{"label":"timgraham:23913","ref":"23913","sha":"d563e3be68369694a3bac1efd7779d8e03bb6a51","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"412066e71e81e899bca63523f239e56138ec9e9d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3887"},"html":{"href":"https://github.com/django/django/pull/3887"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3887"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3887/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3887/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3887/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d563e3be68369694a3bac1efd7779d8e03bb6a51"}}},{"url":"https://api.github.com/repos/django/django/pulls/3886","id":27163050,"html_url":"https://github.com/django/django/pull/3886","diff_url":"https://github.com/django/django/pull/3886.diff","patch_url":"https://github.com/django/django/pull/3886.patch","issue_url":"https://api.github.com/repos/django/django/issues/3886","number":3886,"state":"closed","locked":false,"title":"Docs - Auth example - Password not hashed","user":{"login":"torre76","id":3954720,"avatar_url":"https://avatars.githubusercontent.com/u/3954720?v=3","gravatar_id":"","url":"https://api.github.com/users/torre76","html_url":"https://github.com/torre76","followers_url":"https://api.github.com/users/torre76/followers","following_url":"https://api.github.com/users/torre76/following{/other_user}","gists_url":"https://api.github.com/users/torre76/gists{/gist_id}","starred_url":"https://api.github.com/users/torre76/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/torre76/subscriptions","organizations_url":"https://api.github.com/users/torre76/orgs","repos_url":"https://api.github.com/users/torre76/repos","events_url":"https://api.github.com/users/torre76/events{/privacy}","received_events_url":"https://api.github.com/users/torre76/received_events","type":"User","site_admin":false},"body":"I have followed the \"Full Example of Custom User Authentication\" in docs and, when I tested all worked fine except for the password field that was saved on clear form on database when I was syncing the database.\r\n\r\nThis is happened because doc states that the password field should be directly saved into the model, avoiding the password hashing.\r\nCalling method *set_password* solved the problem for me, so I updated the example in this commit.","created_at":"2015-01-11T14:03:01Z","updated_at":"2015-01-11T17:50:40Z","closed_at":"2015-01-11T17:46:07Z","merged_at":null,"merge_commit_sha":"58a9b651457511b10fd7b050caadb75a29e2facc","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3886/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3886/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3886/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/8f8671af75c9c3f3455ae8aa4789817077dddad4","head":{"label":"torre76:master","ref":"master","sha":"8f8671af75c9c3f3455ae8aa4789817077dddad4","user":{"login":"torre76","id":3954720,"avatar_url":"https://avatars.githubusercontent.com/u/3954720?v=3","gravatar_id":"","url":"https://api.github.com/users/torre76","html_url":"https://github.com/torre76","followers_url":"https://api.github.com/users/torre76/followers","following_url":"https://api.github.com/users/torre76/following{/other_user}","gists_url":"https://api.github.com/users/torre76/gists{/gist_id}","starred_url":"https://api.github.com/users/torre76/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/torre76/subscriptions","organizations_url":"https://api.github.com/users/torre76/orgs","repos_url":"https://api.github.com/users/torre76/repos","events_url":"https://api.github.com/users/torre76/events{/privacy}","received_events_url":"https://api.github.com/users/torre76/received_events","type":"User","site_admin":false},"repo":null},"base":{"label":"django:master","ref":"master","sha":"be158e36251df0b07556657da47cdaf10913c57a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3886"},"html":{"href":"https://github.com/django/django/pull/3886"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3886"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3886/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3886/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3886/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/8f8671af75c9c3f3455ae8aa4789817077dddad4"}}},{"url":"https://api.github.com/repos/django/django/pulls/3885","id":27155923,"html_url":"https://github.com/django/django/pull/3885","diff_url":"https://github.com/django/django/pull/3885.diff","patch_url":"https://github.com/django/django/pull/3885.patch","issue_url":"https://api.github.com/repos/django/django/issues/3885","number":3885,"state":"closed","locked":false,"title":"Fixed #24118 -- Added --debug-sql option for tests.","user":{"login":"mjtamlyn","id":389581,"avatar_url":"https://avatars.githubusercontent.com/u/389581?v=3","gravatar_id":"","url":"https://api.github.com/users/mjtamlyn","html_url":"https://github.com/mjtamlyn","followers_url":"https://api.github.com/users/mjtamlyn/followers","following_url":"https://api.github.com/users/mjtamlyn/following{/other_user}","gists_url":"https://api.github.com/users/mjtamlyn/gists{/gist_id}","starred_url":"https://api.github.com/users/mjtamlyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjtamlyn/subscriptions","organizations_url":"https://api.github.com/users/mjtamlyn/orgs","repos_url":"https://api.github.com/users/mjtamlyn/repos","events_url":"https://api.github.com/users/mjtamlyn/events{/privacy}","received_events_url":"https://api.github.com/users/mjtamlyn/received_events","type":"User","site_admin":false},"body":"This will need documentation and preferably some tests if we decide it's a feature we like.\r\n\r\nFrom the ticket:\r\n\r\n> It's a common problem (*especially* when working on ORM code) to want to print the complete sql queries run during a failing test, especially when parts of the run sql are in the traceback...\r\n\r\nExample output:\r\n\r\n```\r\n> ./runtests.py expressions --debug-sql\r\nTesting against Django installed in '/Users/marc/code/django/django'\r\nCreating test database for alias 'default'...\r\nCreating test database for alias 'other'...\r\n.........s...............................s...F.Es...\r\n======================================================================\r\nERROR: test_invalid_operator (expressions.tests.FTimeDeltaTests)\r\n----------------------------------------------------------------------\r\nTraceback (most recent call last):\r\n File \"/Users/marc/code/django/tests/expressions/tests.py\", line 779, in test_invalid_operator\r\n 1/0\r\nZeroDivisionError: integer division or modulo by zero\r\n\r\n----------------------------------------------------------------------\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e0', u'2010-06-25', u'2010-06-25', 0.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:15:30.747000'); args=[u'e0', u'2010-06-25', u'2010-06-25', 0.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:15:30.747000']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e1', u'2010-06-25', u'2010-06-26', 253000.0, u'2010-06-26 12:15:30.747000', u'2010-06-26 12:15:31'); args=[u'e1', u'2010-06-25', u'2010-06-26', 253000.0, u'2010-06-26 12:15:30.747000', u'2010-06-26 12:15:31']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e2', u'2010-06-22', u'2010-06-25', 3600000000.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:16:14.747000'); args=[u'e2', u'2010-06-22', u'2010-06-25', 3600000000.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:16:14.747000']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e3', u'2010-06-25', u'2010-06-30', 76080000000.0, u'2010-06-29 12:15:30.747000', u'2010-06-30 09:23:30.747000'); args=[u'e3', u'2010-06-25', u'2010-06-30', 76080000000.0, u'2010-06-29 12:15:30.747000', u'2010-06-30 09:23:30.747000']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e4', u'2010-06-15', u'2010-07-05', 777600000000.0, u'2010-06-25 12:15:30.747000', u'2010-07-05 12:15:30.747000'); args=[u'e4', u'2010-06-15', u'2010-07-05', 777600000000.0, u'2010-06-25 12:15:30.747000', u'2010-07-05 12:15:30.747000']\r\n(0.000) QUERY = u'SELECT \"expressions_experiment\".\"id\", \"expressions_experiment\".\"name\", \"expressions_experiment\".\"assigned\", \"expressions_experiment\".\"completed\", \"expressions_experiment\".\"estimated_time\", \"expressions_experiment\".\"start\", \"expressions_experiment\".\"end\" FROM \"expressions_experiment\" ORDER BY \"expressions_experiment\".\"name\" ASC' - PARAMS = (); args=()\r\n\r\n======================================================================\r\nFAIL: test_durationfield_add (expressions.tests.FTimeDeltaTests)\r\n----------------------------------------------------------------------\r\nTraceback (most recent call last):\r\n File \"/Users/marc/code/django/tests/expressions/tests.py\", line 793, in test_durationfield_add\r\n self.fail()\r\nAssertionError: None\r\n\r\n----------------------------------------------------------------------\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e0', u'2010-06-25', u'2010-06-25', 0.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:15:30.747000'); args=[u'e0', u'2010-06-25', u'2010-06-25', 0.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:15:30.747000']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e1', u'2010-06-25', u'2010-06-26', 253000.0, u'2010-06-26 12:15:30.747000', u'2010-06-26 12:15:31'); args=[u'e1', u'2010-06-25', u'2010-06-26', 253000.0, u'2010-06-26 12:15:30.747000', u'2010-06-26 12:15:31']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e2', u'2010-06-22', u'2010-06-25', 3600000000.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:16:14.747000'); args=[u'e2', u'2010-06-22', u'2010-06-25', 3600000000.0, u'2010-06-25 12:15:30.747000', u'2010-06-25 12:16:14.747000']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e3', u'2010-06-25', u'2010-06-30', 76080000000.0, u'2010-06-29 12:15:30.747000', u'2010-06-30 09:23:30.747000'); args=[u'e3', u'2010-06-25', u'2010-06-30', 76080000000.0, u'2010-06-29 12:15:30.747000', u'2010-06-30 09:23:30.747000']\r\n(0.000) QUERY = u'INSERT INTO \"expressions_experiment\" (\"name\", \"assigned\", \"completed\", \"estimated_time\", \"start\", \"end\") VALUES (%s, %s, %s, %s, %s, %s)' - PARAMS = (u'e4', u'2010-06-15', u'2010-07-05', 777600000000.0, u'2010-06-25 12:15:30.747000', u'2010-07-05 12:15:30.747000'); args=[u'e4', u'2010-06-15', u'2010-07-05', 777600000000.0, u'2010-06-25 12:15:30.747000', u'2010-07-05 12:15:30.747000']\r\n(0.000) QUERY = u'SELECT \"expressions_experiment\".\"id\", \"expressions_experiment\".\"name\", \"expressions_experiment\".\"assigned\", \"expressions_experiment\".\"completed\", \"expressions_experiment\".\"estimated_time\", \"expressions_experiment\".\"start\", \"expressions_experiment\".\"end\" FROM \"expressions_experiment\" ORDER BY \"expressions_experiment\".\"name\" ASC' - PARAMS = (); args=()\r\n(0.001) QUERY = u'SELECT \"expressions_experiment\".\"id\", \"expressions_experiment\".\"name\", \"expressions_experiment\".\"assigned\", \"expressions_experiment\".\"completed\", \"expressions_experiment\".\"estimated_time\", \"expressions_experiment\".\"start\", \"expressions_experiment\".\"end\" FROM \"expressions_experiment\" WHERE \"expressions_experiment\".\"start\" = ((django_format_dtdelta(\\'+\\', \"expressions_experiment\".\"start\", \"expressions_experiment\".\"estimated_time\"))) ORDER BY \"expressions_experiment\".\"name\" ASC' - PARAMS = (); args=()\r\n(0.001) QUERY = u'SELECT \"expressions_experiment\".\"id\", \"expressions_experiment\".\"name\", \"expressions_experiment\".\"assigned\", \"expressions_experiment\".\"completed\", \"expressions_experiment\".\"estimated_time\", \"expressions_experiment\".\"start\", \"expressions_experiment\".\"end\" FROM \"expressions_experiment\" WHERE \"expressions_experiment\".\"end\" < ((django_format_dtdelta(\\'+\\', \"expressions_experiment\".\"start\", \"expressions_experiment\".\"estimated_time\"))) ORDER BY \"expressions_experiment\".\"name\" ASC' - PARAMS = (); args=()\r\n(0.001) QUERY = u'SELECT \"expressions_experiment\".\"id\", \"expressions_experiment\".\"name\", \"expressions_experiment\".\"assigned\", \"expressions_experiment\".\"completed\", \"expressions_experiment\".\"estimated_time\", \"expressions_experiment\".\"start\", \"expressions_experiment\".\"end\" FROM \"expressions_experiment\" WHERE \"expressions_experiment\".\"end\" >= ((django_format_dtdelta(\\'+\\', (django_format_dtdelta(\\'+\\', \"expressions_experiment\".\"start\", \"expressions_experiment\".\"estimated_time\")), \\'01:00:00\\'))) ORDER BY \"expressions_experiment\".\"name\" ASC' - PARAMS = (); args=()\r\n\r\n----------------------------------------------------------------------\r\nRan 52 tests in 0.315s\r\n\r\nFAILED (failures=1, errors=1, skipped=3)\r\nDestroying test database for alias 'default'...\r\nDestroying test database for alias 'other'...\r\n```","created_at":"2015-01-10T23:00:27Z","updated_at":"2015-01-12T08:19:47Z","closed_at":"2015-01-12T08:19:38Z","merged_at":"2015-01-12T08:19:38Z","merge_commit_sha":"09558d3793364fa86e6f6c67841a016f13562f29","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3885/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3885/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3885/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/b5c1a85b50c709770b8e98aeecfeb8e81ca29dcf","head":{"label":"mjtamlyn:debug-sql","ref":"debug-sql","sha":"b5c1a85b50c709770b8e98aeecfeb8e81ca29dcf","user":{"login":"mjtamlyn","id":389581,"avatar_url":"https://avatars.githubusercontent.com/u/389581?v=3","gravatar_id":"","url":"https://api.github.com/users/mjtamlyn","html_url":"https://github.com/mjtamlyn","followers_url":"https://api.github.com/users/mjtamlyn/followers","following_url":"https://api.github.com/users/mjtamlyn/following{/other_user}","gists_url":"https://api.github.com/users/mjtamlyn/gists{/gist_id}","starred_url":"https://api.github.com/users/mjtamlyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjtamlyn/subscriptions","organizations_url":"https://api.github.com/users/mjtamlyn/orgs","repos_url":"https://api.github.com/users/mjtamlyn/repos","events_url":"https://api.github.com/users/mjtamlyn/events{/privacy}","received_events_url":"https://api.github.com/users/mjtamlyn/received_events","type":"User","site_admin":false},"repo":{"id":4529204,"name":"django","full_name":"mjtamlyn/django","owner":{"login":"mjtamlyn","id":389581,"avatar_url":"https://avatars.githubusercontent.com/u/389581?v=3","gravatar_id":"","url":"https://api.github.com/users/mjtamlyn","html_url":"https://github.com/mjtamlyn","followers_url":"https://api.github.com/users/mjtamlyn/followers","following_url":"https://api.github.com/users/mjtamlyn/following{/other_user}","gists_url":"https://api.github.com/users/mjtamlyn/gists{/gist_id}","starred_url":"https://api.github.com/users/mjtamlyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjtamlyn/subscriptions","organizations_url":"https://api.github.com/users/mjtamlyn/orgs","repos_url":"https://api.github.com/users/mjtamlyn/repos","events_url":"https://api.github.com/users/mjtamlyn/events{/privacy}","received_events_url":"https://api.github.com/users/mjtamlyn/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mjtamlyn/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/mjtamlyn/django","forks_url":"https://api.github.com/repos/mjtamlyn/django/forks","keys_url":"https://api.github.com/repos/mjtamlyn/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mjtamlyn/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mjtamlyn/django/teams","hooks_url":"https://api.github.com/repos/mjtamlyn/django/hooks","issue_events_url":"https://api.github.com/repos/mjtamlyn/django/issues/events{/number}","events_url":"https://api.github.com/repos/mjtamlyn/django/events","assignees_url":"https://api.github.com/repos/mjtamlyn/django/assignees{/user}","branches_url":"https://api.github.com/repos/mjtamlyn/django/branches{/branch}","tags_url":"https://api.github.com/repos/mjtamlyn/django/tags","blobs_url":"https://api.github.com/repos/mjtamlyn/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mjtamlyn/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mjtamlyn/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/mjtamlyn/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mjtamlyn/django/statuses/{sha}","languages_url":"https://api.github.com/repos/mjtamlyn/django/languages","stargazers_url":"https://api.github.com/repos/mjtamlyn/django/stargazers","contributors_url":"https://api.github.com/repos/mjtamlyn/django/contributors","subscribers_url":"https://api.github.com/repos/mjtamlyn/django/subscribers","subscription_url":"https://api.github.com/repos/mjtamlyn/django/subscription","commits_url":"https://api.github.com/repos/mjtamlyn/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/mjtamlyn/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/mjtamlyn/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/mjtamlyn/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/mjtamlyn/django/contents/{+path}","compare_url":"https://api.github.com/repos/mjtamlyn/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mjtamlyn/django/merges","archive_url":"https://api.github.com/repos/mjtamlyn/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mjtamlyn/django/downloads","issues_url":"https://api.github.com/repos/mjtamlyn/django/issues{/number}","pulls_url":"https://api.github.com/repos/mjtamlyn/django/pulls{/number}","milestones_url":"https://api.github.com/repos/mjtamlyn/django/milestones{/number}","notifications_url":"https://api.github.com/repos/mjtamlyn/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mjtamlyn/django/labels{/name}","releases_url":"https://api.github.com/repos/mjtamlyn/django/releases{/id}","created_at":"2012-06-02T12:56:52Z","updated_at":"2015-01-10T16:19:13Z","pushed_at":"2015-01-17T09:29:31Z","git_url":"git://github.com/mjtamlyn/django.git","ssh_url":"git@github.com:mjtamlyn/django.git","clone_url":"https://github.com/mjtamlyn/django.git","svn_url":"https://github.com/mjtamlyn/django","homepage":"http://www.djangoproject.com/","size":101846,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"68a439a18da17a65555832eff0a7c2090655b583","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3885"},"html":{"href":"https://github.com/django/django/pull/3885"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3885"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3885/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3885/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3885/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/b5c1a85b50c709770b8e98aeecfeb8e81ca29dcf"}}},{"url":"https://api.github.com/repos/django/django/pulls/3884","id":27155424,"html_url":"https://github.com/django/django/pull/3884","diff_url":"https://github.com/django/django/pull/3884.diff","patch_url":"https://github.com/django/django/pull/3884.patch","issue_url":"https://api.github.com/repos/django/django/issues/3884","number":3884,"state":"closed","locked":false,"title":"Fixed #17785 -- Preferred column names in get_relations introspection","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Thanks Thomas Güttler for the report and the initial patch.","created_at":"2015-01-10T22:17:33Z","updated_at":"2015-01-12T19:01:21Z","closed_at":"2015-01-12T19:00:31Z","merged_at":"2015-01-12T19:00:31Z","merge_commit_sha":"f90c0c1efe9934d918e315256385d80084474be5","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3884/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3884/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3884/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/4c413e231cfe788de6e371567f395c8ccbd26103","head":{"label":"claudep:17785","ref":"17785","sha":"4c413e231cfe788de6e371567f395c8ccbd26103","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"b75c707943e159b80c179c538721406bbfb8b120","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3884"},"html":{"href":"https://github.com/django/django/pull/3884"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3884"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3884/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3884/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3884/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/4c413e231cfe788de6e371567f395c8ccbd26103"}}},{"url":"https://api.github.com/repos/django/django/pulls/3883","id":27155332,"html_url":"https://github.com/django/django/pull/3883","diff_url":"https://github.com/django/django/pull/3883.diff","patch_url":"https://github.com/django/django/pull/3883.patch","issue_url":"https://api.github.com/repos/django/django/issues/3883","number":3883,"state":"closed","locked":false,"title":"Multiple template engines - continued","user":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-10T22:11:26Z","updated_at":"2015-01-12T20:31:21Z","closed_at":"2015-01-12T20:31:15Z","merged_at":"2015-01-12T20:31:15Z","merge_commit_sha":"20b5d18d3ac388356f7e2bab2bfbd990bc244ebc","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3883/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3883/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3883/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/511a53b3142551a1bc3093ed1b6655f57634f510","head":{"label":"aaugustin:multiple-template-engines","ref":"multiple-template-engines","sha":"511a53b3142551a1bc3093ed1b6655f57634f510","user":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"repo":{"id":5128238,"name":"django","full_name":"aaugustin/django","owner":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/aaugustin/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/aaugustin/django","forks_url":"https://api.github.com/repos/aaugustin/django/forks","keys_url":"https://api.github.com/repos/aaugustin/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aaugustin/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aaugustin/django/teams","hooks_url":"https://api.github.com/repos/aaugustin/django/hooks","issue_events_url":"https://api.github.com/repos/aaugustin/django/issues/events{/number}","events_url":"https://api.github.com/repos/aaugustin/django/events","assignees_url":"https://api.github.com/repos/aaugustin/django/assignees{/user}","branches_url":"https://api.github.com/repos/aaugustin/django/branches{/branch}","tags_url":"https://api.github.com/repos/aaugustin/django/tags","blobs_url":"https://api.github.com/repos/aaugustin/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aaugustin/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aaugustin/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/aaugustin/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aaugustin/django/statuses/{sha}","languages_url":"https://api.github.com/repos/aaugustin/django/languages","stargazers_url":"https://api.github.com/repos/aaugustin/django/stargazers","contributors_url":"https://api.github.com/repos/aaugustin/django/contributors","subscribers_url":"https://api.github.com/repos/aaugustin/django/subscribers","subscription_url":"https://api.github.com/repos/aaugustin/django/subscription","commits_url":"https://api.github.com/repos/aaugustin/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/aaugustin/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/aaugustin/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/aaugustin/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/aaugustin/django/contents/{+path}","compare_url":"https://api.github.com/repos/aaugustin/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aaugustin/django/merges","archive_url":"https://api.github.com/repos/aaugustin/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aaugustin/django/downloads","issues_url":"https://api.github.com/repos/aaugustin/django/issues{/number}","pulls_url":"https://api.github.com/repos/aaugustin/django/pulls{/number}","milestones_url":"https://api.github.com/repos/aaugustin/django/milestones{/number}","notifications_url":"https://api.github.com/repos/aaugustin/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aaugustin/django/labels{/name}","releases_url":"https://api.github.com/repos/aaugustin/django/releases{/id}","created_at":"2012-07-20T20:52:27Z","updated_at":"2015-01-10T20:12:42Z","pushed_at":"2015-01-12T20:31:21Z","git_url":"git://github.com/aaugustin/django.git","ssh_url":"git@github.com:aaugustin/django.git","clone_url":"https://github.com/aaugustin/django.git","svn_url":"https://github.com/aaugustin/django","homepage":"http://www.djangoproject.com/","size":107483,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4c413e231cfe788de6e371567f395c8ccbd26103","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3883"},"html":{"href":"https://github.com/django/django/pull/3883"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3883"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3883/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3883/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3883/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/511a53b3142551a1bc3093ed1b6655f57634f510"}}},{"url":"https://api.github.com/repos/django/django/pulls/3882","id":27154815,"html_url":"https://github.com/django/django/pull/3882","diff_url":"https://github.com/django/django/pull/3882.diff","patch_url":"https://github.com/django/django/pull/3882.patch","issue_url":"https://api.github.com/repos/django/django/issues/3882","number":3882,"state":"closed","locked":false,"title":"Fixed #24117 -- Made admin not require context_processors","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24117","created_at":"2015-01-10T21:28:35Z","updated_at":"2015-01-12T18:24:48Z","closed_at":"2015-01-11T05:07:08Z","merged_at":null,"merge_commit_sha":"7aee8b4971c44cdbde4a918aa37c7ae66e07a1a3","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3882/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3882/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3882/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/efc0738c1ffdbd042245ee38f2f2ca6f830ffb33","head":{"label":"collinanderson:24117","ref":"24117","sha":"efc0738c1ffdbd042245ee38f2f2ca6f830ffb33","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"be158e36251df0b07556657da47cdaf10913c57a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3882"},"html":{"href":"https://github.com/django/django/pull/3882"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3882"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3882/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3882/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3882/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/efc0738c1ffdbd042245ee38f2f2ca6f830ffb33"}}},{"url":"https://api.github.com/repos/django/django/pulls/3881","id":27154174,"html_url":"https://github.com/django/django/pull/3881","diff_url":"https://github.com/django/django/pull/3881.diff","patch_url":"https://github.com/django/django/pull/3881.patch","issue_url":"https://api.github.com/repos/django/django/issues/3881","number":3881,"state":"closed","locked":false,"title":"Fixed #24110 -- Revised the backwards migration process","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24110","created_at":"2015-01-10T20:36:39Z","updated_at":"2015-01-11T00:11:02Z","closed_at":"2015-01-10T22:49:09Z","merged_at":"2015-01-10T22:49:09Z","merge_commit_sha":"23434e6ad115fc29e7c5773fd7d0bf8042766c3d","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3881/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3881/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3881/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/fdc2cc948725866212a9bcc97b9b7cf21bb49b90","head":{"label":"MarkusH:fix-migration-unapply","ref":"fix-migration-unapply","sha":"fdc2cc948725866212a9bcc97b9b7cf21bb49b90","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"d89019a84d2dd314d3764dbd06ba854640db9b80","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3881"},"html":{"href":"https://github.com/django/django/pull/3881"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3881"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3881/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3881/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3881/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/fdc2cc948725866212a9bcc97b9b7cf21bb49b90"}}},{"url":"https://api.github.com/repos/django/django/pulls/3880","id":27153901,"html_url":"https://github.com/django/django/pull/3880","diff_url":"https://github.com/django/django/pull/3880.diff","patch_url":"https://github.com/django/django/pull/3880.patch","issue_url":"https://api.github.com/repos/django/django/issues/3880","number":3880,"state":"closed","locked":false,"title":"Improved template ugrading docs.","user":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"body":"Recommending Template(template_code) was dumb. Described alternatives.","created_at":"2015-01-10T20:13:03Z","updated_at":"2015-01-10T20:20:08Z","closed_at":"2015-01-10T20:20:08Z","merged_at":"2015-01-10T20:20:08Z","merge_commit_sha":"ba92543c24fcc77b3baf323ea074573a3d2f0a66","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3880/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3880/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3880/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d89019a84d2dd314d3764dbd06ba854640db9b80","head":{"label":"aaugustin:master","ref":"master","sha":"d89019a84d2dd314d3764dbd06ba854640db9b80","user":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"repo":{"id":5128238,"name":"django","full_name":"aaugustin/django","owner":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/aaugustin/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/aaugustin/django","forks_url":"https://api.github.com/repos/aaugustin/django/forks","keys_url":"https://api.github.com/repos/aaugustin/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aaugustin/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aaugustin/django/teams","hooks_url":"https://api.github.com/repos/aaugustin/django/hooks","issue_events_url":"https://api.github.com/repos/aaugustin/django/issues/events{/number}","events_url":"https://api.github.com/repos/aaugustin/django/events","assignees_url":"https://api.github.com/repos/aaugustin/django/assignees{/user}","branches_url":"https://api.github.com/repos/aaugustin/django/branches{/branch}","tags_url":"https://api.github.com/repos/aaugustin/django/tags","blobs_url":"https://api.github.com/repos/aaugustin/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aaugustin/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aaugustin/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/aaugustin/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aaugustin/django/statuses/{sha}","languages_url":"https://api.github.com/repos/aaugustin/django/languages","stargazers_url":"https://api.github.com/repos/aaugustin/django/stargazers","contributors_url":"https://api.github.com/repos/aaugustin/django/contributors","subscribers_url":"https://api.github.com/repos/aaugustin/django/subscribers","subscription_url":"https://api.github.com/repos/aaugustin/django/subscription","commits_url":"https://api.github.com/repos/aaugustin/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/aaugustin/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/aaugustin/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/aaugustin/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/aaugustin/django/contents/{+path}","compare_url":"https://api.github.com/repos/aaugustin/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aaugustin/django/merges","archive_url":"https://api.github.com/repos/aaugustin/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aaugustin/django/downloads","issues_url":"https://api.github.com/repos/aaugustin/django/issues{/number}","pulls_url":"https://api.github.com/repos/aaugustin/django/pulls{/number}","milestones_url":"https://api.github.com/repos/aaugustin/django/milestones{/number}","notifications_url":"https://api.github.com/repos/aaugustin/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aaugustin/django/labels{/name}","releases_url":"https://api.github.com/repos/aaugustin/django/releases{/id}","created_at":"2012-07-20T20:52:27Z","updated_at":"2015-01-10T20:12:42Z","pushed_at":"2015-01-12T20:31:21Z","git_url":"git://github.com/aaugustin/django.git","ssh_url":"git@github.com:aaugustin/django.git","clone_url":"https://github.com/aaugustin/django.git","svn_url":"https://github.com/aaugustin/django","homepage":"http://www.djangoproject.com/","size":107483,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"f01306a6d81755bf93db6c8cab3529819e60e1fe","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3880"},"html":{"href":"https://github.com/django/django/pull/3880"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3880"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3880/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3880/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3880/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d89019a84d2dd314d3764dbd06ba854640db9b80"}}},{"url":"https://api.github.com/repos/django/django/pulls/3879","id":27153337,"html_url":"https://github.com/django/django/pull/3879","diff_url":"https://github.com/django/django/pull/3879.diff","patch_url":"https://github.com/django/django/pull/3879.patch","issue_url":"https://api.github.com/repos/django/django/issues/3879","number":3879,"state":"closed","locked":false,"title":"Fixed #9893 -- Allowed using a field's max_length in the Storage.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"Updated from https://github.com/django/django/pull/3369.","created_at":"2015-01-10T19:25:11Z","updated_at":"2015-01-16T01:59:30Z","closed_at":"2015-01-12T14:12:40Z","merged_at":"2015-01-12T14:12:40Z","merge_commit_sha":"086a5556df54553253b99cbde614c93eb4a3712b","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3879/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3879/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3879/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a7c256cb5491bf2a77abdff01638239db5bfd9d5","head":{"label":"timgraham:9893","ref":"9893","sha":"a7c256cb5491bf2a77abdff01638239db5bfd9d5","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"b5c1a85b50c709770b8e98aeecfeb8e81ca29dcf","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3879"},"html":{"href":"https://github.com/django/django/pull/3879"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3879"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3879/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3879/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3879/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a7c256cb5491bf2a77abdff01638239db5bfd9d5"}}},{"url":"https://api.github.com/repos/django/django/pulls/3878","id":27152607,"html_url":"https://github.com/django/django/pull/3878","diff_url":"https://github.com/django/django/pull/3878.diff","patch_url":"https://github.com/django/django/pull/3878.patch","issue_url":"https://api.github.com/repos/django/django/issues/3878","number":3878,"state":"closed","locked":false,"title":"Fixed #24092 -- Widened base field support for ArrayField.","user":{"login":"mjtamlyn","id":389581,"avatar_url":"https://avatars.githubusercontent.com/u/389581?v=3","gravatar_id":"","url":"https://api.github.com/users/mjtamlyn","html_url":"https://github.com/mjtamlyn","followers_url":"https://api.github.com/users/mjtamlyn/followers","following_url":"https://api.github.com/users/mjtamlyn/following{/other_user}","gists_url":"https://api.github.com/users/mjtamlyn/gists{/gist_id}","starred_url":"https://api.github.com/users/mjtamlyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjtamlyn/subscriptions","organizations_url":"https://api.github.com/users/mjtamlyn/orgs","repos_url":"https://api.github.com/users/mjtamlyn/repos","events_url":"https://api.github.com/users/mjtamlyn/events{/privacy}","received_events_url":"https://api.github.com/users/mjtamlyn/received_events","type":"User","site_admin":false},"body":"Several issues resolved here, following from a report that a `base_field` of `GenericIpAddressField` was failing.\r\n\r\nWe were using `get_prep_value` instead of `get_db_prep_value` in `ArrayField` which was bypassing any extra modifications to the value being made in the base field's `get_db_prep_value`. Changing this broke datetime support, so the postgres backend has gained the relevant operation methods to send dates/times/datetimes directly to the db backend instead of casting them to strings. Similarly, a new database feature has been added allowing the uuid to be passed directly to the backend, as we do with timedeltas.\r\n\r\nOn the other side, psycopg2 expects an `Inet()` instance for ip address fields, so we add a `value_to_db_ipaddress` method to wrap the strings on postgres. We also have to manually add a database adapter to psycopg2, as we do not wish to use the built in adapter which would turn everything into `Inet()` instances.\r\n\r\nMain question: Do I need to ensure that we properly support `ArrayField(IPAddressField())` given that `IPAddressField()` is deprecated, or can the answer to the inevitable bug report be \"don't use `IPAddressField()`?","created_at":"2015-01-10T18:23:44Z","updated_at":"2015-01-17T09:29:31Z","closed_at":"2015-01-16T20:03:25Z","merged_at":null,"merge_commit_sha":"1fd69a8b4a77c8c222eabcb3c07714b79f52c456","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3878/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3878/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3878/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/2f516087c669222eaa523a014faf2e49fbc3c13e","head":{"label":"mjtamlyn:dcp-arrayfield-fixes","ref":"dcp-arrayfield-fixes","sha":"2f516087c669222eaa523a014faf2e49fbc3c13e","user":{"login":"mjtamlyn","id":389581,"avatar_url":"https://avatars.githubusercontent.com/u/389581?v=3","gravatar_id":"","url":"https://api.github.com/users/mjtamlyn","html_url":"https://github.com/mjtamlyn","followers_url":"https://api.github.com/users/mjtamlyn/followers","following_url":"https://api.github.com/users/mjtamlyn/following{/other_user}","gists_url":"https://api.github.com/users/mjtamlyn/gists{/gist_id}","starred_url":"https://api.github.com/users/mjtamlyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjtamlyn/subscriptions","organizations_url":"https://api.github.com/users/mjtamlyn/orgs","repos_url":"https://api.github.com/users/mjtamlyn/repos","events_url":"https://api.github.com/users/mjtamlyn/events{/privacy}","received_events_url":"https://api.github.com/users/mjtamlyn/received_events","type":"User","site_admin":false},"repo":{"id":4529204,"name":"django","full_name":"mjtamlyn/django","owner":{"login":"mjtamlyn","id":389581,"avatar_url":"https://avatars.githubusercontent.com/u/389581?v=3","gravatar_id":"","url":"https://api.github.com/users/mjtamlyn","html_url":"https://github.com/mjtamlyn","followers_url":"https://api.github.com/users/mjtamlyn/followers","following_url":"https://api.github.com/users/mjtamlyn/following{/other_user}","gists_url":"https://api.github.com/users/mjtamlyn/gists{/gist_id}","starred_url":"https://api.github.com/users/mjtamlyn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjtamlyn/subscriptions","organizations_url":"https://api.github.com/users/mjtamlyn/orgs","repos_url":"https://api.github.com/users/mjtamlyn/repos","events_url":"https://api.github.com/users/mjtamlyn/events{/privacy}","received_events_url":"https://api.github.com/users/mjtamlyn/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/mjtamlyn/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/mjtamlyn/django","forks_url":"https://api.github.com/repos/mjtamlyn/django/forks","keys_url":"https://api.github.com/repos/mjtamlyn/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mjtamlyn/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mjtamlyn/django/teams","hooks_url":"https://api.github.com/repos/mjtamlyn/django/hooks","issue_events_url":"https://api.github.com/repos/mjtamlyn/django/issues/events{/number}","events_url":"https://api.github.com/repos/mjtamlyn/django/events","assignees_url":"https://api.github.com/repos/mjtamlyn/django/assignees{/user}","branches_url":"https://api.github.com/repos/mjtamlyn/django/branches{/branch}","tags_url":"https://api.github.com/repos/mjtamlyn/django/tags","blobs_url":"https://api.github.com/repos/mjtamlyn/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mjtamlyn/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mjtamlyn/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/mjtamlyn/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mjtamlyn/django/statuses/{sha}","languages_url":"https://api.github.com/repos/mjtamlyn/django/languages","stargazers_url":"https://api.github.com/repos/mjtamlyn/django/stargazers","contributors_url":"https://api.github.com/repos/mjtamlyn/django/contributors","subscribers_url":"https://api.github.com/repos/mjtamlyn/django/subscribers","subscription_url":"https://api.github.com/repos/mjtamlyn/django/subscription","commits_url":"https://api.github.com/repos/mjtamlyn/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/mjtamlyn/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/mjtamlyn/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/mjtamlyn/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/mjtamlyn/django/contents/{+path}","compare_url":"https://api.github.com/repos/mjtamlyn/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mjtamlyn/django/merges","archive_url":"https://api.github.com/repos/mjtamlyn/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mjtamlyn/django/downloads","issues_url":"https://api.github.com/repos/mjtamlyn/django/issues{/number}","pulls_url":"https://api.github.com/repos/mjtamlyn/django/pulls{/number}","milestones_url":"https://api.github.com/repos/mjtamlyn/django/milestones{/number}","notifications_url":"https://api.github.com/repos/mjtamlyn/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mjtamlyn/django/labels{/name}","releases_url":"https://api.github.com/repos/mjtamlyn/django/releases{/id}","created_at":"2012-06-02T12:56:52Z","updated_at":"2015-01-10T16:19:13Z","pushed_at":"2015-01-17T09:29:31Z","git_url":"git://github.com/mjtamlyn/django.git","ssh_url":"git@github.com:mjtamlyn/django.git","clone_url":"https://github.com/mjtamlyn/django.git","svn_url":"https://github.com/mjtamlyn/django","homepage":"http://www.djangoproject.com/","size":101846,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"b5c1a85b50c709770b8e98aeecfeb8e81ca29dcf","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3878"},"html":{"href":"https://github.com/django/django/pull/3878"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3878"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3878/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3878/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3878/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/2f516087c669222eaa523a014faf2e49fbc3c13e"}}},{"url":"https://api.github.com/repos/django/django/pulls/3877","id":27143185,"html_url":"https://github.com/django/django/pull/3877","diff_url":"https://github.com/django/django/pull/3877.diff","patch_url":"https://github.com/django/django/pull/3877.patch","issue_url":"https://api.github.com/repos/django/django/issues/3877","number":3877,"state":"closed","locked":false,"title":"Added Josh Smeaton bio to team","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-10T02:50:03Z","updated_at":"2015-01-10T03:07:39Z","closed_at":"2015-01-10T03:07:39Z","merged_at":"2015-01-10T03:07:39Z","merge_commit_sha":"55d66907fd4be3ff6adee037e62744289d5696fa","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3877/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3877/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3877/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/f5c3a8bff57add71b801c9c44442ea0f8fa35858","head":{"label":"jarshwah:joshbio","ref":"joshbio","sha":"f5c3a8bff57add71b801c9c44442ea0f8fa35858","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"repo":{"id":4635741,"name":"django","full_name":"jarshwah/django","owner":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarshwah/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/jarshwah/django","forks_url":"https://api.github.com/repos/jarshwah/django/forks","keys_url":"https://api.github.com/repos/jarshwah/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarshwah/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarshwah/django/teams","hooks_url":"https://api.github.com/repos/jarshwah/django/hooks","issue_events_url":"https://api.github.com/repos/jarshwah/django/issues/events{/number}","events_url":"https://api.github.com/repos/jarshwah/django/events","assignees_url":"https://api.github.com/repos/jarshwah/django/assignees{/user}","branches_url":"https://api.github.com/repos/jarshwah/django/branches{/branch}","tags_url":"https://api.github.com/repos/jarshwah/django/tags","blobs_url":"https://api.github.com/repos/jarshwah/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarshwah/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarshwah/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarshwah/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarshwah/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jarshwah/django/languages","stargazers_url":"https://api.github.com/repos/jarshwah/django/stargazers","contributors_url":"https://api.github.com/repos/jarshwah/django/contributors","subscribers_url":"https://api.github.com/repos/jarshwah/django/subscribers","subscription_url":"https://api.github.com/repos/jarshwah/django/subscription","commits_url":"https://api.github.com/repos/jarshwah/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarshwah/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarshwah/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarshwah/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jarshwah/django/contents/{+path}","compare_url":"https://api.github.com/repos/jarshwah/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarshwah/django/merges","archive_url":"https://api.github.com/repos/jarshwah/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarshwah/django/downloads","issues_url":"https://api.github.com/repos/jarshwah/django/issues{/number}","pulls_url":"https://api.github.com/repos/jarshwah/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jarshwah/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jarshwah/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarshwah/django/labels{/name}","releases_url":"https://api.github.com/repos/jarshwah/django/releases{/id}","created_at":"2012-06-12T09:53:04Z","updated_at":"2014-06-27T11:10:20Z","pushed_at":"2015-01-17T23:23:41Z","git_url":"git://github.com/jarshwah/django.git","ssh_url":"git@github.com:jarshwah/django.git","clone_url":"https://github.com/jarshwah/django.git","svn_url":"https://github.com/jarshwah/django","homepage":"http://www.djangoproject.com/","size":113452,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"e174cce9dc258ac4d19b44eff0070d0ad48ec3a8","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3877"},"html":{"href":"https://github.com/django/django/pull/3877"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3877"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3877/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3877/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3877/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/f5c3a8bff57add71b801c9c44442ea0f8fa35858"}}},{"url":"https://api.github.com/repos/django/django/pulls/3876","id":27140033,"html_url":"https://github.com/django/django/pull/3876","diff_url":"https://github.com/django/django/pull/3876.diff","patch_url":"https://github.com/django/django/pull/3876.patch","issue_url":"https://api.github.com/repos/django/django/issues/3876","number":3876,"state":"closed","locked":false,"title":"Fixed #24089 -- Added check for when ModelAdmin.fieldsets[1]['fields'] isn't a tuple.","user":{"login":"arcturusannamalai","id":3316245,"avatar_url":"https://avatars.githubusercontent.com/u/3316245?v=3","gravatar_id":"","url":"https://api.github.com/users/arcturusannamalai","html_url":"https://github.com/arcturusannamalai","followers_url":"https://api.github.com/users/arcturusannamalai/followers","following_url":"https://api.github.com/users/arcturusannamalai/following{/other_user}","gists_url":"https://api.github.com/users/arcturusannamalai/gists{/gist_id}","starred_url":"https://api.github.com/users/arcturusannamalai/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arcturusannamalai/subscriptions","organizations_url":"https://api.github.com/users/arcturusannamalai/orgs","repos_url":"https://api.github.com/users/arcturusannamalai/repos","events_url":"https://api.github.com/users/arcturusannamalai/events{/privacy}","received_events_url":"https://api.github.com/users/arcturusannamalai/received_events","type":"User","site_admin":false},"body":"Change to check for tuple/list on the label 'fields' of fieldsets field of ModelAdmin.\r\nTicket 24089","created_at":"2015-01-10T00:30:47Z","updated_at":"2015-01-12T18:49:18Z","closed_at":"2015-01-12T18:49:18Z","merged_at":null,"merge_commit_sha":"71fe8e39c835445bb6c8e71d331b74ea86508e22","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3876/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3876/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3876/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/93c40f2d57cbb5f7c655682db369c772ed48afce","head":{"label":"arcturusannamalai:ticket_24089","ref":"ticket_24089","sha":"93c40f2d57cbb5f7c655682db369c772ed48afce","user":{"login":"arcturusannamalai","id":3316245,"avatar_url":"https://avatars.githubusercontent.com/u/3316245?v=3","gravatar_id":"","url":"https://api.github.com/users/arcturusannamalai","html_url":"https://github.com/arcturusannamalai","followers_url":"https://api.github.com/users/arcturusannamalai/followers","following_url":"https://api.github.com/users/arcturusannamalai/following{/other_user}","gists_url":"https://api.github.com/users/arcturusannamalai/gists{/gist_id}","starred_url":"https://api.github.com/users/arcturusannamalai/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arcturusannamalai/subscriptions","organizations_url":"https://api.github.com/users/arcturusannamalai/orgs","repos_url":"https://api.github.com/users/arcturusannamalai/repos","events_url":"https://api.github.com/users/arcturusannamalai/events{/privacy}","received_events_url":"https://api.github.com/users/arcturusannamalai/received_events","type":"User","site_admin":false},"repo":{"id":28951809,"name":"django","full_name":"arcturusannamalai/django","owner":{"login":"arcturusannamalai","id":3316245,"avatar_url":"https://avatars.githubusercontent.com/u/3316245?v=3","gravatar_id":"","url":"https://api.github.com/users/arcturusannamalai","html_url":"https://github.com/arcturusannamalai","followers_url":"https://api.github.com/users/arcturusannamalai/followers","following_url":"https://api.github.com/users/arcturusannamalai/following{/other_user}","gists_url":"https://api.github.com/users/arcturusannamalai/gists{/gist_id}","starred_url":"https://api.github.com/users/arcturusannamalai/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arcturusannamalai/subscriptions","organizations_url":"https://api.github.com/users/arcturusannamalai/orgs","repos_url":"https://api.github.com/users/arcturusannamalai/repos","events_url":"https://api.github.com/users/arcturusannamalai/events{/privacy}","received_events_url":"https://api.github.com/users/arcturusannamalai/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/arcturusannamalai/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/arcturusannamalai/django","forks_url":"https://api.github.com/repos/arcturusannamalai/django/forks","keys_url":"https://api.github.com/repos/arcturusannamalai/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/arcturusannamalai/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/arcturusannamalai/django/teams","hooks_url":"https://api.github.com/repos/arcturusannamalai/django/hooks","issue_events_url":"https://api.github.com/repos/arcturusannamalai/django/issues/events{/number}","events_url":"https://api.github.com/repos/arcturusannamalai/django/events","assignees_url":"https://api.github.com/repos/arcturusannamalai/django/assignees{/user}","branches_url":"https://api.github.com/repos/arcturusannamalai/django/branches{/branch}","tags_url":"https://api.github.com/repos/arcturusannamalai/django/tags","blobs_url":"https://api.github.com/repos/arcturusannamalai/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/arcturusannamalai/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/arcturusannamalai/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/arcturusannamalai/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/arcturusannamalai/django/statuses/{sha}","languages_url":"https://api.github.com/repos/arcturusannamalai/django/languages","stargazers_url":"https://api.github.com/repos/arcturusannamalai/django/stargazers","contributors_url":"https://api.github.com/repos/arcturusannamalai/django/contributors","subscribers_url":"https://api.github.com/repos/arcturusannamalai/django/subscribers","subscription_url":"https://api.github.com/repos/arcturusannamalai/django/subscription","commits_url":"https://api.github.com/repos/arcturusannamalai/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/arcturusannamalai/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/arcturusannamalai/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/arcturusannamalai/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/arcturusannamalai/django/contents/{+path}","compare_url":"https://api.github.com/repos/arcturusannamalai/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/arcturusannamalai/django/merges","archive_url":"https://api.github.com/repos/arcturusannamalai/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/arcturusannamalai/django/downloads","issues_url":"https://api.github.com/repos/arcturusannamalai/django/issues{/number}","pulls_url":"https://api.github.com/repos/arcturusannamalai/django/pulls{/number}","milestones_url":"https://api.github.com/repos/arcturusannamalai/django/milestones{/number}","notifications_url":"https://api.github.com/repos/arcturusannamalai/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/arcturusannamalai/django/labels{/name}","releases_url":"https://api.github.com/repos/arcturusannamalai/django/releases{/id}","created_at":"2015-01-08T06:12:17Z","updated_at":"2015-01-10T04:51:02Z","pushed_at":"2015-01-10T17:27:29Z","git_url":"git://github.com/arcturusannamalai/django.git","ssh_url":"git@github.com:arcturusannamalai/django.git","clone_url":"https://github.com/arcturusannamalai/django.git","svn_url":"https://github.com/arcturusannamalai/django","homepage":"https://www.djangoproject.com/","size":117393,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"07988744b347302925bc6cc66511e34224db55ab","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3876"},"html":{"href":"https://github.com/django/django/pull/3876"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3876"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3876/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3876/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3876/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/93c40f2d57cbb5f7c655682db369c772ed48afce"}}},{"url":"https://api.github.com/repos/django/django/pulls/3875","id":27133290,"html_url":"https://github.com/django/django/pull/3875","diff_url":"https://github.com/django/django/pull/3875.diff","patch_url":"https://github.com/django/django/pull/3875.patch","issue_url":"https://api.github.com/repos/django/django/issues/3875","number":3875,"state":"closed","locked":false,"title":"Fixed #23967 -- Added formats for Greek","user":{"login":"spapas","id":3911074,"avatar_url":"https://avatars.githubusercontent.com/u/3911074?v=3","gravatar_id":"","url":"https://api.github.com/users/spapas","html_url":"https://github.com/spapas","followers_url":"https://api.github.com/users/spapas/followers","following_url":"https://api.github.com/users/spapas/following{/other_user}","gists_url":"https://api.github.com/users/spapas/gists{/gist_id}","starred_url":"https://api.github.com/users/spapas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spapas/subscriptions","organizations_url":"https://api.github.com/users/spapas/orgs","repos_url":"https://api.github.com/users/spapas/repos","events_url":"https://api.github.com/users/spapas/events{/privacy}","received_events_url":"https://api.github.com/users/spapas/received_events","type":"User","site_admin":false},"body":"Please take a look at the discussion of #3696.","created_at":"2015-01-09T22:10:01Z","updated_at":"2015-01-10T16:37:13Z","closed_at":"2015-01-10T16:13:50Z","merged_at":null,"merge_commit_sha":"85a0081ca5fa0909e21ded251b3e11b5d0f0dbb9","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3875/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3875/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3875/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d6ecce683682eb67ebd7f2c6766195131ea30158","head":{"label":"spapas:master","ref":"master","sha":"d6ecce683682eb67ebd7f2c6766195131ea30158","user":{"login":"spapas","id":3911074,"avatar_url":"https://avatars.githubusercontent.com/u/3911074?v=3","gravatar_id":"","url":"https://api.github.com/users/spapas","html_url":"https://github.com/spapas","followers_url":"https://api.github.com/users/spapas/followers","following_url":"https://api.github.com/users/spapas/following{/other_user}","gists_url":"https://api.github.com/users/spapas/gists{/gist_id}","starred_url":"https://api.github.com/users/spapas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spapas/subscriptions","organizations_url":"https://api.github.com/users/spapas/orgs","repos_url":"https://api.github.com/users/spapas/repos","events_url":"https://api.github.com/users/spapas/events{/privacy}","received_events_url":"https://api.github.com/users/spapas/received_events","type":"User","site_admin":false},"repo":{"id":27629403,"name":"django","full_name":"spapas/django","owner":{"login":"spapas","id":3911074,"avatar_url":"https://avatars.githubusercontent.com/u/3911074?v=3","gravatar_id":"","url":"https://api.github.com/users/spapas","html_url":"https://github.com/spapas","followers_url":"https://api.github.com/users/spapas/followers","following_url":"https://api.github.com/users/spapas/following{/other_user}","gists_url":"https://api.github.com/users/spapas/gists{/gist_id}","starred_url":"https://api.github.com/users/spapas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spapas/subscriptions","organizations_url":"https://api.github.com/users/spapas/orgs","repos_url":"https://api.github.com/users/spapas/repos","events_url":"https://api.github.com/users/spapas/events{/privacy}","received_events_url":"https://api.github.com/users/spapas/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/spapas/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/spapas/django","forks_url":"https://api.github.com/repos/spapas/django/forks","keys_url":"https://api.github.com/repos/spapas/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/spapas/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/spapas/django/teams","hooks_url":"https://api.github.com/repos/spapas/django/hooks","issue_events_url":"https://api.github.com/repos/spapas/django/issues/events{/number}","events_url":"https://api.github.com/repos/spapas/django/events","assignees_url":"https://api.github.com/repos/spapas/django/assignees{/user}","branches_url":"https://api.github.com/repos/spapas/django/branches{/branch}","tags_url":"https://api.github.com/repos/spapas/django/tags","blobs_url":"https://api.github.com/repos/spapas/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/spapas/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/spapas/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/spapas/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/spapas/django/statuses/{sha}","languages_url":"https://api.github.com/repos/spapas/django/languages","stargazers_url":"https://api.github.com/repos/spapas/django/stargazers","contributors_url":"https://api.github.com/repos/spapas/django/contributors","subscribers_url":"https://api.github.com/repos/spapas/django/subscribers","subscription_url":"https://api.github.com/repos/spapas/django/subscription","commits_url":"https://api.github.com/repos/spapas/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/spapas/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/spapas/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/spapas/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/spapas/django/contents/{+path}","compare_url":"https://api.github.com/repos/spapas/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/spapas/django/merges","archive_url":"https://api.github.com/repos/spapas/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/spapas/django/downloads","issues_url":"https://api.github.com/repos/spapas/django/issues{/number}","pulls_url":"https://api.github.com/repos/spapas/django/pulls{/number}","milestones_url":"https://api.github.com/repos/spapas/django/milestones{/number}","notifications_url":"https://api.github.com/repos/spapas/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/spapas/django/labels{/name}","releases_url":"https://api.github.com/repos/spapas/django/releases{/id}","created_at":"2014-12-06T09:31:39Z","updated_at":"2015-01-09T22:06:28Z","pushed_at":"2015-01-09T22:06:28Z","git_url":"git://github.com/spapas/django.git","ssh_url":"git@github.com:spapas/django.git","clone_url":"https://github.com/spapas/django.git","svn_url":"https://github.com/spapas/django","homepage":"https://www.djangoproject.com/","size":117265,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"f2f70faa809c3b261e840441451ac93992c5ee84","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3875"},"html":{"href":"https://github.com/django/django/pull/3875"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3875"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3875/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3875/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3875/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d6ecce683682eb67ebd7f2c6766195131ea30158"}}},{"url":"https://api.github.com/repos/django/django/pulls/3874","id":27130219,"html_url":"https://github.com/django/django/pull/3874","diff_url":"https://github.com/django/django/pull/3874.diff","patch_url":"https://github.com/django/django/pull/3874.patch","issue_url":"https://api.github.com/repos/django/django/issues/3874","number":3874,"state":"closed","locked":false,"title":"Fixed #24097 -- Prevented AttributeError in redirect_to_login","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Thanks Peter Schmidt for the report and the initial patch.","created_at":"2015-01-09T21:23:39Z","updated_at":"2015-01-10T09:15:59Z","closed_at":"2015-01-10T09:06:13Z","merged_at":"2015-01-10T09:06:13Z","merge_commit_sha":"26f846b1cf6a5f1d95013d1bdb5edabca08b2b92","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3874/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3874/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3874/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d7bc37d611b43d58be4b430faf0b9813bcde29c6","head":{"label":"claudep:24097","ref":"24097","sha":"d7bc37d611b43d58be4b430faf0b9813bcde29c6","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"f5c3a8bff57add71b801c9c44442ea0f8fa35858","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3874"},"html":{"href":"https://github.com/django/django/pull/3874"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3874"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3874/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3874/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3874/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d7bc37d611b43d58be4b430faf0b9813bcde29c6"}}},{"url":"https://api.github.com/repos/django/django/pulls/3873","id":27121596,"html_url":"https://github.com/django/django/pull/3873","diff_url":"https://github.com/django/django/pull/3873.diff","patch_url":"https://github.com/django/django/pull/3873.patch","issue_url":"https://api.github.com/repos/django/django/issues/3873","number":3873,"state":"closed","locked":false,"title":"Fix CustomUserBadRequiredFields docstring typo.","user":{"login":"hellysmile","id":1834317,"avatar_url":"https://avatars.githubusercontent.com/u/1834317?v=3","gravatar_id":"","url":"https://api.github.com/users/hellysmile","html_url":"https://github.com/hellysmile","followers_url":"https://api.github.com/users/hellysmile/followers","following_url":"https://api.github.com/users/hellysmile/following{/other_user}","gists_url":"https://api.github.com/users/hellysmile/gists{/gist_id}","starred_url":"https://api.github.com/users/hellysmile/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hellysmile/subscriptions","organizations_url":"https://api.github.com/users/hellysmile/orgs","repos_url":"https://api.github.com/users/hellysmile/repos","events_url":"https://api.github.com/users/hellysmile/events{/privacy}","received_events_url":"https://api.github.com/users/hellysmile/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-09T19:09:43Z","updated_at":"2015-01-09T19:34:31Z","closed_at":"2015-01-09T19:34:31Z","merged_at":null,"merge_commit_sha":"8d260c327986441b9b04a7b4403789d719624d33","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3873/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3873/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3873/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d2b1c8d28026db6c9993be657c6abaa4609b17ec","head":{"label":"hellysmile:custom_user_typo","ref":"custom_user_typo","sha":"d2b1c8d28026db6c9993be657c6abaa4609b17ec","user":{"login":"hellysmile","id":1834317,"avatar_url":"https://avatars.githubusercontent.com/u/1834317?v=3","gravatar_id":"","url":"https://api.github.com/users/hellysmile","html_url":"https://github.com/hellysmile","followers_url":"https://api.github.com/users/hellysmile/followers","following_url":"https://api.github.com/users/hellysmile/following{/other_user}","gists_url":"https://api.github.com/users/hellysmile/gists{/gist_id}","starred_url":"https://api.github.com/users/hellysmile/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hellysmile/subscriptions","organizations_url":"https://api.github.com/users/hellysmile/orgs","repos_url":"https://api.github.com/users/hellysmile/repos","events_url":"https://api.github.com/users/hellysmile/events{/privacy}","received_events_url":"https://api.github.com/users/hellysmile/received_events","type":"User","site_admin":false},"repo":{"id":22813316,"name":"django","full_name":"hellysmile/django","owner":{"login":"hellysmile","id":1834317,"avatar_url":"https://avatars.githubusercontent.com/u/1834317?v=3","gravatar_id":"","url":"https://api.github.com/users/hellysmile","html_url":"https://github.com/hellysmile","followers_url":"https://api.github.com/users/hellysmile/followers","following_url":"https://api.github.com/users/hellysmile/following{/other_user}","gists_url":"https://api.github.com/users/hellysmile/gists{/gist_id}","starred_url":"https://api.github.com/users/hellysmile/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hellysmile/subscriptions","organizations_url":"https://api.github.com/users/hellysmile/orgs","repos_url":"https://api.github.com/users/hellysmile/repos","events_url":"https://api.github.com/users/hellysmile/events{/privacy}","received_events_url":"https://api.github.com/users/hellysmile/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/hellysmile/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/hellysmile/django","forks_url":"https://api.github.com/repos/hellysmile/django/forks","keys_url":"https://api.github.com/repos/hellysmile/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hellysmile/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hellysmile/django/teams","hooks_url":"https://api.github.com/repos/hellysmile/django/hooks","issue_events_url":"https://api.github.com/repos/hellysmile/django/issues/events{/number}","events_url":"https://api.github.com/repos/hellysmile/django/events","assignees_url":"https://api.github.com/repos/hellysmile/django/assignees{/user}","branches_url":"https://api.github.com/repos/hellysmile/django/branches{/branch}","tags_url":"https://api.github.com/repos/hellysmile/django/tags","blobs_url":"https://api.github.com/repos/hellysmile/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hellysmile/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hellysmile/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/hellysmile/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hellysmile/django/statuses/{sha}","languages_url":"https://api.github.com/repos/hellysmile/django/languages","stargazers_url":"https://api.github.com/repos/hellysmile/django/stargazers","contributors_url":"https://api.github.com/repos/hellysmile/django/contributors","subscribers_url":"https://api.github.com/repos/hellysmile/django/subscribers","subscription_url":"https://api.github.com/repos/hellysmile/django/subscription","commits_url":"https://api.github.com/repos/hellysmile/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/hellysmile/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/hellysmile/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/hellysmile/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/hellysmile/django/contents/{+path}","compare_url":"https://api.github.com/repos/hellysmile/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hellysmile/django/merges","archive_url":"https://api.github.com/repos/hellysmile/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hellysmile/django/downloads","issues_url":"https://api.github.com/repos/hellysmile/django/issues{/number}","pulls_url":"https://api.github.com/repos/hellysmile/django/pulls{/number}","milestones_url":"https://api.github.com/repos/hellysmile/django/milestones{/number}","notifications_url":"https://api.github.com/repos/hellysmile/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hellysmile/django/labels{/name}","releases_url":"https://api.github.com/repos/hellysmile/django/releases{/id}","created_at":"2014-08-10T16:33:04Z","updated_at":"2014-08-10T12:41:32Z","pushed_at":"2015-01-09T21:59:45Z","git_url":"git://github.com/hellysmile/django.git","ssh_url":"git@github.com:hellysmile/django.git","clone_url":"https://github.com/hellysmile/django.git","svn_url":"https://github.com/hellysmile/django","homepage":"http://www.djangoproject.com/","size":114824,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"7102b99653e354eb8c291cfa5b4f772d15d83ae0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3873"},"html":{"href":"https://github.com/django/django/pull/3873"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3873"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3873/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3873/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3873/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d2b1c8d28026db6c9993be657c6abaa4609b17ec"}}},{"url":"https://api.github.com/repos/django/django/pulls/3872","id":27120204,"html_url":"https://github.com/django/django/pull/3872","diff_url":"https://github.com/django/django/pull/3872.diff","patch_url":"https://github.com/django/django/pull/3872.patch","issue_url":"https://api.github.com/repos/django/django/issues/3872","number":3872,"state":"closed","locked":false,"title":"Fixed invalid polish e-mail validation msg translation","user":{"login":"rafalp","id":750553,"avatar_url":"https://avatars.githubusercontent.com/u/750553?v=3","gravatar_id":"","url":"https://api.github.com/users/rafalp","html_url":"https://github.com/rafalp","followers_url":"https://api.github.com/users/rafalp/followers","following_url":"https://api.github.com/users/rafalp/following{/other_user}","gists_url":"https://api.github.com/users/rafalp/gists{/gist_id}","starred_url":"https://api.github.com/users/rafalp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rafalp/subscriptions","organizations_url":"https://api.github.com/users/rafalp/orgs","repos_url":"https://api.github.com/users/rafalp/repos","events_url":"https://api.github.com/users/rafalp/events{/privacy}","received_events_url":"https://api.github.com/users/rafalp/received_events","type":"User","site_admin":false},"body":"Polish translation for „Enter valid email” was copied over from \"Enter\r\na valid username.\", producing confusing and incorrect error message\r\nfor validate_email validator. ","created_at":"2015-01-09T18:49:12Z","updated_at":"2015-01-09T19:36:02Z","closed_at":"2015-01-09T19:36:02Z","merged_at":null,"merge_commit_sha":"c86b672c0026ec7e93ba42e6f14e8d32c6898bcd","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3872/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3872/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3872/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/4df871dfaf60de9ca6d71d1b2cb888ccec21686d","head":{"label":"rafalp:master","ref":"master","sha":"4df871dfaf60de9ca6d71d1b2cb888ccec21686d","user":{"login":"rafalp","id":750553,"avatar_url":"https://avatars.githubusercontent.com/u/750553?v=3","gravatar_id":"","url":"https://api.github.com/users/rafalp","html_url":"https://github.com/rafalp","followers_url":"https://api.github.com/users/rafalp/followers","following_url":"https://api.github.com/users/rafalp/following{/other_user}","gists_url":"https://api.github.com/users/rafalp/gists{/gist_id}","starred_url":"https://api.github.com/users/rafalp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rafalp/subscriptions","organizations_url":"https://api.github.com/users/rafalp/orgs","repos_url":"https://api.github.com/users/rafalp/repos","events_url":"https://api.github.com/users/rafalp/events{/privacy}","received_events_url":"https://api.github.com/users/rafalp/received_events","type":"User","site_admin":false},"repo":{"id":26237259,"name":"django","full_name":"rafalp/django","owner":{"login":"rafalp","id":750553,"avatar_url":"https://avatars.githubusercontent.com/u/750553?v=3","gravatar_id":"","url":"https://api.github.com/users/rafalp","html_url":"https://github.com/rafalp","followers_url":"https://api.github.com/users/rafalp/followers","following_url":"https://api.github.com/users/rafalp/following{/other_user}","gists_url":"https://api.github.com/users/rafalp/gists{/gist_id}","starred_url":"https://api.github.com/users/rafalp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rafalp/subscriptions","organizations_url":"https://api.github.com/users/rafalp/orgs","repos_url":"https://api.github.com/users/rafalp/repos","events_url":"https://api.github.com/users/rafalp/events{/privacy}","received_events_url":"https://api.github.com/users/rafalp/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/rafalp/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/rafalp/django","forks_url":"https://api.github.com/repos/rafalp/django/forks","keys_url":"https://api.github.com/repos/rafalp/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rafalp/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rafalp/django/teams","hooks_url":"https://api.github.com/repos/rafalp/django/hooks","issue_events_url":"https://api.github.com/repos/rafalp/django/issues/events{/number}","events_url":"https://api.github.com/repos/rafalp/django/events","assignees_url":"https://api.github.com/repos/rafalp/django/assignees{/user}","branches_url":"https://api.github.com/repos/rafalp/django/branches{/branch}","tags_url":"https://api.github.com/repos/rafalp/django/tags","blobs_url":"https://api.github.com/repos/rafalp/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rafalp/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rafalp/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/rafalp/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rafalp/django/statuses/{sha}","languages_url":"https://api.github.com/repos/rafalp/django/languages","stargazers_url":"https://api.github.com/repos/rafalp/django/stargazers","contributors_url":"https://api.github.com/repos/rafalp/django/contributors","subscribers_url":"https://api.github.com/repos/rafalp/django/subscribers","subscription_url":"https://api.github.com/repos/rafalp/django/subscription","commits_url":"https://api.github.com/repos/rafalp/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/rafalp/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/rafalp/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/rafalp/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/rafalp/django/contents/{+path}","compare_url":"https://api.github.com/repos/rafalp/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rafalp/django/merges","archive_url":"https://api.github.com/repos/rafalp/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rafalp/django/downloads","issues_url":"https://api.github.com/repos/rafalp/django/issues{/number}","pulls_url":"https://api.github.com/repos/rafalp/django/pulls{/number}","milestones_url":"https://api.github.com/repos/rafalp/django/milestones{/number}","notifications_url":"https://api.github.com/repos/rafalp/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rafalp/django/labels{/name}","releases_url":"https://api.github.com/repos/rafalp/django/releases{/id}","created_at":"2014-11-05T20:01:50Z","updated_at":"2015-01-09T18:41:36Z","pushed_at":"2015-01-09T18:41:28Z","git_url":"git://github.com/rafalp/django.git","ssh_url":"git@github.com:rafalp/django.git","clone_url":"https://github.com/rafalp/django.git","svn_url":"https://github.com/rafalp/django","homepage":"https://www.djangoproject.com/","size":112403,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"7102b99653e354eb8c291cfa5b4f772d15d83ae0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3872"},"html":{"href":"https://github.com/django/django/pull/3872"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3872"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3872/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3872/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3872/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/4df871dfaf60de9ca6d71d1b2cb888ccec21686d"}}},{"url":"https://api.github.com/repos/django/django/pulls/3870","id":27117034,"html_url":"https://github.com/django/django/pull/3870","diff_url":"https://github.com/django/django/pull/3870.diff","patch_url":"https://github.com/django/django/pull/3870.patch","issue_url":"https://api.github.com/repos/django/django/issues/3870","number":3870,"state":"closed","locked":false,"title":"Added best practices for versionadded/changed annotations.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"Please review for clarity or any questions you have that aren't addressed.","created_at":"2015-01-09T17:56:21Z","updated_at":"2015-01-09T18:24:23Z","closed_at":"2015-01-09T18:23:57Z","merged_at":"2015-01-09T18:23:57Z","merge_commit_sha":"39bbf249d288409d3432df69cc9c07e8187ff027","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3870/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3870/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3870/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/7102b99653e354eb8c291cfa5b4f772d15d83ae0","head":{"label":"timgraham:version-annotations","ref":"version-annotations","sha":"7102b99653e354eb8c291cfa5b4f772d15d83ae0","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"8f4877c89d0f28e289399fbb46357623a49e7eb0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3870"},"html":{"href":"https://github.com/django/django/pull/3870"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3870"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3870/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3870/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3870/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/7102b99653e354eb8c291cfa5b4f772d15d83ae0"}}},{"url":"https://api.github.com/repos/django/django/pulls/3869","id":27109323,"html_url":"https://github.com/django/django/pull/3869","diff_url":"https://github.com/django/django/pull/3869.diff","patch_url":"https://github.com/django/django/pull/3869.patch","issue_url":"https://api.github.com/repos/django/django/issues/3869","number":3869,"state":"closed","locked":false,"title":"Fixed #24094 -- Enable template tests to run individually.","user":{"login":"prestontimmons","id":207051,"avatar_url":"https://avatars.githubusercontent.com/u/207051?v=3","gravatar_id":"","url":"https://api.github.com/users/prestontimmons","html_url":"https://github.com/prestontimmons","followers_url":"https://api.github.com/users/prestontimmons/followers","following_url":"https://api.github.com/users/prestontimmons/following{/other_user}","gists_url":"https://api.github.com/users/prestontimmons/gists{/gist_id}","starred_url":"https://api.github.com/users/prestontimmons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prestontimmons/subscriptions","organizations_url":"https://api.github.com/users/prestontimmons/orgs","repos_url":"https://api.github.com/users/prestontimmons/repos","events_url":"https://api.github.com/users/prestontimmons/events{/privacy}","received_events_url":"https://api.github.com/users/prestontimmons/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-09T16:06:23Z","updated_at":"2015-01-09T16:45:22Z","closed_at":"2015-01-09T16:45:22Z","merged_at":null,"merge_commit_sha":"7513bda026daa9ab7db044dbcb079830ba59081d","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3869/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3869/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3869/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/375426d3ce517654418def8b2a4da63b00bd9664","head":{"label":"prestontimmons:ticket-24094","ref":"ticket-24094","sha":"375426d3ce517654418def8b2a4da63b00bd9664","user":{"login":"prestontimmons","id":207051,"avatar_url":"https://avatars.githubusercontent.com/u/207051?v=3","gravatar_id":"","url":"https://api.github.com/users/prestontimmons","html_url":"https://github.com/prestontimmons","followers_url":"https://api.github.com/users/prestontimmons/followers","following_url":"https://api.github.com/users/prestontimmons/following{/other_user}","gists_url":"https://api.github.com/users/prestontimmons/gists{/gist_id}","starred_url":"https://api.github.com/users/prestontimmons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prestontimmons/subscriptions","organizations_url":"https://api.github.com/users/prestontimmons/orgs","repos_url":"https://api.github.com/users/prestontimmons/repos","events_url":"https://api.github.com/users/prestontimmons/events{/privacy}","received_events_url":"https://api.github.com/users/prestontimmons/received_events","type":"User","site_admin":false},"repo":{"id":8862914,"name":"django","full_name":"prestontimmons/django","owner":{"login":"prestontimmons","id":207051,"avatar_url":"https://avatars.githubusercontent.com/u/207051?v=3","gravatar_id":"","url":"https://api.github.com/users/prestontimmons","html_url":"https://github.com/prestontimmons","followers_url":"https://api.github.com/users/prestontimmons/followers","following_url":"https://api.github.com/users/prestontimmons/following{/other_user}","gists_url":"https://api.github.com/users/prestontimmons/gists{/gist_id}","starred_url":"https://api.github.com/users/prestontimmons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prestontimmons/subscriptions","organizations_url":"https://api.github.com/users/prestontimmons/orgs","repos_url":"https://api.github.com/users/prestontimmons/repos","events_url":"https://api.github.com/users/prestontimmons/events{/privacy}","received_events_url":"https://api.github.com/users/prestontimmons/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/prestontimmons/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/prestontimmons/django","forks_url":"https://api.github.com/repos/prestontimmons/django/forks","keys_url":"https://api.github.com/repos/prestontimmons/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/prestontimmons/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/prestontimmons/django/teams","hooks_url":"https://api.github.com/repos/prestontimmons/django/hooks","issue_events_url":"https://api.github.com/repos/prestontimmons/django/issues/events{/number}","events_url":"https://api.github.com/repos/prestontimmons/django/events","assignees_url":"https://api.github.com/repos/prestontimmons/django/assignees{/user}","branches_url":"https://api.github.com/repos/prestontimmons/django/branches{/branch}","tags_url":"https://api.github.com/repos/prestontimmons/django/tags","blobs_url":"https://api.github.com/repos/prestontimmons/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/prestontimmons/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/prestontimmons/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/prestontimmons/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/prestontimmons/django/statuses/{sha}","languages_url":"https://api.github.com/repos/prestontimmons/django/languages","stargazers_url":"https://api.github.com/repos/prestontimmons/django/stargazers","contributors_url":"https://api.github.com/repos/prestontimmons/django/contributors","subscribers_url":"https://api.github.com/repos/prestontimmons/django/subscribers","subscription_url":"https://api.github.com/repos/prestontimmons/django/subscription","commits_url":"https://api.github.com/repos/prestontimmons/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/prestontimmons/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/prestontimmons/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/prestontimmons/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/prestontimmons/django/contents/{+path}","compare_url":"https://api.github.com/repos/prestontimmons/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/prestontimmons/django/merges","archive_url":"https://api.github.com/repos/prestontimmons/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/prestontimmons/django/downloads","issues_url":"https://api.github.com/repos/prestontimmons/django/issues{/number}","pulls_url":"https://api.github.com/repos/prestontimmons/django/pulls{/number}","milestones_url":"https://api.github.com/repos/prestontimmons/django/milestones{/number}","notifications_url":"https://api.github.com/repos/prestontimmons/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/prestontimmons/django/labels{/name}","releases_url":"https://api.github.com/repos/prestontimmons/django/releases{/id}","created_at":"2013-03-18T20:02:22Z","updated_at":"2015-01-16T23:17:21Z","pushed_at":"2015-01-16T23:31:08Z","git_url":"git://github.com/prestontimmons/django.git","ssh_url":"git@github.com:prestontimmons/django.git","clone_url":"https://github.com/prestontimmons/django.git","svn_url":"https://github.com/prestontimmons/django","homepage":"http://www.djangoproject.com/","size":108842,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"c8bac4b556cf4716dc9003e5da48060cb72ba7cb","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3869"},"html":{"href":"https://github.com/django/django/pull/3869"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3869"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3869/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3869/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3869/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/375426d3ce517654418def8b2a4da63b00bd9664"}}},{"url":"https://api.github.com/repos/django/django/pulls/3868","id":27106185,"html_url":"https://github.com/django/django/pull/3868","diff_url":"https://github.com/django/django/pull/3868.diff","patch_url":"https://github.com/django/django/pull/3868.patch","issue_url":"https://api.github.com/repos/django/django/issues/3868","number":3868,"state":"closed","locked":false,"title":"Fixed #24060 -- Added OrderBy Expressions","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"body":"This is the initial implementation of being able to use expressions in the order_by clause. It's still a bit rough around the edges. Still need:\r\n\r\n- [x] Lots more tests\r\n- [x] Documentation\r\n- [x] ~~Implement NULLS LAST/FIRST~~ Cutting due to time\r\n\r\nI think I'm on the right track though. Eventually I'd like to move a lot of the order processing from the compiler and into the expression itself, but that's polish that can wait until another version.","created_at":"2015-01-09T15:21:25Z","updated_at":"2015-01-14T06:38:19Z","closed_at":"2015-01-12T22:42:07Z","merged_at":"2015-01-12T22:42:07Z","merge_commit_sha":"d81ec91d9264ea60d854ff42f9568c3299ea3ddd","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3868/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3868/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3868/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/21b858cb6735cdfdc695ff7b076e4cbc1981bc88","head":{"label":"jarshwah:orderby-expressions","ref":"orderby-expressions","sha":"21b858cb6735cdfdc695ff7b076e4cbc1981bc88","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"repo":{"id":4635741,"name":"django","full_name":"jarshwah/django","owner":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarshwah/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/jarshwah/django","forks_url":"https://api.github.com/repos/jarshwah/django/forks","keys_url":"https://api.github.com/repos/jarshwah/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarshwah/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarshwah/django/teams","hooks_url":"https://api.github.com/repos/jarshwah/django/hooks","issue_events_url":"https://api.github.com/repos/jarshwah/django/issues/events{/number}","events_url":"https://api.github.com/repos/jarshwah/django/events","assignees_url":"https://api.github.com/repos/jarshwah/django/assignees{/user}","branches_url":"https://api.github.com/repos/jarshwah/django/branches{/branch}","tags_url":"https://api.github.com/repos/jarshwah/django/tags","blobs_url":"https://api.github.com/repos/jarshwah/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarshwah/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarshwah/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarshwah/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarshwah/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jarshwah/django/languages","stargazers_url":"https://api.github.com/repos/jarshwah/django/stargazers","contributors_url":"https://api.github.com/repos/jarshwah/django/contributors","subscribers_url":"https://api.github.com/repos/jarshwah/django/subscribers","subscription_url":"https://api.github.com/repos/jarshwah/django/subscription","commits_url":"https://api.github.com/repos/jarshwah/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarshwah/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarshwah/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarshwah/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jarshwah/django/contents/{+path}","compare_url":"https://api.github.com/repos/jarshwah/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarshwah/django/merges","archive_url":"https://api.github.com/repos/jarshwah/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarshwah/django/downloads","issues_url":"https://api.github.com/repos/jarshwah/django/issues{/number}","pulls_url":"https://api.github.com/repos/jarshwah/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jarshwah/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jarshwah/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarshwah/django/labels{/name}","releases_url":"https://api.github.com/repos/jarshwah/django/releases{/id}","created_at":"2012-06-12T09:53:04Z","updated_at":"2014-06-27T11:10:20Z","pushed_at":"2015-01-17T23:23:41Z","git_url":"git://github.com/jarshwah/django.git","ssh_url":"git@github.com:jarshwah/django.git","clone_url":"https://github.com/jarshwah/django.git","svn_url":"https://github.com/jarshwah/django","homepage":"http://www.djangoproject.com/","size":113452,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"f48e2258a96a08dcec843921206bcf7656e3ae45","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3868"},"html":{"href":"https://github.com/django/django/pull/3868"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3868"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3868/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3868/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3868/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/21b858cb6735cdfdc695ff7b076e4cbc1981bc88"}}},{"url":"https://api.github.com/repos/django/django/pulls/3867","id":27088891,"html_url":"https://github.com/django/django/pull/3867","diff_url":"https://github.com/django/django/pull/3867.diff","patch_url":"https://github.com/django/django/pull/3867.patch","issue_url":"https://api.github.com/repos/django/django/issues/3867","number":3867,"state":"closed","locked":false,"title":"Minor release notes fix","user":{"login":"tchaumeny","id":1296387,"avatar_url":"https://avatars.githubusercontent.com/u/1296387?v=3","gravatar_id":"","url":"https://api.github.com/users/tchaumeny","html_url":"https://github.com/tchaumeny","followers_url":"https://api.github.com/users/tchaumeny/followers","following_url":"https://api.github.com/users/tchaumeny/following{/other_user}","gists_url":"https://api.github.com/users/tchaumeny/gists{/gist_id}","starred_url":"https://api.github.com/users/tchaumeny/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tchaumeny/subscriptions","organizations_url":"https://api.github.com/users/tchaumeny/orgs","repos_url":"https://api.github.com/users/tchaumeny/repos","events_url":"https://api.github.com/users/tchaumeny/events{/privacy}","received_events_url":"https://api.github.com/users/tchaumeny/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-09T09:41:27Z","updated_at":"2015-01-09T12:39:56Z","closed_at":"2015-01-09T12:39:56Z","merged_at":null,"merge_commit_sha":"3eabf3358523a8cdcde1b9f928966453b1da3395","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3867/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3867/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3867/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/45f9f280024f9225ce4050f1e6d518b99f058317","head":{"label":"tchaumeny:fix_release_note","ref":"fix_release_note","sha":"45f9f280024f9225ce4050f1e6d518b99f058317","user":{"login":"tchaumeny","id":1296387,"avatar_url":"https://avatars.githubusercontent.com/u/1296387?v=3","gravatar_id":"","url":"https://api.github.com/users/tchaumeny","html_url":"https://github.com/tchaumeny","followers_url":"https://api.github.com/users/tchaumeny/followers","following_url":"https://api.github.com/users/tchaumeny/following{/other_user}","gists_url":"https://api.github.com/users/tchaumeny/gists{/gist_id}","starred_url":"https://api.github.com/users/tchaumeny/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tchaumeny/subscriptions","organizations_url":"https://api.github.com/users/tchaumeny/orgs","repos_url":"https://api.github.com/users/tchaumeny/repos","events_url":"https://api.github.com/users/tchaumeny/events{/privacy}","received_events_url":"https://api.github.com/users/tchaumeny/received_events","type":"User","site_admin":false},"repo":{"id":17920067,"name":"django","full_name":"tchaumeny/django","owner":{"login":"tchaumeny","id":1296387,"avatar_url":"https://avatars.githubusercontent.com/u/1296387?v=3","gravatar_id":"","url":"https://api.github.com/users/tchaumeny","html_url":"https://github.com/tchaumeny","followers_url":"https://api.github.com/users/tchaumeny/followers","following_url":"https://api.github.com/users/tchaumeny/following{/other_user}","gists_url":"https://api.github.com/users/tchaumeny/gists{/gist_id}","starred_url":"https://api.github.com/users/tchaumeny/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tchaumeny/subscriptions","organizations_url":"https://api.github.com/users/tchaumeny/orgs","repos_url":"https://api.github.com/users/tchaumeny/repos","events_url":"https://api.github.com/users/tchaumeny/events{/privacy}","received_events_url":"https://api.github.com/users/tchaumeny/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/tchaumeny/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/tchaumeny/django","forks_url":"https://api.github.com/repos/tchaumeny/django/forks","keys_url":"https://api.github.com/repos/tchaumeny/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tchaumeny/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tchaumeny/django/teams","hooks_url":"https://api.github.com/repos/tchaumeny/django/hooks","issue_events_url":"https://api.github.com/repos/tchaumeny/django/issues/events{/number}","events_url":"https://api.github.com/repos/tchaumeny/django/events","assignees_url":"https://api.github.com/repos/tchaumeny/django/assignees{/user}","branches_url":"https://api.github.com/repos/tchaumeny/django/branches{/branch}","tags_url":"https://api.github.com/repos/tchaumeny/django/tags","blobs_url":"https://api.github.com/repos/tchaumeny/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tchaumeny/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tchaumeny/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/tchaumeny/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tchaumeny/django/statuses/{sha}","languages_url":"https://api.github.com/repos/tchaumeny/django/languages","stargazers_url":"https://api.github.com/repos/tchaumeny/django/stargazers","contributors_url":"https://api.github.com/repos/tchaumeny/django/contributors","subscribers_url":"https://api.github.com/repos/tchaumeny/django/subscribers","subscription_url":"https://api.github.com/repos/tchaumeny/django/subscription","commits_url":"https://api.github.com/repos/tchaumeny/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/tchaumeny/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/tchaumeny/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/tchaumeny/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/tchaumeny/django/contents/{+path}","compare_url":"https://api.github.com/repos/tchaumeny/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tchaumeny/django/merges","archive_url":"https://api.github.com/repos/tchaumeny/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tchaumeny/django/downloads","issues_url":"https://api.github.com/repos/tchaumeny/django/issues{/number}","pulls_url":"https://api.github.com/repos/tchaumeny/django/pulls{/number}","milestones_url":"https://api.github.com/repos/tchaumeny/django/milestones{/number}","notifications_url":"https://api.github.com/repos/tchaumeny/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tchaumeny/django/labels{/name}","releases_url":"https://api.github.com/repos/tchaumeny/django/releases{/id}","created_at":"2014-03-19T20:54:51Z","updated_at":"2014-12-03T20:17:10Z","pushed_at":"2015-01-09T09:43:36Z","git_url":"git://github.com/tchaumeny/django.git","ssh_url":"git@github.com:tchaumeny/django.git","clone_url":"https://github.com/tchaumeny/django.git","svn_url":"https://github.com/tchaumeny/django","homepage":"http://www.djangoproject.com/","size":112338,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"c1493879d98328040b36ad93cd104c0b3b546772","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3867"},"html":{"href":"https://github.com/django/django/pull/3867"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3867"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3867/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3867/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3867/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/45f9f280024f9225ce4050f1e6d518b99f058317"}}},{"url":"https://api.github.com/repos/django/django/pulls/3864","id":27059080,"html_url":"https://github.com/django/django/pull/3864","diff_url":"https://github.com/django/django/pull/3864.diff","patch_url":"https://github.com/django/django/pull/3864.patch","issue_url":"https://api.github.com/repos/django/django/issues/3864","number":3864,"state":"closed","locked":false,"title":"Fixed typo in 1.8 release notes","user":{"login":"sephii","id":754333,"avatar_url":"https://avatars.githubusercontent.com/u/754333?v=3","gravatar_id":"","url":"https://api.github.com/users/sephii","html_url":"https://github.com/sephii","followers_url":"https://api.github.com/users/sephii/followers","following_url":"https://api.github.com/users/sephii/following{/other_user}","gists_url":"https://api.github.com/users/sephii/gists{/gist_id}","starred_url":"https://api.github.com/users/sephii/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sephii/subscriptions","organizations_url":"https://api.github.com/users/sephii/orgs","repos_url":"https://api.github.com/users/sephii/repos","events_url":"https://api.github.com/users/sephii/events{/privacy}","received_events_url":"https://api.github.com/users/sephii/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-08T20:57:28Z","updated_at":"2015-01-08T21:03:23Z","closed_at":"2015-01-08T21:03:23Z","merged_at":null,"merge_commit_sha":"7028ff6ddc62b8abe9bc7e4a6fe3ba9a9f51a142","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3864/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3864/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3864/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/7e0e1c50ee83b9d127307269d52d3fd4237df53a","head":{"label":"sephii:18-release-notes-typo","ref":"18-release-notes-typo","sha":"7e0e1c50ee83b9d127307269d52d3fd4237df53a","user":{"login":"sephii","id":754333,"avatar_url":"https://avatars.githubusercontent.com/u/754333?v=3","gravatar_id":"","url":"https://api.github.com/users/sephii","html_url":"https://github.com/sephii","followers_url":"https://api.github.com/users/sephii/followers","following_url":"https://api.github.com/users/sephii/following{/other_user}","gists_url":"https://api.github.com/users/sephii/gists{/gist_id}","starred_url":"https://api.github.com/users/sephii/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sephii/subscriptions","organizations_url":"https://api.github.com/users/sephii/orgs","repos_url":"https://api.github.com/users/sephii/repos","events_url":"https://api.github.com/users/sephii/events{/privacy}","received_events_url":"https://api.github.com/users/sephii/received_events","type":"User","site_admin":false},"repo":{"id":13412776,"name":"django","full_name":"sephii/django","owner":{"login":"sephii","id":754333,"avatar_url":"https://avatars.githubusercontent.com/u/754333?v=3","gravatar_id":"","url":"https://api.github.com/users/sephii","html_url":"https://github.com/sephii","followers_url":"https://api.github.com/users/sephii/followers","following_url":"https://api.github.com/users/sephii/following{/other_user}","gists_url":"https://api.github.com/users/sephii/gists{/gist_id}","starred_url":"https://api.github.com/users/sephii/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sephii/subscriptions","organizations_url":"https://api.github.com/users/sephii/orgs","repos_url":"https://api.github.com/users/sephii/repos","events_url":"https://api.github.com/users/sephii/events{/privacy}","received_events_url":"https://api.github.com/users/sephii/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/sephii/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/sephii/django","forks_url":"https://api.github.com/repos/sephii/django/forks","keys_url":"https://api.github.com/repos/sephii/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sephii/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sephii/django/teams","hooks_url":"https://api.github.com/repos/sephii/django/hooks","issue_events_url":"https://api.github.com/repos/sephii/django/issues/events{/number}","events_url":"https://api.github.com/repos/sephii/django/events","assignees_url":"https://api.github.com/repos/sephii/django/assignees{/user}","branches_url":"https://api.github.com/repos/sephii/django/branches{/branch}","tags_url":"https://api.github.com/repos/sephii/django/tags","blobs_url":"https://api.github.com/repos/sephii/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sephii/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sephii/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/sephii/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sephii/django/statuses/{sha}","languages_url":"https://api.github.com/repos/sephii/django/languages","stargazers_url":"https://api.github.com/repos/sephii/django/stargazers","contributors_url":"https://api.github.com/repos/sephii/django/contributors","subscribers_url":"https://api.github.com/repos/sephii/django/subscribers","subscription_url":"https://api.github.com/repos/sephii/django/subscription","commits_url":"https://api.github.com/repos/sephii/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/sephii/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/sephii/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/sephii/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/sephii/django/contents/{+path}","compare_url":"https://api.github.com/repos/sephii/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sephii/django/merges","archive_url":"https://api.github.com/repos/sephii/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sephii/django/downloads","issues_url":"https://api.github.com/repos/sephii/django/issues{/number}","pulls_url":"https://api.github.com/repos/sephii/django/pulls{/number}","milestones_url":"https://api.github.com/repos/sephii/django/milestones{/number}","notifications_url":"https://api.github.com/repos/sephii/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sephii/django/labels{/name}","releases_url":"https://api.github.com/repos/sephii/django/releases{/id}","created_at":"2013-10-08T12:29:27Z","updated_at":"2015-01-08T20:54:37Z","pushed_at":"2015-01-08T20:55:34Z","git_url":"git://github.com/sephii/django.git","ssh_url":"git@github.com:sephii/django.git","clone_url":"https://github.com/sephii/django.git","svn_url":"https://github.com/sephii/django","homepage":"http://www.djangoproject.com/","size":107010,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"13e4156518e9c13606870442f4fe1607c3d72518","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3864"},"html":{"href":"https://github.com/django/django/pull/3864"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3864"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3864/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3864/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3864/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/7e0e1c50ee83b9d127307269d52d3fd4237df53a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3863","id":27046350,"html_url":"https://github.com/django/django/pull/3863","diff_url":"https://github.com/django/django/pull/3863.diff","patch_url":"https://github.com/django/django/pull/3863.patch","issue_url":"https://api.github.com/repos/django/django/issues/3863","number":3863,"state":"closed","locked":false,"title":"Isolated some cache tests; refs #23947.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"This reverts a change made in 40c60efecc0fc73f0b2320b44d684586b52ee799\r\nwhich was incorrect and caused CacheKeyWarnings.","created_at":"2015-01-08T17:52:06Z","updated_at":"2015-01-08T18:16:02Z","closed_at":"2015-01-08T18:15:33Z","merged_at":"2015-01-08T18:15:33Z","merge_commit_sha":"01a5634e4ed58abefd52a64e63e09e59ccb35fbf","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3863/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3863/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3863/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/5c43fd48258eb977e6e611310e12a921d8470944","head":{"label":"timgraham:cache-test","ref":"cache-test","sha":"5c43fd48258eb977e6e611310e12a921d8470944","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"543df07720181fe23737ba14f1a261ff6f37f49c","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3863"},"html":{"href":"https://github.com/django/django/pull/3863"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3863"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3863/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3863/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3863/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/5c43fd48258eb977e6e611310e12a921d8470944"}}},{"url":"https://api.github.com/repos/django/django/pulls/3861","id":27044792,"html_url":"https://github.com/django/django/pull/3861","diff_url":"https://github.com/django/django/pull/3861.diff","patch_url":"https://github.com/django/django/pull/3861.patch","issue_url":"https://api.github.com/repos/django/django/issues/3861","number":3861,"state":"closed","locked":false,"title":"Create __main__.py","user":{"login":"holdenweb","id":105312,"avatar_url":"https://avatars.githubusercontent.com/u/105312?v=3","gravatar_id":"","url":"https://api.github.com/users/holdenweb","html_url":"https://github.com/holdenweb","followers_url":"https://api.github.com/users/holdenweb/followers","following_url":"https://api.github.com/users/holdenweb/following{/other_user}","gists_url":"https://api.github.com/users/holdenweb/gists{/gist_id}","starred_url":"https://api.github.com/users/holdenweb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/holdenweb/subscriptions","organizations_url":"https://api.github.com/users/holdenweb/orgs","repos_url":"https://api.github.com/users/holdenweb/repos","events_url":"https://api.github.com/users/holdenweb/events{/privacy}","received_events_url":"https://api.github.com/users/holdenweb/received_events","type":"User","site_admin":false},"body":"It's always irked me that I had to start an interactive interpreter to discover which version of django I was running. This module takes advantage of Python's recently-added ability to run a package.\r\n\r\nAfter the addition of this module, the command `python -m django` reports various useful version data. Here's a sample output from a current virtual environment:\r\n\r\n (training-site)airhead:training-site sholden$ python -m django\r\n Django version 1.7.2\r\n Loaded from /Users/sholden/.virtualenvs/training-site/lib/python2.7/site-packages/django\r\n Python 2.7.2 (default, Oct 11 2012, 20:14:37)\r\n [GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)]\r\n\r\nI'm not sure how to integrate a test for this feature, and will happily take advice from more experienced devs. This just scratches an itch for me. I hope this file will always stay small!","created_at":"2015-01-08T17:30:16Z","updated_at":"2015-01-09T03:38:56Z","closed_at":"2015-01-09T03:38:56Z","merged_at":null,"merge_commit_sha":"d15e0e1046a50e76488455a269095aa93d4b15e4","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3861/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3861/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3861/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/331a1f5d219d06bd29302446f6090844ad84f289","head":{"label":"holdenweb:master","ref":"master","sha":"331a1f5d219d06bd29302446f6090844ad84f289","user":{"login":"holdenweb","id":105312,"avatar_url":"https://avatars.githubusercontent.com/u/105312?v=3","gravatar_id":"","url":"https://api.github.com/users/holdenweb","html_url":"https://github.com/holdenweb","followers_url":"https://api.github.com/users/holdenweb/followers","following_url":"https://api.github.com/users/holdenweb/following{/other_user}","gists_url":"https://api.github.com/users/holdenweb/gists{/gist_id}","starred_url":"https://api.github.com/users/holdenweb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/holdenweb/subscriptions","organizations_url":"https://api.github.com/users/holdenweb/orgs","repos_url":"https://api.github.com/users/holdenweb/repos","events_url":"https://api.github.com/users/holdenweb/events{/privacy}","received_events_url":"https://api.github.com/users/holdenweb/received_events","type":"User","site_admin":false},"repo":{"id":28977093,"name":"django","full_name":"holdenweb/django","owner":{"login":"holdenweb","id":105312,"avatar_url":"https://avatars.githubusercontent.com/u/105312?v=3","gravatar_id":"","url":"https://api.github.com/users/holdenweb","html_url":"https://github.com/holdenweb","followers_url":"https://api.github.com/users/holdenweb/followers","following_url":"https://api.github.com/users/holdenweb/following{/other_user}","gists_url":"https://api.github.com/users/holdenweb/gists{/gist_id}","starred_url":"https://api.github.com/users/holdenweb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/holdenweb/subscriptions","organizations_url":"https://api.github.com/users/holdenweb/orgs","repos_url":"https://api.github.com/users/holdenweb/repos","events_url":"https://api.github.com/users/holdenweb/events{/privacy}","received_events_url":"https://api.github.com/users/holdenweb/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/holdenweb/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/holdenweb/django","forks_url":"https://api.github.com/repos/holdenweb/django/forks","keys_url":"https://api.github.com/repos/holdenweb/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/holdenweb/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/holdenweb/django/teams","hooks_url":"https://api.github.com/repos/holdenweb/django/hooks","issue_events_url":"https://api.github.com/repos/holdenweb/django/issues/events{/number}","events_url":"https://api.github.com/repos/holdenweb/django/events","assignees_url":"https://api.github.com/repos/holdenweb/django/assignees{/user}","branches_url":"https://api.github.com/repos/holdenweb/django/branches{/branch}","tags_url":"https://api.github.com/repos/holdenweb/django/tags","blobs_url":"https://api.github.com/repos/holdenweb/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/holdenweb/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/holdenweb/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/holdenweb/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/holdenweb/django/statuses/{sha}","languages_url":"https://api.github.com/repos/holdenweb/django/languages","stargazers_url":"https://api.github.com/repos/holdenweb/django/stargazers","contributors_url":"https://api.github.com/repos/holdenweb/django/contributors","subscribers_url":"https://api.github.com/repos/holdenweb/django/subscribers","subscription_url":"https://api.github.com/repos/holdenweb/django/subscription","commits_url":"https://api.github.com/repos/holdenweb/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/holdenweb/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/holdenweb/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/holdenweb/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/holdenweb/django/contents/{+path}","compare_url":"https://api.github.com/repos/holdenweb/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/holdenweb/django/merges","archive_url":"https://api.github.com/repos/holdenweb/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/holdenweb/django/downloads","issues_url":"https://api.github.com/repos/holdenweb/django/issues{/number}","pulls_url":"https://api.github.com/repos/holdenweb/django/pulls{/number}","milestones_url":"https://api.github.com/repos/holdenweb/django/milestones{/number}","notifications_url":"https://api.github.com/repos/holdenweb/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/holdenweb/django/labels{/name}","releases_url":"https://api.github.com/repos/holdenweb/django/releases{/id}","created_at":"2015-01-08T17:24:35Z","updated_at":"2015-01-08T17:29:46Z","pushed_at":"2015-01-08T17:29:46Z","git_url":"git://github.com/holdenweb/django.git","ssh_url":"git@github.com:holdenweb/django.git","clone_url":"https://github.com/holdenweb/django.git","svn_url":"https://github.com/holdenweb/django","homepage":"https://www.djangoproject.com/","size":117343,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"543df07720181fe23737ba14f1a261ff6f37f49c","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3861"},"html":{"href":"https://github.com/django/django/pull/3861"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3861"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3861/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3861/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3861/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/331a1f5d219d06bd29302446f6090844ad84f289"}}},{"url":"https://api.github.com/repos/django/django/pulls/3860","id":27044178,"html_url":"https://github.com/django/django/pull/3860","diff_url":"https://github.com/django/django/pull/3860.diff","patch_url":"https://github.com/django/django/pull/3860.patch","issue_url":"https://api.github.com/repos/django/django/issues/3860","number":3860,"state":"closed","locked":false,"title":"Fixed #24101 -- Fixed flaky admin_views selenium tests; refs #7361.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-08T17:21:59Z","updated_at":"2015-01-08T18:53:03Z","closed_at":"2015-01-08T18:52:58Z","merged_at":"2015-01-08T18:52:58Z","merge_commit_sha":"97aae9c0941dcb98014e8505e1bb1e9f2daec175","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3860/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3860/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3860/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/b8abfe141be17f20079f55b921dcaf7abe116c4b","head":{"label":"timgraham:24101","ref":"24101","sha":"b8abfe141be17f20079f55b921dcaf7abe116c4b","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"5c43fd48258eb977e6e611310e12a921d8470944","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3860"},"html":{"href":"https://github.com/django/django/pull/3860"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3860"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3860/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3860/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3860/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/b8abfe141be17f20079f55b921dcaf7abe116c4b"}}},{"url":"https://api.github.com/repos/django/django/pulls/3859","id":27042936,"html_url":"https://github.com/django/django/pull/3859","diff_url":"https://github.com/django/django/pull/3859.diff","patch_url":"https://github.com/django/django/pull/3859.patch","issue_url":"https://api.github.com/repos/django/django/issues/3859","number":3859,"state":"closed","locked":false,"title":"Fixed #24098 -- Added no-op attributes to RunPython and RunSQL","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24098","created_at":"2015-01-08T17:06:18Z","updated_at":"2015-01-09T15:47:31Z","closed_at":"2015-01-09T15:47:31Z","merged_at":null,"merge_commit_sha":"5a3b8d2236d1459c67fdb2824ec646fe72e96279","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3859/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3859/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3859/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a21a372948ca28fd9f378e613998c2ce93a4419e","head":{"label":"MarkusH:ticket24098","ref":"ticket24098","sha":"a21a372948ca28fd9f378e613998c2ce93a4419e","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"67d6a8c4e66c379111d0acf4552e162356917dd7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3859"},"html":{"href":"https://github.com/django/django/pull/3859"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3859"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3859/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3859/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3859/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a21a372948ca28fd9f378e613998c2ce93a4419e"}}},{"url":"https://api.github.com/repos/django/django/pulls/3858","id":27040623,"html_url":"https://github.com/django/django/pull/3858","diff_url":"https://github.com/django/django/pull/3858.diff","patch_url":"https://github.com/django/django/pull/3858.patch","issue_url":"https://api.github.com/repos/django/django/issues/3858","number":3858,"state":"closed","locked":false,"title":"Fixed #24099 -- Removed contenttype.name deprecated field","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"This finsishes the work started on #16803.","created_at":"2015-01-08T16:36:44Z","updated_at":"2015-01-16T19:31:52Z","closed_at":"2015-01-16T19:25:51Z","merged_at":null,"merge_commit_sha":"57740d33e4b77289e1d0d2f38aa057f87d5beacc","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3858/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3858/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3858/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/79f61f5502e09c285de8dfab73cbfd1c448018d5","head":{"label":"claudep:24099","ref":"24099","sha":"79f61f5502e09c285de8dfab73cbfd1c448018d5","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"4c413e231cfe788de6e371567f395c8ccbd26103","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3858"},"html":{"href":"https://github.com/django/django/pull/3858"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3858"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3858/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3858/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3858/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/79f61f5502e09c285de8dfab73cbfd1c448018d5"}}},{"url":"https://api.github.com/repos/django/django/pulls/3856","id":27018166,"html_url":"https://github.com/django/django/pull/3856","diff_url":"https://github.com/django/django/pull/3856.diff","patch_url":"https://github.com/django/django/pull/3856.patch","issue_url":"https://api.github.com/repos/django/django/issues/3856","number":3856,"state":"closed","locked":false,"title":"Returned None for get_language when translations are deactivated","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-08T10:12:26Z","updated_at":"2015-01-08T16:46:54Z","closed_at":"2015-01-08T16:44:19Z","merged_at":"2015-01-08T16:44:19Z","merge_commit_sha":"44c9a82028f42575adb1c3eee0d96d9f1f2c1d34","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3856/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3856/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3856/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/543df07720181fe23737ba14f1a261ff6f37f49c","head":{"label":"claudep:24073","ref":"24073","sha":"543df07720181fe23737ba14f1a261ff6f37f49c","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"d6c8121ed007e59bac9a68873248104ec30d5d8b","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3856"},"html":{"href":"https://github.com/django/django/pull/3856"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3856"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3856/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3856/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3856/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/543df07720181fe23737ba14f1a261ff6f37f49c"}}},{"url":"https://api.github.com/repos/django/django/pulls/3855","id":26997752,"html_url":"https://github.com/django/django/pull/3855","diff_url":"https://github.com/django/django/pull/3855.diff","patch_url":"https://github.com/django/django/pull/3855.patch","issue_url":"https://api.github.com/repos/django/django/issues/3855","number":3855,"state":"closed","locked":false,"title":"Fixed #24095 -- Prevented WarningLoggerTests from leaking a warnings filter.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24095#ticket","created_at":"2015-01-07T23:51:50Z","updated_at":"2015-01-08T13:50:48Z","closed_at":"2015-01-08T13:50:38Z","merged_at":"2015-01-08T13:50:38Z","merge_commit_sha":"f2c54c637e7febd6ff29744e786b890b0b39a9df","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3855/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3855/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3855/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/ade985999657eaef6a9510c2aeba9b2196d7bf6e","head":{"label":"timgraham:24095","ref":"24095","sha":"ade985999657eaef6a9510c2aeba9b2196d7bf6e","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"862ea825b5073588efafd5b7eed349ad098b5fe1","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3855"},"html":{"href":"https://github.com/django/django/pull/3855"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3855"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3855/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3855/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3855/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/ade985999657eaef6a9510c2aeba9b2196d7bf6e"}}},{"url":"https://api.github.com/repos/django/django/pulls/3854","id":26987470,"html_url":"https://github.com/django/django/pull/3854","diff_url":"https://github.com/django/django/pull/3854.diff","patch_url":"https://github.com/django/django/pull/3854.patch","issue_url":"https://api.github.com/repos/django/django/issues/3854","number":3854,"state":"closed","locked":false,"title":"Refs #23822 -- Made MigrationOptimizer aware of model managers","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/23822","created_at":"2015-01-07T21:02:31Z","updated_at":"2015-01-08T00:16:15Z","closed_at":"2015-01-07T22:33:42Z","merged_at":null,"merge_commit_sha":"05dbd770968b9bff42ca28ec6542343f9b90b151","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3854/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3854/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3854/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/4d7c08938e72d0f75168d94d0186a36aae03f4df","head":{"label":"MarkusH:ticket23822-optimizer","ref":"ticket23822-optimizer","sha":"4d7c08938e72d0f75168d94d0186a36aae03f4df","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"127f9e073d83904defd4bde4eaa4491f3306ca25","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3854"},"html":{"href":"https://github.com/django/django/pull/3854"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3854"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3854/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3854/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3854/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/4d7c08938e72d0f75168d94d0186a36aae03f4df"}}},{"url":"https://api.github.com/repos/django/django/pulls/3853","id":26986172,"html_url":"https://github.com/django/django/pull/3853","diff_url":"https://github.com/django/django/pull/3853.diff","patch_url":"https://github.com/django/django/pull/3853.patch","issue_url":"https://api.github.com/repos/django/django/issues/3853","number":3853,"state":"closed","locked":false,"title":"Fixed #24093 -- Prevented MigrationWriter to write operation kwargs that are not explicitly deconstructed","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24093","created_at":"2015-01-07T20:43:28Z","updated_at":"2015-01-08T02:24:49Z","closed_at":"2015-01-08T00:30:07Z","merged_at":null,"merge_commit_sha":"4f2cc0991d06601fd965bd71ef7efe2c941086ab","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3853/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3853/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3853/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/6e3a17ea4482354ea1c3537ffa67cb71632e3b5b","head":{"label":"MarkusH:ticket24093","ref":"ticket24093","sha":"6e3a17ea4482354ea1c3537ffa67cb71632e3b5b","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"f7c287fca9c9e6370cc88d1457d3ed9466703687","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3853"},"html":{"href":"https://github.com/django/django/pull/3853"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3853"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3853/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3853/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3853/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/6e3a17ea4482354ea1c3537ffa67cb71632e3b5b"}}},{"url":"https://api.github.com/repos/django/django/pulls/3851","id":26951658,"html_url":"https://github.com/django/django/pull/3851","diff_url":"https://github.com/django/django/pull/3851.diff","patch_url":"https://github.com/django/django/pull/3851.patch","issue_url":"https://api.github.com/repos/django/django/issues/3851","number":3851,"state":"closed","locked":false,"title":"Allowed creation of objects with NULL DurationFields","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-07T11:24:46Z","updated_at":"2015-01-07T13:34:51Z","closed_at":"2015-01-07T13:34:51Z","merged_at":null,"merge_commit_sha":"ab5cae663074768ef1429daffa5e07fa88b95744","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3851/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3851/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3851/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/2b6c94bb0b284ef137fc73f13876164818df7caa","head":{"label":"jarshwah:null-duration-field","ref":"null-duration-field","sha":"2b6c94bb0b284ef137fc73f13876164818df7caa","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"repo":{"id":4635741,"name":"django","full_name":"jarshwah/django","owner":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarshwah/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/jarshwah/django","forks_url":"https://api.github.com/repos/jarshwah/django/forks","keys_url":"https://api.github.com/repos/jarshwah/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarshwah/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarshwah/django/teams","hooks_url":"https://api.github.com/repos/jarshwah/django/hooks","issue_events_url":"https://api.github.com/repos/jarshwah/django/issues/events{/number}","events_url":"https://api.github.com/repos/jarshwah/django/events","assignees_url":"https://api.github.com/repos/jarshwah/django/assignees{/user}","branches_url":"https://api.github.com/repos/jarshwah/django/branches{/branch}","tags_url":"https://api.github.com/repos/jarshwah/django/tags","blobs_url":"https://api.github.com/repos/jarshwah/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarshwah/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarshwah/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarshwah/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarshwah/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jarshwah/django/languages","stargazers_url":"https://api.github.com/repos/jarshwah/django/stargazers","contributors_url":"https://api.github.com/repos/jarshwah/django/contributors","subscribers_url":"https://api.github.com/repos/jarshwah/django/subscribers","subscription_url":"https://api.github.com/repos/jarshwah/django/subscription","commits_url":"https://api.github.com/repos/jarshwah/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarshwah/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarshwah/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarshwah/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jarshwah/django/contents/{+path}","compare_url":"https://api.github.com/repos/jarshwah/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarshwah/django/merges","archive_url":"https://api.github.com/repos/jarshwah/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarshwah/django/downloads","issues_url":"https://api.github.com/repos/jarshwah/django/issues{/number}","pulls_url":"https://api.github.com/repos/jarshwah/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jarshwah/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jarshwah/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarshwah/django/labels{/name}","releases_url":"https://api.github.com/repos/jarshwah/django/releases{/id}","created_at":"2012-06-12T09:53:04Z","updated_at":"2014-06-27T11:10:20Z","pushed_at":"2015-01-17T23:23:41Z","git_url":"git://github.com/jarshwah/django.git","ssh_url":"git@github.com:jarshwah/django.git","clone_url":"https://github.com/jarshwah/django.git","svn_url":"https://github.com/jarshwah/django","homepage":"http://www.djangoproject.com/","size":113452,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"9b057b51ce01087afbeeb683098d4d2f1088fd7b","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3851"},"html":{"href":"https://github.com/django/django/pull/3851"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3851"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3851/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3851/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3851/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/2b6c94bb0b284ef137fc73f13876164818df7caa"}}},{"url":"https://api.github.com/repos/django/django/pulls/3850","id":26950314,"html_url":"https://github.com/django/django/pull/3850","diff_url":"https://github.com/django/django/pull/3850.diff","patch_url":"https://github.com/django/django/pull/3850.patch","issue_url":"https://api.github.com/repos/django/django/issues/3850","number":3850,"state":"closed","locked":false,"title":"Fixed null handling in Value expression","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"body":"In some rare cases, Oracle is unable to convert `Value(None)` into the correct NULL type, so we do it explicitly. https://github.com/django/django/pull/3825 has hit this corner case and has tests that fail without this change. Better to add this separately.","created_at":"2015-01-07T10:54:31Z","updated_at":"2015-01-08T00:08:49Z","closed_at":"2015-01-08T00:08:49Z","merged_at":null,"merge_commit_sha":"567e906e2cb55474ba732a4b55b801ea03dcd1ad","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3850/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3850/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3850/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a4db987db3c79b1543bbbed829a46650f5ddeb56","head":{"label":"jarshwah:improve-value-expression","ref":"improve-value-expression","sha":"a4db987db3c79b1543bbbed829a46650f5ddeb56","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"repo":{"id":4635741,"name":"django","full_name":"jarshwah/django","owner":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarshwah/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/jarshwah/django","forks_url":"https://api.github.com/repos/jarshwah/django/forks","keys_url":"https://api.github.com/repos/jarshwah/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarshwah/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarshwah/django/teams","hooks_url":"https://api.github.com/repos/jarshwah/django/hooks","issue_events_url":"https://api.github.com/repos/jarshwah/django/issues/events{/number}","events_url":"https://api.github.com/repos/jarshwah/django/events","assignees_url":"https://api.github.com/repos/jarshwah/django/assignees{/user}","branches_url":"https://api.github.com/repos/jarshwah/django/branches{/branch}","tags_url":"https://api.github.com/repos/jarshwah/django/tags","blobs_url":"https://api.github.com/repos/jarshwah/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarshwah/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarshwah/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarshwah/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarshwah/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jarshwah/django/languages","stargazers_url":"https://api.github.com/repos/jarshwah/django/stargazers","contributors_url":"https://api.github.com/repos/jarshwah/django/contributors","subscribers_url":"https://api.github.com/repos/jarshwah/django/subscribers","subscription_url":"https://api.github.com/repos/jarshwah/django/subscription","commits_url":"https://api.github.com/repos/jarshwah/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarshwah/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarshwah/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarshwah/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jarshwah/django/contents/{+path}","compare_url":"https://api.github.com/repos/jarshwah/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarshwah/django/merges","archive_url":"https://api.github.com/repos/jarshwah/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarshwah/django/downloads","issues_url":"https://api.github.com/repos/jarshwah/django/issues{/number}","pulls_url":"https://api.github.com/repos/jarshwah/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jarshwah/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jarshwah/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarshwah/django/labels{/name}","releases_url":"https://api.github.com/repos/jarshwah/django/releases{/id}","created_at":"2012-06-12T09:53:04Z","updated_at":"2014-06-27T11:10:20Z","pushed_at":"2015-01-17T23:23:41Z","git_url":"git://github.com/jarshwah/django.git","ssh_url":"git@github.com:jarshwah/django.git","clone_url":"https://github.com/jarshwah/django.git","svn_url":"https://github.com/jarshwah/django","homepage":"http://www.djangoproject.com/","size":113452,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"1f03d2d924ba90e83dc9d8c93438bf5ee2f17ccd","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3850"},"html":{"href":"https://github.com/django/django/pull/3850"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3850"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3850/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3850/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3850/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a4db987db3c79b1543bbbed829a46650f5ddeb56"}}},{"url":"https://api.github.com/repos/django/django/pulls/3849","id":26946999,"html_url":"https://github.com/django/django/pull/3849","diff_url":"https://github.com/django/django/pull/3849.diff","patch_url":"https://github.com/django/django/pull/3849.patch","issue_url":"https://api.github.com/repos/django/django/issues/3849","number":3849,"state":"closed","locked":false,"title":" Fixed #22583 -- Allowed RunPython and RunSQL to provide hints to the db router.","user":{"login":"loic","id":36160,"avatar_url":"https://avatars.githubusercontent.com/u/36160?v=3","gravatar_id":"","url":"https://api.github.com/users/loic","html_url":"https://github.com/loic","followers_url":"https://api.github.com/users/loic/followers","following_url":"https://api.github.com/users/loic/following{/other_user}","gists_url":"https://api.github.com/users/loic/gists{/gist_id}","starred_url":"https://api.github.com/users/loic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/loic/subscriptions","organizations_url":"https://api.github.com/users/loic/orgs","repos_url":"https://api.github.com/users/loic/repos","events_url":"https://api.github.com/users/loic/events{/privacy}","received_events_url":"https://api.github.com/users/loic/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-07T09:47:00Z","updated_at":"2015-01-09T18:22:29Z","closed_at":"2015-01-09T18:22:29Z","merged_at":"2015-01-09T18:22:29Z","merge_commit_sha":"1047caf4c07575d2f78cb0c06c14e7eb6ab9099f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3849/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3849/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3849/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/8f4877c89d0f28e289399fbb46357623a49e7eb0","head":{"label":"loic:migrations_hints","ref":"migrations_hints","sha":"8f4877c89d0f28e289399fbb46357623a49e7eb0","user":{"login":"loic","id":36160,"avatar_url":"https://avatars.githubusercontent.com/u/36160?v=3","gravatar_id":"","url":"https://api.github.com/users/loic","html_url":"https://github.com/loic","followers_url":"https://api.github.com/users/loic/followers","following_url":"https://api.github.com/users/loic/following{/other_user}","gists_url":"https://api.github.com/users/loic/gists{/gist_id}","starred_url":"https://api.github.com/users/loic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/loic/subscriptions","organizations_url":"https://api.github.com/users/loic/orgs","repos_url":"https://api.github.com/users/loic/repos","events_url":"https://api.github.com/users/loic/events{/privacy}","received_events_url":"https://api.github.com/users/loic/received_events","type":"User","site_admin":false},"repo":{"id":4394214,"name":"django","full_name":"loic/django","owner":{"login":"loic","id":36160,"avatar_url":"https://avatars.githubusercontent.com/u/36160?v=3","gravatar_id":"","url":"https://api.github.com/users/loic","html_url":"https://github.com/loic","followers_url":"https://api.github.com/users/loic/followers","following_url":"https://api.github.com/users/loic/following{/other_user}","gists_url":"https://api.github.com/users/loic/gists{/gist_id}","starred_url":"https://api.github.com/users/loic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/loic/subscriptions","organizations_url":"https://api.github.com/users/loic/orgs","repos_url":"https://api.github.com/users/loic/repos","events_url":"https://api.github.com/users/loic/events{/privacy}","received_events_url":"https://api.github.com/users/loic/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/loic/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/loic/django","forks_url":"https://api.github.com/repos/loic/django/forks","keys_url":"https://api.github.com/repos/loic/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/loic/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/loic/django/teams","hooks_url":"https://api.github.com/repos/loic/django/hooks","issue_events_url":"https://api.github.com/repos/loic/django/issues/events{/number}","events_url":"https://api.github.com/repos/loic/django/events","assignees_url":"https://api.github.com/repos/loic/django/assignees{/user}","branches_url":"https://api.github.com/repos/loic/django/branches{/branch}","tags_url":"https://api.github.com/repos/loic/django/tags","blobs_url":"https://api.github.com/repos/loic/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/loic/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/loic/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/loic/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/loic/django/statuses/{sha}","languages_url":"https://api.github.com/repos/loic/django/languages","stargazers_url":"https://api.github.com/repos/loic/django/stargazers","contributors_url":"https://api.github.com/repos/loic/django/contributors","subscribers_url":"https://api.github.com/repos/loic/django/subscribers","subscription_url":"https://api.github.com/repos/loic/django/subscription","commits_url":"https://api.github.com/repos/loic/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/loic/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/loic/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/loic/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/loic/django/contents/{+path}","compare_url":"https://api.github.com/repos/loic/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/loic/django/merges","archive_url":"https://api.github.com/repos/loic/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/loic/django/downloads","issues_url":"https://api.github.com/repos/loic/django/issues{/number}","pulls_url":"https://api.github.com/repos/loic/django/pulls{/number}","milestones_url":"https://api.github.com/repos/loic/django/milestones{/number}","notifications_url":"https://api.github.com/repos/loic/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/loic/django/labels{/name}","releases_url":"https://api.github.com/repos/loic/django/releases{/id}","created_at":"2012-05-21T14:04:30Z","updated_at":"2014-07-15T10:39:50Z","pushed_at":"2015-01-09T17:36:32Z","git_url":"git://github.com/loic/django.git","ssh_url":"git@github.com:loic/django.git","clone_url":"https://github.com/loic/django.git","svn_url":"https://github.com/loic/django","homepage":"http://www.djangoproject.com/","size":113416,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"665e0aa6ec80a48492033a3b2b4ffdfaae3c78eb","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3849"},"html":{"href":"https://github.com/django/django/pull/3849"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3849"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3849/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3849/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3849/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/8f4877c89d0f28e289399fbb46357623a49e7eb0"}}},{"url":"https://api.github.com/repos/django/django/pulls/3848","id":26929403,"html_url":"https://github.com/django/django/pull/3848","diff_url":"https://github.com/django/django/pull/3848.diff","patch_url":"https://github.com/django/django/pull/3848.patch","issue_url":"https://api.github.com/repos/django/django/issues/3848","number":3848,"state":"closed","locked":false,"title":"Fixed #12663 -- Formalized the Model._meta API for retrieving fields.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"Thanks to Russell Keith-Magee for mentoring this Google Summer of\r\nCode 2014 project and everyone else who helped with the patch!","created_at":"2015-01-07T00:26:38Z","updated_at":"2015-01-07T00:58:56Z","closed_at":"2015-01-07T00:58:13Z","merged_at":"2015-01-07T00:58:13Z","merge_commit_sha":"046acd4af258b39ca91ee6eb6483a2ed51e58dc8","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3848/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3848/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3848/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/fb48eb05816b1ac87d58696cdfe48be18c901f16","head":{"label":"timgraham:12663","ref":"12663","sha":"fb48eb05816b1ac87d58696cdfe48be18c901f16","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"749d23251bbd6564341405e6f8c1da129b8307e7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3848"},"html":{"href":"https://github.com/django/django/pull/3848"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3848"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3848/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3848/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3848/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/fb48eb05816b1ac87d58696cdfe48be18c901f16"}}},{"url":"https://api.github.com/repos/django/django/pulls/3847","id":26878973,"html_url":"https://github.com/django/django/pull/3847","diff_url":"https://github.com/django/django/pull/3847.diff","patch_url":"https://github.com/django/django/pull/3847.patch","issue_url":"https://api.github.com/repos/django/django/issues/3847","number":3847,"state":"closed","locked":false,"title":"Fixed #23712 -- Fixed KeyError with BaseForm._html_output()","user":{"login":"raully7","id":3197223,"avatar_url":"https://avatars.githubusercontent.com/u/3197223?v=3","gravatar_id":"","url":"https://api.github.com/users/raully7","html_url":"https://github.com/raully7","followers_url":"https://api.github.com/users/raully7/followers","following_url":"https://api.github.com/users/raully7/following{/other_user}","gists_url":"https://api.github.com/users/raully7/gists{/gist_id}","starred_url":"https://api.github.com/users/raully7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raully7/subscriptions","organizations_url":"https://api.github.com/users/raully7/orgs","repos_url":"https://api.github.com/users/raully7/repos","events_url":"https://api.github.com/users/raully7/events{/privacy}","received_events_url":"https://api.github.com/users/raully7/received_events","type":"User","site_admin":false},"body":"```field_name``` was not fully add and will trigger the bug when using a hidden field with a unmatch ```row_ender```.","created_at":"2015-01-06T09:51:16Z","updated_at":"2015-01-16T01:20:23Z","closed_at":"2015-01-16T01:20:23Z","merged_at":null,"merge_commit_sha":"e0a0fa0cf4e1c47b5349707d517ff33f475f6a34","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3847/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3847/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3847/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/9cadafa0a31aa3f844e3cf30b620275fb6966735","head":{"label":"raully7:ticket_23712","ref":"ticket_23712","sha":"9cadafa0a31aa3f844e3cf30b620275fb6966735","user":{"login":"raully7","id":3197223,"avatar_url":"https://avatars.githubusercontent.com/u/3197223?v=3","gravatar_id":"","url":"https://api.github.com/users/raully7","html_url":"https://github.com/raully7","followers_url":"https://api.github.com/users/raully7/followers","following_url":"https://api.github.com/users/raully7/following{/other_user}","gists_url":"https://api.github.com/users/raully7/gists{/gist_id}","starred_url":"https://api.github.com/users/raully7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raully7/subscriptions","organizations_url":"https://api.github.com/users/raully7/orgs","repos_url":"https://api.github.com/users/raully7/repos","events_url":"https://api.github.com/users/raully7/events{/privacy}","received_events_url":"https://api.github.com/users/raully7/received_events","type":"User","site_admin":false},"repo":{"id":28844154,"name":"django","full_name":"raully7/django","owner":{"login":"raully7","id":3197223,"avatar_url":"https://avatars.githubusercontent.com/u/3197223?v=3","gravatar_id":"","url":"https://api.github.com/users/raully7","html_url":"https://github.com/raully7","followers_url":"https://api.github.com/users/raully7/followers","following_url":"https://api.github.com/users/raully7/following{/other_user}","gists_url":"https://api.github.com/users/raully7/gists{/gist_id}","starred_url":"https://api.github.com/users/raully7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raully7/subscriptions","organizations_url":"https://api.github.com/users/raully7/orgs","repos_url":"https://api.github.com/users/raully7/repos","events_url":"https://api.github.com/users/raully7/events{/privacy}","received_events_url":"https://api.github.com/users/raully7/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/raully7/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/raully7/django","forks_url":"https://api.github.com/repos/raully7/django/forks","keys_url":"https://api.github.com/repos/raully7/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/raully7/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/raully7/django/teams","hooks_url":"https://api.github.com/repos/raully7/django/hooks","issue_events_url":"https://api.github.com/repos/raully7/django/issues/events{/number}","events_url":"https://api.github.com/repos/raully7/django/events","assignees_url":"https://api.github.com/repos/raully7/django/assignees{/user}","branches_url":"https://api.github.com/repos/raully7/django/branches{/branch}","tags_url":"https://api.github.com/repos/raully7/django/tags","blobs_url":"https://api.github.com/repos/raully7/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/raully7/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/raully7/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/raully7/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/raully7/django/statuses/{sha}","languages_url":"https://api.github.com/repos/raully7/django/languages","stargazers_url":"https://api.github.com/repos/raully7/django/stargazers","contributors_url":"https://api.github.com/repos/raully7/django/contributors","subscribers_url":"https://api.github.com/repos/raully7/django/subscribers","subscription_url":"https://api.github.com/repos/raully7/django/subscription","commits_url":"https://api.github.com/repos/raully7/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/raully7/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/raully7/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/raully7/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/raully7/django/contents/{+path}","compare_url":"https://api.github.com/repos/raully7/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/raully7/django/merges","archive_url":"https://api.github.com/repos/raully7/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/raully7/django/downloads","issues_url":"https://api.github.com/repos/raully7/django/issues{/number}","pulls_url":"https://api.github.com/repos/raully7/django/pulls{/number}","milestones_url":"https://api.github.com/repos/raully7/django/milestones{/number}","notifications_url":"https://api.github.com/repos/raully7/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/raully7/django/labels{/name}","releases_url":"https://api.github.com/repos/raully7/django/releases{/id}","created_at":"2015-01-06T03:05:59Z","updated_at":"2015-01-06T03:06:14Z","pushed_at":"2015-01-11T23:37:55Z","git_url":"git://github.com/raully7/django.git","ssh_url":"git@github.com:raully7/django.git","clone_url":"https://github.com/raully7/django.git","svn_url":"https://github.com/raully7/django","homepage":"https://www.djangoproject.com/","size":117094,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"68a439a18da17a65555832eff0a7c2090655b583","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3847"},"html":{"href":"https://github.com/django/django/pull/3847"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3847"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3847/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3847/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3847/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/9cadafa0a31aa3f844e3cf30b620275fb6966735"}}},{"url":"https://api.github.com/repos/django/django/pulls/3846","id":26849819,"html_url":"https://github.com/django/django/pull/3846","diff_url":"https://github.com/django/django/pull/3846.diff","patch_url":"https://github.com/django/django/pull/3846.patch","issue_url":"https://api.github.com/repos/django/django/issues/3846","number":3846,"state":"closed","locked":false,"title":"Fixed #24022 -- Deprecated the ssi tag.","user":{"login":"prestontimmons","id":207051,"avatar_url":"https://avatars.githubusercontent.com/u/207051?v=3","gravatar_id":"","url":"https://api.github.com/users/prestontimmons","html_url":"https://github.com/prestontimmons","followers_url":"https://api.github.com/users/prestontimmons/followers","following_url":"https://api.github.com/users/prestontimmons/following{/other_user}","gists_url":"https://api.github.com/users/prestontimmons/gists{/gist_id}","starred_url":"https://api.github.com/users/prestontimmons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prestontimmons/subscriptions","organizations_url":"https://api.github.com/users/prestontimmons/orgs","repos_url":"https://api.github.com/users/prestontimmons/repos","events_url":"https://api.github.com/users/prestontimmons/events{/privacy}","received_events_url":"https://api.github.com/users/prestontimmons/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-05T20:48:41Z","updated_at":"2015-01-06T00:35:49Z","closed_at":"2015-01-06T00:35:49Z","merged_at":null,"merge_commit_sha":"c76da152dff9cb598bb0a28865872c15c0e7759a","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3846/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3846/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3846/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d09694cea34ac46bd92c3bfd4b76fba47aec6d5b","head":{"label":"prestontimmons:ticket-24022","ref":"ticket-24022","sha":"d09694cea34ac46bd92c3bfd4b76fba47aec6d5b","user":{"login":"prestontimmons","id":207051,"avatar_url":"https://avatars.githubusercontent.com/u/207051?v=3","gravatar_id":"","url":"https://api.github.com/users/prestontimmons","html_url":"https://github.com/prestontimmons","followers_url":"https://api.github.com/users/prestontimmons/followers","following_url":"https://api.github.com/users/prestontimmons/following{/other_user}","gists_url":"https://api.github.com/users/prestontimmons/gists{/gist_id}","starred_url":"https://api.github.com/users/prestontimmons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prestontimmons/subscriptions","organizations_url":"https://api.github.com/users/prestontimmons/orgs","repos_url":"https://api.github.com/users/prestontimmons/repos","events_url":"https://api.github.com/users/prestontimmons/events{/privacy}","received_events_url":"https://api.github.com/users/prestontimmons/received_events","type":"User","site_admin":false},"repo":{"id":8862914,"name":"django","full_name":"prestontimmons/django","owner":{"login":"prestontimmons","id":207051,"avatar_url":"https://avatars.githubusercontent.com/u/207051?v=3","gravatar_id":"","url":"https://api.github.com/users/prestontimmons","html_url":"https://github.com/prestontimmons","followers_url":"https://api.github.com/users/prestontimmons/followers","following_url":"https://api.github.com/users/prestontimmons/following{/other_user}","gists_url":"https://api.github.com/users/prestontimmons/gists{/gist_id}","starred_url":"https://api.github.com/users/prestontimmons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prestontimmons/subscriptions","organizations_url":"https://api.github.com/users/prestontimmons/orgs","repos_url":"https://api.github.com/users/prestontimmons/repos","events_url":"https://api.github.com/users/prestontimmons/events{/privacy}","received_events_url":"https://api.github.com/users/prestontimmons/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/prestontimmons/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/prestontimmons/django","forks_url":"https://api.github.com/repos/prestontimmons/django/forks","keys_url":"https://api.github.com/repos/prestontimmons/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/prestontimmons/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/prestontimmons/django/teams","hooks_url":"https://api.github.com/repos/prestontimmons/django/hooks","issue_events_url":"https://api.github.com/repos/prestontimmons/django/issues/events{/number}","events_url":"https://api.github.com/repos/prestontimmons/django/events","assignees_url":"https://api.github.com/repos/prestontimmons/django/assignees{/user}","branches_url":"https://api.github.com/repos/prestontimmons/django/branches{/branch}","tags_url":"https://api.github.com/repos/prestontimmons/django/tags","blobs_url":"https://api.github.com/repos/prestontimmons/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/prestontimmons/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/prestontimmons/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/prestontimmons/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/prestontimmons/django/statuses/{sha}","languages_url":"https://api.github.com/repos/prestontimmons/django/languages","stargazers_url":"https://api.github.com/repos/prestontimmons/django/stargazers","contributors_url":"https://api.github.com/repos/prestontimmons/django/contributors","subscribers_url":"https://api.github.com/repos/prestontimmons/django/subscribers","subscription_url":"https://api.github.com/repos/prestontimmons/django/subscription","commits_url":"https://api.github.com/repos/prestontimmons/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/prestontimmons/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/prestontimmons/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/prestontimmons/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/prestontimmons/django/contents/{+path}","compare_url":"https://api.github.com/repos/prestontimmons/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/prestontimmons/django/merges","archive_url":"https://api.github.com/repos/prestontimmons/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/prestontimmons/django/downloads","issues_url":"https://api.github.com/repos/prestontimmons/django/issues{/number}","pulls_url":"https://api.github.com/repos/prestontimmons/django/pulls{/number}","milestones_url":"https://api.github.com/repos/prestontimmons/django/milestones{/number}","notifications_url":"https://api.github.com/repos/prestontimmons/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/prestontimmons/django/labels{/name}","releases_url":"https://api.github.com/repos/prestontimmons/django/releases{/id}","created_at":"2013-03-18T20:02:22Z","updated_at":"2015-01-16T23:17:21Z","pushed_at":"2015-01-16T23:31:08Z","git_url":"git://github.com/prestontimmons/django.git","ssh_url":"git@github.com:prestontimmons/django.git","clone_url":"https://github.com/prestontimmons/django.git","svn_url":"https://github.com/prestontimmons/django","homepage":"http://www.djangoproject.com/","size":108842,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"a9aec1154e5b65fcaf608801905a1bbafcfbfbf7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3846"},"html":{"href":"https://github.com/django/django/pull/3846"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3846"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3846/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3846/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3846/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d09694cea34ac46bd92c3bfd4b76fba47aec6d5b"}}},{"url":"https://api.github.com/repos/django/django/pulls/3845","id":26849101,"html_url":"https://github.com/django/django/pull/3845","diff_url":"https://github.com/django/django/pull/3845.diff","patch_url":"https://github.com/django/django/pull/3845.patch","issue_url":"https://api.github.com/repos/django/django/issues/3845","number":3845,"state":"closed","locked":false,"title":"Multiple template engines docs","user":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-05T20:36:46Z","updated_at":"2015-01-10T19:20:25Z","closed_at":"2015-01-10T19:20:21Z","merged_at":"2015-01-10T19:20:21Z","merge_commit_sha":"08bb33ab239b237055f9764fbced0a4d1a1f17c7","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3845/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3845/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3845/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/f01306a6d81755bf93db6c8cab3529819e60e1fe","head":{"label":"aaugustin:multiple-template-engines-docs","ref":"multiple-template-engines-docs","sha":"f01306a6d81755bf93db6c8cab3529819e60e1fe","user":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"repo":{"id":5128238,"name":"django","full_name":"aaugustin/django","owner":{"login":"aaugustin","id":788910,"avatar_url":"https://avatars.githubusercontent.com/u/788910?v=3","gravatar_id":"","url":"https://api.github.com/users/aaugustin","html_url":"https://github.com/aaugustin","followers_url":"https://api.github.com/users/aaugustin/followers","following_url":"https://api.github.com/users/aaugustin/following{/other_user}","gists_url":"https://api.github.com/users/aaugustin/gists{/gist_id}","starred_url":"https://api.github.com/users/aaugustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaugustin/subscriptions","organizations_url":"https://api.github.com/users/aaugustin/orgs","repos_url":"https://api.github.com/users/aaugustin/repos","events_url":"https://api.github.com/users/aaugustin/events{/privacy}","received_events_url":"https://api.github.com/users/aaugustin/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/aaugustin/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/aaugustin/django","forks_url":"https://api.github.com/repos/aaugustin/django/forks","keys_url":"https://api.github.com/repos/aaugustin/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aaugustin/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aaugustin/django/teams","hooks_url":"https://api.github.com/repos/aaugustin/django/hooks","issue_events_url":"https://api.github.com/repos/aaugustin/django/issues/events{/number}","events_url":"https://api.github.com/repos/aaugustin/django/events","assignees_url":"https://api.github.com/repos/aaugustin/django/assignees{/user}","branches_url":"https://api.github.com/repos/aaugustin/django/branches{/branch}","tags_url":"https://api.github.com/repos/aaugustin/django/tags","blobs_url":"https://api.github.com/repos/aaugustin/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aaugustin/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aaugustin/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/aaugustin/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aaugustin/django/statuses/{sha}","languages_url":"https://api.github.com/repos/aaugustin/django/languages","stargazers_url":"https://api.github.com/repos/aaugustin/django/stargazers","contributors_url":"https://api.github.com/repos/aaugustin/django/contributors","subscribers_url":"https://api.github.com/repos/aaugustin/django/subscribers","subscription_url":"https://api.github.com/repos/aaugustin/django/subscription","commits_url":"https://api.github.com/repos/aaugustin/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/aaugustin/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/aaugustin/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/aaugustin/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/aaugustin/django/contents/{+path}","compare_url":"https://api.github.com/repos/aaugustin/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aaugustin/django/merges","archive_url":"https://api.github.com/repos/aaugustin/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aaugustin/django/downloads","issues_url":"https://api.github.com/repos/aaugustin/django/issues{/number}","pulls_url":"https://api.github.com/repos/aaugustin/django/pulls{/number}","milestones_url":"https://api.github.com/repos/aaugustin/django/milestones{/number}","notifications_url":"https://api.github.com/repos/aaugustin/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aaugustin/django/labels{/name}","releases_url":"https://api.github.com/repos/aaugustin/django/releases{/id}","created_at":"2012-07-20T20:52:27Z","updated_at":"2015-01-10T20:12:42Z","pushed_at":"2015-01-12T20:31:21Z","git_url":"git://github.com/aaugustin/django.git","ssh_url":"git@github.com:aaugustin/django.git","clone_url":"https://github.com/aaugustin/django.git","svn_url":"https://github.com/aaugustin/django","homepage":"http://www.djangoproject.com/","size":107483,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"b86107ced15f9093f49469b76860cc98e7a7a671","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3845"},"html":{"href":"https://github.com/django/django/pull/3845"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3845"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3845/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3845/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3845/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/f01306a6d81755bf93db6c8cab3529819e60e1fe"}}},{"url":"https://api.github.com/repos/django/django/pulls/3844","id":26844217,"html_url":"https://github.com/django/django/pull/3844","diff_url":"https://github.com/django/django/pull/3844.diff","patch_url":"https://github.com/django/django/pull/3844.patch","issue_url":"https://api.github.com/repos/django/django/issues/3844","number":3844,"state":"closed","locked":false,"title":"Fixed test failures introduced in refs #23861.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-05T19:18:15Z","updated_at":"2015-01-05T19:36:41Z","closed_at":"2015-01-05T19:36:06Z","merged_at":"2015-01-05T19:36:06Z","merge_commit_sha":"6c78f06d555d3f36842e2feaddc69efb7b8a5082","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3844/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3844/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3844/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/789baf9c3a432297ff775aee7f174494e4fd9962","head":{"label":"timgraham:fix-23861-tests","ref":"fix-23861-tests","sha":"789baf9c3a432297ff775aee7f174494e4fd9962","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"ce17b045bf5629aac66f872c3f548205906e04db","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3844"},"html":{"href":"https://github.com/django/django/pull/3844"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3844"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3844/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3844/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3844/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/789baf9c3a432297ff775aee7f174494e4fd9962"}}},{"url":"https://api.github.com/repos/django/django/pulls/3843","id":26837588,"html_url":"https://github.com/django/django/pull/3843","diff_url":"https://github.com/django/django/pull/3843.diff","patch_url":"https://github.com/django/django/pull/3843.patch","issue_url":"https://api.github.com/repos/django/django/issues/3843","number":3843,"state":"closed","locked":false,"title":"Fixed #23815 -- Prevented UnicodeDecodeError in CSRF middleware","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Thanks codeitloadit for the report and living180 for investigations.","created_at":"2015-01-05T17:26:25Z","updated_at":"2015-01-06T07:44:19Z","closed_at":"2015-01-06T07:44:17Z","merged_at":"2015-01-06T07:44:17Z","merge_commit_sha":"fa234dc387ec33adf08c4cb72803e67d2ac46b62","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3843/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3843/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3843/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/27dd7e727153cbf12632a2161217340123687c44","head":{"label":"claudep:23815","ref":"23815","sha":"27dd7e727153cbf12632a2161217340123687c44","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"de9ebdd39cb4f4b65475b43e0e32772d5a315654","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3843"},"html":{"href":"https://github.com/django/django/pull/3843"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3843"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3843/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3843/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3843/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/27dd7e727153cbf12632a2161217340123687c44"}}},{"url":"https://api.github.com/repos/django/django/pulls/3842","id":26836474,"html_url":"https://github.com/django/django/pull/3842","diff_url":"https://github.com/django/django/pull/3842.diff","patch_url":"https://github.com/django/django/pull/3842.patch","issue_url":"https://api.github.com/repos/django/django/issues/3842","number":3842,"state":"closed","locked":false,"title":"Close files in FileResponse refs #24072","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-05T17:08:01Z","updated_at":"2015-01-05T19:56:59Z","closed_at":"2015-01-05T19:56:59Z","merged_at":null,"merge_commit_sha":"26fd9b69abc5bd7358a4244f166cb3e2246966ad","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3842/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3842/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3842/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/add7d19d21498a111e31a73c4a8ca7b276483f8e","head":{"label":"collinanderson:3842","ref":"3842","sha":"add7d19d21498a111e31a73c4a8ca7b276483f8e","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"789baf9c3a432297ff775aee7f174494e4fd9962","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3842"},"html":{"href":"https://github.com/django/django/pull/3842"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3842"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3842/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3842/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3842/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/add7d19d21498a111e31a73c4a8ca7b276483f8e"}}},{"url":"https://api.github.com/repos/django/django/pulls/3841","id":26823859,"html_url":"https://github.com/django/django/pull/3841","diff_url":"https://github.com/django/django/pull/3841.diff","patch_url":"https://github.com/django/django/pull/3841.patch","issue_url":"https://api.github.com/repos/django/django/issues/3841","number":3841,"state":"closed","locked":false,"title":"Renamed internally used flag for detecting managers built from QuerySets with as_manager()","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"This rename is intended to prevent confusion with the variable naming which @loic pointed out to me.","created_at":"2015-01-05T13:40:42Z","updated_at":"2015-01-05T16:15:59Z","closed_at":"2015-01-05T15:34:23Z","merged_at":null,"merge_commit_sha":"d2aec762aa5b217928cbcdf2f90cedcc0a73debc","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3841/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3841/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3841/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/1b859f8bbc5ea74adf3d1113bbd78b6a767b6f9a","head":{"label":"MarkusH:rename-built-as-manager","ref":"rename-built-as-manager","sha":"1b859f8bbc5ea74adf3d1113bbd78b6a767b6f9a","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"572ad9a92e08797f12e547477efcce7893159cfb","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3841"},"html":{"href":"https://github.com/django/django/pull/3841"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3841"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3841/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3841/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3841/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/1b859f8bbc5ea74adf3d1113bbd78b6a767b6f9a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3840","id":26816098,"html_url":"https://github.com/django/django/pull/3840","diff_url":"https://github.com/django/django/pull/3840.diff","patch_url":"https://github.com/django/django/pull/3840.patch","issue_url":"https://api.github.com/repos/django/django/issues/3840","number":3840,"state":"closed","locked":false,"title":"Fixed #24078 -- Removed empty strings from GenericIPAddressField","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"body":"The empty string as a value is not supported for GenericIPAddressField on Postgres due to the inet type. Oracle was also coercing nulls to the empty string when retrieving data which was different from the other backends.","created_at":"2015-01-05T10:34:27Z","updated_at":"2015-01-07T13:12:30Z","closed_at":"2015-01-07T13:12:30Z","merged_at":null,"merge_commit_sha":"9b8d7de6b879baec55e4a19bae832a77f6f5e8a2","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3840/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3840/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3840/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/9d92a74f547f1760709524d51be205e974335344","head":{"label":"jarshwah:fix-ipaddress-field","ref":"fix-ipaddress-field","sha":"9d92a74f547f1760709524d51be205e974335344","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"repo":{"id":4635741,"name":"django","full_name":"jarshwah/django","owner":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarshwah/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/jarshwah/django","forks_url":"https://api.github.com/repos/jarshwah/django/forks","keys_url":"https://api.github.com/repos/jarshwah/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarshwah/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarshwah/django/teams","hooks_url":"https://api.github.com/repos/jarshwah/django/hooks","issue_events_url":"https://api.github.com/repos/jarshwah/django/issues/events{/number}","events_url":"https://api.github.com/repos/jarshwah/django/events","assignees_url":"https://api.github.com/repos/jarshwah/django/assignees{/user}","branches_url":"https://api.github.com/repos/jarshwah/django/branches{/branch}","tags_url":"https://api.github.com/repos/jarshwah/django/tags","blobs_url":"https://api.github.com/repos/jarshwah/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarshwah/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarshwah/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarshwah/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarshwah/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jarshwah/django/languages","stargazers_url":"https://api.github.com/repos/jarshwah/django/stargazers","contributors_url":"https://api.github.com/repos/jarshwah/django/contributors","subscribers_url":"https://api.github.com/repos/jarshwah/django/subscribers","subscription_url":"https://api.github.com/repos/jarshwah/django/subscription","commits_url":"https://api.github.com/repos/jarshwah/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarshwah/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarshwah/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarshwah/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jarshwah/django/contents/{+path}","compare_url":"https://api.github.com/repos/jarshwah/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarshwah/django/merges","archive_url":"https://api.github.com/repos/jarshwah/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarshwah/django/downloads","issues_url":"https://api.github.com/repos/jarshwah/django/issues{/number}","pulls_url":"https://api.github.com/repos/jarshwah/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jarshwah/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jarshwah/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarshwah/django/labels{/name}","releases_url":"https://api.github.com/repos/jarshwah/django/releases{/id}","created_at":"2012-06-12T09:53:04Z","updated_at":"2014-06-27T11:10:20Z","pushed_at":"2015-01-17T23:23:41Z","git_url":"git://github.com/jarshwah/django.git","ssh_url":"git@github.com:jarshwah/django.git","clone_url":"https://github.com/jarshwah/django.git","svn_url":"https://github.com/jarshwah/django","homepage":"http://www.djangoproject.com/","size":113452,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"9b057b51ce01087afbeeb683098d4d2f1088fd7b","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3840"},"html":{"href":"https://github.com/django/django/pull/3840"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3840"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3840/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3840/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3840/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/9d92a74f547f1760709524d51be205e974335344"}}},{"url":"https://api.github.com/repos/django/django/pulls/3839","id":26786350,"html_url":"https://github.com/django/django/pull/3839","diff_url":"https://github.com/django/django/pull/3839.diff","patch_url":"https://github.com/django/django/pull/3839.patch","issue_url":"https://api.github.com/repos/django/django/issues/3839","number":3839,"state":"closed","locked":false,"title":"Updated release instructions with latest process.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-03T19:56:38Z","updated_at":"2015-01-06T18:54:21Z","closed_at":"2015-01-06T18:53:20Z","merged_at":"2015-01-06T18:53:20Z","merge_commit_sha":"9cf4b10b75cb0f84f47ce6d48cb36856bcd094db","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3839/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3839/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3839/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/6288fccfda91593438f3b2f03998b7d7b6b0fcc0","head":{"label":"timgraham:howto-release","ref":"howto-release","sha":"6288fccfda91593438f3b2f03998b7d7b6b0fcc0","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"9f328405f6691784fbd59530e7e01bd6d74e35f1","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3839"},"html":{"href":"https://github.com/django/django/pull/3839"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3839"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3839/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3839/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3839/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/6288fccfda91593438f3b2f03998b7d7b6b0fcc0"}}},{"url":"https://api.github.com/repos/django/django/pulls/3838","id":26786094,"html_url":"https://github.com/django/django/pull/3838","diff_url":"https://github.com/django/django/pull/3838.diff","patch_url":"https://github.com/django/django/pull/3838.patch","issue_url":"https://api.github.com/repos/django/django/issues/3838","number":3838,"state":"closed","locked":false,"title":"Fixed #24073 -- Deactivated translations when leave_locale_alone is False","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-03T19:29:37Z","updated_at":"2015-01-07T19:13:00Z","closed_at":"2015-01-07T19:12:18Z","merged_at":"2015-01-07T19:12:18Z","merge_commit_sha":"55448763285287920e18c191ac784b4ac98b3f4f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3838/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3838/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3838/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/f7c287fca9c9e6370cc88d1457d3ed9466703687","head":{"label":"claudep:24073","ref":"24073","sha":"f7c287fca9c9e6370cc88d1457d3ed9466703687","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"2c0f64b5f6fe25ca35feb30db7e3112a4cb916ed","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3838"},"html":{"href":"https://github.com/django/django/pull/3838"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3838"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3838/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3838/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3838/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/f7c287fca9c9e6370cc88d1457d3ed9466703687"}}},{"url":"https://api.github.com/repos/django/django/pulls/3837","id":26785608,"html_url":"https://github.com/django/django/pull/3837","diff_url":"https://github.com/django/django/pull/3837.diff","patch_url":"https://github.com/django/django/pull/3837.patch","issue_url":"https://api.github.com/repos/django/django/issues/3837","number":3837,"state":"closed","locked":false,"title":"[1.7.x] Increased the default PBKDF2 iterations.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-03T18:38:18Z","updated_at":"2015-01-03T19:08:57Z","closed_at":"2015-01-03T19:08:42Z","merged_at":"2015-01-03T19:08:42Z","merge_commit_sha":"9911e65b238d2cd067d9ce992e1eea81e5e8f16f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3837/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3837/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3837/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/4aed731154b12e2948ee2b6a8baa5083840a343b","head":{"label":"timgraham:iterations-increase","ref":"iterations-increase","sha":"4aed731154b12e2948ee2b6a8baa5083840a343b","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:stable/1.7.x","ref":"stable/1.7.x","sha":"0a06ae9ef383ba00d7c30453e5d7d897506de842","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3837"},"html":{"href":"https://github.com/django/django/pull/3837"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3837"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3837/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3837/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3837/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/4aed731154b12e2948ee2b6a8baa5083840a343b"}}},{"url":"https://api.github.com/repos/django/django/pulls/3836","id":26784699,"html_url":"https://github.com/django/django/pull/3836","diff_url":"https://github.com/django/django/pull/3836.diff","patch_url":"https://github.com/django/django/pull/3836.patch","issue_url":"https://api.github.com/repos/django/django/issues/3836","number":3836,"state":"closed","locked":false,"title":"Fixed #24072 -- Added FileResponse","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/24072","created_at":"2015-01-03T17:08:23Z","updated_at":"2015-01-05T15:52:20Z","closed_at":"2015-01-05T15:52:20Z","merged_at":null,"merge_commit_sha":"947c203117765251929c2a5b5e909668fd06e21f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3836/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3836/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3836/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/fa4f1e212c707418a34a52c6f81e5c07af76d6cf","head":{"label":"collinanderson:24072","ref":"24072","sha":"fa4f1e212c707418a34a52c6f81e5c07af76d6cf","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"05f702b94ca4ad77236a1e299270e8014def02e6","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3836"},"html":{"href":"https://github.com/django/django/pull/3836"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3836"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3836/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3836/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3836/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/fa4f1e212c707418a34a52c6f81e5c07af76d6cf"}}},{"url":"https://api.github.com/repos/django/django/pulls/3835","id":26781328,"html_url":"https://github.com/django/django/pull/3835","diff_url":"https://github.com/django/django/pull/3835.diff","patch_url":"https://github.com/django/django/pull/3835.patch","issue_url":"https://api.github.com/repos/django/django/issues/3835","number":3835,"state":"closed","locked":false,"title":"Fixed #24070 -- Added topics beside the Tutorials parts for clarification","user":{"login":"iambibhas","id":357253,"avatar_url":"https://avatars.githubusercontent.com/u/357253?v=3","gravatar_id":"","url":"https://api.github.com/users/iambibhas","html_url":"https://github.com/iambibhas","followers_url":"https://api.github.com/users/iambibhas/followers","following_url":"https://api.github.com/users/iambibhas/following{/other_user}","gists_url":"https://api.github.com/users/iambibhas/gists{/gist_id}","starred_url":"https://api.github.com/users/iambibhas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iambibhas/subscriptions","organizations_url":"https://api.github.com/users/iambibhas/orgs","repos_url":"https://api.github.com/users/iambibhas/repos","events_url":"https://api.github.com/users/iambibhas/events{/privacy}","received_events_url":"https://api.github.com/users/iambibhas/received_events","type":"User","site_admin":false},"body":"Updated the documentation front page to mention the topic names beside the tutorial parts.\r\n\r\nThanks timgraham for the patch and claudep for the review.","created_at":"2015-01-03T09:52:13Z","updated_at":"2015-01-03T13:49:07Z","closed_at":"2015-01-03T13:49:07Z","merged_at":null,"merge_commit_sha":"7d434d5947fd07bcba871879d219cc7fa8943b1c","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3835/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3835/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3835/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/d35dabdd43d4ed9c1561b9497748a76dcf9e6156","head":{"label":"iambibhas:ticket_24070","ref":"ticket_24070","sha":"d35dabdd43d4ed9c1561b9497748a76dcf9e6156","user":{"login":"iambibhas","id":357253,"avatar_url":"https://avatars.githubusercontent.com/u/357253?v=3","gravatar_id":"","url":"https://api.github.com/users/iambibhas","html_url":"https://github.com/iambibhas","followers_url":"https://api.github.com/users/iambibhas/followers","following_url":"https://api.github.com/users/iambibhas/following{/other_user}","gists_url":"https://api.github.com/users/iambibhas/gists{/gist_id}","starred_url":"https://api.github.com/users/iambibhas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iambibhas/subscriptions","organizations_url":"https://api.github.com/users/iambibhas/orgs","repos_url":"https://api.github.com/users/iambibhas/repos","events_url":"https://api.github.com/users/iambibhas/events{/privacy}","received_events_url":"https://api.github.com/users/iambibhas/received_events","type":"User","site_admin":false},"repo":{"id":26653478,"name":"django","full_name":"iambibhas/django","owner":{"login":"iambibhas","id":357253,"avatar_url":"https://avatars.githubusercontent.com/u/357253?v=3","gravatar_id":"","url":"https://api.github.com/users/iambibhas","html_url":"https://github.com/iambibhas","followers_url":"https://api.github.com/users/iambibhas/followers","following_url":"https://api.github.com/users/iambibhas/following{/other_user}","gists_url":"https://api.github.com/users/iambibhas/gists{/gist_id}","starred_url":"https://api.github.com/users/iambibhas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iambibhas/subscriptions","organizations_url":"https://api.github.com/users/iambibhas/orgs","repos_url":"https://api.github.com/users/iambibhas/repos","events_url":"https://api.github.com/users/iambibhas/events{/privacy}","received_events_url":"https://api.github.com/users/iambibhas/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/iambibhas/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/iambibhas/django","forks_url":"https://api.github.com/repos/iambibhas/django/forks","keys_url":"https://api.github.com/repos/iambibhas/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/iambibhas/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/iambibhas/django/teams","hooks_url":"https://api.github.com/repos/iambibhas/django/hooks","issue_events_url":"https://api.github.com/repos/iambibhas/django/issues/events{/number}","events_url":"https://api.github.com/repos/iambibhas/django/events","assignees_url":"https://api.github.com/repos/iambibhas/django/assignees{/user}","branches_url":"https://api.github.com/repos/iambibhas/django/branches{/branch}","tags_url":"https://api.github.com/repos/iambibhas/django/tags","blobs_url":"https://api.github.com/repos/iambibhas/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/iambibhas/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/iambibhas/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/iambibhas/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/iambibhas/django/statuses/{sha}","languages_url":"https://api.github.com/repos/iambibhas/django/languages","stargazers_url":"https://api.github.com/repos/iambibhas/django/stargazers","contributors_url":"https://api.github.com/repos/iambibhas/django/contributors","subscribers_url":"https://api.github.com/repos/iambibhas/django/subscribers","subscription_url":"https://api.github.com/repos/iambibhas/django/subscription","commits_url":"https://api.github.com/repos/iambibhas/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/iambibhas/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/iambibhas/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/iambibhas/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/iambibhas/django/contents/{+path}","compare_url":"https://api.github.com/repos/iambibhas/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/iambibhas/django/merges","archive_url":"https://api.github.com/repos/iambibhas/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/iambibhas/django/downloads","issues_url":"https://api.github.com/repos/iambibhas/django/issues{/number}","pulls_url":"https://api.github.com/repos/iambibhas/django/pulls{/number}","milestones_url":"https://api.github.com/repos/iambibhas/django/milestones{/number}","notifications_url":"https://api.github.com/repos/iambibhas/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/iambibhas/django/labels{/name}","releases_url":"https://api.github.com/repos/iambibhas/django/releases{/id}","created_at":"2014-11-14T19:15:16Z","updated_at":"2015-01-03T09:43:56Z","pushed_at":"2015-01-03T09:45:18Z","git_url":"git://github.com/iambibhas/django.git","ssh_url":"git@github.com:iambibhas/django.git","clone_url":"https://github.com/iambibhas/django.git","svn_url":"https://github.com/iambibhas/django","homepage":"https://www.djangoproject.com/","size":116112,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"15cd71ed24945ff7be5716580603fd65c0d45ef7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3835"},"html":{"href":"https://github.com/django/django/pull/3835"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3835"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3835/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3835/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3835/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/d35dabdd43d4ed9c1561b9497748a76dcf9e6156"}}},{"url":"https://api.github.com/repos/django/django/pulls/3834","id":26781111,"html_url":"https://github.com/django/django/pull/3834","diff_url":"https://github.com/django/django/pull/3834.diff","patch_url":"https://github.com/django/django/pull/3834.patch","issue_url":"https://api.github.com/repos/django/django/issues/3834","number":3834,"state":"closed","locked":false,"title":"Removed extraneous super call in LiveServerTestCase","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Refs #21281. Thanks Tim Graham and Thomas Chaumeny for investigations.","created_at":"2015-01-03T09:16:21Z","updated_at":"2015-01-03T13:33:01Z","closed_at":"2015-01-03T13:26:39Z","merged_at":"2015-01-03T13:26:39Z","merge_commit_sha":"784d93634c1811120a6e92d4489fcef30eddb88e","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3834/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3834/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3834/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/3bac904607f1999136b97249d9aa220f1db94258","head":{"label":"claudep:21281-2","ref":"21281-2","sha":"3bac904607f1999136b97249d9aa220f1db94258","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"15cd71ed24945ff7be5716580603fd65c0d45ef7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3834"},"html":{"href":"https://github.com/django/django/pull/3834"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3834"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3834/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3834/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3834/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/3bac904607f1999136b97249d9aa220f1db94258"}}},{"url":"https://api.github.com/repos/django/django/pulls/3833","id":26778104,"html_url":"https://github.com/django/django/pull/3833","diff_url":"https://github.com/django/django/pull/3833.diff","patch_url":"https://github.com/django/django/pull/3833.patch","issue_url":"https://api.github.com/repos/django/django/issues/3833","number":3833,"state":"closed","locked":false,"title":"Removed formtools entries from MANIFEST.in.","user":{"login":"berkerpeksag","id":26338,"avatar_url":"https://avatars.githubusercontent.com/u/26338?v=3","gravatar_id":"","url":"https://api.github.com/users/berkerpeksag","html_url":"https://github.com/berkerpeksag","followers_url":"https://api.github.com/users/berkerpeksag/followers","following_url":"https://api.github.com/users/berkerpeksag/following{/other_user}","gists_url":"https://api.github.com/users/berkerpeksag/gists{/gist_id}","starred_url":"https://api.github.com/users/berkerpeksag/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/berkerpeksag/subscriptions","organizations_url":"https://api.github.com/users/berkerpeksag/orgs","repos_url":"https://api.github.com/users/berkerpeksag/repos","events_url":"https://api.github.com/users/berkerpeksag/events{/privacy}","received_events_url":"https://api.github.com/users/berkerpeksag/received_events","type":"User","site_admin":false},"body":"```\r\nwarning: no files found matching '*' under directory 'django/contrib/formtools/templates'\r\n warning: no files found matching '*' under directory 'django/contrib/formtools/tests/templates'\r\n warning: no files found matching '*' under directory 'django/contrib/formtools/tests/wizard/wizardtests/templates'\r\n```","created_at":"2015-01-03T02:04:57Z","updated_at":"2015-01-03T13:30:13Z","closed_at":"2015-01-03T13:28:12Z","merged_at":null,"merge_commit_sha":"bdb78ee439143891e417372f5b56846ac9bb36f0","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3833/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3833/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3833/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/df4496e9cccb0513c1308a53e5f2ab676eb9df2f","head":{"label":"berkerpeksag:remove-formtools","ref":"remove-formtools","sha":"df4496e9cccb0513c1308a53e5f2ab676eb9df2f","user":{"login":"berkerpeksag","id":26338,"avatar_url":"https://avatars.githubusercontent.com/u/26338?v=3","gravatar_id":"","url":"https://api.github.com/users/berkerpeksag","html_url":"https://github.com/berkerpeksag","followers_url":"https://api.github.com/users/berkerpeksag/followers","following_url":"https://api.github.com/users/berkerpeksag/following{/other_user}","gists_url":"https://api.github.com/users/berkerpeksag/gists{/gist_id}","starred_url":"https://api.github.com/users/berkerpeksag/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/berkerpeksag/subscriptions","organizations_url":"https://api.github.com/users/berkerpeksag/orgs","repos_url":"https://api.github.com/users/berkerpeksag/repos","events_url":"https://api.github.com/users/berkerpeksag/events{/privacy}","received_events_url":"https://api.github.com/users/berkerpeksag/received_events","type":"User","site_admin":false},"repo":{"id":12853253,"name":"django","full_name":"berkerpeksag/django","owner":{"login":"berkerpeksag","id":26338,"avatar_url":"https://avatars.githubusercontent.com/u/26338?v=3","gravatar_id":"","url":"https://api.github.com/users/berkerpeksag","html_url":"https://github.com/berkerpeksag","followers_url":"https://api.github.com/users/berkerpeksag/followers","following_url":"https://api.github.com/users/berkerpeksag/following{/other_user}","gists_url":"https://api.github.com/users/berkerpeksag/gists{/gist_id}","starred_url":"https://api.github.com/users/berkerpeksag/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/berkerpeksag/subscriptions","organizations_url":"https://api.github.com/users/berkerpeksag/orgs","repos_url":"https://api.github.com/users/berkerpeksag/repos","events_url":"https://api.github.com/users/berkerpeksag/events{/privacy}","received_events_url":"https://api.github.com/users/berkerpeksag/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/berkerpeksag/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/berkerpeksag/django","forks_url":"https://api.github.com/repos/berkerpeksag/django/forks","keys_url":"https://api.github.com/repos/berkerpeksag/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/berkerpeksag/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/berkerpeksag/django/teams","hooks_url":"https://api.github.com/repos/berkerpeksag/django/hooks","issue_events_url":"https://api.github.com/repos/berkerpeksag/django/issues/events{/number}","events_url":"https://api.github.com/repos/berkerpeksag/django/events","assignees_url":"https://api.github.com/repos/berkerpeksag/django/assignees{/user}","branches_url":"https://api.github.com/repos/berkerpeksag/django/branches{/branch}","tags_url":"https://api.github.com/repos/berkerpeksag/django/tags","blobs_url":"https://api.github.com/repos/berkerpeksag/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/berkerpeksag/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/berkerpeksag/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/berkerpeksag/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/berkerpeksag/django/statuses/{sha}","languages_url":"https://api.github.com/repos/berkerpeksag/django/languages","stargazers_url":"https://api.github.com/repos/berkerpeksag/django/stargazers","contributors_url":"https://api.github.com/repos/berkerpeksag/django/contributors","subscribers_url":"https://api.github.com/repos/berkerpeksag/django/subscribers","subscription_url":"https://api.github.com/repos/berkerpeksag/django/subscription","commits_url":"https://api.github.com/repos/berkerpeksag/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/berkerpeksag/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/berkerpeksag/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/berkerpeksag/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/berkerpeksag/django/contents/{+path}","compare_url":"https://api.github.com/repos/berkerpeksag/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/berkerpeksag/django/merges","archive_url":"https://api.github.com/repos/berkerpeksag/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/berkerpeksag/django/downloads","issues_url":"https://api.github.com/repos/berkerpeksag/django/issues{/number}","pulls_url":"https://api.github.com/repos/berkerpeksag/django/pulls{/number}","milestones_url":"https://api.github.com/repos/berkerpeksag/django/milestones{/number}","notifications_url":"https://api.github.com/repos/berkerpeksag/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/berkerpeksag/django/labels{/name}","releases_url":"https://api.github.com/repos/berkerpeksag/django/releases{/id}","created_at":"2013-09-15T21:51:52Z","updated_at":"2014-10-17T09:24:24Z","pushed_at":"2015-01-12T02:42:20Z","git_url":"git://github.com/berkerpeksag/django.git","ssh_url":"git@github.com:berkerpeksag/django.git","clone_url":"https://github.com/berkerpeksag/django.git","svn_url":"https://github.com/berkerpeksag/django","homepage":"http://www.djangoproject.com/","size":111773,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"15cd71ed24945ff7be5716580603fd65c0d45ef7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3833"},"html":{"href":"https://github.com/django/django/pull/3833"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3833"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3833/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3833/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3833/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/df4496e9cccb0513c1308a53e5f2ab676eb9df2f"}}},{"url":"https://api.github.com/repos/django/django/pulls/3832","id":26766813,"html_url":"https://github.com/django/django/pull/3832","diff_url":"https://github.com/django/django/pull/3832.diff","patch_url":"https://github.com/django/django/pull/3832.patch","issue_url":"https://api.github.com/repos/django/django/issues/3832","number":3832,"state":"closed","locked":false,"title":"Fixed #23861 -- Added an API to deprecate model fields.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"https://code.djangoproject.com/ticket/23861","created_at":"2015-01-02T18:58:42Z","updated_at":"2015-01-05T16:41:51Z","closed_at":"2015-01-05T16:40:01Z","merged_at":"2015-01-05T16:40:01Z","merge_commit_sha":"32fe08ee37b041b4a715729ec28ff7c262f75f28","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3832/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3832/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3832/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/c87ee41954737869e6026d6fb12394ec4f79d50a","head":{"label":"timgraham:23861","ref":"23861","sha":"c87ee41954737869e6026d6fb12394ec4f79d50a","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"6e1c9c6568c405bfa481dda4249abe2960173547","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3832"},"html":{"href":"https://github.com/django/django/pull/3832"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3832"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3832/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3832/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3832/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/c87ee41954737869e6026d6fb12394ec4f79d50a"}}},{"url":"https://api.github.com/repos/django/django/pulls/3831","id":26766772,"html_url":"https://github.com/django/django/pull/3831","diff_url":"https://github.com/django/django/pull/3831.diff","patch_url":"https://github.com/django/django/pull/3831.patch","issue_url":"https://api.github.com/repos/django/django/issues/3831","number":3831,"state":"closed","locked":false,"title":"Fixed: #23940 -- Added checks for 'exact' fieldnames","user":{"login":"nicwest","id":794070,"avatar_url":"https://avatars.githubusercontent.com/u/794070?v=3","gravatar_id":"","url":"https://api.github.com/users/nicwest","html_url":"https://github.com/nicwest","followers_url":"https://api.github.com/users/nicwest/followers","following_url":"https://api.github.com/users/nicwest/following{/other_user}","gists_url":"https://api.github.com/users/nicwest/gists{/gist_id}","starred_url":"https://api.github.com/users/nicwest/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nicwest/subscriptions","organizations_url":"https://api.github.com/users/nicwest/orgs","repos_url":"https://api.github.com/users/nicwest/repos","events_url":"https://api.github.com/users/nicwest/events{/privacy}","received_events_url":"https://api.github.com/users/nicwest/received_events","type":"User","site_admin":false},"body":"Adds a system check on base field to ensure that no feilds are given the\r\nname 'exact' as this is conflicting with the SQL keyword.","created_at":"2015-01-02T18:57:27Z","updated_at":"2015-01-06T18:55:21Z","closed_at":"2015-01-06T18:55:21Z","merged_at":null,"merge_commit_sha":"43b53a9cc75d3c81c599154947e6796f8bac77a6","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3831/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3831/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3831/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/7799016ff5c293722043ef08ef9d709852ac85eb","head":{"label":"nicwest:ticket_23940","ref":"ticket_23940","sha":"7799016ff5c293722043ef08ef9d709852ac85eb","user":{"login":"nicwest","id":794070,"avatar_url":"https://avatars.githubusercontent.com/u/794070?v=3","gravatar_id":"","url":"https://api.github.com/users/nicwest","html_url":"https://github.com/nicwest","followers_url":"https://api.github.com/users/nicwest/followers","following_url":"https://api.github.com/users/nicwest/following{/other_user}","gists_url":"https://api.github.com/users/nicwest/gists{/gist_id}","starred_url":"https://api.github.com/users/nicwest/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nicwest/subscriptions","organizations_url":"https://api.github.com/users/nicwest/orgs","repos_url":"https://api.github.com/users/nicwest/repos","events_url":"https://api.github.com/users/nicwest/events{/privacy}","received_events_url":"https://api.github.com/users/nicwest/received_events","type":"User","site_admin":false},"repo":{"id":28722267,"name":"django","full_name":"nicwest/django","owner":{"login":"nicwest","id":794070,"avatar_url":"https://avatars.githubusercontent.com/u/794070?v=3","gravatar_id":"","url":"https://api.github.com/users/nicwest","html_url":"https://github.com/nicwest","followers_url":"https://api.github.com/users/nicwest/followers","following_url":"https://api.github.com/users/nicwest/following{/other_user}","gists_url":"https://api.github.com/users/nicwest/gists{/gist_id}","starred_url":"https://api.github.com/users/nicwest/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nicwest/subscriptions","organizations_url":"https://api.github.com/users/nicwest/orgs","repos_url":"https://api.github.com/users/nicwest/repos","events_url":"https://api.github.com/users/nicwest/events{/privacy}","received_events_url":"https://api.github.com/users/nicwest/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/nicwest/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/nicwest/django","forks_url":"https://api.github.com/repos/nicwest/django/forks","keys_url":"https://api.github.com/repos/nicwest/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/nicwest/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/nicwest/django/teams","hooks_url":"https://api.github.com/repos/nicwest/django/hooks","issue_events_url":"https://api.github.com/repos/nicwest/django/issues/events{/number}","events_url":"https://api.github.com/repos/nicwest/django/events","assignees_url":"https://api.github.com/repos/nicwest/django/assignees{/user}","branches_url":"https://api.github.com/repos/nicwest/django/branches{/branch}","tags_url":"https://api.github.com/repos/nicwest/django/tags","blobs_url":"https://api.github.com/repos/nicwest/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/nicwest/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/nicwest/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/nicwest/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/nicwest/django/statuses/{sha}","languages_url":"https://api.github.com/repos/nicwest/django/languages","stargazers_url":"https://api.github.com/repos/nicwest/django/stargazers","contributors_url":"https://api.github.com/repos/nicwest/django/contributors","subscribers_url":"https://api.github.com/repos/nicwest/django/subscribers","subscription_url":"https://api.github.com/repos/nicwest/django/subscription","commits_url":"https://api.github.com/repos/nicwest/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/nicwest/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/nicwest/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/nicwest/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/nicwest/django/contents/{+path}","compare_url":"https://api.github.com/repos/nicwest/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/nicwest/django/merges","archive_url":"https://api.github.com/repos/nicwest/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/nicwest/django/downloads","issues_url":"https://api.github.com/repos/nicwest/django/issues{/number}","pulls_url":"https://api.github.com/repos/nicwest/django/pulls{/number}","milestones_url":"https://api.github.com/repos/nicwest/django/milestones{/number}","notifications_url":"https://api.github.com/repos/nicwest/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/nicwest/django/labels{/name}","releases_url":"https://api.github.com/repos/nicwest/django/releases{/id}","created_at":"2015-01-02T18:33:58Z","updated_at":"2015-01-02T18:34:12Z","pushed_at":"2015-01-03T10:43:47Z","git_url":"git://github.com/nicwest/django.git","ssh_url":"git@github.com:nicwest/django.git","clone_url":"https://github.com/nicwest/django.git","svn_url":"https://github.com/nicwest/django","homepage":"https://www.djangoproject.com/","size":116801,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"15cd71ed24945ff7be5716580603fd65c0d45ef7","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3831"},"html":{"href":"https://github.com/django/django/pull/3831"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3831"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3831/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3831/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3831/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/7799016ff5c293722043ef08ef9d709852ac85eb"}}},{"url":"https://api.github.com/repos/django/django/pulls/3830","id":26765112,"html_url":"https://github.com/django/django/pull/3830","diff_url":"https://github.com/django/django/pull/3830.diff","patch_url":"https://github.com/django/django/pull/3830.patch","issue_url":"https://api.github.com/repos/django/django/issues/3830","number":3830,"state":"closed","locked":false,"title":"Refs #22608 -- Used cached_property for lower case conversions of model and field names in migrations","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"This PR supersedes #3545 ","created_at":"2015-01-02T18:04:47Z","updated_at":"2015-01-07T14:23:35Z","closed_at":"2015-01-07T13:58:01Z","merged_at":null,"merge_commit_sha":"34e888546fb4ea37410e55e45ad5c03f0bd9688f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3830/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3830/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3830/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/9e559f4e6a18921c210ea55ee7e2b3558f17d5a0","head":{"label":"MarkusH:pr/3545","ref":"pr/3545","sha":"9e559f4e6a18921c210ea55ee7e2b3558f17d5a0","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"9b057b51ce01087afbeeb683098d4d2f1088fd7b","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3830"},"html":{"href":"https://github.com/django/django/pull/3830"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3830"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3830/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3830/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3830/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/9e559f4e6a18921c210ea55ee7e2b3558f17d5a0"}}},{"url":"https://api.github.com/repos/django/django/pulls/3829","id":26764876,"html_url":"https://github.com/django/django/pull/3829","diff_url":"https://github.com/django/django/pull/3829.diff","patch_url":"https://github.com/django/django/pull/3829.patch","issue_url":"https://api.github.com/repos/django/django/issues/3829","number":3829,"state":"closed","locked":false,"title":"Updated six to 1.9.0.","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"body":"","created_at":"2015-01-02T17:57:28Z","updated_at":"2015-01-03T12:44:30Z","closed_at":"2015-01-02T18:21:19Z","merged_at":"2015-01-02T18:21:19Z","merge_commit_sha":"d94893afb7d4340a66c6c670cdc88768ee43d7b0","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3829/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3829/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3829/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/52f0b2b62262743d5f935ddae29428e661b5d8ea","head":{"label":"timgraham:six-1.9.0","ref":"six-1.9.0","sha":"52f0b2b62262743d5f935ddae29428e661b5d8ea","user":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"repo":{"id":6815085,"name":"django","full_name":"timgraham/django","owner":{"login":"timgraham","id":411869,"avatar_url":"https://avatars.githubusercontent.com/u/411869?v=3","gravatar_id":"","url":"https://api.github.com/users/timgraham","html_url":"https://github.com/timgraham","followers_url":"https://api.github.com/users/timgraham/followers","following_url":"https://api.github.com/users/timgraham/following{/other_user}","gists_url":"https://api.github.com/users/timgraham/gists{/gist_id}","starred_url":"https://api.github.com/users/timgraham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timgraham/subscriptions","organizations_url":"https://api.github.com/users/timgraham/orgs","repos_url":"https://api.github.com/users/timgraham/repos","events_url":"https://api.github.com/users/timgraham/events{/privacy}","received_events_url":"https://api.github.com/users/timgraham/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/timgraham/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/timgraham/django","forks_url":"https://api.github.com/repos/timgraham/django/forks","keys_url":"https://api.github.com/repos/timgraham/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timgraham/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timgraham/django/teams","hooks_url":"https://api.github.com/repos/timgraham/django/hooks","issue_events_url":"https://api.github.com/repos/timgraham/django/issues/events{/number}","events_url":"https://api.github.com/repos/timgraham/django/events","assignees_url":"https://api.github.com/repos/timgraham/django/assignees{/user}","branches_url":"https://api.github.com/repos/timgraham/django/branches{/branch}","tags_url":"https://api.github.com/repos/timgraham/django/tags","blobs_url":"https://api.github.com/repos/timgraham/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timgraham/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timgraham/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/timgraham/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timgraham/django/statuses/{sha}","languages_url":"https://api.github.com/repos/timgraham/django/languages","stargazers_url":"https://api.github.com/repos/timgraham/django/stargazers","contributors_url":"https://api.github.com/repos/timgraham/django/contributors","subscribers_url":"https://api.github.com/repos/timgraham/django/subscribers","subscription_url":"https://api.github.com/repos/timgraham/django/subscription","commits_url":"https://api.github.com/repos/timgraham/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/timgraham/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/timgraham/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/timgraham/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/timgraham/django/contents/{+path}","compare_url":"https://api.github.com/repos/timgraham/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timgraham/django/merges","archive_url":"https://api.github.com/repos/timgraham/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timgraham/django/downloads","issues_url":"https://api.github.com/repos/timgraham/django/issues{/number}","pulls_url":"https://api.github.com/repos/timgraham/django/pulls{/number}","milestones_url":"https://api.github.com/repos/timgraham/django/milestones{/number}","notifications_url":"https://api.github.com/repos/timgraham/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timgraham/django/labels{/name}","releases_url":"https://api.github.com/repos/timgraham/django/releases{/id}","created_at":"2012-11-22T15:27:43Z","updated_at":"2014-12-03T15:50:02Z","pushed_at":"2015-01-18T01:59:15Z","git_url":"git://github.com/timgraham/django.git","ssh_url":"git@github.com:timgraham/django.git","clone_url":"https://github.com/timgraham/django.git","svn_url":"https://github.com/timgraham/django","homepage":"http://www.djangoproject.com/","size":98940,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"839f431ef5b927c8b07ce33483b3a7b0dd17b761","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3829"},"html":{"href":"https://github.com/django/django/pull/3829"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3829"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3829/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3829/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3829/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/52f0b2b62262743d5f935ddae29428e661b5d8ea"}}},{"url":"https://api.github.com/repos/django/django/pulls/3828","id":26763415,"html_url":"https://github.com/django/django/pull/3828","diff_url":"https://github.com/django/django/pull/3828.diff","patch_url":"https://github.com/django/django/pull/3828.patch","issue_url":"https://api.github.com/repos/django/django/issues/3828","number":3828,"state":"closed","locked":false,"title":"Fixed #8280 -- Allowed management command discovery for eggs","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"body":"Thanks jdetaeye for the report, and bhuztez and jdetaeye for the\r\ninitial patches.","created_at":"2015-01-02T17:14:02Z","updated_at":"2015-01-05T16:21:28Z","closed_at":"2015-01-05T16:20:42Z","merged_at":"2015-01-05T16:20:42Z","merge_commit_sha":"ce7d083182ce1298aef024e9906da1d4d3f98e1b","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3828/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3828/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3828/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/6e1c9c6568c405bfa481dda4249abe2960173547","head":{"label":"claudep:8280","ref":"8280","sha":"6e1c9c6568c405bfa481dda4249abe2960173547","user":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"repo":{"id":4217165,"name":"django","full_name":"claudep/django","owner":{"login":"claudep","id":143192,"avatar_url":"https://avatars.githubusercontent.com/u/143192?v=3","gravatar_id":"","url":"https://api.github.com/users/claudep","html_url":"https://github.com/claudep","followers_url":"https://api.github.com/users/claudep/followers","following_url":"https://api.github.com/users/claudep/following{/other_user}","gists_url":"https://api.github.com/users/claudep/gists{/gist_id}","starred_url":"https://api.github.com/users/claudep/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/claudep/subscriptions","organizations_url":"https://api.github.com/users/claudep/orgs","repos_url":"https://api.github.com/users/claudep/repos","events_url":"https://api.github.com/users/claudep/events{/privacy}","received_events_url":"https://api.github.com/users/claudep/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/claudep/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/claudep/django","forks_url":"https://api.github.com/repos/claudep/django/forks","keys_url":"https://api.github.com/repos/claudep/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/claudep/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/claudep/django/teams","hooks_url":"https://api.github.com/repos/claudep/django/hooks","issue_events_url":"https://api.github.com/repos/claudep/django/issues/events{/number}","events_url":"https://api.github.com/repos/claudep/django/events","assignees_url":"https://api.github.com/repos/claudep/django/assignees{/user}","branches_url":"https://api.github.com/repos/claudep/django/branches{/branch}","tags_url":"https://api.github.com/repos/claudep/django/tags","blobs_url":"https://api.github.com/repos/claudep/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/claudep/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/claudep/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/claudep/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/claudep/django/statuses/{sha}","languages_url":"https://api.github.com/repos/claudep/django/languages","stargazers_url":"https://api.github.com/repos/claudep/django/stargazers","contributors_url":"https://api.github.com/repos/claudep/django/contributors","subscribers_url":"https://api.github.com/repos/claudep/django/subscribers","subscription_url":"https://api.github.com/repos/claudep/django/subscription","commits_url":"https://api.github.com/repos/claudep/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/claudep/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/claudep/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/claudep/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/claudep/django/contents/{+path}","compare_url":"https://api.github.com/repos/claudep/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/claudep/django/merges","archive_url":"https://api.github.com/repos/claudep/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/claudep/django/downloads","issues_url":"https://api.github.com/repos/claudep/django/issues{/number}","pulls_url":"https://api.github.com/repos/claudep/django/pulls{/number}","milestones_url":"https://api.github.com/repos/claudep/django/milestones{/number}","notifications_url":"https://api.github.com/repos/claudep/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/claudep/django/labels{/name}","releases_url":"https://api.github.com/repos/claudep/django/releases{/id}","created_at":"2012-05-03T18:20:44Z","updated_at":"2014-12-18T15:00:01Z","pushed_at":"2015-01-17T21:30:14Z","git_url":"git://github.com/claudep/django.git","ssh_url":"git@github.com:claudep/django.git","clone_url":"https://github.com/claudep/django.git","svn_url":"https://github.com/claudep/django","homepage":"http://www.djangoproject.com/","size":102127,"stargazers_count":2,"watchers_count":2,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":2,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"d94fe42ae5e67e9fd600d204a08eef00cc10a7df","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3828"},"html":{"href":"https://github.com/django/django/pull/3828"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3828"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3828/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3828/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3828/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/6e1c9c6568c405bfa481dda4249abe2960173547"}}},{"url":"https://api.github.com/repos/django/django/pulls/3827","id":26758798,"html_url":"https://github.com/django/django/pull/3827","diff_url":"https://github.com/django/django/pull/3827.diff","patch_url":"https://github.com/django/django/pull/3827.patch","issue_url":"https://api.github.com/repos/django/django/issues/3827","number":3827,"state":"closed","locked":false,"title":"Fixed #9104 -- Moved FieldDoesNotExist to core.exceptions","user":{"login":"PirosB3","id":847179,"avatar_url":"https://avatars.githubusercontent.com/u/847179?v=3","gravatar_id":"","url":"https://api.github.com/users/PirosB3","html_url":"https://github.com/PirosB3","followers_url":"https://api.github.com/users/PirosB3/followers","following_url":"https://api.github.com/users/PirosB3/following{/other_user}","gists_url":"https://api.github.com/users/PirosB3/gists{/gist_id}","starred_url":"https://api.github.com/users/PirosB3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PirosB3/subscriptions","organizations_url":"https://api.github.com/users/PirosB3/orgs","repos_url":"https://api.github.com/users/PirosB3/repos","events_url":"https://api.github.com/users/PirosB3/events{/privacy}","received_events_url":"https://api.github.com/users/PirosB3/received_events","type":"User","site_admin":false},"body":"Cherry pick of f96990ff71d30a7397b07367e93404d816ad085b","created_at":"2015-01-02T14:40:39Z","updated_at":"2015-01-02T15:47:08Z","closed_at":"2015-01-02T15:47:08Z","merged_at":null,"merge_commit_sha":"f5ce9e3b13cb4a8f21d5de9e58bdb70ba2761cab","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3827/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3827/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3827/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/09222094a42dc39d5ddaf8498d5bbd445f345543","head":{"label":"PirosB3:move_fielddoesnotexist_to_core_exceptions","ref":"move_fielddoesnotexist_to_core_exceptions","sha":"09222094a42dc39d5ddaf8498d5bbd445f345543","user":{"login":"PirosB3","id":847179,"avatar_url":"https://avatars.githubusercontent.com/u/847179?v=3","gravatar_id":"","url":"https://api.github.com/users/PirosB3","html_url":"https://github.com/PirosB3","followers_url":"https://api.github.com/users/PirosB3/followers","following_url":"https://api.github.com/users/PirosB3/following{/other_user}","gists_url":"https://api.github.com/users/PirosB3/gists{/gist_id}","starred_url":"https://api.github.com/users/PirosB3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PirosB3/subscriptions","organizations_url":"https://api.github.com/users/PirosB3/orgs","repos_url":"https://api.github.com/users/PirosB3/repos","events_url":"https://api.github.com/users/PirosB3/events{/privacy}","received_events_url":"https://api.github.com/users/PirosB3/received_events","type":"User","site_admin":false},"repo":{"id":17481434,"name":"django","full_name":"PirosB3/django","owner":{"login":"PirosB3","id":847179,"avatar_url":"https://avatars.githubusercontent.com/u/847179?v=3","gravatar_id":"","url":"https://api.github.com/users/PirosB3","html_url":"https://github.com/PirosB3","followers_url":"https://api.github.com/users/PirosB3/followers","following_url":"https://api.github.com/users/PirosB3/following{/other_user}","gists_url":"https://api.github.com/users/PirosB3/gists{/gist_id}","starred_url":"https://api.github.com/users/PirosB3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PirosB3/subscriptions","organizations_url":"https://api.github.com/users/PirosB3/orgs","repos_url":"https://api.github.com/users/PirosB3/repos","events_url":"https://api.github.com/users/PirosB3/events{/privacy}","received_events_url":"https://api.github.com/users/PirosB3/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/PirosB3/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/PirosB3/django","forks_url":"https://api.github.com/repos/PirosB3/django/forks","keys_url":"https://api.github.com/repos/PirosB3/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PirosB3/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PirosB3/django/teams","hooks_url":"https://api.github.com/repos/PirosB3/django/hooks","issue_events_url":"https://api.github.com/repos/PirosB3/django/issues/events{/number}","events_url":"https://api.github.com/repos/PirosB3/django/events","assignees_url":"https://api.github.com/repos/PirosB3/django/assignees{/user}","branches_url":"https://api.github.com/repos/PirosB3/django/branches{/branch}","tags_url":"https://api.github.com/repos/PirosB3/django/tags","blobs_url":"https://api.github.com/repos/PirosB3/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PirosB3/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PirosB3/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/PirosB3/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PirosB3/django/statuses/{sha}","languages_url":"https://api.github.com/repos/PirosB3/django/languages","stargazers_url":"https://api.github.com/repos/PirosB3/django/stargazers","contributors_url":"https://api.github.com/repos/PirosB3/django/contributors","subscribers_url":"https://api.github.com/repos/PirosB3/django/subscribers","subscription_url":"https://api.github.com/repos/PirosB3/django/subscription","commits_url":"https://api.github.com/repos/PirosB3/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/PirosB3/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/PirosB3/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/PirosB3/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/PirosB3/django/contents/{+path}","compare_url":"https://api.github.com/repos/PirosB3/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PirosB3/django/merges","archive_url":"https://api.github.com/repos/PirosB3/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PirosB3/django/downloads","issues_url":"https://api.github.com/repos/PirosB3/django/issues{/number}","pulls_url":"https://api.github.com/repos/PirosB3/django/pulls{/number}","milestones_url":"https://api.github.com/repos/PirosB3/django/milestones{/number}","notifications_url":"https://api.github.com/repos/PirosB3/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PirosB3/django/labels{/name}","releases_url":"https://api.github.com/repos/PirosB3/django/releases{/id}","created_at":"2014-03-06T15:01:29Z","updated_at":"2014-06-24T15:06:48Z","pushed_at":"2015-01-07T00:17:38Z","git_url":"git://github.com/PirosB3/django.git","ssh_url":"git@github.com:PirosB3/django.git","clone_url":"https://github.com/PirosB3/django.git","svn_url":"https://github.com/PirosB3/django","homepage":"http://www.djangoproject.com/","size":116145,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":3,"forks":0,"open_issues":3,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"1aa3e09c2043c88a760e8b73fb95dc8f1ffef50e","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3827"},"html":{"href":"https://github.com/django/django/pull/3827"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3827"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3827/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3827/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3827/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/09222094a42dc39d5ddaf8498d5bbd445f345543"}}},{"url":"https://api.github.com/repos/django/django/pulls/3826","id":26755508,"html_url":"https://github.com/django/django/pull/3826","diff_url":"https://github.com/django/django/pull/3826.diff","patch_url":"https://github.com/django/django/pull/3826.patch","issue_url":"https://api.github.com/repos/django/django/issues/3826","number":3826,"state":"closed","locked":false,"title":"Fixed #24069 - make ServerHandler a new style class","user":{"login":"pelme","id":20529,"avatar_url":"https://avatars.githubusercontent.com/u/20529?v=3","gravatar_id":"","url":"https://api.github.com/users/pelme","html_url":"https://github.com/pelme","followers_url":"https://api.github.com/users/pelme/followers","following_url":"https://api.github.com/users/pelme/following{/other_user}","gists_url":"https://api.github.com/users/pelme/gists{/gist_id}","starred_url":"https://api.github.com/users/pelme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pelme/subscriptions","organizations_url":"https://api.github.com/users/pelme/orgs","repos_url":"https://api.github.com/users/pelme/repos","events_url":"https://api.github.com/users/pelme/events{/privacy}","received_events_url":"https://api.github.com/users/pelme/received_events","type":"User","site_admin":false},"body":"Patch for https://code.djangoproject.com/ticket/24069","created_at":"2015-01-02T12:00:53Z","updated_at":"2015-01-02T17:08:58Z","closed_at":"2015-01-02T13:53:02Z","merged_at":null,"merge_commit_sha":"2a6ec652ba95568a7a6aaad11381a9a5588db843","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3826/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3826/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3826/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/7aed133454666efbd85e3721c2ba36663bab2f5d","head":{"label":"pelme:ticket-24069","ref":"ticket-24069","sha":"7aed133454666efbd85e3721c2ba36663bab2f5d","user":{"login":"pelme","id":20529,"avatar_url":"https://avatars.githubusercontent.com/u/20529?v=3","gravatar_id":"","url":"https://api.github.com/users/pelme","html_url":"https://github.com/pelme","followers_url":"https://api.github.com/users/pelme/followers","following_url":"https://api.github.com/users/pelme/following{/other_user}","gists_url":"https://api.github.com/users/pelme/gists{/gist_id}","starred_url":"https://api.github.com/users/pelme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pelme/subscriptions","organizations_url":"https://api.github.com/users/pelme/orgs","repos_url":"https://api.github.com/users/pelme/repos","events_url":"https://api.github.com/users/pelme/events{/privacy}","received_events_url":"https://api.github.com/users/pelme/received_events","type":"User","site_admin":false},"repo":{"id":4222075,"name":"django","full_name":"pelme/django","owner":{"login":"pelme","id":20529,"avatar_url":"https://avatars.githubusercontent.com/u/20529?v=3","gravatar_id":"","url":"https://api.github.com/users/pelme","html_url":"https://github.com/pelme","followers_url":"https://api.github.com/users/pelme/followers","following_url":"https://api.github.com/users/pelme/following{/other_user}","gists_url":"https://api.github.com/users/pelme/gists{/gist_id}","starred_url":"https://api.github.com/users/pelme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pelme/subscriptions","organizations_url":"https://api.github.com/users/pelme/orgs","repos_url":"https://api.github.com/users/pelme/repos","events_url":"https://api.github.com/users/pelme/events{/privacy}","received_events_url":"https://api.github.com/users/pelme/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/pelme/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/pelme/django","forks_url":"https://api.github.com/repos/pelme/django/forks","keys_url":"https://api.github.com/repos/pelme/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pelme/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pelme/django/teams","hooks_url":"https://api.github.com/repos/pelme/django/hooks","issue_events_url":"https://api.github.com/repos/pelme/django/issues/events{/number}","events_url":"https://api.github.com/repos/pelme/django/events","assignees_url":"https://api.github.com/repos/pelme/django/assignees{/user}","branches_url":"https://api.github.com/repos/pelme/django/branches{/branch}","tags_url":"https://api.github.com/repos/pelme/django/tags","blobs_url":"https://api.github.com/repos/pelme/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pelme/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pelme/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/pelme/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pelme/django/statuses/{sha}","languages_url":"https://api.github.com/repos/pelme/django/languages","stargazers_url":"https://api.github.com/repos/pelme/django/stargazers","contributors_url":"https://api.github.com/repos/pelme/django/contributors","subscribers_url":"https://api.github.com/repos/pelme/django/subscribers","subscription_url":"https://api.github.com/repos/pelme/django/subscription","commits_url":"https://api.github.com/repos/pelme/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/pelme/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/pelme/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/pelme/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/pelme/django/contents/{+path}","compare_url":"https://api.github.com/repos/pelme/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pelme/django/merges","archive_url":"https://api.github.com/repos/pelme/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pelme/django/downloads","issues_url":"https://api.github.com/repos/pelme/django/issues{/number}","pulls_url":"https://api.github.com/repos/pelme/django/pulls{/number}","milestones_url":"https://api.github.com/repos/pelme/django/milestones{/number}","notifications_url":"https://api.github.com/repos/pelme/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pelme/django/labels{/name}","releases_url":"https://api.github.com/repos/pelme/django/releases{/id}","created_at":"2012-05-04T06:03:29Z","updated_at":"2013-11-04T09:46:49Z","pushed_at":"2015-01-02T11:58:39Z","git_url":"git://github.com/pelme/django.git","ssh_url":"git@github.com:pelme/django.git","clone_url":"https://github.com/pelme/django.git","svn_url":"https://github.com/pelme/django","homepage":"http://www.djangoproject.com/","size":88370,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"40ccef16cb699ff66a9d4163cc195c3a3b28c5ba","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3826"},"html":{"href":"https://github.com/django/django/pull/3826"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3826"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3826/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3826/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3826/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/7aed133454666efbd85e3721c2ba36663bab2f5d"}}},{"url":"https://api.github.com/repos/django/django/pulls/3825","id":26754104,"html_url":"https://github.com/django/django/pull/3825","diff_url":"https://github.com/django/django/pull/3825.diff","patch_url":"https://github.com/django/django/pull/3825.patch","issue_url":"https://api.github.com/repos/django/django/issues/3825","number":3825,"state":"closed","locked":false,"title":"Fixed #24031 -- Added CASE expressions","user":{"login":"michalmo","id":9825131,"avatar_url":"https://avatars.githubusercontent.com/u/9825131?v=3","gravatar_id":"","url":"https://api.github.com/users/michalmo","html_url":"https://github.com/michalmo","followers_url":"https://api.github.com/users/michalmo/followers","following_url":"https://api.github.com/users/michalmo/following{/other_user}","gists_url":"https://api.github.com/users/michalmo/gists{/gist_id}","starred_url":"https://api.github.com/users/michalmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalmo/subscriptions","organizations_url":"https://api.github.com/users/michalmo/orgs","repos_url":"https://api.github.com/users/michalmo/repos","events_url":"https://api.github.com/users/michalmo/events{/privacy}","received_events_url":"https://api.github.com/users/michalmo/received_events","type":"User","site_admin":false},"body":"I'm opening this PR for review of my implementation of CASE expressions.\r\nIt's working with tests passing on SQLite, postgres and MySQL with python 2.7, 3.2, 3.3 and 3.4 (except MySQL + python 3.2).\r\n\r\nThere are some issues however:\r\n\r\n* API needs to be finalized. I've discussed this with @jarshwah and am currently using two classes ```SearchedCase``` and ```SimpleCase```, with an entry point class ```Case```, that returns one of those two depending on the arguments. You can see how Case expressions could be used with each of the classes and then we can drop some of the names once a decision has been made.\r\n* No documentation - waiting on API decision.\r\n* I added tests for the interaction of ```QuerySet.update``` with Case expressions and all the Field types, and came across some issues with ```Value``` expressions and ```DurationField```. I've fixed these in separate commits in this PR. How should I proceed with this? Make tickets for the issues? The fixes work, but I'd appreciate review from the authors of those pieces of code @mjtamlyn and @jarshwah.\r\n* In some cases I've made the ```as_sql``` methods depend on the type of query compiler (detecting sql update). This works but needs to be better, maybe adding methods to ```SQLCompiler``` and overriding for ```SQLUpdateCompiler```. Input appreciated on this.\r\n\r\nThis is without the bulk_update code. I'll do a separate PR for that if it is wanted.","created_at":"2015-01-02T10:42:59Z","updated_at":"2015-01-12T23:17:05Z","closed_at":"2015-01-12T23:16:46Z","merged_at":null,"merge_commit_sha":"6b0837d63aa032033f4c767e6c2bfab74f3fc21d","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3825/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3825/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3825/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/68db6516e067fc49790d38f5462449343b989db4","head":{"label":"michalmo:case-expressions","ref":"case-expressions","sha":"68db6516e067fc49790d38f5462449343b989db4","user":{"login":"michalmo","id":9825131,"avatar_url":"https://avatars.githubusercontent.com/u/9825131?v=3","gravatar_id":"","url":"https://api.github.com/users/michalmo","html_url":"https://github.com/michalmo","followers_url":"https://api.github.com/users/michalmo/followers","following_url":"https://api.github.com/users/michalmo/following{/other_user}","gists_url":"https://api.github.com/users/michalmo/gists{/gist_id}","starred_url":"https://api.github.com/users/michalmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalmo/subscriptions","organizations_url":"https://api.github.com/users/michalmo/orgs","repos_url":"https://api.github.com/users/michalmo/repos","events_url":"https://api.github.com/users/michalmo/events{/privacy}","received_events_url":"https://api.github.com/users/michalmo/received_events","type":"User","site_admin":false},"repo":{"id":28709403,"name":"django","full_name":"michalmo/django","owner":{"login":"michalmo","id":9825131,"avatar_url":"https://avatars.githubusercontent.com/u/9825131?v=3","gravatar_id":"","url":"https://api.github.com/users/michalmo","html_url":"https://github.com/michalmo","followers_url":"https://api.github.com/users/michalmo/followers","following_url":"https://api.github.com/users/michalmo/following{/other_user}","gists_url":"https://api.github.com/users/michalmo/gists{/gist_id}","starred_url":"https://api.github.com/users/michalmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalmo/subscriptions","organizations_url":"https://api.github.com/users/michalmo/orgs","repos_url":"https://api.github.com/users/michalmo/repos","events_url":"https://api.github.com/users/michalmo/events{/privacy}","received_events_url":"https://api.github.com/users/michalmo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/michalmo/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/michalmo/django","forks_url":"https://api.github.com/repos/michalmo/django/forks","keys_url":"https://api.github.com/repos/michalmo/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/michalmo/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/michalmo/django/teams","hooks_url":"https://api.github.com/repos/michalmo/django/hooks","issue_events_url":"https://api.github.com/repos/michalmo/django/issues/events{/number}","events_url":"https://api.github.com/repos/michalmo/django/events","assignees_url":"https://api.github.com/repos/michalmo/django/assignees{/user}","branches_url":"https://api.github.com/repos/michalmo/django/branches{/branch}","tags_url":"https://api.github.com/repos/michalmo/django/tags","blobs_url":"https://api.github.com/repos/michalmo/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/michalmo/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/michalmo/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/michalmo/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/michalmo/django/statuses/{sha}","languages_url":"https://api.github.com/repos/michalmo/django/languages","stargazers_url":"https://api.github.com/repos/michalmo/django/stargazers","contributors_url":"https://api.github.com/repos/michalmo/django/contributors","subscribers_url":"https://api.github.com/repos/michalmo/django/subscribers","subscription_url":"https://api.github.com/repos/michalmo/django/subscription","commits_url":"https://api.github.com/repos/michalmo/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/michalmo/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/michalmo/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/michalmo/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/michalmo/django/contents/{+path}","compare_url":"https://api.github.com/repos/michalmo/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/michalmo/django/merges","archive_url":"https://api.github.com/repos/michalmo/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/michalmo/django/downloads","issues_url":"https://api.github.com/repos/michalmo/django/issues{/number}","pulls_url":"https://api.github.com/repos/michalmo/django/pulls{/number}","milestones_url":"https://api.github.com/repos/michalmo/django/milestones{/number}","notifications_url":"https://api.github.com/repos/michalmo/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/michalmo/django/labels{/name}","releases_url":"https://api.github.com/repos/michalmo/django/releases{/id}","created_at":"2015-01-02T09:47:52Z","updated_at":"2015-01-02T09:48:09Z","pushed_at":"2015-01-15T21:47:01Z","git_url":"git://github.com/michalmo/django.git","ssh_url":"git@github.com:michalmo/django.git","clone_url":"https://github.com/michalmo/django.git","svn_url":"https://github.com/michalmo/django","homepage":"https://www.djangoproject.com/","size":118464,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"aa8ee6a5731b37b73635e7605521fb1a54a5c10d","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3825"},"html":{"href":"https://github.com/django/django/pull/3825"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3825"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3825/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3825/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3825/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/68db6516e067fc49790d38f5462449343b989db4"}}},{"url":"https://api.github.com/repos/django/django/pulls/3824","id":26749589,"html_url":"https://github.com/django/django/pull/3824","diff_url":"https://github.com/django/django/pull/3824.diff","patch_url":"https://github.com/django/django/pull/3824.patch","issue_url":"https://api.github.com/repos/django/django/issues/3824","number":3824,"state":"closed","locked":false,"title":"Fixed #23908 -- Made the admin XHTML5 compatible.","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"body":"More of just a proposal: https://code.djangoproject.com/ticket/23908#comment:9","created_at":"2015-01-02T04:08:57Z","updated_at":"2015-01-02T14:58:45Z","closed_at":"2015-01-02T14:58:45Z","merged_at":null,"merge_commit_sha":"8cc26f0d41bbe9758e40639b7eca9cdca3a28fcd","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3824/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3824/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3824/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/71345c33f680c6fc896b268e5020ce08f4c545fb","head":{"label":"collinanderson:23908","ref":"23908","sha":"71345c33f680c6fc896b268e5020ce08f4c545fb","user":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"repo":{"id":18476474,"name":"django","full_name":"collinanderson/django","owner":{"login":"collinanderson","id":129234,"avatar_url":"https://avatars.githubusercontent.com/u/129234?v=3","gravatar_id":"","url":"https://api.github.com/users/collinanderson","html_url":"https://github.com/collinanderson","followers_url":"https://api.github.com/users/collinanderson/followers","following_url":"https://api.github.com/users/collinanderson/following{/other_user}","gists_url":"https://api.github.com/users/collinanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/collinanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/collinanderson/subscriptions","organizations_url":"https://api.github.com/users/collinanderson/orgs","repos_url":"https://api.github.com/users/collinanderson/repos","events_url":"https://api.github.com/users/collinanderson/events{/privacy}","received_events_url":"https://api.github.com/users/collinanderson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/collinanderson/django","description":"for pull requests","fork":true,"url":"https://api.github.com/repos/collinanderson/django","forks_url":"https://api.github.com/repos/collinanderson/django/forks","keys_url":"https://api.github.com/repos/collinanderson/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/collinanderson/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/collinanderson/django/teams","hooks_url":"https://api.github.com/repos/collinanderson/django/hooks","issue_events_url":"https://api.github.com/repos/collinanderson/django/issues/events{/number}","events_url":"https://api.github.com/repos/collinanderson/django/events","assignees_url":"https://api.github.com/repos/collinanderson/django/assignees{/user}","branches_url":"https://api.github.com/repos/collinanderson/django/branches{/branch}","tags_url":"https://api.github.com/repos/collinanderson/django/tags","blobs_url":"https://api.github.com/repos/collinanderson/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/collinanderson/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/collinanderson/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/collinanderson/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/collinanderson/django/statuses/{sha}","languages_url":"https://api.github.com/repos/collinanderson/django/languages","stargazers_url":"https://api.github.com/repos/collinanderson/django/stargazers","contributors_url":"https://api.github.com/repos/collinanderson/django/contributors","subscribers_url":"https://api.github.com/repos/collinanderson/django/subscribers","subscription_url":"https://api.github.com/repos/collinanderson/django/subscription","commits_url":"https://api.github.com/repos/collinanderson/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/collinanderson/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/collinanderson/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/collinanderson/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/collinanderson/django/contents/{+path}","compare_url":"https://api.github.com/repos/collinanderson/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/collinanderson/django/merges","archive_url":"https://api.github.com/repos/collinanderson/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/collinanderson/django/downloads","issues_url":"https://api.github.com/repos/collinanderson/django/issues{/number}","pulls_url":"https://api.github.com/repos/collinanderson/django/pulls{/number}","milestones_url":"https://api.github.com/repos/collinanderson/django/milestones{/number}","notifications_url":"https://api.github.com/repos/collinanderson/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/collinanderson/django/labels{/name}","releases_url":"https://api.github.com/repos/collinanderson/django/releases{/id}","created_at":"2014-04-05T20:56:45Z","updated_at":"2015-01-17T03:49:38Z","pushed_at":"2015-01-17T15:00:59Z","git_url":"git://github.com/collinanderson/django.git","ssh_url":"git@github.com:collinanderson/django.git","clone_url":"https://github.com/collinanderson/django.git","svn_url":"https://github.com/collinanderson/django","homepage":"","size":108848,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"40ccef16cb699ff66a9d4163cc195c3a3b28c5ba","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3824"},"html":{"href":"https://github.com/django/django/pull/3824"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3824"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3824/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3824/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3824/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/71345c33f680c6fc896b268e5020ce08f4c545fb"}}},{"url":"https://api.github.com/repos/django/django/pulls/3823","id":26743677,"html_url":"https://github.com/django/django/pull/3823","diff_url":"https://github.com/django/django/pull/3823.diff","patch_url":"https://github.com/django/django/pull/3823.patch","issue_url":"https://api.github.com/repos/django/django/issues/3823","number":3823,"state":"closed","locked":false,"title":"Removed double newline from output of migrate --list","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"body":"refs [#23359](https://code.djangoproject.com/ticket/23359) and PR https://github.com/django/django/pull/3153#issuecomment-68471839","created_at":"2015-01-01T14:48:41Z","updated_at":"2015-01-05T21:06:54Z","closed_at":"2015-01-05T19:54:11Z","merged_at":null,"merge_commit_sha":"b3bf76db52a2e7e512bed701bb86361aae00073f","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3823/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3823/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3823/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/a951366b7f2c4ca6269810c56f0e3b62d94b9386","head":{"label":"MarkusH:fix-migrate-list-output","ref":"fix-migrate-list-output","sha":"a951366b7f2c4ca6269810c56f0e3b62d94b9386","user":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"repo":{"id":8968526,"name":"django","full_name":"MarkusH/django","owner":{"login":"MarkusH","id":475613,"avatar_url":"https://avatars.githubusercontent.com/u/475613?v=3","gravatar_id":"","url":"https://api.github.com/users/MarkusH","html_url":"https://github.com/MarkusH","followers_url":"https://api.github.com/users/MarkusH/followers","following_url":"https://api.github.com/users/MarkusH/following{/other_user}","gists_url":"https://api.github.com/users/MarkusH/gists{/gist_id}","starred_url":"https://api.github.com/users/MarkusH/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarkusH/subscriptions","organizations_url":"https://api.github.com/users/MarkusH/orgs","repos_url":"https://api.github.com/users/MarkusH/repos","events_url":"https://api.github.com/users/MarkusH/events{/privacy}","received_events_url":"https://api.github.com/users/MarkusH/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarkusH/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/MarkusH/django","forks_url":"https://api.github.com/repos/MarkusH/django/forks","keys_url":"https://api.github.com/repos/MarkusH/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarkusH/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarkusH/django/teams","hooks_url":"https://api.github.com/repos/MarkusH/django/hooks","issue_events_url":"https://api.github.com/repos/MarkusH/django/issues/events{/number}","events_url":"https://api.github.com/repos/MarkusH/django/events","assignees_url":"https://api.github.com/repos/MarkusH/django/assignees{/user}","branches_url":"https://api.github.com/repos/MarkusH/django/branches{/branch}","tags_url":"https://api.github.com/repos/MarkusH/django/tags","blobs_url":"https://api.github.com/repos/MarkusH/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarkusH/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarkusH/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarkusH/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarkusH/django/statuses/{sha}","languages_url":"https://api.github.com/repos/MarkusH/django/languages","stargazers_url":"https://api.github.com/repos/MarkusH/django/stargazers","contributors_url":"https://api.github.com/repos/MarkusH/django/contributors","subscribers_url":"https://api.github.com/repos/MarkusH/django/subscribers","subscription_url":"https://api.github.com/repos/MarkusH/django/subscription","commits_url":"https://api.github.com/repos/MarkusH/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarkusH/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarkusH/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarkusH/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/MarkusH/django/contents/{+path}","compare_url":"https://api.github.com/repos/MarkusH/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarkusH/django/merges","archive_url":"https://api.github.com/repos/MarkusH/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarkusH/django/downloads","issues_url":"https://api.github.com/repos/MarkusH/django/issues{/number}","pulls_url":"https://api.github.com/repos/MarkusH/django/pulls{/number}","milestones_url":"https://api.github.com/repos/MarkusH/django/milestones{/number}","notifications_url":"https://api.github.com/repos/MarkusH/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarkusH/django/labels{/name}","releases_url":"https://api.github.com/repos/MarkusH/django/releases{/id}","created_at":"2013-03-23T10:08:17Z","updated_at":"2014-12-30T15:45:30Z","pushed_at":"2015-01-17T20:08:57Z","git_url":"git://github.com/MarkusH/django.git","ssh_url":"git@github.com:MarkusH/django.git","clone_url":"https://github.com/MarkusH/django.git","svn_url":"https://github.com/MarkusH/django","homepage":"http://www.djangoproject.com/","size":119777,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"c87ee41954737869e6026d6fb12394ec4f79d50a","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3823"},"html":{"href":"https://github.com/django/django/pull/3823"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3823"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3823/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3823/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3823/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/a951366b7f2c4ca6269810c56f0e3b62d94b9386"}}},{"url":"https://api.github.com/repos/django/django/pulls/3822","id":26740289,"html_url":"https://github.com/django/django/pull/3822","diff_url":"https://github.com/django/django/pull/3822.diff","patch_url":"https://github.com/django/django/pull/3822.patch","issue_url":"https://api.github.com/repos/django/django/issues/3822","number":3822,"state":"closed","locked":false,"title":"Fixed #23749 -- Added an example of using database routers in migrations","user":{"login":"splbio","id":629072,"avatar_url":"https://avatars.githubusercontent.com/u/629072?v=3","gravatar_id":"","url":"https://api.github.com/users/splbio","html_url":"https://github.com/splbio","followers_url":"https://api.github.com/users/splbio/followers","following_url":"https://api.github.com/users/splbio/following{/other_user}","gists_url":"https://api.github.com/users/splbio/gists{/gist_id}","starred_url":"https://api.github.com/users/splbio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/splbio/subscriptions","organizations_url":"https://api.github.com/users/splbio/orgs","repos_url":"https://api.github.com/users/splbio/repos","events_url":"https://api.github.com/users/splbio/events{/privacy}","received_events_url":"https://api.github.com/users/splbio/received_events","type":"User","site_admin":false},"body":"The ticket https://code.djangoproject.com/ticket/23749 explains the issue where the ```schema_editor.connection.alias``` should be documented. It is now documented with some examples included.","created_at":"2015-01-01T03:26:36Z","updated_at":"2015-01-03T17:07:16Z","closed_at":"2015-01-03T17:07:16Z","merged_at":null,"merge_commit_sha":"a02a1fa4ca769d90c2ccff53bb94e30ac09c5b33","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3822/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3822/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3822/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/df8472ccd9d7729893dd893db717c30f937696e6","head":{"label":"splbio:ap_document_db_alias","ref":"ap_document_db_alias","sha":"df8472ccd9d7729893dd893db717c30f937696e6","user":{"login":"splbio","id":629072,"avatar_url":"https://avatars.githubusercontent.com/u/629072?v=3","gravatar_id":"","url":"https://api.github.com/users/splbio","html_url":"https://github.com/splbio","followers_url":"https://api.github.com/users/splbio/followers","following_url":"https://api.github.com/users/splbio/following{/other_user}","gists_url":"https://api.github.com/users/splbio/gists{/gist_id}","starred_url":"https://api.github.com/users/splbio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/splbio/subscriptions","organizations_url":"https://api.github.com/users/splbio/orgs","repos_url":"https://api.github.com/users/splbio/repos","events_url":"https://api.github.com/users/splbio/events{/privacy}","received_events_url":"https://api.github.com/users/splbio/received_events","type":"User","site_admin":false},"repo":{"id":28678926,"name":"django","full_name":"splbio/django","owner":{"login":"splbio","id":629072,"avatar_url":"https://avatars.githubusercontent.com/u/629072?v=3","gravatar_id":"","url":"https://api.github.com/users/splbio","html_url":"https://github.com/splbio","followers_url":"https://api.github.com/users/splbio/followers","following_url":"https://api.github.com/users/splbio/following{/other_user}","gists_url":"https://api.github.com/users/splbio/gists{/gist_id}","starred_url":"https://api.github.com/users/splbio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/splbio/subscriptions","organizations_url":"https://api.github.com/users/splbio/orgs","repos_url":"https://api.github.com/users/splbio/repos","events_url":"https://api.github.com/users/splbio/events{/privacy}","received_events_url":"https://api.github.com/users/splbio/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/splbio/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/splbio/django","forks_url":"https://api.github.com/repos/splbio/django/forks","keys_url":"https://api.github.com/repos/splbio/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/splbio/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/splbio/django/teams","hooks_url":"https://api.github.com/repos/splbio/django/hooks","issue_events_url":"https://api.github.com/repos/splbio/django/issues/events{/number}","events_url":"https://api.github.com/repos/splbio/django/events","assignees_url":"https://api.github.com/repos/splbio/django/assignees{/user}","branches_url":"https://api.github.com/repos/splbio/django/branches{/branch}","tags_url":"https://api.github.com/repos/splbio/django/tags","blobs_url":"https://api.github.com/repos/splbio/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/splbio/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/splbio/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/splbio/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/splbio/django/statuses/{sha}","languages_url":"https://api.github.com/repos/splbio/django/languages","stargazers_url":"https://api.github.com/repos/splbio/django/stargazers","contributors_url":"https://api.github.com/repos/splbio/django/contributors","subscribers_url":"https://api.github.com/repos/splbio/django/subscribers","subscription_url":"https://api.github.com/repos/splbio/django/subscription","commits_url":"https://api.github.com/repos/splbio/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/splbio/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/splbio/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/splbio/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/splbio/django/contents/{+path}","compare_url":"https://api.github.com/repos/splbio/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/splbio/django/merges","archive_url":"https://api.github.com/repos/splbio/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/splbio/django/downloads","issues_url":"https://api.github.com/repos/splbio/django/issues{/number}","pulls_url":"https://api.github.com/repos/splbio/django/pulls{/number}","milestones_url":"https://api.github.com/repos/splbio/django/milestones{/number}","notifications_url":"https://api.github.com/repos/splbio/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/splbio/django/labels{/name}","releases_url":"https://api.github.com/repos/splbio/django/releases{/id}","created_at":"2015-01-01T02:04:52Z","updated_at":"2015-01-01T02:05:05Z","pushed_at":"2015-01-02T23:12:48Z","git_url":"git://github.com/splbio/django.git","ssh_url":"git@github.com:splbio/django.git","clone_url":"https://github.com/splbio/django.git","svn_url":"https://github.com/splbio/django","homepage":"https://www.djangoproject.com/","size":116665,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"52f0b2b62262743d5f935ddae29428e661b5d8ea","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3822"},"html":{"href":"https://github.com/django/django/pull/3822"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3822"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3822/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3822/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3822/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/df8472ccd9d7729893dd893db717c30f937696e6"}}},{"url":"https://api.github.com/repos/django/django/pulls/3821","id":26734111,"html_url":"https://github.com/django/django/pull/3821","diff_url":"https://github.com/django/django/pull/3821.diff","patch_url":"https://github.com/django/django/pull/3821.patch","issue_url":"https://api.github.com/repos/django/django/issues/3821","number":3821,"state":"closed","locked":false,"title":"Fixed #24064 - Prevented database access in compile time in spatialite models","user":{"login":"coldmind","id":1932804,"avatar_url":"https://avatars.githubusercontent.com/u/1932804?v=3","gravatar_id":"","url":"https://api.github.com/users/coldmind","html_url":"https://github.com/coldmind","followers_url":"https://api.github.com/users/coldmind/followers","following_url":"https://api.github.com/users/coldmind/following{/other_user}","gists_url":"https://api.github.com/users/coldmind/gists{/gist_id}","starred_url":"https://api.github.com/users/coldmind/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coldmind/subscriptions","organizations_url":"https://api.github.com/users/coldmind/orgs","repos_url":"https://api.github.com/users/coldmind/repos","events_url":"https://api.github.com/users/coldmind/events{/privacy}","received_events_url":"https://api.github.com/users/coldmind/received_events","type":"User","site_admin":false},"body":"Here is the patch that can fix problem.\r\nIdeas about improvements are welcome.","created_at":"2014-12-31T20:02:17Z","updated_at":"2015-01-02T17:13:46Z","closed_at":"2015-01-02T17:13:46Z","merged_at":null,"merge_commit_sha":"74bf088b6535403b09c7bfb4400a805cb020afd2","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3821/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3821/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3821/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/639516f651d9fd3eb337831d78b5862ea8dd1670","head":{"label":"coldmind:ticket_24064","ref":"ticket_24064","sha":"639516f651d9fd3eb337831d78b5862ea8dd1670","user":{"login":"coldmind","id":1932804,"avatar_url":"https://avatars.githubusercontent.com/u/1932804?v=3","gravatar_id":"","url":"https://api.github.com/users/coldmind","html_url":"https://github.com/coldmind","followers_url":"https://api.github.com/users/coldmind/followers","following_url":"https://api.github.com/users/coldmind/following{/other_user}","gists_url":"https://api.github.com/users/coldmind/gists{/gist_id}","starred_url":"https://api.github.com/users/coldmind/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coldmind/subscriptions","organizations_url":"https://api.github.com/users/coldmind/orgs","repos_url":"https://api.github.com/users/coldmind/repos","events_url":"https://api.github.com/users/coldmind/events{/privacy}","received_events_url":"https://api.github.com/users/coldmind/received_events","type":"User","site_admin":false},"repo":{"id":18882135,"name":"django","full_name":"coldmind/django","owner":{"login":"coldmind","id":1932804,"avatar_url":"https://avatars.githubusercontent.com/u/1932804?v=3","gravatar_id":"","url":"https://api.github.com/users/coldmind","html_url":"https://github.com/coldmind","followers_url":"https://api.github.com/users/coldmind/followers","following_url":"https://api.github.com/users/coldmind/following{/other_user}","gists_url":"https://api.github.com/users/coldmind/gists{/gist_id}","starred_url":"https://api.github.com/users/coldmind/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coldmind/subscriptions","organizations_url":"https://api.github.com/users/coldmind/orgs","repos_url":"https://api.github.com/users/coldmind/repos","events_url":"https://api.github.com/users/coldmind/events{/privacy}","received_events_url":"https://api.github.com/users/coldmind/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/coldmind/django","description":"The Web framework for perfectionists with deadlines.","fork":true,"url":"https://api.github.com/repos/coldmind/django","forks_url":"https://api.github.com/repos/coldmind/django/forks","keys_url":"https://api.github.com/repos/coldmind/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/coldmind/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/coldmind/django/teams","hooks_url":"https://api.github.com/repos/coldmind/django/hooks","issue_events_url":"https://api.github.com/repos/coldmind/django/issues/events{/number}","events_url":"https://api.github.com/repos/coldmind/django/events","assignees_url":"https://api.github.com/repos/coldmind/django/assignees{/user}","branches_url":"https://api.github.com/repos/coldmind/django/branches{/branch}","tags_url":"https://api.github.com/repos/coldmind/django/tags","blobs_url":"https://api.github.com/repos/coldmind/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/coldmind/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/coldmind/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/coldmind/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/coldmind/django/statuses/{sha}","languages_url":"https://api.github.com/repos/coldmind/django/languages","stargazers_url":"https://api.github.com/repos/coldmind/django/stargazers","contributors_url":"https://api.github.com/repos/coldmind/django/contributors","subscribers_url":"https://api.github.com/repos/coldmind/django/subscribers","subscription_url":"https://api.github.com/repos/coldmind/django/subscription","commits_url":"https://api.github.com/repos/coldmind/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/coldmind/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/coldmind/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/coldmind/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/coldmind/django/contents/{+path}","compare_url":"https://api.github.com/repos/coldmind/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/coldmind/django/merges","archive_url":"https://api.github.com/repos/coldmind/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/coldmind/django/downloads","issues_url":"https://api.github.com/repos/coldmind/django/issues{/number}","pulls_url":"https://api.github.com/repos/coldmind/django/pulls{/number}","milestones_url":"https://api.github.com/repos/coldmind/django/milestones{/number}","notifications_url":"https://api.github.com/repos/coldmind/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/coldmind/django/labels{/name}","releases_url":"https://api.github.com/repos/coldmind/django/releases{/id}","created_at":"2014-04-17T14:54:10Z","updated_at":"2015-01-16T09:59:20Z","pushed_at":"2015-01-16T09:59:18Z","git_url":"git://github.com/coldmind/django.git","ssh_url":"git@github.com:coldmind/django.git","clone_url":"https://github.com/coldmind/django.git","svn_url":"https://github.com/coldmind/django","homepage":"http://www.djangoproject.com/","size":113617,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"8958170755b37ce346ae5257c1000bd936faa3b0","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-18T12:59:26Z","pushed_at":"2015-01-18T01:28:48Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":247483,"stargazers_count":12600,"watchers_count":12600,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4929,"mirror_url":null,"open_issues_count":73,"forks":4929,"open_issues":73,"watchers":12600,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3821"},"html":{"href":"https://github.com/django/django/pull/3821"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3821"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3821/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3821/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3821/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/639516f651d9fd3eb337831d78b5862ea8dd1670"}}}] \ No newline at end of file diff --git a/dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=2.txt b/dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=2.txt deleted file mode 100644 index 9b8cbc4ac..000000000 --- a/dashboard/fixtures/api.github.com_repos_django_django_pulls_state=closed_per_page=100_page=2.txt +++ /dev/null @@ -1,2 +0,0 @@ -application/json; charset=utf-8 -[{"url":"https://api.github.com/repos/django/django/pulls/3806","id":26628363,"html_url":"https://github.com/django/django/pull/3806","diff_url":"https://github.com/django/django/pull/3806.diff","patch_url":"https://github.com/django/django/pull/3806.patch","issue_url":"https://api.github.com/repos/django/django/issues/3806","number":3806,"state":"closed","locked":false,"title":"Fixed #23753 -- Oracle failure with Coalesce","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"body":"This fixes the Oracle errors on CI when mixing CharFields and TextFields. We cast each input to Coalesce to NCLOB when the output of the expression is expected to be TextField (database NCLOB). We can't do this with a converter because the inputs need to be cast, not just the output.","created_at":"2014-12-28T22:18:50Z","updated_at":"2014-12-29T08:50:20Z","closed_at":"2014-12-29T08:47:43Z","merged_at":"2014-12-29T08:47:43Z","merge_commit_sha":"a42bdedda72b6c858b8c81d332acf15cab322104","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/django/django/pulls/3806/commits","review_comments_url":"https://api.github.com/repos/django/django/pulls/3806/comments","review_comment_url":"https://api.github.com/repos/django/django/pulls/comments/{number}","comments_url":"https://api.github.com/repos/django/django/issues/3806/comments","statuses_url":"https://api.github.com/repos/django/django/statuses/1cdfbde4db1ac6bbddb2cf8dd5192831bc0f9ce3","head":{"label":"jarshwah:fix-coalesce-oracle","ref":"fix-coalesce-oracle","sha":"1cdfbde4db1ac6bbddb2cf8dd5192831bc0f9ce3","user":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"repo":{"id":4635741,"name":"django","full_name":"jarshwah/django","owner":{"login":"jarshwah","id":541083,"avatar_url":"https://avatars.githubusercontent.com/u/541083?v=3","gravatar_id":"","url":"https://api.github.com/users/jarshwah","html_url":"https://github.com/jarshwah","followers_url":"https://api.github.com/users/jarshwah/followers","following_url":"https://api.github.com/users/jarshwah/following{/other_user}","gists_url":"https://api.github.com/users/jarshwah/gists{/gist_id}","starred_url":"https://api.github.com/users/jarshwah/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarshwah/subscriptions","organizations_url":"https://api.github.com/users/jarshwah/orgs","repos_url":"https://api.github.com/users/jarshwah/repos","events_url":"https://api.github.com/users/jarshwah/events{/privacy}","received_events_url":"https://api.github.com/users/jarshwah/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarshwah/django","description":"The Web framework for perfectionists with deadlines. Now on GitHub.","fork":true,"url":"https://api.github.com/repos/jarshwah/django","forks_url":"https://api.github.com/repos/jarshwah/django/forks","keys_url":"https://api.github.com/repos/jarshwah/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarshwah/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarshwah/django/teams","hooks_url":"https://api.github.com/repos/jarshwah/django/hooks","issue_events_url":"https://api.github.com/repos/jarshwah/django/issues/events{/number}","events_url":"https://api.github.com/repos/jarshwah/django/events","assignees_url":"https://api.github.com/repos/jarshwah/django/assignees{/user}","branches_url":"https://api.github.com/repos/jarshwah/django/branches{/branch}","tags_url":"https://api.github.com/repos/jarshwah/django/tags","blobs_url":"https://api.github.com/repos/jarshwah/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarshwah/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarshwah/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarshwah/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarshwah/django/statuses/{sha}","languages_url":"https://api.github.com/repos/jarshwah/django/languages","stargazers_url":"https://api.github.com/repos/jarshwah/django/stargazers","contributors_url":"https://api.github.com/repos/jarshwah/django/contributors","subscribers_url":"https://api.github.com/repos/jarshwah/django/subscribers","subscription_url":"https://api.github.com/repos/jarshwah/django/subscription","commits_url":"https://api.github.com/repos/jarshwah/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarshwah/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarshwah/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarshwah/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/jarshwah/django/contents/{+path}","compare_url":"https://api.github.com/repos/jarshwah/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarshwah/django/merges","archive_url":"https://api.github.com/repos/jarshwah/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarshwah/django/downloads","issues_url":"https://api.github.com/repos/jarshwah/django/issues{/number}","pulls_url":"https://api.github.com/repos/jarshwah/django/pulls{/number}","milestones_url":"https://api.github.com/repos/jarshwah/django/milestones{/number}","notifications_url":"https://api.github.com/repos/jarshwah/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarshwah/django/labels{/name}","releases_url":"https://api.github.com/repos/jarshwah/django/releases{/id}","created_at":"2012-06-12T09:53:04Z","updated_at":"2014-06-27T11:10:20Z","pushed_at":"2015-01-12T22:40:09Z","git_url":"git://github.com/jarshwah/django.git","ssh_url":"git@github.com:jarshwah/django.git","clone_url":"https://github.com/jarshwah/django.git","svn_url":"https://github.com/jarshwah/django","homepage":"http://www.djangoproject.com/","size":113167,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"django:master","ref":"master","sha":"932d449f001a94aa5065cda652a442e4b1dd5352","user":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"repo":{"id":4164482,"name":"django","full_name":"django/django","owner":{"login":"django","id":27804,"avatar_url":"https://avatars.githubusercontent.com/u/27804?v=3","gravatar_id":"","url":"https://api.github.com/users/django","html_url":"https://github.com/django","followers_url":"https://api.github.com/users/django/followers","following_url":"https://api.github.com/users/django/following{/other_user}","gists_url":"https://api.github.com/users/django/gists{/gist_id}","starred_url":"https://api.github.com/users/django/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/django/subscriptions","organizations_url":"https://api.github.com/users/django/orgs","repos_url":"https://api.github.com/users/django/repos","events_url":"https://api.github.com/users/django/events{/privacy}","received_events_url":"https://api.github.com/users/django/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/django/django","description":"The Web framework for perfectionists with deadlines.","fork":false,"url":"https://api.github.com/repos/django/django","forks_url":"https://api.github.com/repos/django/django/forks","keys_url":"https://api.github.com/repos/django/django/keys{/key_id}","collaborators_url":"https://api.github.com/repos/django/django/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/django/django/teams","hooks_url":"https://api.github.com/repos/django/django/hooks","issue_events_url":"https://api.github.com/repos/django/django/issues/events{/number}","events_url":"https://api.github.com/repos/django/django/events","assignees_url":"https://api.github.com/repos/django/django/assignees{/user}","branches_url":"https://api.github.com/repos/django/django/branches{/branch}","tags_url":"https://api.github.com/repos/django/django/tags","blobs_url":"https://api.github.com/repos/django/django/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/django/django/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/django/django/git/refs{/sha}","trees_url":"https://api.github.com/repos/django/django/git/trees{/sha}","statuses_url":"https://api.github.com/repos/django/django/statuses/{sha}","languages_url":"https://api.github.com/repos/django/django/languages","stargazers_url":"https://api.github.com/repos/django/django/stargazers","contributors_url":"https://api.github.com/repos/django/django/contributors","subscribers_url":"https://api.github.com/repos/django/django/subscribers","subscription_url":"https://api.github.com/repos/django/django/subscription","commits_url":"https://api.github.com/repos/django/django/commits{/sha}","git_commits_url":"https://api.github.com/repos/django/django/git/commits{/sha}","comments_url":"https://api.github.com/repos/django/django/comments{/number}","issue_comment_url":"https://api.github.com/repos/django/django/issues/comments/{number}","contents_url":"https://api.github.com/repos/django/django/contents/{+path}","compare_url":"https://api.github.com/repos/django/django/compare/{base}...{head}","merges_url":"https://api.github.com/repos/django/django/merges","archive_url":"https://api.github.com/repos/django/django/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/django/django/downloads","issues_url":"https://api.github.com/repos/django/django/issues{/number}","pulls_url":"https://api.github.com/repos/django/django/pulls{/number}","milestones_url":"https://api.github.com/repos/django/django/milestones{/number}","notifications_url":"https://api.github.com/repos/django/django/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/django/django/labels{/name}","releases_url":"https://api.github.com/repos/django/django/releases{/id}","created_at":"2012-04-28T02:47:18Z","updated_at":"2015-01-16T15:28:24Z","pushed_at":"2015-01-16T14:42:08Z","git_url":"git://github.com/django/django.git","ssh_url":"git@github.com:django/django.git","clone_url":"https://github.com/django/django.git","svn_url":"https://github.com/django/django","homepage":"https://www.djangoproject.com/","size":246028,"stargazers_count":12578,"watchers_count":12578,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":4921,"mirror_url":null,"open_issues_count":70,"forks":4921,"open_issues":70,"watchers":12578,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/django/django/pulls/3806"},"html":{"href":"https://github.com/django/django/pull/3806"},"issue":{"href":"https://api.github.com/repos/django/django/issues/3806"},"comments":{"href":"https://api.github.com/repos/django/django/issues/3806/comments"},"review_comments":{"href":"https://api.github.com/repos/django/django/pulls/3806/comments"},"review_comment":{"href":"https://api.github.com/repos/django/django/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/django/django/pulls/3806/commits"},"statuses":{"href":"https://api.github.com/repos/django/django/statuses/1cdfbde4db1ac6bbddb2cf8dd5192831bc0f9ce3"}}}] diff --git a/dashboard/fixtures/code.djangoproject.com_timeline_changeset=on_max=0_daysback=7_format=rss.txt b/dashboard/fixtures/rss_feed_metric.xml similarity index 99% rename from dashboard/fixtures/code.djangoproject.com_timeline_changeset=on_max=0_daysback=7_format=rss.txt rename to dashboard/fixtures/rss_feed_metric.xml index 72dfaebb5..66137844b 100644 --- a/dashboard/fixtures/code.djangoproject.com_timeline_changeset=on_max=0_daysback=7_format=rss.txt +++ b/dashboard/fixtures/rss_feed_metric.xml @@ -1,4 +1,3 @@ -application/rss+xml;charset=utf-8 @@ -14,7 +13,7 @@ application/rss+xml;charset=utf-8 Changeset [c3336e7e]: Removed dumpdata --natural option and serializers use_natural_keys ... - + Tim Graham <timograham@…> Sun, 18 Jan 2015 01:18:34 GMT @@ -30,7 +29,7 @@ Per deprecation timeline; refs <a class="closed ticket" href="https://code.dj changeset Changeset [1d975ff]: Removed usage of deprecated dumpdata options in docs. - + Tim Graham <timograham@…> Sun, 18 Jan 2015 01:14:45 GMT @@ -43,7 +42,7 @@ Removed usage of deprecated dumpdata options in docs. changeset Changeset [8d959f73]: Removed obsolete deprecation warning in runtests.py - + Tim Graham <timograham@…> Sun, 18 Jan 2015 00:41:46 GMT @@ -56,7 +55,7 @@ Removed obsolete deprecation warning in runtests.py changeset Changeset [40d6b37]: Removed BaseMemcachedCacheMethods._get_memcache_timeout backwards ... - + Tim Graham <timograham@…> Sun, 18 Jan 2015 00:32:54 GMT @@ -72,7 +71,7 @@ Per deprecation timeline; refs <a class="closed ticket" href="https://code.dj changeset Changeset [eea66a6e]: [1.7.x] Added removal of check management command to deprecation ... - + Tim Graham <timograham@…> Sun, 18 Jan 2015 00:16:41 GMT @@ -88,7 +87,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [a41d410]: [1.8.x] Added removal of check management command to deprecation ... - + Tim Graham <timograham@…> Sun, 18 Jan 2015 00:15:59 GMT @@ -104,7 +103,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [20e4e8f]: Added removal of check management command to deprecation timeline. - + Tim Graham <timograham@…> Sun, 18 Jan 2015 00:14:44 GMT @@ -117,7 +116,7 @@ Added removal of check management command to deprecation timeline. changeset Changeset [0622bca5]: Removed the validate management command per deprecation timeline. - + Tim Graham <timograham@…> Sun, 18 Jan 2015 00:12:03 GMT @@ -130,7 +129,7 @@ Removed the validate management command per deprecation timeline. changeset Changeset [714277c]: Removed support for SplitDateTimeWidget with DateTimeField per ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 23:49:44 GMT @@ -146,7 +145,7 @@ refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/889 changeset Changeset [ecbe20f]: [1.7.x] Added versionadded to ModelAdmin.get_formsets_with_inlines(); ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 23:18:06 GMT @@ -162,7 +161,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [7cfcdd9]: [1.8.x] Added versionadded to ModelAdmin.get_formsets_with_inlines(); ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 23:12:47 GMT @@ -175,7 +174,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [2c9e9563]: Removed ModelAdmin.get_formsets() per deprecation timeline; refs #20702. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 23:02:35 GMT @@ -188,7 +187,7 @@ Removed ModelAdmin.get_formsets() per deprecation timeline; refs <a class="cl changeset Changeset [3b570db]: Removed BaseDatabaseValidation.validate_field() per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 19:58:09 GMT @@ -201,7 +200,7 @@ Removed BaseDatabaseValidation.validate_field() per deprecation timeline. changeset Changeset [e1b93db]: Removed deprecated aliases in django.db.models. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 19:57:34 GMT @@ -214,7 +213,7 @@ Removed deprecated aliases in django.db.models. changeset Changeset [29737a2]: [1.7.x] Cleaned up migration writer tests Backport of ... - + Markus Holtermann <info@…> Sat, 17 Jan 2015 19:45:41 GMT @@ -230,7 +229,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [5512338]: [1.8.x] Cleaned up migration writer tests Backport of ... - + Markus Holtermann <info@…> Sat, 17 Jan 2015 19:42:58 GMT @@ -246,7 +245,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [2b4ca2e]: Removed unused imports. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 19:42:51 GMT @@ -259,7 +258,7 @@ Removed unused imports. changeset Changeset [c2d5f290]: Removed contrib.flatpages.FlatPageSitemap per deprecation timeline; ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 19:40:22 GMT @@ -272,7 +271,7 @@ Removed contrib.flatpages.FlatPageSitemap per deprecation timeline; refs <a c changeset Changeset [65d55c40]: Cleaned up migration writer tests - + Markus Holtermann <info@…> Sat, 17 Jan 2015 19:29:50 GMT @@ -285,7 +284,7 @@ Cleaned up migration writer tests changeset Changeset [2788c46]: Removed Multiple/ModelChoiceField cache_choices option; refs #22838. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 18:48:46 GMT @@ -298,7 +297,7 @@ Removed Multiple/ModelChoiceField cache_choices option; refs <a class="closed changeset Changeset [4b8d3bb]: Standardized indentation in docs/howto/custom-management-commands.txt. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 18:38:01 GMT @@ -311,7 +310,7 @@ Standardized indentation in docs/howto/custom-management-commands.txt. changeset Changeset [bd93032]: Removed ssi/url tags from future per deprecation timeline; refs #21939. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 18:29:52 GMT @@ -324,7 +323,7 @@ Removed ssi/url tags from future per deprecation timeline; refs <a class="clo changeset Changeset [a58a120]: [1.8.x] Standardized indentation in ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 18:27:59 GMT @@ -337,7 +336,7 @@ Removed ssi/url tags from future per deprecation timeline; refs <a class="clo changeset Changeset [e278407]: Removed unused imports from previous commit. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 18:22:52 GMT @@ -350,7 +349,7 @@ Removed unused imports from previous commit. changeset Changeset [4a03d348]: Removed BaseCommand.requires_model_validation per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 17:59:07 GMT @@ -363,7 +362,7 @@ Removed BaseCommand.requires_model_validation per deprecation timeline. changeset Changeset [85c0eb1]: [1.7.x] Replaced deprecated requires_model_validation in docs. ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 17:52:34 GMT @@ -379,7 +378,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [bfa34788]: [1.8.x] Replaced deprecated requires_model_validation in docs. ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 17:52:30 GMT @@ -395,7 +394,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [18192b9f]: Replaced deprecated requires_model_validation in docs. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 17:51:50 GMT @@ -408,7 +407,7 @@ Replaced deprecated requires_model_validation in docs. changeset Changeset [df3f3bb]: Removed utils.text.javascript_quote() per deprecation timeline; refs ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 17:41:49 GMT @@ -421,7 +420,7 @@ Removed utils.text.javascript_quote() per deprecation timeline; refs <a class changeset Changeset [00a1199]: Removed support for AppCommand.handle_app() per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 17:34:34 GMT @@ -434,7 +433,7 @@ Removed support for AppCommand.handle_app() per deprecation timeline. changeset Changeset [f0a1df0b]: Removed deprecated Chinese language codes; refs #18149. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 16:23:43 GMT @@ -447,7 +446,7 @@ Removed deprecated Chinese language codes; refs <a class="closed ticket" href changeset Changeset [467fd7e]: [1.7.x] Updated tutorial 1 with actual migrate output. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 15:54:34 GMT @@ -460,7 +459,7 @@ Removed deprecated Chinese language codes; refs <a class="closed ticket" href changeset Changeset [9f86d86]: [1.8.x] Updated tutorial 1 with actual migrate output. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 15:46:27 GMT @@ -473,7 +472,7 @@ Removed deprecated Chinese language codes; refs <a class="closed ticket" href changeset Changeset [b845951]: Required sqlparse for SQL splitting per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 15:20:30 GMT @@ -486,7 +485,7 @@ Required sqlparse for SQL splitting per deprecation timeline. changeset Changeset [4aa089a9]: Removed support for custom SQL per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 15:16:06 GMT @@ -499,7 +498,7 @@ Removed support for custom SQL per deprecation timeline. changeset Changeset [a420f83]: Fixed #24055 -- Keep reference to view class for resolve() - + Loic Bistuer <loic.bistuer@…> Sat, 17 Jan 2015 15:09:10 GMT @@ -512,7 +511,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24 changeset Changeset [67235fd]: Removed support for initial_data fixtures per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 14:59:25 GMT @@ -525,7 +524,7 @@ Removed support for initial_data fixtures per deprecation timeline. changeset Changeset [f635d759]: Removed support for old-style test database settings per deprecation ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 14:55:18 GMT @@ -538,7 +537,7 @@ Removed support for old-style test database settings per deprecation timeline. changeset Changeset [d038c54]: Removed django.core.cache.get_cache() per deprecation timeline; refs ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 14:55:18 GMT @@ -551,7 +550,7 @@ Removed django.core.cache.get_cache() per deprecation timeline; refs <a class changeset Changeset [6b1b726]: [1.8.x] Fixed PostGIS crosses lookup and added crosses test Backport ... - + Claude Paroz <claude@…> Sat, 17 Jan 2015 14:46:50 GMT @@ -567,7 +566,7 @@ Backport of aff0e54d5 from master. changeset Changeset [aff0e54d]: Fixed PostGIS crosses lookup and added crosses test - + Claude Paroz <claude@…> Sat, 17 Jan 2015 14:44:49 GMT @@ -580,7 +579,7 @@ Fixed PostGIS crosses lookup and added crosses test changeset Changeset [1b0365ad]: Removed django.utils.tzinfo per deprecation timeline; refs #17262. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 14:32:33 GMT @@ -593,7 +592,7 @@ Removed django.utils.tzinfo per deprecation timeline; refs <a class="closed t changeset Changeset [5f600db3]: [1.7.x] Documented django.utils.timezone.FixedOffset; thanks Aymeric. ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 14:31:59 GMT @@ -609,7 +608,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [b714316]: [1.8.x] Documented django.utils.timezone.FixedOffset; thanks Aymeric. ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 14:31:56 GMT @@ -625,7 +624,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [25264d4e]: Documented django.utils.timezone.FixedOffset; thanks Aymeric. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 14:30:52 GMT @@ -638,7 +637,7 @@ Documented django.utils.timezone.FixedOffset; thanks Aymeric. changeset Changeset [f6463bb3]: Removed the syncdb command per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 14:20:12 GMT @@ -651,7 +650,7 @@ Removed the syncdb command per deprecation timeline. changeset Changeset [f4f24d3]: Removed pre_syncdb and post_syncdb signals per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 14:07:00 GMT @@ -664,7 +663,7 @@ Removed pre_syncdb and post_syncdb signals per deprecation timeline. changeset Changeset [fed25f11]: Removed compatibility with Python 3.2. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 14:00:17 GMT @@ -677,7 +676,7 @@ Removed compatibility with Python 3.2. changeset Changeset [4e65f195]: Removed django.db.models.loading per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 13:40:59 GMT @@ -690,7 +689,7 @@ Removed django.db.models.loading per deprecation timeline. changeset Changeset [d4ee6cd]: Removed ModelAdmin.declared_fieldsets per deprecation timeline; refs ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 13:40:33 GMT @@ -703,7 +702,7 @@ Removed ModelAdmin.declared_fieldsets per deprecation timeline; refs <a class changeset Changeset [c820892]: Removed django.utils.datastructures.SortedDict per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 13:40:23 GMT @@ -716,7 +715,7 @@ Removed django.utils.datastructures.<a class="wiki" href="https://code.django changeset Changeset [41f0d3d3]: Removed FastCGI support per deprecation timeline; refs #20766. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 13:32:31 GMT @@ -729,7 +728,7 @@ Removed FastCGI support per deprecation timeline; refs <a class="closed ticke changeset Changeset [37b7776a]: Removed django.utils.datastructures.MergeDict per deprecation ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 13:13:36 GMT @@ -742,7 +741,7 @@ Removed django.utils.datastructures.MergeDict per deprecation timeline; refs < changeset Changeset [75f107b8]: Removed request.REQUEST per deprecation timeline; refs #18659. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 13:05:18 GMT @@ -755,7 +754,7 @@ Removed request.REQUEST per deprecation timeline; refs <a class="closed ticke changeset Changeset [61ad1ea]: Removed django.utils.functional.memoize per deprecation timeline. ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 12:55:32 GMT @@ -771,7 +770,7 @@ refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/213 changeset Changeset [9ce36512]: Removed backwards compatibility shims for "util" modules per ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 12:40:12 GMT @@ -787,7 +786,7 @@ refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/176 changeset Changeset [d79a30b]: Removed fallback suport for allow_syncdb() in database routers per ... - + Tim Graham <timograham@…> Sat, 17 Jan 2015 12:39:46 GMT @@ -800,7 +799,7 @@ Removed fallback suport for allow_syncdb() in database routers per deprecation t changeset Changeset [b952c3fc]: Removed django.utils.unittest per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 12:32:22 GMT @@ -813,7 +812,7 @@ Removed django.utils.unittest per deprecation timeline. changeset Changeset [ce78b954]: Removed django.utils.importlib per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 12:14:21 GMT @@ -826,7 +825,7 @@ Removed django.utils.importlib per deprecation timeline. changeset Changeset [1c8b637e]: Removed django.utils.dictconfig per deprecation timeline. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 12:13:51 GMT @@ -839,7 +838,7 @@ Removed django.utils.dictconfig per deprecation timeline. changeset Changeset [428c8840]: Used features in GIS sitemap view conditionals - + Claude Paroz <claude@…> Sat, 17 Jan 2015 11:41:18 GMT @@ -852,7 +851,7 @@ Used features in GIS sitemap view conditionals changeset Changeset [53e1423]: Updated en translation catalogs Forward port of 666c12e52 from ... - + Claude Paroz <claude@…> Sat, 17 Jan 2015 10:19:37 GMT @@ -868,7 +867,7 @@ Forward port of 666c12e52 from stable/1.8.x changeset Changeset [666c12e5]: [1.8.x] Updated en translation catalogs - + Claude Paroz <claude@…> Sat, 17 Jan 2015 10:18:45 GMT @@ -881,7 +880,7 @@ Forward port of 666c12e52 from stable/1.8.x changeset Changeset [dec5157a]: [1.8.x] Complemented test about non-supported aggregation exception ... - + Claude Paroz <claude@…> Sat, 17 Jan 2015 09:04:38 GMT @@ -897,7 +896,7 @@ Backport of d69ecf922dd from master. changeset Changeset [d69ecf9]: Complemented test about non-supported aggregation exception - + Claude Paroz <claude@…> Sat, 17 Jan 2015 09:01:55 GMT @@ -910,7 +909,7 @@ Complemented test about non-supported aggregation exception changeset Changeset [eb6a07e0]: [1.8.x] Fixed typo in 'Django Template Language' Backport of ... - + Markus Holtermann <info@…> Sat, 17 Jan 2015 02:06:26 GMT @@ -926,7 +925,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [d60b96d]: Fixed typo in 'Django Template Language' - + Markus Holtermann <info@…> Sat, 17 Jan 2015 02:05:28 GMT @@ -939,7 +938,7 @@ Fixed typo in 'Django Template Language' changeset Changeset [c5125888]: Increased the default PBKDF2 iterations. - + Tim Graham <timograham@…> Sat, 17 Jan 2015 00:27:10 GMT @@ -952,7 +951,7 @@ Increased the default PBKDF2 iterations. changeset Changeset [8be1b8b4]: [1.8.x] Bumped django_next_version in docs config. - + Tim Graham <timograham@…> Fri, 16 Jan 2015 23:30:49 GMT @@ -965,7 +964,7 @@ Increased the default PBKDF2 iterations. changeset Changeset [d468903]: Bumped version to 1.9 in docs config. - + Tim Graham <timograham@…> Fri, 16 Jan 2015 23:30:28 GMT @@ -978,7 +977,7 @@ Bumped version to 1.9 in docs config. changeset Changeset [cba3d8a]: [1.6.x] Fixed a typo in the test responses docs. Backport of ... - + Tim Graham <timograham@…> Fri, 16 Jan 2015 23:24:51 GMT @@ -994,7 +993,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [be0bc9a9]: [1.7.x] Fixed a typo in the test responses docs. Backport of ... - + Tim Graham <timograham@…> Fri, 16 Jan 2015 23:24:48 GMT @@ -1010,7 +1009,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [801287b]: [1.8.x] Fixed a typo in the test responses docs. Backport of ... - + Tim Graham <timograham@…> Fri, 16 Jan 2015 23:24:44 GMT @@ -1026,7 +1025,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [d9edd2f]: Fixed #21108 -- Updated how to release docs: prereleases now go to PyPI. - + Tim Graham <timograham@…> Fri, 16 Jan 2015 23:24:10 GMT @@ -1039,7 +1038,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/21 changeset Changeset [996292d6]: Fixed a typo in the test responses docs. - + Simon Charette <charette.s@…> Fri, 16 Jan 2015 23:17:00 GMT @@ -1052,7 +1051,7 @@ Fixed a typo in the test responses docs. changeset Changeset [3fe3bdd]: Added stub release notes for Django 1.9. - + Tim Graham <timograham@…> Fri, 16 Jan 2015 23:00:45 GMT @@ -1065,7 +1064,7 @@ Added stub release notes for Django 1.9. changeset Changeset [c72448b5]: Bumped version to 1.8 alpha 1. - + Tim Graham <timograham@…> Fri, 16 Jan 2015 22:06:32 GMT @@ -1078,7 +1077,7 @@ Bumped version to 1.8 alpha 1. changeset Changeset [3f23f1c]: Bumped version; master is now 1.9 pre-alpha. - + Tim Graham <timograham@…> Fri, 16 Jan 2015 22:04:35 GMT @@ -1091,7 +1090,7 @@ Bumped version; master is now 1.9 pre-alpha. changeset Changeset [39d95fb]: Fixed #24092 -- Widened base field support for ArrayField. Several ... - + Tim Graham <timograham@…> Fri, 16 Jan 2015 21:15:16 GMT @@ -1128,7 +1127,7 @@ Thanks to smclenithan for the report. changeset Changeset [a17724b7]: Fixed the length of a headline in the 1.8 release notes. This broke ... - + Jannis Leidel <jannis@…> Fri, 16 Jan 2015 20:29:28 GMT @@ -1144,7 +1143,7 @@ This broke the website design in the sidebar because the line could not be wrapp changeset Changeset [e8171da]: Fixed #24146 -- Fixed a missing fields regression in admin checks. ... - + Tim Graham <timograham@…> Fri, 16 Jan 2015 19:47:09 GMT @@ -1163,7 +1162,7 @@ Thanks to PirosB3 and Tim Graham. changeset Changeset [8e8daf7c]: Removed empty sections in 1.8 minor features. - + Tim Graham <timograham@…> Fri, 16 Jan 2015 19:41:05 GMT @@ -1176,7 +1175,7 @@ Removed empty sections in 1.8 minor features. changeset Changeset [b4ac232]: Fixed #24099 -- Removed contenttype.name deprecated field This ... - + Markus Holtermann <info@…> Fri, 16 Jan 2015 19:21:34 GMT @@ -1194,7 +1193,7 @@ reviews. changeset Changeset [374c2419]: Tested that geo aggregates support slicing Refs #15101. Patch ... - + Claude Paroz <claude@…> Fri, 16 Jan 2015 19:10:25 GMT @@ -1210,7 +1209,7 @@ Refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/151 changeset Changeset [a79e6b67]: Fixed #24152 -- Deprecated GeoQuerySet aggregate methods Thanks Josh ... - + Claude Paroz <claude@…> Fri, 16 Jan 2015 18:53:02 GMT @@ -1226,7 +1225,7 @@ Thanks Josh Smeaton and Tim Graham for the reviews. changeset Changeset [cef3f805]: [1.7.x] Fixed #24160 -- Fixed model_regress test on Windows; refs ... - + Tim Graham <timograham@…> Fri, 16 Jan 2015 17:03:15 GMT @@ -1242,7 +1241,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [5338ff4]: Fixed #24160 -- Fixed model_regress test on Windows; refs #24007. - + Tim Graham <timograham@…> Fri, 16 Jan 2015 16:59:08 GMT @@ -1255,7 +1254,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24 changeset Changeset [fb614ff4]: [1.6.x] Fixed #23312 -- Marked an i18n test as expectedFailure on ... - + Tim Graham <timograham@…> Fri, 16 Jan 2015 15:34:46 GMT @@ -1271,7 +1270,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [433e7dd]: [1.7.x] Fixed #23312 -- Marked an i18n test as expectedFailure on ... - + Tim Graham <timograham@…> Fri, 16 Jan 2015 15:31:49 GMT @@ -1284,7 +1283,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [bd08cfca]: [1.7.x] Fixed #24143 -- Encouraged use of Http404 messages for ... - + Tim Graham <timograham@…> Fri, 16 Jan 2015 14:42:03 GMT @@ -1300,7 +1299,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [726a9550]: Fixed #24143 -- Encouraged use of Http404 messages for debugging. - + Tim Graham <timograham@…> Fri, 16 Jan 2015 14:41:01 GMT @@ -1313,7 +1312,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24 changeset Changeset [a34fba5]: Simplified a bit GeoAggregate classes Thanks Josh Smeaton for the ... - + Claude Paroz <claude@…> Fri, 16 Jan 2015 09:40:45 GMT @@ -1329,7 +1328,7 @@ Thanks Josh Smeaton for the review. Refs <a class="closed ticket" href="https changeset Changeset [065b2a82]: [1.7.x] Fixed #24135 -- Made RenameModel rename many-to-many tables. ... - + Tim Graham <timograham@…> Fri, 16 Jan 2015 01:43:49 GMT @@ -1349,7 +1348,7 @@ Thanks ...">28db4af80a319485c0da724d692e2f8396aa57e3</a> from master changeset Changeset [28db4af]: Fixed #24135 -- Made RenameModel rename many-to-many tables. Thanks ... - + Tim Graham <timograham@…> Fri, 16 Jan 2015 01:34:33 GMT @@ -1365,7 +1364,7 @@ Thanks Simon and Markus for reviews. changeset Changeset [3f9ec12d]: Fixed #23712 -- Fixed KeyError with BaseForm._html_output() - + Tim Graham <timograham@…> Fri, 16 Jan 2015 01:19:53 GMT @@ -1378,7 +1377,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/23 changeset Changeset [faf0d66a]: Fixed #23850 -- Fixed a migrations test failure on Mac OS X & Python 3 - + Tim Graham <timograham@…> Fri, 16 Jan 2015 00:45:43 GMT @@ -1391,7 +1390,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/23 changeset Changeset [39b58ad]: Fixed #24148 -- Documented a bug with case expressions in SQLite < 3.7.0 - + Tim Graham <timograham@…> Fri, 16 Jan 2015 00:42:05 GMT @@ -1404,7 +1403,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24 changeset Changeset [b419bd3]: [1.7.x] Refs #24075 -- Silenced needless call_command output while ... - + Markus Holtermann <info@…> Thu, 15 Jan 2015 20:13:27 GMT @@ -1423,7 +1422,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [51dc617b]: Refs #24075 -- Silenced needless call_command output while running ... - + Markus Holtermann <info@…> Thu, 15 Jan 2015 20:07:39 GMT @@ -1439,7 +1438,7 @@ Thanks Tim Graham for the report changeset Changeset [67dbc56]: Made an expressions_case test work without Pillow. - + Tim Graham <timograham@…> Thu, 15 Jan 2015 19:02:58 GMT @@ -1452,7 +1451,7 @@ Made an expressions_case test work without Pillow. changeset Changeset [47bdad4e]: Replaced inner functions by class methods. refs #24031 Thanks to Tim ... - + Simon Charette <charette.s@…> Thu, 15 Jan 2015 18:03:34 GMT @@ -1471,7 +1470,7 @@ Thanks to Tim Graham and Michał Modzelewski for the review. changeset Changeset [57671dd0]: [1.5.x] Direct readers to format_html() in mark_safe() docs. Backport ... - + Luke Plant <L.Plant.98@…> Thu, 15 Jan 2015 08:32:32 GMT @@ -1487,7 +1486,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [b9101fa7]: [1.6.x] Direct readers to format_html() in mark_safe() docs. Backport ... - + Luke Plant <L.Plant.98@…> Thu, 15 Jan 2015 08:30:38 GMT @@ -1503,7 +1502,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [327703c]: [1.7.x] Direct readers to format_html() in mark_safe() docs. Backport ... - + Luke Plant <L.Plant.98@…> Thu, 15 Jan 2015 08:29:00 GMT @@ -1519,7 +1518,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [4832c004]: Direct readers to format_html() in mark_safe() docs. - + Luke Plant <L.Plant.98@…> Thu, 15 Jan 2015 08:24:54 GMT @@ -1532,7 +1531,7 @@ Direct readers to format_html() in mark_safe() docs. changeset Changeset [67bcae1]: Moved check_aggregate_support to BaseSpatialOperations - + Claude Paroz <claude@…> Wed, 14 Jan 2015 21:03:41 GMT @@ -1545,7 +1544,7 @@ Moved check_aggregate_support to BaseSpatialOperations changeset Changeset [9801d41]: Skipped a problematic file_storage test on Windows. - + Tim Graham <timograham@…> Wed, 14 Jan 2015 20:00:27 GMT @@ -1558,7 +1557,7 @@ Skipped a problematic file_storage test on Windows. changeset Changeset [2d5da57f]: Fixed incorrect error message in Options.get_fields() - + Tim Graham <timograham@…> Wed, 14 Jan 2015 19:51:05 GMT @@ -1571,7 +1570,7 @@ Fixed incorrect error message in Options.get_fields() changeset Changeset [478546f]: [1.7.x] Fixed #24075 -- Prevented running post_migrate signals when ... - + Markus Holtermann <info@…> Wed, 14 Jan 2015 19:37:56 GMT @@ -1590,7 +1589,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [28308078]: Fixed #22603 -- Reorganized classes in django.db.backends. - + Tim Graham <timograham@…> Wed, 14 Jan 2015 19:16:20 GMT @@ -1603,7 +1602,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/22 changeset Changeset [737d249]: Fixed #24075 -- Prevented running post_migrate signals when unapplying ... - + Markus Holtermann <info@…> Wed, 14 Jan 2015 18:59:39 GMT @@ -1619,7 +1618,7 @@ Thanks Florian Apolloner for the report and Claude Paroz and Tim Graham for the changeset Changeset [99e6ac7]: [1.4.x] Fixed a static view test on Windows. Backport of ... - + Tim Graham <timograham@…> Wed, 14 Jan 2015 18:57:59 GMT @@ -1635,7 +1634,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [79df62f]: [1.6.x] Fixed a static view test on Windows. Backport of ... - + Tim Graham <timograham@…> Wed, 14 Jan 2015 18:57:14 GMT @@ -1651,7 +1650,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [02c059f]: [1.7.x] Fixed a static view test on Windows. Backport of ... - + Tim Graham <timograham@…> Wed, 14 Jan 2015 18:57:10 GMT @@ -1667,7 +1666,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [a6f144f]: Fixed a static view test on Windows. - + Tim Graham <timograham@…> Wed, 14 Jan 2015 18:56:49 GMT @@ -1680,7 +1679,7 @@ Fixed a static view test on Windows. changeset Changeset [88786af]: Fixed #24147 -- Prevented managers leaking model during migrations ... - + Markus Holtermann <info@…> Wed, 14 Jan 2015 15:09:33 GMT @@ -1696,7 +1695,7 @@ Thanks Tim Graham for the review. changeset Changeset [2e261799]: [1.7.x] Added stub release notes for 1.7.4. Backport of ... - + Tim Graham <timograham@…> Wed, 14 Jan 2015 14:48:06 GMT @@ -1712,7 +1711,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [ec7ef5af]: Added stub release notes for 1.7.4. - + Tim Graham <timograham@…> Wed, 14 Jan 2015 14:47:29 GMT @@ -1725,7 +1724,7 @@ Added stub release notes for 1.7.4. changeset Changeset [dc90bf2]: Removed unused import - + Claude Paroz <claude@…> Wed, 14 Jan 2015 08:31:24 GMT @@ -1738,7 +1737,7 @@ Removed unused import changeset Changeset [1913c1a]: Added today's security issues to the archive. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 19:44:08 GMT @@ -1751,7 +1750,7 @@ Added today's security issues to the archive. changeset Changeset [7ecd6544]: Removed blank lines from docs/releases/security.txt - + Tim Graham <timograham@…> Tue, 13 Jan 2015 19:37:30 GMT @@ -1764,7 +1763,7 @@ Removed blank lines from docs/releases/security.txt changeset Changeset [4296a1da]: [1.4.x] Post-release version bump. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 19:16:07 GMT @@ -1777,7 +1776,7 @@ Removed blank lines from docs/releases/security.txt changeset Changeset [4c6bd574]: [1.6.x] Post-release version bump. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 19:15:55 GMT @@ -1790,7 +1789,7 @@ Removed blank lines from docs/releases/security.txt changeset Changeset [f7ce66b]: [1.7.x] Post-release version bump. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 19:14:05 GMT @@ -1803,7 +1802,7 @@ Removed blank lines from docs/releases/security.txt changeset Changeset [bd9dcd2]: [1.4.x] Bumped version for 1.4.18 release. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:14:08 GMT @@ -1816,7 +1815,7 @@ Removed blank lines from docs/releases/security.txt changeset Changeset [e2fea7c7]: [1.6.x] Bumped version for 1.6.10 release. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:12:22 GMT @@ -1829,7 +1828,7 @@ Removed blank lines from docs/releases/security.txt changeset Changeset [6bf1930f]: [1.7.x] Bumped version for 1.7.3 release. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:11:37 GMT @@ -1842,7 +1841,7 @@ Removed blank lines from docs/releases/security.txt changeset Changeset [88b7957]: [1.4.x] Added dates to release notes. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:10:54 GMT @@ -1855,7 +1854,7 @@ Removed blank lines from docs/releases/security.txt changeset Changeset [f9de1998]: [1.6.x] Added dates to release notes. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:10:25 GMT @@ -1868,7 +1867,7 @@ Removed blank lines from docs/releases/security.txt changeset Changeset [d7a06ee7]: [1.6.x] Fixed DoS possibility in ModelMultipleChoiceField. This is a ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:10:11 GMT @@ -1887,7 +1886,7 @@ Thanks Keryn Knight for the report and initial patch. changeset Changeset [553779c]: [1.6.x] Prevented views.static.serve() from using large memory on ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:10:11 GMT @@ -1903,7 +1902,7 @@ This is a security fix. Disclosure following shortly. changeset Changeset [72e0b03]: [1.6.x] Fixed is_safe_url() to handle leading whitespace. This is a ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:10:11 GMT @@ -1919,7 +1918,7 @@ This is a security fix. Disclosure following shortly. changeset Changeset [d7597b31]: [1.6.x] Stripped headers containing underscores to prevent spoofing in ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:10:11 GMT @@ -1938,7 +1937,7 @@ Thanks to Jedediah Smith for the report. changeset Changeset [f143e25]: [1.6.x] Added stub release notes for security releases. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:10:11 GMT @@ -1951,7 +1950,7 @@ Thanks to Jedediah Smith for the report. changeset Changeset [9b403a1]: [1.7.x] Added dates to release notes. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:09:34 GMT @@ -1964,7 +1963,7 @@ Thanks to Jedediah Smith for the report. changeset Changeset [cbbe6a6a]: Added dates to release notes. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:08:57 GMT @@ -1977,7 +1976,7 @@ Added dates to release notes. changeset Changeset [baf2542]: Fixed DoS possibility in ModelMultipleChoiceField. This is a security ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:03:06 GMT @@ -1996,7 +1995,7 @@ Thanks Keryn Knight for the report and initial patch. changeset Changeset [a3bebfd]: Ensured views.static.serve() doesn't use large memory on large files. ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:03:06 GMT @@ -2012,7 +2011,7 @@ This issue was fixed in master by refs <a class="closed ticket" href="https:/ changeset Changeset [69b5e667]: Fixed is_safe_url() to handle leading whitespace. This is a security ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:03:06 GMT @@ -2028,7 +2027,7 @@ This is a security fix. Disclosure following shortly. changeset Changeset [316b8d4]: Stripped headers containing underscores to prevent spoofing in WSGI ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:03:05 GMT @@ -2047,7 +2046,7 @@ Thanks to Jedediah Smith for the report. changeset Changeset [958aeda]: Added stub release notes for security releases. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:03:05 GMT @@ -2060,7 +2059,7 @@ Added stub release notes for security releases. changeset Changeset [bcfb477]: [1.7.x] Fixed DoS possibility in ModelMultipleChoiceField. This is a ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:02:56 GMT @@ -2079,7 +2078,7 @@ Thanks Keryn Knight for the report and initial patch. changeset Changeset [818e59a3]: [1.7.x] Prevented views.static.serve() from using large memory on ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:02:56 GMT @@ -2095,7 +2094,7 @@ This is a security fix. Disclosure following shortly. changeset Changeset [de67dedc]: [1.7.x] Fixed is_safe_url() to handle leading whitespace. This is a ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:02:56 GMT @@ -2111,7 +2110,7 @@ This is a security fix. Disclosure following shortly. changeset Changeset [41b4bc7]: [1.7.x] Stripped headers containing underscores to prevent spoofing in ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:02:56 GMT @@ -2130,7 +2129,7 @@ Thanks to Jedediah Smith for the report. changeset Changeset [33f1ccf5]: [1.7.x] Added stub release notes for security releases. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 18:02:55 GMT @@ -2143,7 +2142,7 @@ Thanks to Jedediah Smith for the report. changeset Changeset [a1a23038]: [1.6.x] Fixed bad model example in admin docs. Backport of ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 16:54:05 GMT @@ -2159,7 +2158,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [6a08020f]: [1.7.x] Fixed bad model example in admin docs. Backport of ... - + Tim Graham <timograham@…> Tue, 13 Jan 2015 16:53:59 GMT @@ -2175,7 +2174,7 @@ Backport of <a class="changeset" href="https://code.djangoproject.com/changes changeset Changeset [e7771ec]: Fixed bad model example in admin docs. - + Tim Graham <timograham@…> Tue, 13 Jan 2015 16:53:03 GMT @@ -2188,7 +2187,7 @@ Fixed bad model example in admin docs. changeset Changeset [e084ff0]: Fixed #24136 -- Prevented crash when convert_extent input is None ... - + Claude Paroz <claude@…> Tue, 13 Jan 2015 16:27:11 GMT @@ -2204,7 +2203,7 @@ Thanks Max Demars for the report. changeset Changeset [65246de7]: Fixed #24031 -- Added CASE expressions to the ORM. - + Tim Graham <timograham@…> Mon, 12 Jan 2015 23:15:34 GMT @@ -2217,7 +2216,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24 changeset Changeset [aa8ee6a]: Fixed test failures in Oracle introspection Refs #17785 - + Shai Berger <shai@…> Mon, 12 Jan 2015 23:00:09 GMT @@ -2233,7 +2232,7 @@ Refs <a class="closed ticket" href="https://code.djangoproject.com/ticket/177 changeset Changeset [5d7217dc]: Fixed typo in docs/release/1.8.txt & added word for spelling check. - + Tim Graham <timograham@…> Mon, 12 Jan 2015 22:53:32 GMT @@ -2246,7 +2245,7 @@ Fixed typo in docs/release/1.8.txt &amp; added word for spelling check. changeset Changeset [3844ccc9]: Fixed #24138 -- Added modelform_factory to __all__. - + Tim Graham <timograham@…> Mon, 12 Jan 2015 22:44:06 GMT @@ -2259,7 +2258,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24 changeset Changeset [21b858c]: Fixed #24060 -- Added OrderBy Expressions - + Josh Smeaton <josh.smeaton@…> Mon, 12 Jan 2015 22:39:55 GMT @@ -2272,7 +2271,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24 changeset Changeset [f48e2258]: Fixed #24133 -- Replaced formatting syntax in success_url placeholders ... - + Claude Paroz <claude@…> Mon, 12 Jan 2015 21:51:22 GMT @@ -2289,7 +2288,7 @@ for the reviews. changeset Changeset [5f7230e]: Fixed #24124 (again) -- Updated tests with new default ... - + Aymeric Augustin <aymeric.augustin@…> Mon, 12 Jan 2015 21:31:44 GMT @@ -2305,7 +2304,7 @@ Thanks Collin for the review. changeset Changeset [511a53b]: Avoided exceptions in admindocs' template detail view. This is ... - + Aymeric Augustin <aymeric.augustin@…> Mon, 12 Jan 2015 20:01:34 GMT @@ -2325,7 +2324,7 @@ Refs <a class="new ticket" href="https://code.djangoproject.com/ticket/24125" changeset Changeset [3bba4b42]: Avoided exceptions in a non-critical check in the admin. This change ... - + Aymeric Augustin <aymeric.augustin@…> Mon, 12 Jan 2015 20:01:34 GMT @@ -2343,7 +2342,7 @@ check is silently skipped when no Django template engine is configured. changeset Changeset [6b5113ec]: Made debug views not crash when there isn't a default template engine. - + Aymeric Augustin <aymeric.augustin@…> Mon, 12 Jan 2015 20:01:34 GMT @@ -2356,7 +2355,7 @@ Made debug views not crash when there isn't a default template engine. changeset Changeset [79deb6a0]: Accounted for multiple template engines in template responses. - + Aymeric Augustin <aymeric.augustin@…> Mon, 12 Jan 2015 20:01:34 GMT @@ -2369,7 +2368,7 @@ Accounted for multiple template engines in template responses. changeset Changeset [a3e783fe]: Deprecated passing a Context to a generic Template.render. A ... - + Aymeric Augustin <aymeric.augustin@…> Mon, 12 Jan 2015 20:01:34 GMT @@ -2393,7 +2392,7 @@ rendered. changeset Changeset [71b7668]: Rewrapped TemplateSyntaxError in Jinja2 backend. Changed import style ... - + Aymeric Augustin <aymeric.augustin@…> Mon, 12 Jan 2015 20:01:34 GMT @@ -2410,7 +2409,7 @@ APIs. changeset Changeset [4c413e23]: Fixed #17785 -- Preferred column names in get_relations introspection ... - + Claude Paroz <claude@…> Mon, 12 Jan 2015 18:58:47 GMT @@ -2427,7 +2426,7 @@ Tim Graham for the review. changeset Changeset [b75c707]: Fixed #24089 -- Added check for when ModelAdmin.fieldsets[1]['fields'] ... - + Tim Graham <timograham@…> Mon, 12 Jan 2015 18:47:58 GMT @@ -2440,7 +2439,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24 changeset Changeset [eeb88123]: Fixed #24129 -- Added indicator that migrations are rendering the ... - + Markus Holtermann <info@…> Mon, 12 Jan 2015 18:23:46 GMT @@ -2456,7 +2455,7 @@ Thanks Tim Graham for the review. changeset Changeset [9f51d0c]: Fixed test from refs #23913 when running tests in reverse. - + Tim Graham <timograham@…> Mon, 12 Jan 2015 18:20:44 GMT @@ -2469,7 +2468,7 @@ Fixed test from refs <a class="closed ticket" href="https://code.djangoprojec changeset Changeset [26a92619]: Fixed #24124 -- Changed context_processors in the default settings.py - + Collin Anderson <cmawebsite@…> Mon, 12 Jan 2015 18:17:44 GMT @@ -2482,7 +2481,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/24 changeset Changeset [bbbed99]: Fixed #24123 -- Used all available migrations to generate the initial ... - + Markus Holtermann <info@…> Mon, 12 Jan 2015 17:39:18 GMT @@ -2498,7 +2497,7 @@ Thanks Collin Anderson for the input when creating the patch and Tim Graham for changeset Changeset [8f5d6c77]: Fixed #23878 -- Moved Query and Prefetch documentation - + Tim Graham <timograham@…> Mon, 12 Jan 2015 16:35:20 GMT @@ -2511,7 +2510,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/23 changeset Changeset [58833f51]: Made Django's templates get their own LANGUAGE_* variables. Refs #24117 - + Tim Graham <timograham@…> Mon, 12 Jan 2015 15:54:59 GMT @@ -2527,7 +2526,7 @@ Refs <a class="new ticket" href="https://code.djangoproject.com/ticket/24117" changeset Changeset [a7c256c]: Fixed #9893 -- Allowed using a field's max_length in the Storage. - + Tim Graham <timograham@…> Mon, 12 Jan 2015 14:09:18 GMT @@ -2540,7 +2539,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/98 changeset Changeset [b5c1a85]: Fixed #24118 -- Added --debug-sql option for tests. Added a ... - + Marc Tamlyn <marc.tamlyn@…> Mon, 12 Jan 2015 08:16:08 GMT @@ -2562,7 +2561,7 @@ discussion. changeset Changeset [68a439a]: Removed supports_binary_field flag as all backends support them It ... - + Claude Paroz <claude@…> Sun, 11 Jan 2015 22:34:47 GMT @@ -2580,7 +2579,7 @@ binary fields, it is unneeded. Refs <a class="closed ticket" href="https://co changeset Changeset [d563e3b]: Fixed #23913 -- Deprecated the `=` comparison in `if` template tag. - + Tim Graham <timograham@…> Sun, 11 Jan 2015 20:21:01 GMT @@ -2593,7 +2592,7 @@ Fixed <a class="closed ticket" href="https://code.djangoproject.com/ticket/23 changeset Changeset [412066e7]: Revert "Marked a test as an expected failure on MySQL and Python 3.2." ... - + Claude Paroz <claude@…> Sun, 11 Jan 2015 19:59:07 GMT @@ -2611,7 +2610,7 @@ We officially don't support MySQL on Python 3.2. Refs <a class="closed ticket changeset Changeset [28de5cd]: Fixed spelling errors in docs. - + Tim Graham <timograham@…> Sun, 11 Jan 2015 18:24:13 GMT @@ -2624,4 +2623,4 @@ Fixed spelling errors in docs. changeset - \ No newline at end of file + diff --git a/dashboard/tests.py b/dashboard/tests.py index 0ef9d2207..2d81ddfae 100644 --- a/dashboard/tests.py +++ b/dashboard/tests.py @@ -1,11 +1,12 @@ # -*- coding: utf-8 -*- +import codecs import json -from django.contrib.contenttypes.models import ContentType from django.http import Http404 from django.test import TestCase, RequestFactory from django_hosts.resolvers import reverse import mock -import rmoq +import requests_mock +from unipath import Path from .models import TracTicketMetric, RSSFeedMetric, GithubItemCountMetric, Metric from .views import index, metric_detail, metric_json @@ -58,10 +59,8 @@ def test_metric_json(self): class MetricMixin(object): def test_get_absolute_url(self): - self.assertEqual( - self.instance.get_absolute_url(), - 'http://dashboard.djangoproject.dev:8000/metric/%s/' % self.instance.slug - ) + url_path = '/metric/%s/' % self.instance.slug + self.assertTrue(url_path in self.instance.get_absolute_url()) class TracTicketMetricTestCase(TestCase, MetricMixin): @@ -79,23 +78,34 @@ def test_fetch(self, mock_server_proxy): class RSSFeedMetricTestCase(TestCase, MetricMixin): fixtures = ['dashboard_test_data'] + feed_url = 'http://code.djangoproject.com/timeline?changeset=on&max=0&daysback=7&format=rss' + fixtures_path = Path(__file__).parent.child('fixtures', 'rss_feed_metric.xml') def setUp(self): super(RSSFeedMetricTestCase, self).setUp() self.instance = RSSFeedMetric.objects.last() - @rmoq.activate('dashboard/fixtures') - def test_fetch(self): + @requests_mock.mock() + def test_fetch(self, mocker): + with codecs.open(self.fixtures_path, 'r', 'utf-8') as fixtures: + feed_items = fixtures.read() + mocker.get(self.feed_url, text=feed_items) self.assertEqual(self.instance.fetch(), 177) class GithubItemCountMetricTestCase(TestCase, MetricMixin): fixtures = ['dashboard_test_data'] + api_url1 = 'https://api.github.com/repos/django/django/pulls?state=closed&per_page=100&page=1' + api_url2 = 'https://api.github.com/repos/django/django/pulls?state=closed&per_page=100&page=2' def setUp(self): super(GithubItemCountMetricTestCase, self).setUp() self.instance = GithubItemCountMetric.objects.last() - @rmoq.activate('dashboard/fixtures') - def test_fetch(self): - self.assertEqual(self.instance.fetch(), 101) + @requests_mock.mock() + def test_fetch(self, mocker): + # faking a JSON output with 100 items first + mocker.get(self.api_url1, text=json.dumps([{'id': i} for i in range(100)])) + # and then with 42 items on the second page + mocker.get(self.api_url2, text=json.dumps([{'id': i} for i in range(42)])) + self.assertEqual(self.instance.fetch(), 142) diff --git a/requirements/dev.txt b/requirements/dev.txt index e11bff069..f699e5800 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -2,4 +2,3 @@ Fabric==1.10.1 whoosh<2.5 -rmoq==0.2.5 From a1ec64b190c38b22f4fba5f9093ca9e94f178a52 Mon Sep 17 00:00:00 2001 From: Jannis Leidel Date: Mon, 26 Jan 2015 14:29:29 +0100 Subject: [PATCH 3/6] Cosmentic updates. --- README.rst | 5 +++-- dashboard/models.py | 2 +- dashboard/urls.py | 6 +++--- djangoproject/templates/dashboard/index.html | 2 +- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/README.rst b/README.rst index a78d558ce..b04b66023 100644 --- a/README.rst +++ b/README.rst @@ -77,8 +77,9 @@ To run locally, do the usual: make run This runs both the main site ("www") as well as the - docs site in the same process. Open http://www.djangoproject.dev:8000/ - or http://docs.djangoproject.dev:8000/. + docs and dashboard site in the same process. + Open http://www.djangoproject.dev:8000/, http://docs.djangoproject.dev:8000/ + or http://dashboard.djangoproject.dev:8000/. Running the tests ----------------- diff --git a/dashboard/models.py b/dashboard/models.py index 4fe2975af..cd47f5888 100644 --- a/dashboard/models.py +++ b/dashboard/models.py @@ -218,7 +218,7 @@ def _calculate(self, failures, total): if self.is_percentage: if not total: return 0 - value = (value * 100)/total + value = (value * 100) / total return value def fetch(self): diff --git a/dashboard/urls.py b/dashboard/urls.py index 2220bc76f..d52e6fda2 100644 --- a/dashboard/urls.py +++ b/dashboard/urls.py @@ -2,7 +2,7 @@ from django.conf.urls import url urlpatterns = [ - url('^$', 'dashboard.views.index', name="dashboard-index"), - url('^metric/([\w-]+)/$', 'dashboard.views.metric_detail', name="metric-detail"), - url('^metric/([\w-]+).json$', 'dashboard.views.metric_json', name="metric-json"), + url(r'^$', 'dashboard.views.index', name="dashboard-index"), + url(r'^metric/([\w-]+)/$', 'dashboard.views.metric_detail', name="metric-detail"), + url(r'^metric/([\w-]+).json$', 'dashboard.views.metric_json', name="metric-json"), ] diff --git a/djangoproject/templates/dashboard/index.html b/djangoproject/templates/dashboard/index.html index 1d0cdb094..ef8a59f1b 100644 --- a/djangoproject/templates/dashboard/index.html +++ b/djangoproject/templates/dashboard/index.html @@ -18,6 +18,6 @@

    {{ report.metric.name }}

    {% endfor %}

    - {% blocktrans %}Updated {{ data.0.latest.timestamp|timesince }} ago.{% endblocktrans %} + {% blocktrans with timestamp=data.0.latest.timestamp|timesince %}Updated {{ timestamp }} ago.{% endblocktrans %}

    {% endblock %} From a6c3d582217c890f274de580475386e0bdc3f36f Mon Sep 17 00:00:00 2001 From: Jannis Leidel Date: Sat, 31 Jan 2015 14:16:21 +0100 Subject: [PATCH 4/6] Removed TRAC_CREDS setting since we're fetching the Trac data anonymously now. --- README.rst | 1 - djangoproject/settings/common.py | 7 ++++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index b04b66023..e7953eebf 100644 --- a/README.rst +++ b/README.rst @@ -48,7 +48,6 @@ To run locally, do the usual: #. For docs:: - export TRAC_CREDS= # Your djangoproject.com creds. ./manage.py loaddata doc_releases ./manage.py update_docs diff --git a/djangoproject/settings/common.py b/djangoproject/settings/common.py index 71e1585f5..b17d51c71 100644 --- a/djangoproject/settings/common.py +++ b/djangoproject/settings/common.py @@ -1,6 +1,5 @@ # Settings for www.djangoproject.com import json -import os from unipath import FSPath as Path @@ -14,7 +13,10 @@ with open(BASE.ancestor(2).child('conf').child('secrets.json')) as handle: SECRETS = json.load(handle) except IOError: - SECRETS = {'secret_key': 'a', 'superfeedr_creds': ['any@email.com', 'some_string']} + SECRETS = { + 'secret_key': 'a', + 'superfeedr_creds': ['any@email.com', 'some_string'], + } # Django settings @@ -239,6 +241,5 @@ THUMBNAIL_ALTERNATIVE_RESOLUTIONS = [2] # dashboard settings -TRAC_CREDS = os.environ.get('TRAC_CREDS') # Set to "user:pass" for Trac. TRAC_RPC_URL = "https://code.djangoproject.com/rpc" TRAC_URL = "https://code.djangoproject.com/" From a39d7cd325049e5ab7246dbe7892da89a89b8cd8 Mon Sep 17 00:00:00 2001 From: Jannis Leidel Date: Sat, 31 Jan 2015 14:27:56 +0100 Subject: [PATCH 5/6] Minor cosmetic changes to dashboard JS. --- djangoproject/static/js/dashboard/dddash.js | 27 ---- djangoproject/static/js/dashboard/detail.js | 146 ++++++++++---------- djangoproject/static/js/dashboard/index.js | 83 +++++------ djangoproject/static/js/dashboard/utils.js | 25 ++++ 4 files changed, 143 insertions(+), 138 deletions(-) delete mode 100644 djangoproject/static/js/dashboard/dddash.js create mode 100644 djangoproject/static/js/dashboard/utils.js diff --git a/djangoproject/static/js/dashboard/dddash.js b/djangoproject/static/js/dashboard/dddash.js deleted file mode 100644 index 6366e10cd..000000000 --- a/djangoproject/static/js/dashboard/dddash.js +++ /dev/null @@ -1,27 +0,0 @@ -define('dashboard/dddash', ['jquery'], function ($) { - return { - formatTimestamp: function formatTimestamp(timestamp, period) { - var d = new Date(timestamp); - if (period == 'instant') { - return $.plot.formatDate(d, "%b %d, %h:%M%p"); - - } else if (period == 'daily') { - return $.plot.formatDate(d, "%b %d"); - - } else if (period == 'weekly') { - // A bit more complicated than the above: the timestamp is in the - // middle of the week, so we have to bracket the date. This is - // something of a fudge here, but it works well enough. - var start = new Date(d.getTime() - (3 * 24 * 60 * 60 * 1000)); - var end = new Date(d.getTime() + (3 * 24 * 60 * 60 * 1000)); - return $.plot.formatDate(start, "%b %d") + ' - ' + $.plot.formatDate(end, "%b %d"); - } - }, - convertSecondsToMilliseconds: function convertSecondsToMilliseconds(data) { - for (var i = 0; i < data.length; i++) { - data[i][0] = data[i][0] * 1000; - } - return data; - } - } -}); diff --git a/djangoproject/static/js/dashboard/detail.js b/djangoproject/static/js/dashboard/detail.js index fac7f945b..fd57f69fe 100644 --- a/djangoproject/static/js/dashboard/detail.js +++ b/djangoproject/static/js/dashboard/detail.js @@ -1,76 +1,78 @@ -define('dashboard/detail', ['jquery', 'jquery.flot', 'dashboard/dddash'], function ($, plot, dddash) { - $(function () { - var e = $("#graph"); - var url = "/metric/" + e.data('metric') + ".json?days=365"; - var hover = { - show: function (x, y, message) { - $('
    ').html(message) - .css({top: y, left: x}) - .appendTo('body') - .show(); - }, - hide: function () { - $("#hover").remove(); - } - }; +define('dashboard/detail', ['jquery', 'jquery.flot', 'dashboard/utils'], function ($, plot, utils) { + $(function () { + var e = $("#graph"); + var url = "/metric/" + e.data('metric') + ".json?days=365"; + var hover = { + show: function (x, y, message) { + $('
    ').html(message) + .css({top: y, left: x}) + .appendTo('body') + .show(); + }, + hide: function () { + $("#hover").remove(); + } + }; - $.getJSON(url, function (response) { - for (var i = 0; i < response.data.length; i++) { - response.data[i][0] = response.data[i][0] * 1000; - } - ; - var options = { - xaxis: { - mode: "time", - tickColor: "rgba(0,0,0,0)", - minTickSize: [1, "day"] - }, - yaxis: {min: 0, ticks: 4}, - grid: {borderWidth: 0, hoverable: true, color: "#0C3C26"}, - colors: ["#0C4B33"], - }; - if (response.period == "daily") { - options.bars = { - show: true, - barWidth: 22 * 60 * 60 * 1000, - align: "center", - }; - } else if (response.period == 'weekly') { - options.bars = { - show: true, - barWidth: 22 * 60 * 60 * 7 * 1000, - align: "center" - }; - } - var plot = $.plot(e, [response.data], options); + $.getJSON(url, function (response) { + for (var i = 0; i < response.data.length; i++) { + response.data[i][0] = response.data[i][0] * 1000; + } + var options = { + xaxis: { + mode: "time", + tickColor: "rgba(0,0,0,0)", + minTickSize: [1, "day"] + }, + yaxis: {min: 0, ticks: 4}, + grid: {borderWidth: 0, hoverable: true, color: "#0C3C26"}, + colors: ["#0C4B33"] + }; + if (response.period == "daily") { + options.bars = { + show: true, + barWidth: 22 * 60 * 60 * 1000, + align: "center" + }; + } else if (response.period == 'weekly') { + options.bars = { + show: true, + barWidth: 22 * 60 * 60 * 7 * 1000, + align: "center" + }; + } + var plot = $.plot(e, [response.data], options); - var format_message = function (timestamp, measurement) { - var unit = measurement == 1 ? response.unit : response.unit_plural; - return dddash.formatTimestamp(timestamp, response.period) + '
    ' + measurement + ' ' + unit; - }; + var format_message = function (timestamp, measurement) { + var unit = measurement == 1 ? response.unit : response.unit_plural; + return utils.formatTimestamp(timestamp, response.period) + '
    ' + measurement + ' ' + unit; + }; - var previousPoint = null; - e.bind("plothover", function (event, pos, item) { - if (item) { - if (previousPoint != item.dataIndex) { - previousPoint = item.dataIndex; - hover.hide(); - var message = format_message.apply(null, item.datapoint); - if (response.period == 'instant') { - var x = item.pageX + 10, y = item.pageY + 10; - } else { - // I'd like this hover to be centered over the bar. This - // simple math sorta works, but it assumes a *lot* about - // the plot and basically won't scale. Grr. - var x = item.pageX - 40, y = item.pageY - 50; - } - hover.show(x, y, message); - } - } else { - hover.hide(); - previousPoint = null; - } - }); - }); - }); + var previousPoint = null; + e.bind("plothover", function (event, pos, item) { + if (item) { + if (previousPoint != item.dataIndex) { + previousPoint = item.dataIndex; + hover.hide(); + var x, y; + var message = format_message.apply(null, item.datapoint); + if (response.period == 'instant') { + x = item.pageX + 10; + y = item.pageY + 10; + } else { + // I'd like this hover to be centered over the bar. This + // simple math sorta works, but it assumes a *lot* about + // the plot and basically won't scale. Grr. + x = item.pageX - 40; + y = item.pageY - 50; + } + hover.show(x, y, message); + } + } else { + hover.hide(); + previousPoint = null; + } + }); + }); + }); }); diff --git a/djangoproject/static/js/dashboard/index.js b/djangoproject/static/js/dashboard/index.js index e5636bf59..43f6bb1b0 100644 --- a/djangoproject/static/js/dashboard/index.js +++ b/djangoproject/static/js/dashboard/index.js @@ -1,43 +1,48 @@ -define('dashboard/index', ['jquery', 'jquery.flot', 'dashboard/dddash'], function ($, flot, dddash) { - $(function () { - $(".metric .sparkline").each(function (index, elem) { - var e = $(elem); - var valueElement = e.parent().find('.value a'); - var timestampElement = e.parent().find('.timestamp'); - var originalValue = valueElement.html(); - var green = '#93D7B7'; +define('dashboard/index', ['jquery', 'jquery.flot', 'dashboard/utils'], function ($, flot, utils) { + $(function () { + $(".metric .sparkline").each(function (index, elem) { + var element = $(elem); + var valueElement = element.parent().find('.value a'); + var timestampElement = element.parent().find('.timestamp'); + var originalValue = valueElement.html(); + var green = '#93D7B7'; - var url = "/metric/" + e.data('metric') + ".json"; - $.getJSON(url, function (response) { - response.data = dddash.convertSecondsToMilliseconds(response.data); - $.plot(e, [response.data], { - xaxis: {show: false, mode: "time"}, - yaxis: {show: false, min: 0}, - grid: {borderWidth: 0, hoverable: true}, - colors: [green], - bars: { - show: true, - barWidth: (response.period == 'daily' ? 24 * 60 * 60 * 1000 : 24 * 60 * 60 * 7 * 1000), - fillColor: green, - lineWidth: 1, - align: "center" - } - }); + var url = "/metric/" + element.data('metric') + ".json"; + $.getJSON(url, function (response) { + response.data = utils.convertSecondsToMilliseconds(response.data); + $.plot(e, [response.data], { + xaxis: {show: false, mode: "time"}, + yaxis: {show: false, min: 0}, + grid: {borderWidth: 0, hoverable: true}, + colors: [green], + bars: { + show: true, + barWidth: (response.period == 'daily' ? 24 * 60 * 60 * 1000 : 24 * 60 * 60 * 7 * 1000), + fillColor: green, + lineWidth: 1, + align: "center" + } + }); - e.bind('plothover', function (event, pos, item) { - if (item) { - valueElement.html(item.datapoint[1]); - timestampElement.html(dddash.formatTimestamp(item.datapoint[0], response.period)); - } else { - valueElement.html(originalValue); - timestampElement.html(' '); - } - }); - }); + element.bind('plothover', function (event, pos, item) { + if (item) { + valueElement.html(item.datapoint[1]); + timestampElement.html( + utils.formatTimestamp( + item.datapoint[0], + response.period + ) + ); + } else { + valueElement.html(originalValue); + timestampElement.html(' '); + } + }); + }); - e.click(function () { - window.location = "/metric/" + e.data('metric') + '/'; - }) - }); - }); + element.on('click', function () { + window.location = "/metric/" + element.data('metric') + '/'; + }); + }); + }); }); diff --git a/djangoproject/static/js/dashboard/utils.js b/djangoproject/static/js/dashboard/utils.js new file mode 100644 index 000000000..7ff6673ce --- /dev/null +++ b/djangoproject/static/js/dashboard/utils.js @@ -0,0 +1,25 @@ +define('dashboard/utils', ['jquery'], function ($) { + return { + formatTimestamp: function formatTimestamp(timestamp, period) { + var d = new Date(timestamp); + if (period == 'instant') { + return $.plot.formatDate(d, "%b %d, %h:%M%p"); + } else if (period == 'daily') { + return $.plot.formatDate(d, "%b %d"); + } else if (period == 'weekly') { + // A bit more complicated than the above: the timestamp is in the + // middle of the week, so we have to bracket the date. This is + // something of a fudge here, but it works well enough. + var start = new Date(d.getTime() - (3 * 24 * 60 * 60 * 1000)); + var end = new Date(d.getTime() + (3 * 24 * 60 * 60 * 1000)); + return $.plot.formatDate(start, "%b %d") + ' - ' + $.plot.formatDate(end, "%b %d"); + } + }, + convertSecondsToMilliseconds: function convertSecondsToMilliseconds(data) { + for (var i = 0; i < data.length; i++) { + data[i][0] = data[i][0] * 1000; + } + return data; + } + }; +}); From 80b5ba517121b584ef45503b82d68916683290d5 Mon Sep 17 00:00:00 2001 From: Jannis Leidel Date: Sat, 31 Jan 2015 20:40:34 +0100 Subject: [PATCH 6/6] Minor cosmetic fix. --- dashboard/models.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dashboard/models.py b/dashboard/models.py index cd47f5888..a4969c82c 100644 --- a/dashboard/models.py +++ b/dashboard/models.py @@ -82,9 +82,9 @@ def _gather_data_instant(self, since): Instant metrics change every time we measure them, so they're easy: just return every single measurement. """ - data = self.data.filter(timestamp__gt=since) \ - .order_by('timestamp') \ - .values_list('timestamp', 'measurement') + data = (self.data.filter(timestamp__gt=since) + .order_by('timestamp') + .values_list('timestamp', 'measurement')) return [(calendar.timegm(t.timetuple()), m) for (t, m) in data] def _gather_data_periodic(self, since, period):

    UCdlUn{lEyoqRr6jU?4dKKM#eGKBZwU- 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

  • DTL)*gD(m)!wpuUc#-lb_Q-y(CWjnsTP} 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 GGH`a7q4Go-^XsXN1bwrKGuISdAEfT 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