Release v6.5.0 (2023-06-22)

Published 2023-06-22 16:24:29Z

Important

  1. This release brings license management to fylr. Make sure to get your license as soon as possible!

  2. The license management is in beta testing, in v6.5.0 you will have to actively enable it in the base config.

  3. This possibility to run without license management will be removed in v6.6.0.

  4. Make sure to re-index before opening this update to users. Go to /inspect/system and choose Reindex (Blocking...) for the best user experience. Without re-index your users will be greeted with an error message about groups which could not been loaded.

  5. Make sure that the new fylr.services.webapp.oauth2.internalURL which is set in fylr.default.yml, doesn't interfere with your setup. This can happen if you are using a fylr+ style .yml. The default is set to http://localhost:8080. A new fylr.yml browser in /inspect/config/ can support to debug this.

New

  • Added license management. A valid license is required in order to use fylr with an fylr.externalURL other than localhost. Without license and non-localhost setups, only the system:root user is allowed to login. All other users are declined. Make sure to properly setup fylr email service as well as setting an administrator email, so that fylr can warn you about an expiring license. To obtain a license contact support@programmfabrik.de.

  • WebDAV Hotfolder support: If set up in fylr.yml, the new Hotfolder features brings back the drop folder feature known from easydb 5. Files being dropped to a folder will be imported into fylr (after a 15 second wait) and then removed from the Hotfolder. This Hotfolder implementation is about 5-10x faster than the read-write access. Both can now be turned on and off in the base configuration individually.

  • Added custom reverse proxy targets in fylr.services.webapp.reverseProxy.custom. This allows to proxy custom paths towards a custom target URL.

  • Support AAC preview version for WAV files. With this the frontend will show an audio player for files of type WAV.

  • Redirect web access from other than fylr.externalURL to the external URL. If you have a DNS resolving www.database.fylr.com as well as database.fylr.com (being the external URL), fylr will redirect to database.fylr.com.

  • Let's encrypt certificate service now supports multiple domains. Setting up multiple DNS names for your fylr server is now supported and can be configured to seamlessly work with fylr's auto certificate service.

  • A new config setting fylr.services.webapp.oauth2.internalURL allows for easier configuration of OAUTH2 in complex network setups where the internal fylr server cannot resolve the external URL of fylr. If you are using a fylr+ style .yml, make sure that the default for this config doesn't interfere with your setup.

  • A new config fylr.stdErrFile allows to redirect Stderr output to a file. This will be most useful for Windows users who start fylr as a service and have no chance to capture Stderr. Please note that panics are not caught by this and are still sent to Stderr. If you installed fylr as a service and it panics, Windows will restart fylr without an obvious trace of that panic.

Improved

  • /inspect/system/janitor: Output information about the current configuration. Before this, it would be hard to tell from inside /inspect if the janitor was activated or not.

  • /api/db will compile empty _generated_rights, if the user has no MASK permission. This also affects the warning which fylr shows to the user if he loses all the permissions to an object after saving.

  • Some error messages were improved, like unique key violation.

  • Speed up metadata mapping during uploads. New internal process management allows for faster mapping from file to object metadata.

  • Make group.name unique. If the system contains multiple group.name this update will change the names and add the group._id as suffix. This was done to fix mapping issues which could occur with some SAML configurations and non unique group.name entries.

  • /api/db: When using _version:auto_increment we changed the behaviour to match the frontend JSON importer: The version is automatically set and an existing object is merged with the new data delivered. Essentially it works like the group mode. _version:auto_increment works when used together with lookup:_id.

  • /api/db: Set _owner to system:root if the mask doesn't show the owner of an object in the editor. This brings fylr in line with easydb 5.

  • Use less memory on Windows when creating renditions for bigger files. This change stores the file on disk before calling convert to resize it. Before we used pipes to accomplish this. It turns out that this is using a lot of memory on Windows. This change also allows us to save some data being transferred from the file to the exec server, by doing less copying.

  • Limit the size up to which Blurhash is calculated to 10Min fylr.default.yml.

  • The ISO8601 date parser now accepts timestamps with time zones without minutes.

  • Improved the design of the login, registration and password pages.

  • The exec server has now new log level for busy situations. In general the log levels have been reduced to not create worry if a worker is not available for a short period.

  • Plugins now receive the fylr.externalURL in the %info.json% blob.

