Changelogs » Django-private-storage

Django-private-storage

2.2.2

-----------------------------

* Fixed Django 3.0 compatibility.

2.2.1

-----------------------------

* Make sure custom ``403.html`` template is used when access is denied.
* Fixed accessing files when the ``User-Agent`` header is not set.

2.2

---------------------------

* Added efficient ``HEAD`` request handling. (Already in 2.2a1 at 2018-11-22)

2.1.3

-----------------------------

* Fixed spelling error in "file too large" error.
* Fixed compatibility with latest django-storages_ which removed the ``strict`` setting keyword.

2.1.2

-----------------------------

* Fixed ``PrivateFile.exists()`` check for ``<FieldFile: None>`` values.
* Added ``PrivateFile.__repr__()``

2.1.1

-----------------------------

* Fixed ``X-Accel-Redirect`` non-ASCII filename encoding in Nginx.

* For very old Nginx versions, you'll have to configure ``PRIVATE_STORAGE_NGINX_VERSION``,
because Nginx versions before 1.5.9 (released in 2014) handle non-ASCII filenames differently.

2.1

---------------------------

* Added ``serve_file_not_found()`` to allow custom 404 serving in ``PrivateStorageView`` and ``PrivateStorageDetailView``.
* Added ``Cache-Control`` headers to avoid caching private files in edge proxies.
* Fixed ``PrivateStorageDetailView`` to use using the custom storage class defined in the model's ``PrivateFileField``.
* Fixed ``Content-Disposition`` filename encoding in Python 3.
* Fixed ``Content-Disposition`` filename support for old Internet Explorer browsers.

2.0

---------------------------

* Added Django 2.0 support.
* Support ``upload_to`` parameter and callable.
* Support ``upload_subfolder`` to return a string instead of list.
* Dropped Django 1.7 compatibility

1.2.4

--------------------------

* Fixed Python 2 support in ``DjangoStreamingServer.serve()``.

1.2.3

--------------------------

* Fixed ``reverse()`` import for Django 2.0.
* Fixed ``UnicodeDecodeError`` with cyrillic file names.
* Fixed Python 2 ``super()`` call.

1.2.2

--------------------------

* Fixed default ``PRIVATE_STORAGE_AUTH_FUNCTION`` path.
* Added ``PrivateFile.parent_object`` field when ``PrivateStorageDetailView`` is used.

1.2.1

--------------------------

* Fixed ``s3boto3`` backend on Django 1.8.

1.2

------------------------

* Added ``Content-Disposition`` header support, including a proper RFC-encoded filename.
Add the ``content_disposition`` field to the views to enable this.
The ``content_disposition_filename`` and ``get_content_disposition_filename()`` can be overwritten too.

1.1.2

--------------------------

* Allow AWS_PRIVATE.. credentials to be defined through environment variables too.
* Fixed ``model_file_field`` usage in ``PrivateStorageDetailView``.

1.1.1

--------------------------

* Implement proxying S3 content when ``AWS_PRIVATE_QUERYSTRING_AUTH`` is disabled.
This can also be explicitly enabled using ``PRIVATE_STORAGE_S3_REVERSE_PROXY = True``.

1.1

------------------------

* Allow to configure the storage class, using ``PRIVATE_STORAGE_CLASS``.
There are 3 storage classes available:

* ``private_storage.storage.files.PrivateFileSystemStorage`` - the original, default.
* ``private_storage.storage.s3boto3.PrivateS3BotoStorage`` - S3 bucket, based on django-storages_.
* ``private_storage.storage.s3boto3.PrivateEncryptedS3BotoStorage`` - S3 bucket with encryption.

* Added ``PrivateStorageView.get_path()`` method for easier reuse.
* Added ``PrivateStorageDetailView`` for easier reuse in projects.
* Added ``deconstructible`` for storage classes.
* Added ``private_storage.servers.DjangoStreamingServer`` to support streaming data from non-filesystem storages.
* Dropped Django 1.6 support.

1.0.2

--------------------------

* Fixed Python 3 issue with lazy URL resolving.
* Fixed ``TypeError`` when calling the access check function.
* Fixed file serving with ``PRIVATE_STORAGE_SERVER`` set to ``django``.

1.0.1

--------------------------

* Fixed packaging NL translation
* Fixed error message for too large files.

1.0

------------------------

First PyPI release.

The module design has been stable for quite some time,
so it's time to show this module to the public.


.. _django-storages: https://django-storages.readthedocs.io/en/latest/backends/amazon-S3.html