7.0.2 (2021-01-04)
Overview of merged pull requests
BUGFIX: Persist doctrine MetadataStorage changes immediately
This basically adds a EntityManager::flush() call after MetadataStorage::ensureInitialized() invocations in order to apply any metadata migrations immediately.
Without this a ./flow doctrine:migrate call might leave the metadata storage in a half-migrated state if it leads to an exception.
BUGFIX: Return correct type for EEL trunc math helper
The internally used ceil and floor methods of the trunc helper return a float which doesn’t match the signature anymore and leads to unexpected comparison issues when using this helper in Fusion.
What I did
Cast the return values to int.
How I did it
See above
How to verify it
Call trunc with a positive int as parameter and check the type of the returned value. Instead of an int you would get a float.
Packages:
Eel
TASK: Update documentation to remove deprecated Doctrine connection
Since doctrine/dbal 2.11 PrimaryReadReplicaConnection should be used. This change updates the documentation to reflect this change. See https://github.com/doctrine/dbal/issues/4052 for details.
Packages:
Flow
BUGFIX: Avoid passing signal information depending on other signals to same slot
This fixes a regression introduced with #2216
Fixes neos/content-repository-search#42
Packages:
Flow
BUGFIX: Reduce the migration message to one line
Currently only the first part of the line is displayed
!`image <https://user-images.githubusercontent.com/642226/102323341-a5812480-3f80-11eb-8582-bc9cee431d2a.png>`_
Packages:
Flow
TASK: Allow to install with composer 2.0
This is a backport of #2251
Resolves: #2248
Packages:
Flow
BUGFIX: Set Flow_Security_Cryptography_HashService defaultLifetime explicitly
Otherwise changing the default configs defaultLifetime will also make this cache be emptied unexpectedly and unnecessarily.
Packages:
Flow
TASK: Fix some docblock typehints
This only fixes a couple of docblock typehints primarily in the ResourceManagement and TypeConverters.
Packages:
Flow
BUGFIX: Correctly handle missing configuration with identity creation
The code did not handle a missing $configuration when converting an hash and data array containing an identifier.
See https://github.com/neos/flow-development-collection/pull/1931/files#r503144893
Packages:
Flow
Kickstarter
BUGFIX: Fix creation of translations with targetLanguageKeys defined
What I did
Previously, when trying to create translation files with targetLanguageKeys defined (flow kickstart:translation –target-language-keys=”de” for example), an error was thrown. The error said, that translationUnits is not defined in Neos\Kickstarter\Service\GeneratorService. This is, because Neos\Flow\I18n\Xliff\V12\XliffParser::getParsedData will return an array (for each <file>-Entry in the Xliff-File, typically only one entry). So we need to use the first item of that data to get the translationUnits from it.
How I did it
I only made a little change and added [0] to $parsedXliffArray in Neos\Kickstarter\Service\GeneratorService::generateTranslation().
How to verify it
Try to kickstart a translation with –target-language-keys defined. An error will be thrown.
Change $parsedXliffArray[‘translationUnits’] to $parsedXliffArray[0][‘translationUnits’] in the foreach loop of Neos\Kickstarter\Service\GeneratorService::generateTranslation().
Retry to kickstart the translations.
Lowest maintained branch is 4.3, so the PR is created against that version.
Packages:
Flow
Kickstarter
BUGFIX: Don’t access static properties in annotation classes
get_class_vars() will also return static properties. Hence we also try to access static properties for rendering the annotation and access them non-statically. This will lead to errors.
See https://github.com/zircote/swagger-php/issues/359#issuecomment-303058035 / https://github.com/zircote/swagger-php/issues/359#issuecomment-303227013
This solves that by using get_object_vars(), which will only return non-static properties with their current values.
Packages:
Flow
TASK: Improve exception when a class can not be loaded during AOP building
This will now throw an exception that suggests to flush caches or check the existence and namespacing of the aspect class.
Until now such a case would lead to an unhelpful exception of:
`
Warning: Invalid argument supplied for foreach() in /…/Packages/Framework/Neos.Flow/Classes/Aop/Builder/ProxyClassBuilder.php line 319
`
because the following get_class_methods() call would return null which is not checked for.
Packages:
Flow
TASK: Replace symfony polyfills due to min PHP version
See https://github.com/symfony/polyfill#design
This prevents installing the symfony polyfills for php <= 7.1 and mbstring, since those are requirements of this Flow version.
TASK: Fix link target of CGL on one page PDF
Clicking the preview image on https://flowframework.readthedocs.io/en/stable/TheDefinitiveGuide/PartV/CodingGuideLines/PHP.html#cgl-on-one-page leads to a 404 currently
Packages:
Flow
TASK: Document alternative initial database setup method
./flow doctrine:create && ./flow doctrine:migrationversion –add –version all directly initializes the database schema and marks all migrations as done. This can be a helpful alternative initial setup in some cases.
Resolves: #2264
Packages:
Flow