mirror of
https://github.com/jazzband/django-downloadview.git
synced 2026-03-16 22:40:25 +00:00
156 lines
4.9 KiB
Text
156 lines
4.9 KiB
Text
Changelog
|
|
=========
|
|
|
|
This document describes changes between past releases. For information about
|
|
future releases, check `milestones`_ and :doc:`/about/vision`.
|
|
|
|
|
|
1.6 (unreleased)
|
|
----------------
|
|
|
|
- Feature #74: the Makefile in project's repository no longer creates a
|
|
virtualenv. Developers setup the environment as they like, i.e. using
|
|
virtualenv, virtualenvwrapper or whatever. Tests are run with tox.
|
|
|
|
|
|
1.5 (2013-11-29)
|
|
----------------
|
|
|
|
X-Sendfile support and helpers to migrate for `django-sendfile`.
|
|
|
|
- Feature #2 - Introduced support of Lighttpd's x-Sendfile.
|
|
|
|
- Feature #36 - Introduced support of Apache's mod_xsendfile.
|
|
|
|
- Feature #41 - ``django_downloadview.sendfile`` is a port of
|
|
`django-sendfile`'s ``sendfile`` function. The documentation contains notes
|
|
about migrating from `django-sendfile` to `django-downloadview`.
|
|
|
|
|
|
1.4 (2013-11-24)
|
|
----------------
|
|
|
|
Bugfixes and documentation features.
|
|
|
|
- Bugfix #43 - ``ObjectDownloadView`` returns HTTP 404 if model instance's file
|
|
field is empty (was HTTP 500).
|
|
|
|
- Bugfix #7 - Special characters in file names (``Content-Disposition`` header)
|
|
are urlencoded. An US-ASCII fallback is also provided.
|
|
|
|
- Feature #10 - `django-downloadview` is registered on djangopackages.com.
|
|
|
|
- Feature #65 - INSTALL documentation shows "known good set" (KGS) of versions,
|
|
i.e. versions that have been used in test environment.
|
|
|
|
|
|
1.3 (2013-11-08)
|
|
----------------
|
|
|
|
Big refactoring around middleware configuration, API readability and
|
|
documentation.
|
|
|
|
- Bugfix #57 - ``PathDownloadView`` opens files in binary mode (was text mode).
|
|
|
|
- Bugfix #48 - Fixed ``basename`` assertion in ``assert_download_response``:
|
|
checks ``Content-Disposition`` header.
|
|
|
|
- Bugfix #49 - Fixed ``content`` assertion in ``assert_download_response``:
|
|
checks only response's ``streaming_content`` attribute.
|
|
|
|
- Bugfix #60 - ``VirtualFile.__iter__`` uses ``force_bytes()`` to support both
|
|
"text-mode" and "binary-mode" content.
|
|
See https://code.djangoproject.com/ticket/21321
|
|
|
|
- Feature #50 - Introduced ``django_downloadview.DownloadDispatcherMiddleware``
|
|
that iterates over a list of configurable download middlewares. Allows to
|
|
plug several download middlewares with different configurations.
|
|
|
|
This middleware is mostly dedicated to internal usage. It is used by
|
|
``SmartDownloadMiddleware`` described below.
|
|
|
|
- Feature #42 - Documentation shows how to stream generated content (yield).
|
|
Introduced ``django_downloadview.StringIteratorIO``.
|
|
|
|
- Refactoring #51 - Dropped support of Python 2.6
|
|
|
|
- Refactoring #25 - Introduced ``django_downloadview.SmartDownloadMiddleware``
|
|
which allows to setup multiple optimization rules for one backend.
|
|
|
|
Deprecates the following settings related to previous single-and-global
|
|
middleware:
|
|
|
|
* ``NGINX_DOWNLOAD_MIDDLEWARE_MEDIA_ROOT``
|
|
* ``NGINX_DOWNLOAD_MIDDLEWARE_MEDIA_URL``
|
|
* ``NGINX_DOWNLOAD_MIDDLEWARE_EXPIRES``
|
|
* ``NGINX_DOWNLOAD_MIDDLEWARE_WITH_BUFFERING``
|
|
* ``NGINX_DOWNLOAD_MIDDLEWARE_LIMIT_RATE``
|
|
|
|
- Refactoring #52 - ObjectDownloadView now inherits from SingleObjectMixin and
|
|
BaseDownloadView (was DownloadMixin and BaseDetailView).
|
|
Simplified DownloadMixin.render_to_response() signature.
|
|
|
|
- Refactoring #40 - Documentation includes examples from demo project.
|
|
|
|
- Refactoring #39 - Documentation focuses on usage, rather than API. Improved
|
|
narrative documentation.
|
|
|
|
- Refactoring #53 - Added base classes in ``django_downloadview.middlewares``,
|
|
such as ``ProxiedDownloadMiddleware``.
|
|
|
|
- Refactoring #54 - Expose most Python API directly in `django_downloadview`
|
|
package. Simplifies ``import`` statements in client applications.
|
|
Splitted nginx module in a package.
|
|
|
|
- Added unit tests, improved code coverage.
|
|
|
|
|
|
1.2 (2013-05-28)
|
|
----------------
|
|
|
|
Bugfixes and documentation improvements.
|
|
|
|
- Bugfix #26 - Prevented computation of virtual file's size, unless the file
|
|
wrapper implements was_modified_since() method.
|
|
|
|
- Bugfix #34 - Improved support of files that do not implement modification
|
|
time.
|
|
|
|
- Bugfix #35 - Fixed README conversion from reStructuredText to HTML (PyPI).
|
|
|
|
|
|
1.1 (2013-04-11)
|
|
----------------
|
|
|
|
Various improvements.
|
|
Contains **backward incompatible changes.**
|
|
|
|
- Added HTTPDownloadView to proxy to arbitrary URL.
|
|
|
|
- Added VirtualDownloadView to support files living in memory.
|
|
|
|
- Using StreamingHttpResponse introduced with Django 1.5. Makes Django 1.5 a
|
|
requirement!
|
|
|
|
- Added ``django_downloadview.test.assert_download_response`` utility.
|
|
|
|
- Download views and response now use file wrappers. Most logic around file
|
|
attributes, formerly in views, moved to wrappers.
|
|
|
|
- Replaced DownloadView by PathDownloadView and StorageDownloadView. Use the
|
|
right one depending on the use case.
|
|
|
|
|
|
1.0 (2012-12-04)
|
|
----------------
|
|
|
|
- Introduced optimizations for Nginx X-Accel: a middleware and a decorator
|
|
- Introduced generic views: DownloadView and ObjectDownloadView
|
|
- Initialized project
|
|
|
|
|
|
.. rubric:: Notes & references
|
|
|
|
.. target-notes::
|
|
|
|
.. _`milestones`: https://github.com/benoitbryon/django-downloadview/issues/milestones
|