Release 6.24.0 (2025-09-11)
Published 2025-09-11 09:44:48Z
Server
New
GET /api/db: Render historic versions. If a specific version is requested, this patch delivers the actual version of the object at the specific time of when it was saved. With this, linked and reverse objects are rendered in the version which was current when the historic object was saved. To restore the old behavior
latest_linked=1
can be used as URL parameter. This patch also stores the microseconds of the create date of new objects. [d23538b7b] [a09727a93]/inspect/files: Add action to map remote stored files to locale storage. This also sets a
X-Fylr-Storage-Location
header to/api/eas
output. This patch also removes the unused support for the remote delete url. It was meant to be used for eas in place migrations, but we now use a different concept for that (storage location which uses the EAS file layout). Also, when restoring easydb5 EAS urls usingfylr restore
, remove the mimetype from the URL and set it via_technical_metadata
. This enabled the action map_to_locale_storage work on such remote files. [2d176e49f] [6b56cda26] [39da9a75b]File renditions: Support Kodak Photo CD
PCD
format. The default format for renditions isJPEG
althoughPCD
is lossless, butPCD
is so good at compressing, a 5 MBPCD
file would blow up to 20 MBPNG
taking too much space. The same image is only 1.8 MB asJPEG
. Already existingPCD
files can be re-synced to produce renditions using/inspect/files
. [ae97a70b9]
Improved
fylr backup/restore: Improvements & Bugfixes. [33fb6867a] [1bfe749cf] [72531a6c4] [9dc4e3209] [9eed16d92]
/api/db|search: For deferred linked objects, output the
_system_object_id
along with the_uuid
. Before we only had_uuid
showing up for such ghost objects. Improved the output of such deferred objects in inspect/object render. Also, improved the database constraint check to make sure the linked system object id is 0 if the uuid is given. This was the intention of case TYPE_LINKED: linked_object_uuid WITHOUT FK but failed to work because the way Postgres ignores such checks if partial matches are NULL. Since this wasn't a problem with current systems, we are not creating a migration step for this. [2cc54c1c0]Go 1.25: Update build system to use Go 1.25. The new JSON implementation is turned on, it promises faster decoding. [dd384db50]
Task Module
metadata
: Force metadata requests. This forces requesting metadata for images, even if the metadata h ad already been produced. With this patch, ChatGPT requests can be repeated. [d5c3dc3fe]/api/search[type=message]: Support search for
message._id
. [c5c7a32d4]/eas/rput[/bulk]: Support to set
technical_metadata.mime_type
. This patch allows to set the mimetype in"file"
by setting_technical_metadata.mime_type
in rput[/bulk] request. [6b56cda26]POST /api/db: Don't allow to link deleted objects. Also, improved checks for deferred linked objects. [37b972f34] [37b972f34]
/api/db: Add
OBJECT_UNDELETE
andOBJECT_PURGE
events. These events are clearer thanOBJECT_DELETE
withinfo.policy
as it was before. Already writtenOBJECT_DELETE
events are not changed. [8ce2e5135]/api/config: Support default values for
bool
. This change switches boolean to a 3-state system internally. "unset", false and true. With this change, setting a default for a boolean in the config becomes possible. [78a50ebfa]Plugin Updater: Use
Etag
in addition toLast Modified
to check if an plugin installed by URL needs an update. [2b0bece67]
Fixed
Custom Datatype Updater: Fix panic when used with
custom_types.TYPE.update.plugin_user.reference
. [af9146073]Dockerfile: Use init program S6 to start fylr. With this zombie processes are avoided. Such zombies would be created if a sub process started by fylr didn't clean up all further sub processes it had created (like "tesseract" when killed by fylr due to a timeout). [1293d5f86] [ac71dc16c]
Export XLSX/CSV: Export thumbnails (XLSX) even if custom fields skip
_standard
. Also, skip_standard_parent
in that case. [7cbdfc6d5071]ZIP file delivery: Set correct
Content-Type
in HTTP response for file streamed out of ZIP files. Before, noContent-Type
was set, which caused problems in Firefox when trying to load css from plugins. [ae6dc5093] [77382cd85]
Plugins
Typo3 Plugin: The Typo3 Plugin version 3.1.2 was released and now supports version 13.
Frontend
New
Editor Persistence: A new functionality has been added to the editor. Now, when saving, the exact scroll position within the editor will be remembered. Additionally, tab and panel type mask splitters will also retain their state. This ensures that the user remains in the same position within the editor after saving.
Mask Memory Manager: Implemented a new manager in the editor that stores information about the last mask used between editor and detail mode. This allows the mask selection to be maintained when switching between modes and objects.
Keyboard Events: Keyboard events have been added to improve the usability of the application. Now it is possible to use shortcuts such as CTRL+A to select all objects in the search, navigate using arrow keys, use CTRL+S in editors to save, CTRL+N to open a new editor, etc.
Ghost Linked Objects: Support has been added to display linked objects that have been permanently deleted, for example in the change history. If a linked object no longer exists in the application, it will be displayed correctly with minimal information (object type and mask), indicating to the user that it is a deleted object.
Relative Date Ranges for Search: A new feature has been added to Date Fields, allowing the definition of relative date ranges based on the current date when executing a search. This new mode enables configuration of direction, unit, and range value. For example: "From now to 30 days in the future" or "From 30 years ago to now." This allows for more dynamic searches, useful for background tasks.
Improved
Validations in Nested Popovers: Data validation within nested popovers has been improved, and validation error messages will now be displayed inside the popover.
Linked Objects in Filters: Improvements have been made in how linked objects are displayed in filters. This is related to how we render the filter group header for linked objects.
Query Elements: Support has been added for copying, cutting, and pasting query elements in the search input, making manipulation of query element groups much easier.
Linked Objects: Added the ability to define custom placeholders for linked object fields in the Mask Editor.
Nested Table: The delete row button behavior in nested tables has been improved. In cases where the nested table always contains a row, pressing the delete button will now clear the row content instead of being disabled.
Editor Reload Prompt: The reload prompt behavior has been improved when an object has been updated externally or a reverse field has been modified. Now, multiple stacked prompts will no longer appear, and both object data and reverse objects will reload correctly.
Change History: Versions in change history that contain reverse records will now display a snapshot of the reverse records at the time the version was created.
User Frontend Prefs: Improved the design of the new user preferences panel for the frontend.
Fixed
Trashbin: Fixed the purge alert description.
Field REGEXP Validation: Fixed the REGEXP validation label for fields in the editor.
Export Manager: Fixed validation in the export manager when only the XLSX format was selected.
Editor: Fixed the
getBestMask
method when called from a new object not retrieved from the server.Search: Icons for audio, video, and office assets are now displayed in Overlay View as well.
Hierarchy Manager: Fixed the hierarchy indicator in the new standard and text result views in lists.
Detail Fullscreen: Refactored dark theme styles for the hierarchy browser in fullscreen mode.
Hierarchy Manager: Fixed the hierarchy path issue where it became unresponsive when changing the result view in search.
Collection Upload: Fixed Collection Upload settings; the frontend was sending an incorrect
linked_pool_id
value in cases where this data was not needed.Shared Collections: Fixed the recursive count in shared collections, and also improved filtering to exclude non-allowed collections.
Location Manager: Added a new field
remote_url_prefix
to the form of filesystem locations.Popovers: Fixed an issue where popovers did not resize correctly when opened for the first time.
Query Elements Selection: Fixed an issue preventing the use of shift+A in the search input, which incorrectly triggered the select-all event.
Main Search: Fixed an issue where main search results were not updated after adding new objects when the "hide newly created records" option was enabled.
Collections: Fixed a bug that displayed the compatibility alert with EasyDB4 multiple times in instances migrated to Fylr.
Date Ranges: Fixed a bug in expert search where date ranges did not correctly trigger the apply button update.
Print Manager: Fixed a bug preventing images from loading correctly in very large PDFs due to the
lazy_loading
property. Additionally, Print Manager now ensures that all images are fully loaded before invoking the print library.Nested and Reverse Nested Tables: Fixed a bug that prevented nested and reverse nested table rows from being saved correctly when configured as readonly in the mask.
Tag Fields: Fixed a bug where tag fields were not rendered correctly in the detail view.
GeoJSON Column: Fixed methods that retrieve the custom OT map center or zoom when the GeoJSON column is inside a reverse linked object.
Editor Reload Prompt: Fixed a bug that prevented saving when the reload prompt appeared after a reverse linked object was modified.
Polyhierarchy Parent Field: Fixed the behavior of the polyhierarchy parent field in expert search and in the query element editor.
Has Value Filter: Fixed the use of
has_value
with the AND operator.Background Tasks: Fixed the scheduler for background tasks to send the correct time format to the server.
Data Tree Construct: Fixed an edge case where the tree build process could get stuck in an infinite loop due to recursive
copyObject
calls. The legacy function was replaced by the modern implementation that uses a safer approach.Nested Popovers: Fixed an issue preventing nested popovers from opening when a separator mask splitter was used in the nested configuration.
Table View: Fixed an error causing some fields not to display in the table when those fields were not visible in certain object type masks.
Asset Browser: Fixed the default height of the asset browser in the sidebar.
No Rights Popup: Fixed a bug that displayed multiple "no rights" popups in the editor for limited rights linked objects.
Last updated