ISSUE #11300: Improve Routing Syntax Import Error

modified FileLoaderLoadException message to present the previous (Parse)Exception first
Add test and small code fix
Addition of the symfony license text
- Removed spaces around the concation dots to be more consitent
- adjusted some formatting
Merge remote-tracking branch 'upstream/master'
removed some more spaces
[DomCrawler] fix the axes handling in a bc way

The previous fix in #11548 for handling XPath axes was not backward
compatible. In previous Symfony versions the Crawler handled nodes
by holding a "fake root node". This must be taken into account when
evaluating (relativizing) XPath expressions.
[Console][ProgressBar] Developer experience
 - Create getProgress/setProgress methods to replace getStep/setCurrent
 - ProgressBar::setCurrent should auto-start the ProgressBar.
 - You should be able to pass max to start
 - getStepWidth is internal information that should not be public
 - when verbosity set to quiet, the progress bar does not even need to
   execute all the logic to generate output that is then thrown away
[Console][ProgressBar] Allow to advance past max.
[Console][ProgressBar] Developer experience:
 - Removed barCharOriginal
 - getProgressPercent should return float instead of int.
 - Minor refactoring
fix handling of nullable XML attributes

As @Tobion pointed out in #11394, true and 1 are valid values in
boolean XML attributes. The XmlFileLoader didn't handle 1 values
properly.
[Translation] added method to expose collected messages
check for the correct field type

HTML allow to define different form fields with the same name.
Imagine the following form:

    <html>
        <body>
            <form action="/">
                <input type="hidden" name="option" value="default">
                <input type="radio" name="option" value="A">
                <input type="radio" name="option" value="B">
                <input type="hidden" name="settings[1]" value="0">
                <input type="checkbox" name="settings[1]" value="1" id="setting-1">
                <button>klickme</button>
            </form>
        </body>
    </html>

Since the `FormFieldRegistry` can only handle one field per name, the
hidden field option is registered first before the radio field with
the same name is evaluated. Thus, the `FormFieldRegistry` returns an
`InputFormField` instance on which the `addChoices()` method can not
be called.
Fixed #11675 ValueToDuplicatesTransformer accept "0" value

Fixed wrong return null syntax

Added transformation to null on empty arrays

Removed useless statement in condition and switched to yoda condition
bug #11676 [Form] Fixed #11675 ValueToDuplicatesTransformer accept "0" value (Nek-)

This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes #11676).

Discussion
----------

[Form] Fixed #11675 ValueToDuplicatesTransformer accept "0" value

| Q             | A
| ------------- | ---
| Bug fix?      | [yes]
| New feature?  | [no]
| BC breaks?    | [no]
| Deprecations? | [no]
| Tests pass?   | [yes]
| Fixed tickets | #11675
| License       | MIT

Commits
-------

31d48ab Fixed #11675 ValueToDuplicatesTransformer accept "0" value
bug #11624 [DomCrawler] fix the axes handling in a bc way (xabbuh)

This PR was merged into the 2.3 branch.

Discussion
----------

[DomCrawler] fix the axes handling in a bc way

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #11503
| License       | MIT
| Doc PR        |

The previous fix in #11548 for handling XPath axes was not backward compatible. In previous Symfony versions the Crawler handled nodes by holding a "fake root node". This must be taken into account when evaluating (relativizing) XPath expressions.

Commits
-------

d26040f [DomCrawler] fix the axes handling in a bc way
[Validator] fix return doc of ClassMetadata::getCascadingStrategy
[Validator] remove duplicate interface implementations
minor #11706 [Validator] ClassMetadata doc fix (Tobion)

This PR was merged into the 2.5 branch.

Discussion
----------

[Validator] ClassMetadata doc fix

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        |

- [Validator] fix return doc of ClassMetadata::getCascadingStrategy (int instead of bool)
- [Validator] remove duplicate interface implementations (they are already implemented by extension)

Commits
-------

1eec2d6 [Validator] remove duplicate interface implementations
6dd5592 [Validator] fix return doc of ClassMetadata::getCascadingStrategy
bug #11672 [Routing] fix handling of nullable XML attributes (xabbuh)

This PR was merged into the 2.3 branch.

Discussion
----------

[Routing] fix handling of nullable XML attributes

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

As @Tobion pointed out in #11394, ``true`` and ``1`` are valid values in boolean XML attributes. The XmlFileLoader didn't handle ``1`` values properly.

Commits
-------

7b4d4b6 fix handling of nullable XML attributes