Release v6.21.0 (2025-06-06)
Published 2025-06-06 11:48:19Z
Important
This release forces a blocking re-index. Make sure to plan enough time for this update as your users will not be able to access the database while the re-index is running.
Plugins
Starting with this release, the following plugins will require fylr-plugin-commons-library as a dependency plugin installed in the instance.
This plugin acts as a shared library and will be a mandatory dependency for all the plugins listed below.
⚠️ Note: This change only affects the following plugins, not the plugins included in the base installation. Affected plugins have
fylrin their name and similar named plugins in the base installation can be identified by the wordeasydbin the plugin details (visible in the Plugin Manager).
Affected Plugins
fylr-plugin-custom-data-type-geonamesfylr-plugin-custom-data-type-wikidatafylr-plugin-custom-data-type-gettyfylr-plugin-custom-data-type-gfbiofylr-plugin-custom-data-type-iconclassfylr-plugin-custom-data-type-nfis-geometryfylr-plugin-custom-data-type-k10plusfylr-plugin-custom-data-type-goobifylr-plugin-custom-data-type-tnadiscoveryfylr-plugin-custom-data-type-gndfylr-plugin-custom-data-type-gn250fylr-plugin-custom-data-type-dantefylr-plugin-custom-data-type-locfylr-plugin-custom-data-type-georeffylr-plugin-custom-data-type-dorisfylr-plugin-custom-vzg-validationhubfylr-plugin-default-values-from-poolfylr-plugin-editor-field-visibilityfylr-plugin-find-dublicate-field-valuesfylr-plugin-monitoring-endpointfylr-plugin-custom-l10nfylr-plugin-tray-link-managerfylr-plugin-numeric-id-auto-incrementerarchaeodox-fylr-plugin
Server
New
Metadata Mapping: GPS coordinates can now be mapped into type
geo_json. [c86a59c3]Export: Added
EXPORT_DOWNLOADandEXPORT_DOWNLOAD_ERROR. The new events are written when an export is exported. Before we only had events for single files and objects which are exported by the export (FILE_DOWNLOAD+OBJECT_DOWNLOAD). This patch adds an events for each export request, this also includes zipped and tarred exports. [f68e920c]Background Tasks: Support incremental runs, metadata: support set/unset tags. This patch brings the "incremental" feature to task modules. The runner passes the start timestamp of the last run to the module. The module can then make use of it. In case of the "metadata" module, the search the updates are based upon, filter objects which have been modified after the last run of the module. Add a feature to unset/set tags to the metadata module after successful updates of objects. [ffb2d7e1]
Background Tasks: New module
set_unset_tagsadded. With this module, tags can be set or unset based on a search. [ac441ada] [99ae1e8f]Export: Added
highasqualityparameter.highsets the quality to85. it turns out "maximum" (100) makes files too big without making them better. [5a27dbdd]/api/system/location: Support read only locations. This patch adds a read only flag to the storage locations. [517820c3]
Improved
/api/search: Refactored analyzers for indexing. With this change, special characters like
äüøæåare searched verbatim with no folding applied. Only the term auto-suggestion index still folds these characters. SoBärsuggest the tokenbar,BärandBar, but searching forBärin full text only. This requires a re-index. [9230aa2c] [5884b252] [7d2dc43f] [b178f356]User pseudomization: Added
additional_info. This new setting in groups, allows to configure multiple columns at once for pseudomization. Before we had a single column approach, but that is not needed. This patch adds important missing columns using one additional setting. The setting fordepartment"was removed and is now part ofadditional_info. [57e6a721]File Worker: Use high priority workers to pick background jobs too. This patch allows high priority workers to pick background jobs too. Before this was only done by the normal workers. However, we store jobs with high background priority, so it is cleaner to also allow them to be picked up by the high priority workers. [23d8c6e9]
File Worker: Remove
OCRfrompdfin default produce config. It turns out that many customers have a lot of scannedpdf. With the default recipe we would scan each page for text which turned out to really slow down some customers systems. We decided to leave the OCR out of our standard configuration and leave it to the user to turn it on. [e7a4b18a]File Worker: Changed priority for rendition production. In case that an inspect/files action scheduled a resync, this patch makes sure that the initial priority "background" is set to "normal" for the production of the renditions. With this we make sure that the order of the resync will 1. sync, 2. delete obsolete renditions and then 3. produce renditions before syncing again. With this patch, the experience is closer to a one-by-one replacement (not exactly 1:1 but limited by the number of parallel workers) of the renditions. [b6aba6a7]
fylr backup / restore: Various fixes and improvements. [2fd4b657] [3f4a5033] [4e02e830] [8a459130] [7ed03334]
/inspect: Output database size on the main page. [74da37de]
Console Log: Log regular requests (except
event/poll) in levelDEBUG, before this was levelTRACE. This also addsReqBytesto the output. [6c2580b0]User management: Invalidate tokens as needed. After user's password change or login capability (disabled / expired), oauth2 tokens are invalided as needed. Currently open session of the users need to re-login. [4a988dbe]
/api/search: Make
_commenta search field formatchandin. Searching in the comment of the latest version wasn't possible * * /api/user: Allowsystem.rootto set_created_atand_last_seen_atfor version 1. This is used byfylr restore. before. The "_changelog.comment" would search all comments in all versions. [20cc0749]Export: Allow file export / download with status
sync. During long running resync actions it can happen that file which need to be exported are not in statusdonebutsync. This status is now considered to be safe for export (the internal StatusSyncInternal that is). Also safe for export is "StatusPendingChecksum". This avoids un-exportable files during long running resync actions. [98de89d4]Opensearch v3: Latest version of Opensearch is supported. [837affb1]
LDAP: Replace not existing keys with empty strings. If a mapping of ldap value wants
%(kuku)sreplaced and the ldap entry has no such key, the value would be%(kuku)s. This patch removes empty replacements like this. Also add a concat option to regular expression replacements. If a regexp likekey||search||replaceis used to replace ldap /saml entry values, a 4th parameter can now be used to concat multiple values into one:key||search||replace||concat. [511c0170]Indexer Improvements: A new setting for
fylr.ymlfylr.elastic.metadataFulltextLimitcan be used to cut off fulltext read from text files. This improves the memory consumption for files with a lot of fulltext. Alsofylr.elastic.maxHeapAlloc,fylr.debug.indexerSingleMode,fylr.debug.indexerDebughave been added (seefylr.example.ymlfor documentation). The newfylr.elastic.maxHeapAllocvariable defaults to1Gand limits the memory consumption during indexing. The new code results in a faster and smoother (less memory) indexing experience. On capable systems it is advised to setfylr.elastic.maxHeapAllowto4Gor even more.Geo JSONdata is cleaned to reduce parsing errors during indexing. [38abf930] [daea46b9]Indexer: Add file metadata in reverse nested to index. [325111ee]
Events: Extended event infos with standard, display names, references, ... for INSERT, UPDATE, DELETE events of user records and basetype. [0f6ef6f7] [0236b27b] [6f34ca66]
Register Page: Don't require
address_supplementandstate. If anaddressis required for registration, don't require these 2 fields. [312ef717]Page Forgot Password: Don't allow to restore a password if the user doesn't have the system right
change_password. [133f9fd6] [2a27e20a]/inspect/objects: Persist settings when selecting an object type. [8ff39d20]
Shutdown: Sped up shutdown at CTRL-C or SIGTERM. [57f0ef2dc78]
Collection PIN Code: Use PIN code to limit access to objects in
/api/searchand/api/db. Before the PIN code system was server managed but without restricting pin less access to shared objects on these endpoints. [eb020324]fylr convert: Improved managing the
--blurhashconstraint for big files. [c2d62213]
Fixed
/api/db: Fix setting of tags in
choicetag groups. If a tag group is of typechoice, adding a tag needs to remove other tags from that group. This patch uses this in group mode as well as for the task module. [b1e37264]/api/export: Fixed CSV export for huge exports. In rare cases a
bad connectionerror would indicate a problem while preparing huge CSV exports. This was due to a parallel access of one database transaction which is now avoided. [25000111]Rights management: Allow object creation inside a pool without the
LINKright for that pool. OnlyCREATEis enough. This brings fylr in line with easydb 5. TheLINKright is only needed if an object is moved into a pool, but not created inside it. Users are advised to check their settings and policies. The previous fylr was more restrict requiringLINKandCREATEto create a new object inside a pool. [1a9afabd]
Frontend
New
Has Value Search: A new button has been added in Expert Search to search whether a specific field is not empty. This new button appears next to the existing button used to search for empty fields. Custom data types need to implement a new method to work with this feature. #70914
Set/Unset Tag Task Module: A new background task module has been added. This module allows configuring or removing tags from objects. #75603
Input Search Settings: A new option has been added to the input search settings to prevent the automatic usage of the "Created Today" query after object creation. #75572
Change History Shortcut: A quick access button to an object’s change history has been added. It is shown next to the "Version" field in the editor and detail footer. #75649
Create Background Tasks in Collections: It is now possible to create background tasks that accept searches using a collection as the source. This appears as a new option in the contextual menu of collections. #75371
Improved
Date Fields: Date fields now display a placeholder using the format configured in the instance settings. #73960
Detail Sidebar: Improved the organization of certain tool buttons in the detail sidebar. #72589
Event Manager: Improved how object references are displayed in events. #73230
Text View Options: Added display options for the text view in main search. #72728
Default Tags in New Popover Editor: Improved how tags set in the template object behave in the new popover editor. #74265
Not Allowed Objects in Hierarchies: Improved how hierarchy levels are shown when a user lacks the permission to view them. #75187
Admin Messages: A confirmation tab was added for the "auto_registration" message type. #72777
GeoJSON Column: Added support for GeoJSON columns in metadata mapping. Now it is possible to map a GeoJSON value from an image to a GeoJSON field. #75857
Not Null Fields: Improved the editor to mark fields as required.
About Fylr Menu: A quick access link to plugin commits is now shown if the plugin has a repository configured. #75909
Task Manager Log: The task log now parses messages for object references, displaying the object’s quick view when the reference is clicked. #75603
Tray Apps: Added support for deep linking in tray apps. Apps can now implement the method
getPathNameto configure a path that activates them. Example: TaskManager tray app. #75603Location Manager: Added a new read-only checkbox for configuring storage locations. #76161
Search Field in Task Modules: A confirmation dialog is now shown when the search parameter is empty in modules, which means "all objects". This warns the user accordingly. #68241
Object List in Editor: A new button has been added to remove objects from the object list in the New Object Editor without needing to select them first. #73621
File Worker Validation: Added validation to ensure incorrect data is not saved in the file worker when saving the base config. #74088
Input Search Settings: The "include fulltext for files" option in input search will now be enabled or disabled depending on whether the search could contain EAS fields. #76052
Table View Optimization: Table view search will now calculate excluded fields (those not visible), greatly improving performance for large result sets. #76180
Fixed
ACL Manager: Fixed a bug where a group could be shown as "undefined" in a user/group selector. Now, users without permission to view a group also cannot modify its permissions in the Pool Manager. #75807
Mask Editor: Fixed an issue with displaying the "condensed_output" option. #75862
Read-Only Mode: Fixed an error when opening the editor in list view in instances configured as read-only. #67975
Linked Object Expert Search: Fixed an error when rendering linked object selection in Expert Search. #75983
Textual Date Ranges: Fixed issues in the behavior of textual date ranges in the editor. #75711
Filter Panel: Fixed an issue preventing custom data types using
easydb-libraryfrom working correctly with AND/OR modes in the filter panel. Updated all related plugins. #74805Linked Object Filters: Fixed a bug affecting linked object filters in the linked object search. #76135
Linked Object Creation in Metadata Mapping: Improved the creation of linked objects via metadata mapping. #75740
PDF Viewer: Fixed issues in the PDF viewer in the asset browser. #76191
Before Download Message: Fixed a bug where downloads could be blocked even when no messages were shown. #76268
Full Screen Detail Zoomer: Fixed an error preventing the zoomer from initializing with the mouse wheel in fullscreen mode if the fullscreen sidebar was opened. #76176
Fields: Fixed an issue where the linked-object field in Expert Search wasn’t styled as a combo box. #75983
Linked Object: Added correct warning style to the linked object warning label. #75983
Expert Search: Added max-width to the Expert Search popover and query element popover to prevent excessive UI shifting. #75983
Object Type Manager: Adjusted placement of select field checkboxes and empty labels in the "Field Visibility" table. #75421
Shared Templates: Fixed issue where groups didn’t receive generated rights after an API change, causing the shared templates checkbox to be hidden. #70030
Date Ranges: Fixed a bug in advanced searches using date ranges. #75932
Shared Links for Assets: Fixed construction of shared asset links. The server now includes the signature in the download URL, which previously broke additional parameters. #76188
Metadata Task Module: Added extra properties and filters to the search produced by the metadata task module to ensure correct server results. #68241
Auth Mapping Tab in Groups: This tab is now always shown if a user can edit a group's options. Previously only root users could see it. #76194
Pool Manager: Fixed drag-and-drop behavior in the list of available masks. #70781
Masks Editor: Fixed a bug where the Nested Index settings weren’t correctly synchronized across an object's masks, causing save errors. #76211
Last updated