{"title":"Django 1.9.6 release notes","version":"dev","locale":"en","docname":"releases/1.9.6","url":"/en/dev/releases/1.9.6/","canonical":"https://djangodocs.dev/en/dev/releases/1.9.6/","summary":"Django 1.9.6 fixes several bugs in 1.9.5. Added support for relative path redirects to the test client and to SimpleTestCase.assertRedirects() because…","html":"<h1>Django 1.9.6 release notes<a class=\"heading-anchor\" href=\"#django-1-9-6-release-notes\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p><em>May 2, 2016</em></p>\n<p>Django 1.9.6 fixes several bugs in 1.9.5.</p>\n<section id=\"bugfixes\">\n<h2>Bugfixes<a class=\"heading-anchor\" href=\"#bugfixes\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<ul class=\"simple\">\n<li><p>Added support for relative path redirects to the test client and to\n<code class=\"docutils literal notranslate\">SimpleTestCase.assertRedirects()</code> because Django 1.9 no longer converts\nredirects to absolute URIs (<a class=\"extlink-ticket reference external\" href=\"https://code.djangoproject.com/ticket/26428\">#26428</a>).</p></li>\n<li><p>Fixed <code class=\"docutils literal notranslate\">TimeField</code> microseconds round-tripping on MySQL and SQLite\n(<a class=\"extlink-ticket reference external\" href=\"https://code.djangoproject.com/ticket/26498\">#26498</a>).</p></li>\n<li><p>Prevented <code class=\"docutils literal notranslate\">makemigrations</code> from generating infinite migrations for a model\nfield that references a <code class=\"docutils literal notranslate\">functools.partial</code> (<a class=\"extlink-ticket reference external\" href=\"https://code.djangoproject.com/ticket/26475\">#26475</a>).</p></li>\n<li><p>Fixed a regression where <code class=\"docutils literal notranslate\">SessionBase.pop()</code> returned <code class=\"docutils literal notranslate\">None</code> rather than\nraising a <code class=\"docutils literal notranslate\">KeyError</code> for nonexistent values (<a class=\"extlink-ticket reference external\" href=\"https://code.djangoproject.com/ticket/26520\">#26520</a>).</p></li>\n<li><p>Fixed a regression causing the cached template loader to crash when using\ntemplate names starting with a dash (<a class=\"extlink-ticket reference external\" href=\"https://code.djangoproject.com/ticket/26536\">#26536</a>).</p></li>\n<li><p>Restored conversion of an empty string to null when saving values of\n<code class=\"docutils literal notranslate\">GenericIPAddressField</code> on SQLite and MySQL (<a class=\"extlink-ticket reference external\" href=\"https://code.djangoproject.com/ticket/26557\">#26557</a>).</p></li>\n<li><p>Fixed a <code class=\"docutils literal notranslate\">makemessages</code> regression where temporary <code class=\"docutils literal notranslate\">.py</code> extensions were\nleaked in source file paths (<a class=\"extlink-ticket reference external\" href=\"https://code.djangoproject.com/ticket/26341\">#26341</a>).</p></li>\n</ul>\n</section>","rootId":"django-1-9-6-release-notes","toc":[{"title":"Bugfixes","anchor":"bugfixes","children":[]}],"breadcrumbs":[{"docname":"releases/index","title":"Release notes","url":"/en/dev/releases/"}],"prev":{"docname":"releases/1.9.7","title":"Django 1.9.7 release notes","url":"/en/dev/releases/1.9.7/"},"next":{"docname":"releases/1.9.5","title":"Django 1.9.5 release notes","url":"/en/dev/releases/1.9.5/"},"formats":{"html":"/en/dev/releases/1.9.6/","markdown":"/en/dev/releases/1.9.6.md","json":"/en/dev/releases/1.9.6.json"},"source":"https://github.com/django/django/blob/main/docs/releases/1.9.6.txt","official":"https://docs.djangoproject.com/en/dev/releases/1.9.6/","inVersions":["dev","6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0","1.11","1.10","1.9"],"inLocales":["en"]}