- fix: Restrict upload of binary or unknown file types by default by @fsbraun in #1507
- fix: remove extra brace in generated HTML of data-max-filesize attribute by @fabien-michel in #1502
- fix: uploadButton data-max-filesize attribute is not passed to file-uploader by @fabien-michel in #1503
- docs: Update for on_delete requirement in Filer fields
- fix: Use TypeVar for type-hinting of the user parameter by @payamnj in #1496
** New contributor**
- @payamnj made their first contribution in #1496
- fix: Remove version pin to Django<5.1
- fix: Restore python 3.8 and python 3.9 compatibility
- feat: Add cache for permission checks by @fsbraun in #1486
- fix: Reduce number of thumbnails created for admin, avoid admin thumbnails for svg files by @fsbraun in #1490
- fix: Allow
Image.MAX_IMAGE_PIXELS
to beNone
by @fsbraun in #1475 - docs: Update extending_filer.rst by @DmytroLitvinov in #1488
New contributor:
- @DmytroLitvinov made their first contribution in #1488
- feat: Accept new STORAGES setting, introduced in Django 4.2 by @fsbraun in #1472
- feat: Replace render with TemplateResponse in admin views by @fsbraun in #1473
- fix: File expand url incorrect and worked not with custom image models by @fsbraun in #1471
- fix: Crash when moving files from a filtered directory listing by @W1ldPo1nter in #1482
- ci: pre-commit autoupdate by @pre-commit-ci in #1477
- Fix: Folder select widget did not render correctly with standard Django admin styles.
- Made the filer check command compatible with custom image models.
- Use the final image model's app label to determine the expand view URL.
- Prepare the image expand URL in the admin code and pass it through to the template via context.
- Fix #1377: Field verbose_name should use gettext_lazy.
- Fix: styles for django 4.2+ admin.
- Fix: Unintended scroll when clearing file widget.
- Fix: Method ImageAdminForm.clean_subject_location() not implemented correctly causing invokation of clean() twice.
- fix: Added compatibility code in aldryn_config go support setting THUMBNAIL_DEFAULT_STORAGE in django 4.2
- fix: address failing gulp ci jobs
- feat: Image dimensions update management command
- ci: pre-commit autoupdate
- feat: limit uploaded image area (width x height) to prevent decompression bombs
- feat: Canonical URL action button now copies canonical URL to the user's clipboard
- fix: Run validators on updated files in file change view
- fix: Update mime type if uploading file in file change view
- fix: Do not allow to remove the file field from an uplaoded file in the admin interface
- fix: refactor upload checks into running validators in the admin and adding clean methods for file and (abstract) image models.
- Fixed two more instances of javascript int overflow issue (#1335)
- fix: ensure uniqueness of icon admin url names
- fix: Crash with django-storage if filer file does not have a storage file attached
- Re-add alphabetical sorting as default (fixes #1415) by @filipweidemann in #1416
- fix: django-storage 1.14 complains about files being opened twice when copying by @fsbraun in #1418
- Fix bug that ignored thumbnail storage custom settings in directory view
- remove Django 2.2, 3.0, and 3.1 classifiers in setup.py
- remove tests for Django < 3.2 since those versions are not supported anymore
- Fix bug when submitting permission admin form
- Fix folder select field css of permission admin form
- Fix requirements (Django>=3.2) in setup.py and docs
- Update Dutch, Spanish and French locale
- Fix copy folder being broken after django-mptt removal by @protoroto in #1393
- fix: crash in the file detail view by @vinitkumar in #1395
- Fix: actions.js error thrown in js console by @fsbraun in #1397
- Fix another bug when the the thumbnailer in admin tags crashes because of invalid or missing file
- Ensure action buttons in directory listing do not get disabled after using cancel or back button if files or folders are selected.
- Fix a bug that creates a server error when requesting a thumbnail from an invalid or missing file
- Fix a bug that on some systems webp images were not recognized
- Add missing css map files
- Add validation framework to prevent XSS attacks using HTML or SVG files (see docs)
- Only show uncategorized files to the owner or superuser if permissions are active
- Add an edit button to the file widget which opens edit file pop-up
- Refactored directory list view for significant performance increases
- Remove thumbnail generation from the directory list view request response cycle
- Support for upload of webp images
- Optional support for upload of heif images
- Add Django 4.2 support
- Add thumbnail view for faster visual management of image libraries
- Fix File.objects.only() query required for deleting user who own files.
- Fix several CSS quirks
- Fix folder widget
- Remove unused css from delete confirmation view and move file view
- Add Pillow 10 compatibility
- Update translations (de/fr/nl)
- Drop Django 2.2, 3.0, and 3.1 support
- Security patch (#1352): While admin options shown correctly represented the user rights, some admin end-points were available directly. A staff user without any permissions could browse the filer folder structure, list files in a folder, add files, and move files and folders.
- Add Django 4.1 support
- Add python 3.11 tests
- Fix thumbnail generation for SVG images when used as a Divio addon.
- Fix CSS styles (Modified SCSS had to be recompiled).
- Fix #1305: Install django-filer with easy-thumbnail's optional SVG support.
- Fix: Define a
default_auto_field
as part of the app config.
- Improve the list view of Folder permissions.
- Fix: Folder permissions were disabled for descendants, if parent folder has type set to CHILDREN.
- The input field for Folder changes from a standard HTML select element to a very wide autocomplete field, showing the complete path in Filer.
- Fix: Upload invalid SVG file.
- Add support for Python-3.10.
- Switch theme for readthedocs to Furo.
- Fix: 404 error when serving thumbnail.
- Experimental support for Django-4.
- In Folder permissions, make user and group autocomplete fields.
- Extent testing matrix to Python-3.10.
- Pin dependency for easy-thumbnails to version 2.8.0.
- Remove unused legacy CSS from project.
- Remove legacy code for compatibility of old Django versions.
- Improve PermissionAdmin performance:
- PermissionAdmin: filter by groups instead of users
- PermissionAdmin: allow to search via user, group or folder names
- PermissionAdmin: use prefetch_related to decrease number of DB queries
- Fix #1234: Directory listing template conflicts with djangocms-admin-style sidebar style.
- Fix minor styling regressions introduced in 2.1rc2.
- Fix #1227: Some icons were not aligned in the dropzone layout.
- All file/image fields render the field label.
- Fix #1232: Drag & drop of empty files results into Internal Server Error.
- Add support for SVG images. They now are handled by the model
filer.imagemodels.Image
and can be used whereever a pixel based image was used. This includes scaling and cropping using existing thumbnailing functionality from the easy-thumbnails library. - Drop support for high resolution images and remove
retina.js
from project. High resolution images are handled by the HTML standard attribute in<img srcset="..." ... />
. - In model
filer.imagemodels.Image
change_width
and_height
to Django'sFloatFields
; this because SVG images specify their image extensions as floats rather than integers. - All icons for displaying folders, files (not images) have been replaced by nicer looking SVG variants from PaoMedia.
- Increase size of thumbnails in the admin backend's list view from 25x25 to 40x40 pixels.
- For local development switched to NodeJS version 14.
- Add templatetag
file_icon
tofile_admin_tags.py
. It now handles the rendering of all file types, including folders, zip-files and missing files. - Remove pre-thumbnailing of images. Up to version 2.0, all images were scaled immediatly after upload into many different sizes, most of which never were used. Thumbnailing in the admin backend now is perfomerd lazily.
- Uploaded audio can be listened at in their detail view.
- Uploaded video files can be previewed in their detail view.
- Fix scaling of very wide but short images – causing a division by zero exception: ceil height to integer.
- Add method
exists()
toMultiStorageFieldFile
, which checks if a file exists on disk. - Drop support of Python-3.5 (Reason: Third party requirement reportlabs requires Python>=3.6).
- Fix dropzone error callback for admin fields.
- Fix #1247: Not owned files in unfiled folder can not be listed if perms are ON.
- Fix #1184: OSError close file before deletion on file move.
- Fix #1214: serve() missing 1 required positional argument: filer_file.
- Fix #1211: On upload MIME-type is not set correctly.
- Fixed NotNullViolation: null value in column "mime_type" in migration
filer.0012_file_mime_type.py
.
- Added support for Django 3.1
- Dropped support for Python 2.7 and Python 3.4
- Dropped support for Django < 2.2
- Changed the preferred way to do model registration via model inheritance
and
mptt.AlreadyRegistered
, which is deprecated since django-mptt 0.4 - Use dashed name for django-polymorphic dependency in setup.py
- In
models.File
, add fieldmime_type
to store the Content-Type as set by the browser during file upload - For extended Django Filer models, adopt the classmethod
matches_file_type
to its new signature, this is a breaking change - Add attribute
download
to the download link in order to offer the file under its original name
- Fix problem with loading jquery.js after jquery.min.js had been loaded.
- Fix usability: Upload files into most recently used folder, instead of root folder.
- Added Django 3.0 support
- Added support for Python 3.8
- Add attribute
download
to the download link in order to offer the file under its original name.
- Removed support for Django <= 1.10
- Removed outdated files
- Code alignments with other addons
- Replace deprecated templatetag
staticfiles
againststatic
. - Added management command
filer_check
to check the integrity of the database against the file system, and vice versa. - Add jQuery as AdminFileWidget Media dependency
- Add rel="noopener noreferrer" for tab nabbing
- Fixed an issue where a value error is raised when no folder is selected
- Fixed search field overflow
- Added support for Django 2.2
- Adapted test matrix
- Adapted test structure and added fixes
- Fixed missing validation message for empty file field in file and image widget (#1125)
- Fixed wrong argument for AdminFileWidget render method (#1120)
- Fixed missing renderer argument for render method for AdminFolderWidget and AdminFileWidget classes for Django 2.x (#1120)
- Fixed a problem in Django 2.x with getting None instead of the object in AdminFileWidget and AdminFolderWidget (#1118)
- Fixed widgets to work with Django 2.x (#1111)
- Added admin site context to make_folder view (#1112)
- Added never_cache decorator in server views. (#1100)
- Added support for Django 2.0 and 2.1
- Enabled django-mptt 0.9
- Converted QueryDict to dict before manipulating in admin
- Hide 'Save as new' button in file admin
- Fixed history link for folder and image object
- Fixed rendering canonical URL in change form
- Don't show set public / set private actions if permissions are disabled.
- Allowed easy-thumbnails < 3 in setup.py
- Fixed broken reference for delete icon
- Fixed minor documentation issues
- Fixed travis configuration
- Fixed a regression with loading and dumping fixtures (#965)
- Added callable instead of setting as Filer.is_public default
- Fixed canonical URL computation
- Fixed image preview target size
- Fixed translatable string
- Updated translations
- Changed file size field to BigIntegerField
- Fixed import_files command to work on Django 1.10+
- Used get_queryset in FolderAdmin instead of the manager
- Cleaned up swapped models implementation
- Allowed django-polymorphic>_2.0
- Introduced Django 1.11 support
- Fixed get_css_position filter breaking when there is no image
- Fixed missing html title when adding folders
- Fixed a regression where third party app migrations would require the
FILER_IMAGE_MODEL
setting.
- Added 'get_css_position' template filter for background images
- Updated translations
- Fixed markup issue with editing file in admin
- Fixed error message not always showing up properly
- Added generate thumbnails management command
- Fixed dropzone styles on smaller widths
- Fixed dropzones in inlines not initializing in Django < 1.9
- Added an action button to the directory listings to download files
- Added support for Django 1.10
- Added title attribute to the file name
- Fixed an issue whereas the CSS was compiled incorrectly
- Fixed an issue where links failed to open from django CMS sideframe
- Fixes object tools placement on image detail page and removed background color and shadow
- Added edit button to image widget
- Removed arrow in breadcrumbs if no folder or name follows
- Fixed jQuery loading on file move/copy page with Django 1.9
- Fixed localization for fieldsets of ImageAdmin
- Fixed unquoting in files search
- Dropping or uploading an image will now fire a js change event
- Added native Divio Cloud support
- Fixed add/change arguments in FileAdmin.render_change_form
- Fixed minor issues which results in spurious migration generation
- Added a menu into django CMS projects via filer.contrib.django_cms
- Added tests for extended models
- Updated file_ptr to use string-replacement strategy for newer Djangos
- Fixed an issue with file_ptr on Django 1.9+ installations
- Addressed file_ptr issue
- Updated translation strings
- Rename filer picker widget upload button
- Adds missing @2x icon files
- Added missing migration #854
- Updated translations
- Fixed an issue with hashes in URLs in the wrong place
- Fixed issue where deleting a user from a project would delete their assets
- Drop Django 1.5 support
- Drop Python 3.3 support (now 3.4+)
- Testrunner cleanup
- Fix many regressions and bugs in Django 1.8/1.9
- Admin UI enhancements
- Fix issues with non-default STATICFILES_STORAGE
- Hide related widget wrapper links
- Fix cancel link in delete confirmation
- Make BaseImage.subject_location field non-nullable
- Adds icon sizes
- Fixes owner search icon on detail view
- Disable submit button if only one folder to copy file
- Design improvements
- Empty folder design
- Removes disabled action button border
- Adds unsorted uploads empty view
- Fix issues with subject location being off on images smaller than 210px
- Ignores unsorted uploads from search and count
- Fixes tests and configuration to run under Django 1.9
- Allow Django 1.9.x in setup requirements
- Fixes an issue where only the first drop-zone will be active
- Fixes an issue with Python 3 for the import_files command
- Fixes button space on delete confirmation modal
- Updates Filer image plugin form fields
- Removes folder content space in admin, side frame and modal
- Updates drag and drop modal window
- Updates drag and drop widget styles
- Fixes empty folder alignment
- Allow to provide single dimension for resizing images.
- Search result fixes for current folder search.
- Workaround for SQLite problems on simultaneous file uploads.
- Add missing search results counters.
- Move project to divio/django-filer.
- Adapt documentation links.
- Cleanup frontend code and adapt to guidelines.
- Added drag & drop capabilities.
- Redesign of the User Interface
- Fix imports for django-polymorphic>=0.8.
- Limit dependencies versions in setup.py.
- Simplify tox setup.
- Refactor Travis setup to use tox environments list.
- Pin django-polymorphic version.
- Use specific django-mptt versions in tox.ini for different Django versions.
- Repackage for PyPI.
- Fixes a bad static path.
- Adds a fix for Django 1.8 envs.
- Repackage for PyPI.
- Repackage for PyPI.
- Substantial UI/UX overhaul.
- Fixes some Django 1.9 issues.
- Drop support for Django older than v1.5.
- Fixes urls for changed files.
- Fixes an issue with KeyErrors during saving folder.
- Provides support for configuring the canonical URLs.
- Remove FILER_STATICMEDIA_PREFIX and use staticfiles for static files.
- Fixes searching for folders.
- Adds checkerboard-tile backgrounds to illustrate transparency in thumbnails.
- Other fixes.
- Various bugfixes.
- Better Django 1.7 and 1.8 support.
- Update Django 1.7 migrations because of change in django_polymorphic>=0.7.
- Migrations in default locations for Django 1.7 and South>=1.0.
- jQuery isolation fixes
- Various bugfixes.
- Fixes in Django 1.7 support.
- Implement PEP440 compliant.
- Add author to admin.
- Allow customizing dismiss popup.
- Add order_by parameter in directory listing.
- Experimental Django 1.7 support.
- Bugfixes.
- thumbnails: add zoom support.
- Fixed migration custom User compatibility.
- Disallow copying folders to self.
- Build random path using os.path.join.
- Replace use of force_str by force_text.
- Various bugfixes.
- Dropped support for Django 1.3.
- Added better support for Django 1.6.
- Experimental python 3.3 support.
- File paths now contain random component by default (to avoid filename clashes).
- Fixed migrations to be better compatible with custom user models.
- Bugfixes, performance improvements.
- Experimental Django 1.5 support.
- Bugfixes.
- Fixes template file permissions (packaging issue).
- File.name move to not null (run migrations).
- Fix popup mode when Folder doesn't exists.
- #271 Remove unused templatetag from django 1.4.
- #269 Hide "Folder permissions" entry for "normal" users.
- #265 click on image thumbnail in popup looses context.
- #264 cancel search button looses popup context.
- #263 deleting images from the image detail view redirects to the wrong list view.
- Removed nginx X-Accel-Redirect Content-Type header (#245).
- Validate_related_name method appears to break in FilerFileField (#148).
- Remember last openened folder in file picker (#187).
Django-1.4 compatibility.
Separate, customizable file storage backends for public and private files.
Deleting a file in filer now deletes the file and all its thumbnails from the filesystem.
Many bulk operations (admin actions).
Backwards incompatible changes: * storage refactor: path to private files in the db has changed (no longer relative to MEDIA_ROOT) * filer.server.urls needs to be included to serve private files * static media has been moved from 'media' to 'static'
(as proposed by django.contrib.staticfiles and django 1.3)
- django 1.2 no longer supported
- Minor maintenance release.
- No longer unpack uploaded zip files (#172).
- Removed some print statements.
- Renamed media to static.
- New dependency: django-staticfiles or django >= 1.3.
- Minor bugfixes.
- Fix thumbnail templatetag support for easy-thumbnails>=1.0-alpha-17.
- Fix ajax file upload for django < 1.3.
- Replaced flash uploader with pure javascript (burn in hell, flash uplaoder!).
- Sha hash for files.
- Packaging fixes.
- Moved to easy-thumbnails for thumbnailing. added tests and lots of cleanup.
- Backwards incompatible changes: * use easy-thumbnails instead of sorl.thumbnail
- Bugfixes
- Adds description field.
- First test release as a pypi package.