`7.3.2 (2022-03-18) `_ ============================================================================================== Overview of merged pull requests ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ `BUGFIX: Only emit thumbnailCreated when successful `_ --------------------------------------------------------------------------------------------------------------------- * Fixes: `#3573 `_ `BUGFIX: Persist Thumbnail using DBAL to avoid unique constraint errors `_ ----------------------------------------------------------------------------------------------------------------------------------------- This uses a direct SQL INSERT via DBAL to store Thumbnails. Doing this avoid unique constraint exceptions that otherwise occur when multiple concurrent requests trigger Thumbnail creation. * Fixes: `#3479 `_ * Packages: ``Neos`` ``Media`` `BUGFIX: Allow adding first asset collection again `_ -------------------------------------------------------------------------------------------------------------------- **What I did** This fix resolves a regression in `0143d67d8bdfa4458fd9bfb02f3ce6d82d1b400f `_ which prevents adding an asset collection if there was none before as the form was not rendered. **How I did it** Move collection creation form outside of condition which checks for the existence of any least one collection. **How to verify it** Try to add a new collection inside the media module in a fresh Neos without any collections * Packages: ``Neos`` ``Media.Browser`` `BUGFIX: Check for the native PHP extension instead of the ImagineService, since ImageService is not used further in this generator. `_ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Since there is no use of the ImagineService within the DocumentThumbnailGenerator, the availability of the native PHP extension for Imagick should be checked instead. This allows the use of the DocumentThumbnailGenerator with Imagick and the use of other Imagine based thumbnail generators using GDlib, for example. * Packages: ``NodeTypes`` ``Media`` `BUGFIX: Remove unused formatting options `_ ----------------------------------------------------------------------------------------------------------- fixes: `#3612 `_ Thanks to MonTea from Slack reporting that, we appreciate it! * Packages: ``Neos`` `BUGFIX: backend message partials not found `_ ------------------------------------------------------------------------------------------------------------- **What I did** Fix error the circumstances leading to: ``` The partial files "resource://Neos.Neos/Private/Templates/FusionObjects/NeosBackendHeaderData.html", "resource://Neos.Neos/Private/Templates/FusionObjects/NeosBackendHeaderData" could not be loaded. ``` This error message is hiding the actual error message I need to see. **How I did it** Remove usage of partials that had been deleted already in 2019 in 86088dc **How to verify it** Go to various page in backend with a certain content Node Type on it. Go to this Node Type's yaml and change its Name from, e.g. ``Vendor.Site:Box`` to ``Vendor.Site:Boxers``. Reload the backend and find the partial error above occur. After applying this bugfix, you'll find the real error message, ``An exception was thrown while Neos tried to render your page`` fixes: #2757 * Packages: ``Neos`` `TASK: Address PHP 8 deprecation warnings `_ ----------------------------------------------------------------------------------------------------------- This fixes the following deprecation warnings by removing optional arguments that were placed before non optional ones. While this changes the api it should not break any code as the optional arguments could not be used that way anyways. ``` PHP Deprecated: Optional parameter $junkCallback declared before required parameter $options is implicitly treated as a required parameter in /var/www/html/Packages/Neos/Neos.Diff/Classes/SequenceMatcher.php on line 83 PHP Deprecated: Optional parameter $arguments declared before required parameter $renderingContext is implicitly treated as a required parameter in /var/www/html/Packages/Neos/Neos.Neos/Classes/ViewHelpers/Backend/IfModuleAccessibleViewHelper.php on line 66 PHP Deprecated: Optional parameter $tidy declared before required parameter $packageKey is implicitly treated as a required parameter in /var/www/html/Packages/Neos/Neos.Neos/Classes/Domain/Service/SiteExportService.php on line 91 PHP Deprecated: Optional parameter $tidy declared before required parameter $pathAndFilename is implicitly treated as a required parameter in /var/www/html/Packages/Neos/Neos.Neos/Classes/Domain/Service/SiteExportService.php on line 119 ``` This change targets Neos 7.0 as this is the lowest version that allows php 8. No class or method that is @api is changed. When used the changes are non breaking and the modified classes are unlikely to be extended. * Resolves: `#3619 `_ * Packages: ``NodeTypes.BaseMixins`` ``Diff`` ``Neos`` `TASK: Allow Neos.Fusion:Match to return a default value with a type other than string `_ -------------------------------------------------------------------------------------------------------------------------------------------------------- **What I did** I removed the return type declaration of the ``Neos\\Fusion\\FusionObjects\\MatchImplementation::getDefault()`` method. This allows developers to return other types then string when using ``Neos.Fusion:Match``. **How to verify it** Create a new fusion value and use a value that is not a string, for example: ``` prototype(Vendor.Prefix:Component) { value = Neos.Fusion:Match { @subject = ${q(node).property('someProp')} valueA = Neos.Fusion:DataStructure { key = 'valueA' } @default = Neos.Fusion:DataStructure { key = 'valueB' } } } ``` * Packages: ``Neos`` ``Fusion`` `Detailed log `_ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~