7.3.10 (2023-02-23)
Overview of merged pull requests
BUGFIX: isNewObject will correctly report object status
With this change PersistenceManager::isNewObject
will correctly report object status in all circumstances.
Fixes: #2699
Packages:
Flow
BUGFIX: Reset cache backend iterator state on update
Some cache backends hold an internal state when used as an iterator. This state needs to be reset whenever the source data is updated.
Packages:
Flow
Cache
BUGFIX: Support PHP8 union and intersection types as method return value in reflection service
The change allows to use union types and intersection types in classes which are proxied by the flow framework. Offcourse the php version Flow is running on has to support the used features aswell.
In addition:
- true
, false
and null
are added to the list of simple types which are not prefixed by the reflection service
- parent
, static
, never
and resource
are added to the list of additional types that need no prefix during reflection aswell
Resolves: #2941
Upgrade instructions
Review instructions
Packages:
Flow
BUGFIX: Fix truncation of cache file when lock not acquired
Previously, SimpleFileBackend would truncate the contents of the cache file if it couldn’t acquire the lock.
To fix this, the c
flag is used for fopen
, so the file is not truncated if it already exists. This necessitates that we manually truncate the file if the lock is acquired.
I’ve added a test that fails without these changes, and passes with them.
Packages:
Flow
Cache
BUGFIX: Support empty data in SimpleFileBackend
In newer versions of PHP, calling fread
with non-positive length raises an error:
fread(): Argument ``#2 <https://github.com/neos/flow-development-collection/issues/2>``_($length) must be greater than 0
Since SimpleFileBackend supports saving an empty file, it should also support reading one.
I’ve added a test that fails without these changes.
Fixes: #2929
Packages:
Flow
Cache
TASK: Adding labels to PRs
With this task, we add automatically labels to the PRs. That makes the maintaining easier, as we did that manually all the time.
What I did We always add the target branch as label, so we see directly which version the PR targets. And if the Commit message is following our rules, we also add the bugfix, task or feature label.
How I did it I use the runner from https://github.com/actions-ecosystem They use node 12 which leads to a warning as actions are running node 16 but an issue is created and it runs anyways.
How to verify it Checkout how it works in the neos-ui. https://github.com/neos/neos-ui/pull/3387
[ ] Reviewer - Breaking Changes are marked with
!!!
and have upgrade-instructions
Packages:
Flow
.github
TASK: Handle ReflectionUnionType & ReflectionIntersectionType
This adds explicit handling of ReflectionUnionType
& ReflectionIntersectionType
instead of falling back to the deprecated __toString()
method on ReflectionType
.
Since we do no longer suppport PHP < 7.1 only the two mentioned types as well as ReflectionNamedType
are supported, a “pure” ReflectionType
can no longer be present at this point.
Packages:
Flow
TASK: Add PHP 8.1 & 8.2 to CI build
Packages:
Flow
Cache