98 lines
3.5 KiB
Plaintext
98 lines
3.5 KiB
Plaintext
==========================
|
||
Django 1.8.1 release notes
|
||
==========================
|
||
|
||
*May 1, 2015*
|
||
|
||
Django 1.8.1 fixes several bugs in 1.8 and includes some optimizations in the
|
||
migrations framework.
|
||
|
||
Bugfixes
|
||
========
|
||
|
||
* Added support for serializing :class:`~datetime.timedelta` objects in
|
||
migrations (:ticket:`24566`).
|
||
|
||
* Restored proper parsing of the :djadmin:`testserver` command's positional
|
||
arguments (fixture names) (:ticket:`24571`).
|
||
|
||
* Prevented ``TypeError`` in translation functions ``check_for_language()`` and
|
||
``get_language_bidi()`` when translations are deactivated (:ticket:`24569`).
|
||
|
||
* Fixed :djadmin:`squashmigrations` command when using
|
||
:class:`~django.db.migrations.operations.SeparateDatabaseAndState`
|
||
(:ticket:`24278`).
|
||
|
||
* Stripped microseconds from ``datetime`` values when using an older version of
|
||
the MySQLdb DB API driver as it does not support fractional seconds
|
||
(:ticket:`24584`).
|
||
|
||
* Fixed a migration crash when altering
|
||
:class:`~django.db.models.ManyToManyField`\s (:ticket:`24513`).
|
||
|
||
* Fixed a crash with ``QuerySet.update()`` on foreign keys to one-to-one fields
|
||
(:ticket:`24578`).
|
||
|
||
* Fixed a regression in the model detail view of
|
||
:mod:`~django.contrib.admindocs` when a model has a reverse foreign key
|
||
relation (:ticket:`24624`).
|
||
|
||
* Prevented arbitrary file inclusions in :mod:`~django.contrib.admindocs`
|
||
(:ticket:`24625`).
|
||
|
||
* Fixed a crash with ``QuerySet.update()`` on foreign keys to instances with
|
||
``uuid`` primary keys (:ticket:`24611`).
|
||
|
||
* Fixed database introspection with SQLite 3.8.9 (released April 8, 2015)
|
||
(:ticket:`24637`).
|
||
|
||
* Updated ``urlpatterns`` examples generated by :djadmin:`startproject` to
|
||
remove usage of referencing views by dotted path in
|
||
:func:`~django.conf.urls.url` which is deprecated in Django 1.8
|
||
(:ticket:`24635`).
|
||
|
||
* Fixed queries where an expression was referenced in ``order_by()``, but wasn't
|
||
part of the select clause. An example query is
|
||
``qs.annotate(foo=F('field')).values('pk').order_by('foo'))`` (:ticket:`24615`).
|
||
|
||
* Fixed a database table name quoting regression (:ticket:`24605`).
|
||
|
||
* Prevented the loss of ``null``/``not null`` column properties during field
|
||
alteration of MySQL databases (:ticket:`24595`).
|
||
|
||
* Fixed JavaScript path of ``contrib.admin``’s related field widget when using
|
||
alternate static file storages (:ticket:`24655`).
|
||
|
||
* Fixed a migration crash when adding new relations to models
|
||
(:ticket:`24573`).
|
||
|
||
* Fixed a migration crash when applying migrations with model managers on
|
||
Python 3 that were generated on Python 2 (:ticket:`24701`).
|
||
|
||
* Restored the ability to use iterators as queryset filter arguments
|
||
(:ticket:`24719`).
|
||
|
||
* Fixed a migration crash when renaming the target model of a many-to-many
|
||
relation (:ticket:`24725`).
|
||
|
||
* Removed flushing of the test database with :djadminopt:`--keepdb`, which
|
||
prevented apps with data migrations from using the option (:ticket:`24729`).
|
||
|
||
* Fixed ``makemessages`` crash in some locales (:ticket:`23271`).
|
||
|
||
* Fixed help text positioning of ``contrib.admin`` fields that use the
|
||
``ModelAdmin.filter_horizontal`` and ``filter_vertical`` options
|
||
(:ticket:`24676`).
|
||
|
||
* Fixed `AttributeError: function 'GDALAllRegister' not found` error when
|
||
initializing ``contrib.gis`` on Windows.
|
||
|
||
Optimizations
|
||
=============
|
||
|
||
* Changed ``ModelState`` to deepcopy fields instead of deconstructing and
|
||
reconstructing (:ticket:`24591`). This speeds up the rendering of model
|
||
states and reduces memory usage when running :djadmin:`manage.py migrate
|
||
<migrate>` (although other changes in this release may negate any performance
|
||
benefits).
|