6.3.0 (2020-09-08)
Overview of merged pull requests
TASK: Add documentation to model unidirectional OneToMany and ManyToMany
This adds basic documentation for how to properly model unidirectional OneToMany relations in Flow and slightly extends the “Getting Started” guide.
Related to #2053
Packages:
Flow
TASK: Add missing HTTP status codes to ResponseInformationHelper
This adds a number of HTTP status codes to the ResponseInformationHelper and tweaks the message for code 413 from ‘Request Entity Too Large’ to ‘Payload Too Large’ (as in RFC7231 Section 6.5.11.)
Packages:
Flow
TASK: Apply fixes from StyleCI
This pull request applies code style fixes from an analysis carried out by StyleCI.
—
For more information, click here.
TASK: Apply fixes from StyleCI
This pull request applies code style fixes from an analysis carried out by StyleCI.
—
For more information, click here.
Packages:
Flow
TASK: Apply fixes from StyleCI
This pull request applies code style fixes from an analysis carried out by StyleCI.
—
For more information, click here.
Apply fixes from StyleCI
This pull request applies code style fixes from an analysis carried out by StyleCI.
—
For more information, click here.
Packages:
Cache
Eel
Flow
FluidAdaptor
Schema
Apply fixes from StyleCI
This pull request applies code style fixes from an analysis carried out by StyleCI.
—
For more information, click here.
Packages:
Cache
Eel
Flow
FluidAdaptor
Schema
Apply fixes from StyleCI
This pull request applies code style fixes from an analysis carried out by StyleCI.
—
For more information, click here.
Packages:
Cache
Eel
Flow
FluidAdaptor
Schema
BUGFIX: Correct indention for throwables config
The configuration of the throwable exceptions should not be part of the psr3 level. And the default config did not work since 6.0. The method initializeExceptionStorage still expects the configuration to be at the path Neos.Flow.log.throwables.
Fixes: #2082
Packages:
Flow
TASK: Apply fixes from StyleCI
This pull request applies code style fixes from an analysis carried out by StyleCI.
—
For more information, click here.
Packages:
Flow
TASK: Remove typo3 namespace replacements
There never was and never will be a typo3/flow version of 6.3+
Packages:
Flow
!!! BUGFIX: Browser arguments are the request parsed body
Since 6.0 the Browser $arguments were accidentially moved to the request query parameters, while they should reflect the post body arguments.
The docblock even states that: @param array $arguments Arguments to send in the request body
Note: this slightly changes behaviour if you adapted your usage of Browser since 6.0.0. If you want to send query parameters, you should instead provide an Uri instance with the parameters, as was already the case prior to 6.0. (This is the reason for marking this bugfix as breaking.)
Packages:
Flow
Fix some typos
When I stumbled over “anonyous”, I had a closer look at the hole section. I’m not a native speaker though.
Packages:
Flow
TASK: Use argument unpacking instead of call_user_func_array
This is supported since PHP 5.6 and is actually faster than call_user_func_array at least since PHP 7. Just be sure to not use it in places where the method is static or a Closure. This also deprecates ObjectAccess::instantiateClass() (retrospectively). It will be removed with Flow 7.
Packages:
Flow
BUGFIX: Array.indexOf() returns an integer with asssociative arrays
Packages:
Eel
BUGFIX: Make php binary setting check use realpath
The check if the current executing php binary path as set in PHP_BINARY matches the given setting in phpBinaryPathAndFilename was case-sensitive. This check is only done when the setting is specified and should guarantee that the path specified refers to the same binary as the one executing the current script. On Windows, the filesystem is case-insensitive by default though (Windows 10 has options to make it case-sensitive) and the chance that someone accidentially gets the casing of the path wrong on windows is (arguably) much more likely than someone having different versions of php installed on a case-sensitive filesystem in pathes /foo/PHP/php and /foo/php/php respectively. ~Even if that would be the case, if the two versions do not match the check at ensureWebSubrequestsUseCurrentlyRunningPhpVersion would still throw an error with an even more specific message.~
So this will prevent irritating errors on Windows in the form of !`image <https://user-images.githubusercontent.com/4259532/85157246-83217f00-b25b-11ea-8ebb-abc95b30e09a.png>`_
Packages:
Flow
BUGFIX: Use serverRequestFactory to create server request with path
Fixes: #2043
Packages:
Flow
TASK: Update psalm baseline
Adjusts the psalm-baseline to changes in #2024
Packages:
Cache
Eel
Flow
BUGFIX: Check if PdoBackend cache tables exist in setup
Running the setup for a PdoBackend multiple times should not lead to an error, similar to other Backends.
Resolves: #2039
What I did Allow PdoBackend::setup() to be called multiple times.
How I did it Check if cache tables exist in PdoBackend::setup() before creating them.
How to verify it
* See: #2039
* Packages: Cache
BUGFIX: Correct default log file size
Updating https://github.com/neos/flow-development-collection/pull/1998 to correct version.
Packages:
Flow
BUGFIX: Avoid trying to autowire constructor arguments for factory created objects
This bug was uncovered with the previous fix to not map arguments to the object when a factory is configured (see #1967). That way (singleton) objects which expected a (non-optional/nullable) constructor argument that could not be autowired (e.g. because it was a scalar) would lead to the exception “Could not autowire required constructor argument … for singleton class …”. This change fixes that, by completely skipping autowiring for objects configured with a factory. The factory has full responsibility to create and wire the constructor arguments correctly.
Packages:
Flow
TASK: Improve wording of include/exclude concepts where possible
Those old wordings have no place and they are also objectively worse than the replacements.
Packages:
Eel
Flow
BUGFIX: Allow Views to replace the response in AjaxWidgetContext
If a WidgetController has a view returning a PSR-7 response, it was not replaced in Ajax context. Now the behavior of the ReplaceComponent is merged into the AjaxWidgetComponent, so the expected ActionController behavior can be guaranteed
Solves: #2027
Packages:
FluidAdaptor
FIX: Fixing documentation to give real working examples of disabling auto wiring
Packages:
Flow
TASK: Adding a test case for breaking object configuration if argumen…
…ts of object constructed by factory cannot be autowired
Packages:
Flow
Apply fixes from StyleCI
This pull request applies code style fixes from an analysis carried out by StyleCI.
—
For more information, click here.
Packages:
Eel
Flow
FEATURE: Configurable PersistedUsernamePasswordProvider lookup name
Adds an option lookupProviderName to the PersistedUsernamePasswordProvider that allows the provider to be reused for multiple authentication types.
Example:
- Flow:
- security:
- authentication:
- providers:
- ‘Acme.SomePackage:Default’:
provider: PersistedUsernamePasswordProvider token: UsernamePassword
- ‘Acme.SomePackage:Default.HttpBasic’:
provider: PersistedUsernamePasswordProvider providerOptions:
lookupProviderName: ‘Acme.SomePackage:Default’
token: UsernamePasswordHttpBasic entryPoint: HttpBasic
Resolves: #1996
Packages:
Flow
TASK: Rename Doctrine\Common\Persistence -> Doctrine\Persistence
This fixes psalm errors due to the namespace renaming of various doctrine classes in doctrine/orm 2.7.3 release. The old class name was an alias since 2.7, so this should not break anything. 🤞
Packages:
Flow
ObjectHandling
TASK: Get rid of PhpUnit warnings in unit tests
Adjusts unit tests to avoid PhpUnit 8 deprecation warnings and in order to support PhpUnit 9
Packages:
Flow
FEATURE: Add configurable PSR-15 middleware kernel
This introduces a configurable middleware chain as the new main entry point into HTTP request handling. The old component chain is itself now a middleware “dispatch” that is configured to run at the end and other middlewares can be configured to run before, which also means it runs after “dispatch” due to how PSR-15 middlewares work.
Each middleware itself decides if it runs only before, after, or both by invoking the next handler appropriately. See also https://www.php-fig.org/psr/psr-15/meta/
This allows to easily manipulate the incoming HttpRequest or the outgoing HttpResponse with existing middlewares (e.g. https://github.com/middlewares/awesome-psr15-middlewares) and even completely short-cut Flows old component chain handling to handle special cases more performantly.
Depends on #1967 Related to #1889
Packages:
Flow
TASK: Change used variable TRUE into true
What I did
How I did it
How to verify it
Packages:
Flow
BUGFIX: Allow objects to be serialized twice without loosing their relations to persisted properties
Resolves: #2009
Packages:
Flow
TASK: Small code tweak to TaggableMultiBackend
Packages:
Cache
Flow
BUGFIX: Fix typo
Well… sorry 😲
Packages:
Flow
TASK: Update README to mention 5.3 as last bugfix support version
Packages:
Flow