Overview of merged pull requests¶
This adds a second index to the database table in which the ObjectPathMapping instances are stored. It speeds up find operations for which the existing primary key does not help.
With enough data (250k entries for ObjectPathMapping) this speeds up page delivery by about 60%.
Non-functional fixes to docblocks, fixing a few typos, adding a few @throws annotations and doing some cleanup here and there.
The pattern for the extensionToMediaType array was wrong since #697 Also, this has updated the MediaTypes with the current version from apache.
Related to #1364
This change uses a stack inside Validators to store results of previous calls, so that results are not lost when a validator is called in a cycle. This may happen for any Object or Collection validators, since the Validator instances chain is built per class and hence cyclic relations (A -> * -> A) may lead to incorrect validation results otherwise.
Note: This bugfix is only breaking if you implemented your own Validator, extending GenericObjectValidator or CollectionValidator, overriding the validate() method and setting $this->result inside. In that case you are required to change the code to make use of pushResult()/popResult() like it is done inside AbstractValidator::validate(). This is an exception to the otherwise semantic versioning we strive for. It was decided because the breaking only happens in cases that would otherwise potentially be affected by the buggy behaviour of validation that could lead to invalid data entering the system.
In general, you are advised to create own Validators only by implementing the isValid() method instead of overriding the validate() method.
Retargeted to Flow 4.3. For discussion see #1341 .
While building sub commands via
the arguments are not build in a syntax that is sensible for parsing
by Flow later. Specifically an argument is build like this:
The missing equals sign (=) makes this problematic to parse if the value contains an equal sign itself as that will then be identified as separator between argument name and value. With this change those arguments are now build like this: