bug #9790 [Filesystem] Changed the mode for a target file in copy() to be write only (jakzal)

This PR was merged into the 2.3 branch.

Discussion
----------

[Filesystem] Changed the mode for a target file in copy() to be write only

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

Stream wrappers like S3 [do not support w+](http://docs.aws.amazon.com/aws-sdk-php/latest/class-Aws.S3.StreamWrapper.html) and we don't read here anyway (as pointed out in #9789).

Commits
-------

10e43b7 [Filesystem] Changed the mode for a target file in copy() to be write only.
bumped Symfony version to 2.3.9
feature #9779 [Debug] Added UndefinedMethodFatalErrorHandler (lyrixx)

This PR was merged into the 2.5-dev branch.

Discussion
----------

[Debug] Added UndefinedMethodFatalErrorHandler

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

Commits
-------

74d13e3 [Debug] Added UndefinedMethodFatalErrorHandler
bug #9135 [Form] [Validator] fix maxLength guesser (franek)

This PR was merged into the 2.3 branch.

Discussion
----------

[Form] [Validator] fix maxLength guesser

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

- [ ] need to add unit tests on ValidatorTypeGuesser.php

Commits
-------

f232550 remove deprecated constraints calls (Min, Max, MaxLength, MinLength)
Do normalization on tag options
bug #9489 [DependencyInjection] Add normalization to tag options (WouterJ)

This PR was submitted for the 2.3-dev branch but it was merged into the 2.3 branch instead (closes #9489).

Discussion
----------

[DependencyInjection] Add normalization to tag options

Currently, when using tags in XML, the options aren't normalized. This means that the following code is wrong:

    <tag name="sonata_admin" manager-type="doctrine_phpcr" ... />

It should be `manager_name` to remove errors, but that's not following the XML rules. The solution is to use the same normalization as the configuration: replacing - with _.

To be BC, both options (with and without normalization) are kept

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

Commits
-------

06d64d8 Do normalization on tag options
Bumping dependency to ProxyManager to allow testing against the new 0.5.x branch changes
minor #9358 Bumping dependency to ProxyManager to allow testing against the new 0.5.x versions (Ocramius)

This PR was submitted for the 2.4-dev branch but it was merged into the 2.4 branch instead (closes #9358).

Discussion
----------

Bumping dependency to ProxyManager to allow testing against the new 0.5.x versions

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | no (looks like an unrelated failure, though)
| Fixed tickets |
| License       | MIT
| Doc PR        |

Nothing to see here. Move along.

Commits
-------

5377992 Bumping dependency to ProxyManager to allow testing against the new 0.5.x branch changes
fix deprecated usage and clarify constructor defaults for number formatter

by using the real default one can see the actual value without having to look into the implementation what NULL stands for
minor #9488 [Form] fix deprecated usage and clarify constructor defaults for number formatter (Tobion)

This PR was submitted for the 2.4-dev branch but it was merged into the 2.4 branch instead (closes #9488).

Discussion
----------

[Form] fix deprecated usage and clarify constructor defaults for number formatter

By using the real default one can see the actual value without having to look into the implementation what NULL stands for

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

Commits
-------

5a25989 [Form] fix deprecated usage and clarify constructor defaults for number formatter
bug #9601 [Routing] Remove usage of deprecated _scheme requirement (Danez)

This PR was merged into the 2.3 branch.

Discussion
----------

[Routing] Remove usage of deprecated _scheme requirement

**This is exact the same commit as it was in #9585, which was not merged due to my fault. Sorry for the noise.**

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

I removed all usages of the deprecated _scheme requirement inside the Routing Component.
Most parts were pretty easy and after multiple refactorings I came up with the solution to have a Route::hasScheme() method and check against this method.

I also checked for performance and after trying in_array, arra_flip+isset and foreach, the last one was clearly the winner.
https://gist.github.com/Danez/7609898#file-test_performance-php

I also adjusted all tests that test '_scheme' to also check the new schemes-requirement.

Commits
-------

557dfaa Remove usage of deprecated _scheme in Routing Component
[DependencyInjection] added support for inlining Configurators
feature #9791 [DependencyInjection] added support for inlining Configurators (realityking)

This PR was merged into the 2.5-dev branch.

Discussion
----------

[DependencyInjection] added support for inlining Configurators

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

This is one commit from #9432.

As mentioned in #3758 configurators can not be private (it's just ignored). This pull changes that and allows them to be inlined. It it also creates better code if a configurator is used multiple times for one service (i.e. to both inject it and configure the same service, or to configure multiple inlined services) but this should be very rare.

Commits
-------

4e9aa07 [DependencyInjection] added support for inlining Configurators
BinaryFileResponse should also return 416 or 200 on some range-requets
bug #9714 [HttpFoundation] BinaryFileResponse should also return 416 or 200 on some range-requets (SimonSimCity)

This PR was submitted for the 2.3-dev branch but it was merged into the 2.3 branch instead (closes #9714).

Discussion
----------

[HttpFoundation] BinaryFileResponse should also return 416 or 200 on some range-requets

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

I read around in the docs and tried something with BinaryFileResponse ... There are two things I missed in the implementation here:

* If the range, provided in the query, does exceed the file-position, return an 416 (or 200 - I decided to take 416 here)
* If the range is logical invalid (f.e. to request from byte 50 to byte 30 ..) return 200 - OK

One decision I took in addition, is to provide a 200 code if the full file is requested. For me, it doesn't make sense here to return a 206 for just the complete file.

What I'm quite unsure about: Do we need some additional fields for these two options? I can remember reading something about a Content-Range for 416 but I was quite unsure what it should be ...

Commits
-------

d5dc317 [HttpFoundation] BinaryFileResponse should also return 416 or 200 on some range-requets
Fixed issue in BaseDateTimeTransformer when invalid timezone cause Transformation filed exception (closes #9403).
bug #9795 [Form] Fixed issue in BaseDateTimeTransformer when invalid timezone cause Trans... (tyomo4ka)

This PR was submitted for the 2.3-dev branch but it was merged into the 2.3 branch instead (closes #9795).

Discussion
----------

[Form] Fixed issue in BaseDateTimeTransformer when invalid timezone cause Trans...

...formation filed exception (closes #9403).

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

DateTimeZone object creation could rise an exception. So in BaseDateTimeTransformer constructor we need to check if timezone is valid. If this exception is catched and rethrowed as TransformationFailed exception we have an issue: user will see "Invalid value" error in form, but issue is actually with php configuration or form type configuration.

Replaces #9772.

Commits
-------

3ece630 Fixed issue in BaseDateTimeTransformer when invalid timezone cause Transformation filed exception (closes #9403).
fix #7243 allow 0 as arraynode name
bug #9701 [Config] fix #7243 allow 0 as arraynode name (cordoval)

This PR was submitted for the 2.3-dev branch but it was merged into the 2.3 branch instead (closes #9701).

Discussion
----------

[Config] fix #7243 allow 0 as arraynode name

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

Commits
-------

a49a5c8 [Config] fix #7243 allow 0 as arraynode name
fix 5528 let ArrayNode::normalizeValue respect order of value array provided