Fixed

  • /inspect/files: Fixed format standard for API output.

  • Removed newline option for standard rendering. This never worked properly in the fylr design.

  • /api/db could cause an infinite frontend loop between a 202 response and transitions to be confirmed. This was fixed by making fylr aware of this case and creating one confirm key for both confirmations.

  • OAUTH2 clients with more than one redirect_uri did not work properly with our frontend. Fixed by explicitly setting redirect_uri on all relevant requests.

  • Copying of group settings for new users has been fixed.

  • Removed unsupported system groups: SYSTEM_FALLBACK, SYSTEM_INTERNET_CONNECTION, SYSTEM_INTRANET_CONNECTION have been removed. These were left overs from easydb 5 time and not used in fylr. For the internet and intranet groups, an IP filter can be set for a group instead. This fix requires a re-index!

  • A case was fixed were a deletion of a mask could cause fylr to panic, if the mask was used in a collection hotfolder setting.

  • Fixed usage of OAUTH2 domains with token in there host names.

  • Fixed rendering of standard info in certain complex and deeply nested data models.

  • Fixed a case involving changed link masks when committing a data model failed with a panic.

  • Do not cache HTTP redirects.

  • Metadata mapping of PersonInImage was fixed. If your mapping affected by this bug, you need to re-save it in the Mappings Editor.

  • Creating backups and restoring them was fixed for some cases when tagfilter or mappings were configured for object types.

  • Allow only system:root to change the owner of group and user.

  • Improved robustness of the exec server: In case that a called program would have dangling i/o, the exec server could not kill the program after the timeout. Instead the program would be kept in memory and the exec server would never release the claimed waitgroup semaphore. In this case, the exec server would not be able to answer more requests on that specific service. Fixed by improving the mechanism which kills the called program (and its children), if the program doesn't exit in time.

  • /api/db: Fixed group mode's pool change check. With this patch, we only check for reverse pools if the top level pool changed. This avoid a 202 error wrongly reporting that a pool was changed.

  • Fixed a case where users could not be deleted by the janitor, because their collections were not yet removed. Fixed by using the owner instead of the collection reference to find the user collections.

  • Fixed base config manager for users with only system.config system right.

Plugins

  • Improved server-pdf plugin to replace fylr.externalURL with fylr.execserver.callbackApiInternalURL. This fixes situations where fylr is unable to resolve its external URL.

  • Make easydb-plugin-connector compatible with both, easydb 5 and fylr. This plugin works as a hybrid plugin and can be installed on either system. It is part of the standard fylr distribution.

  • Fixes for easydb-presentation-pptx-plugin, this also works now in fylr and ez5. This plugin works as a hybrid plugin and can be installed on either system. It is part of the standard fylr distribution.

  • Make easydb-export-transport-ftp-plugin a hybrid plugin. This plugin can be installed on easydb 5 and fylr alike. It is part of the standard fylr distribution.

Frontend Changes

  • Style and design fixes.

  • Main search now uses wildcard mode by default.

  • Improved image loading significantly and fixed the flickering issue during image loading.

  • Added a manager in the base config to view and manage Fylr licenses.

  • Improved link detection in text fields, now detects links within brackets or parentheses.

  • Improved the search buttons for nested objects in the detail sidebar.

  • Fixed issues with the filter button in the user panel.

  • Fixed issues with configuring objects as buttons in the main menu.

  • The quick access menu now properly hides its content if a user doesn't have permission to view it.

  • Fixed issues with retrieving language tags.

  • Text fields in the PDF creator now support line breaks.

  • Added template support in the HTML editor custom data type.

  • Fixed the "Download as CSV" button in the event manager.

  • Fixed an issue when changing the pool in a reverse linked field.

  • Fixed an error when duplicating a pool that contains a pool reference.

  • Fixed an error that prevented users without permission from viewing a pool when it had a parent pool.

  • Fixed the "Copy Record" button in the detail panel.

  • Fixed issues with the detection of .acc files in the asset browser, now the audio player is displayed for this file type.

  • Fixed issues in the user manager where fields were automatically filled by the browser.

  • Fixed an issue where custom metadata fields were duplicated each time they were edited.

Last updated