[TASK] Some documentation fixes regarding Caching

This corrects an incorrect mentioned of ``Settings.yaml``
(which must be ``Objects.yaml`` correctly), and some
occurrences of an unnecessary additional colon in a
literal block (``::``)

Change-Id: I5f407ba30e0eade3b3e33502d11815595d103d5d
Releases: 2.0, master
[BUGFIX] Actually do regex search/replace in code migrations

Actually makes searchAndReplaceRegex() in code migrations do something
with the target files.

Change-Id: I22931a67660e4af23ad55d151fff0d8338adb3ac
Fixes: #44402
Releases: master, 2.0
[!!!][TASK] Remove canValidate() from GenericObjectValidator

The canValidate() method on the GenericObjectValidator has been around
for years in various forms, but is not used anymore.

Marked as breaking because it had been annotated as @api for no real
reason.

Change-Id: Icba6fa9fa86a4c253e546aeb4c5f0f082d2eabb3
Releases: master
[TASK] Some translation corrections and addition of French

* Add new trans-unit id and new target-language fr translation
for ValidationErrors.xlf

* Add new file and new target-language fr for translation
for Main.xlf

Change-Id: Ie1745b216a46e525c31ab617e45558e676d53e7a
Resolves: #45279
Release: master, 2.0
[BUGFIX] Keep array keys with nested _descendAll in JsonView

When nesting _descendAll the JsonView discards array keys. This change
fixes that.

Change-Id: I84ff434cd3e6768c8e58815d1329a36de8d9e6b7
Fixes: #46046
Releases: master, 2.0
[FEATURE] Allow unknown / disallowed properties to be skipped

This adds skipUnknownProperties() and skipProperties() to the
PropertyMappingConfiguration. If configured to skip all unknown or the
given properties, the PropertyMapper will not throw an error if they
are found in the source when doing property mapping.

Change-Id: I9c60b1f14e8976c2724b62adcc086dcc81815614
Resolves: #46048
Releases: master
[FEATURE] Make ArrayConverter map only allowed properties

With this change the ArrayConverter only maps allowed and not skipped
keys from source to target. Of no PropertyMappingConfiguration is given,
it returns the unchanged source array (as before).

Change-Id: I5eaafa9b856cbcc679fa9d1b22e9111cf707d454
Resolves: #46061
Releases: master
[TASK] Tweak some unit tests

Basically a non-functional change that simply gets rid of some
warnings and a skipped test.

Change-Id: I670b775b20e133784aec3314abbff721ec0b49d1
Releases: master
[TASK] Remove Configuration\Source\SourceInterface

It is unused and switching sources is not supported any longer.

Change-Id: Ib5e581742009c49eb321f6abf4f5d5cbbd8b85dc
Releases: master
[TASK] Use composer/installers instead of own fork

Change-Id: I0a0ffa83b459d5be3fa8fb9c371d64cdcff88144
Releases: 2.0, master
[TASK] Add Unit Tests for Utility\Algorithms

This adds Unit Tests for the Utility\Algorithms class and its functions.

Change-Id: I040f2177c4955f05392b9fc0ef6508a90c8fd681
Releases: master, 2.0
[FEATURE] Allow PolyType custom validators to be used

This introduces a new PolyTypeObjactValidatorInterface. When building
base validator conjunctions for a type, all implementations of that
interface will be asked if they canValidate() the type.

This enables the writing of custom validators that act on multiple
types.

Change-Id: Iab15f89610556a50531eee5be0fb7946dd95e958
Resolves: #45167
Releases: master
[BUGFIX] ObjectAccess::getProperty() breaks on \stdClass due to cache

When using getProperty() on \stdClass instances, the accessor cache
leads to false results - because the class name alone in this case does
not tell anything about the availability of a property.

With this change getProperty() does not use the cache for \stdClass
anymore.

Change-Id: I85aab26ef0975d9af9ec4559cf079014334439a7
Fixes: #46465
Releases: master
[FEATURE] Support arguments in Scripts::executeCommand

Previously it was not supported to have command arguments in a CLI
subcommand. This patch solves this issue by adding a $commandArguments
parameter to the executeCommand() method.

Resolves: #46072
Releases: 2.0, master
Change-Id: Ie045e6aaefea7803516745a4dd0d9ab9453106f1
[BUGFIX] Allow upload of files without file extension

This change allows upload of files without a file extension. The upload
of PHP-Files is still not allowed. The method importUploadedResource
does not have a unit test, since it is not testable through the use of
move_uploaded_file.

Change-Id: I3a0a6ad89ab876a1c2113b0b6db967f983f5ef41
Resolves: #46536
Releases: master, 2.0
Merge "[BUGFIX] ObjectAccess::getProperty() breaks on \stdClass due to cache"
Merge "[TASK] Add Unit Tests for Utility\Algorithms"
Merge "[TASK] Remove Configuration\Source\SourceInterface"
[TASK] Improved exception message for compilation errors

This removes the "Execution of subprocess failed with exit code …"
as it distracts from the real problem which only appears later in the
message. Most likely the user / developer is not interested in possible
bugs of the compiler / subprocess.

Change-Id: I900fbc3a449e18edd95efd824eb8dd802d26e318
Releases: master
[BUGFIX] StringLengthValidator should use UTF-8 safe function

StringLengthValidator no longer uses strlen to determine the
length of the string to be validated but uses the
Utility\Unicode\Functions::strlen method which relies on
mb_string internally.

Change-Id: I3054a497173f0bd35f7054a073d90c5bdf710ea8
Fixes: #36159
Releases: master, 2.0, 1.1