This PR was squashed before being merged into the 3.0 branch (closes#18759).
Discussion
----------
[Validator] Support for DateTimeImmutable
| Q | A
| ------------- | ---
| Branch? | 3.0
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #18752
| License | MIT
| Doc PR |
When validating with DateTime constraint UnexpectedTypeException is thrown for DateTimeImmutable instances.
Why PR?
- DateTimeImmutable behaves like a DateTime. Both implements the same interface DateTimeInterface.
- DateTimeInterface cannot be implemented by the client.
Commits
-------
f49659f [Validator] Support for DateTimeImmutable
This PR was merged into the 3.0 branch.
Discussion
----------
[Console] remove methods that were needed for PHP 5.3
| Q | A
| ------------- | ---
| Branch? | 3.0
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Commits
-------
7d9e74e remove methods that were needed for PHP 5.3
* 2.8:
Fix computation of PR diffs for component matrix lines
[console][table] adjust width of colspanned cell.
[BUG] Delete class 'control-group' in bootstrap 3
[2.8] [Form] Modified iterator_to_array's 2nd parameter to false in ViolationMapper
added missing constant in Response
Update HTTP statuses list
[Console][#18619] Prevent fatal error when calling Command#getHelper() without helperSet
added StaticVerionStrategyTest
Add SplFileInfo array doc on Finder iterator methods so that IDE will know what it returns
[2.3] [Form] Modified iterator_to_array's 2nd parameter to false in ViolationMapper
Updated the link to the list of currency codes
[console][table] adjust width of colspanned cell.
* 2.7:
Fix computation of PR diffs for component matrix lines
[BUG] Delete class 'control-group' in bootstrap 3
[2.8] [Form] Modified iterator_to_array's 2nd parameter to false in ViolationMapper
This PR was merged into the 2.3 branch.
Discussion
----------
Fix computation of PR diffs for component matrix lines
| Q | A
| ------------- | ---
| Branch? | 2.3
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Validated on https://travis-ci.org/symfony/symfony/jobs/130061271 who fails otherwise.
Commits
-------
e7a3ae7 Fix computation of PR diffs for component matrix lines
This PR was submitted for the 3.0 branch but it was merged into the 2.7 branch instead (closes#18507).
Discussion
----------
[BUG] Delete class 'control-group' in bootstrap 3
| Q | A
| ------------- | ---
| Branch? | 3.0
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #18506
| License | MIT
| Doc PR | any
Commits
-------
99f61d6 [BUG] Delete class 'control-group' in bootstrap 3
This PR was submitted for the 2.8 branch but it was merged into the 2.7 branch instead (closes#18747).
Discussion
----------
[2.8] [Form] Modified iterator_to_array's 2nd parameter to false in ViolationMapper
| Q | A
| ------------- | ---
| Branch? | 2.8
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
This bug was introduced in PR #17099. So does not represent in 2.8.2 or older.
If we have the following structure form:
```php
$builder = $formFactory->createBuilder();
$form = $builder
->add(
$builder->create('person1_name', FormType::class, ['inherit_data' => true])
->add('first', TextType::class, ['property_path' => '[person1_first_name]'])
->add('last', TextType::class, ['property_path' => '[person1_last_name]'])
)
->add(
$builder->create('person2_name', FormType::class, ['inherit_data' => true])
->add('first', TextType::class, ['property_path' => '[person2_first_name]'])
->add('last', TextType::class, ['property_path' => '[person2_last_name]'])
)
->getForm()
;
```
The following mapping for this form doesn't work correctly:
```php
$mapper = new ViolationMapper();
$mapper->mapViolation(new ConstraintViolation('', '', [], null, 'data[person1_first_name]', null), $form);
$form['person1_name']['first']->getErrors(); // empty
$form->getErrors(); // The violation is mapped to here instead.
```
## Cause
Because ViolationMapper uses `iterator_to_array` in [here](f29d46f29b/src/Symfony/Component/Form/Extension/Validator/ViolationMapper/ViolationMapper.php (L165)) to collect the sub forms.
`person1_name` and `person2_name` enable `inherit_data` option. So ViolationMapper will attempt to collect the sub forms of root form like this:
```php
[
'first' => Form object, // root.person1_name.first
'last' => Form object, // root.person1_name.last
'first' => Form object, // root.person2_name.first
'last' => Form object, // root.person2_name.last
]
```
As you can see, The name `first` and `last` are used in two places, thus we cannot get result like that.
(first/last of person1_name are overwritten by person2_name's)
So the violation will finally lost the form where it should map to. It should pass `false` to `iterator_to_array`'s 2nd parameter.
Commits
-------
ae38660 [2.8] [Form] Modified iterator_to_array's 2nd parameter to false in ViolationMapper
* 2.7:
added missing constant in Response
Update HTTP statuses list
[Console][#18619] Prevent fatal error when calling Command#getHelper() without helperSet
added StaticVerionStrategyTest
Add SplFileInfo array doc on Finder iterator methods so that IDE will know what it returns
[2.3] [Form] Modified iterator_to_array's 2nd parameter to false in ViolationMapper
Updated the link to the list of currency codes
[console][table] adjust width of colspanned cell.
* 2.3:
Update HTTP statuses list
[Console][#18619] Prevent fatal error when calling Command#getHelper() without helperSet
Add SplFileInfo array doc on Finder iterator methods so that IDE will know what it returns
[2.3] [Form] Modified iterator_to_array's 2nd parameter to false in ViolationMapper
Updated the link to the list of currency codes
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes#18650).
Discussion
----------
Update HTTP statuses list
| Q | A
| ------------- | ---
| Branch? | 2.3
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Commits
-------
fa99fbd Update HTTP statuses list
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes#18635).
Discussion
----------
[Console] Prevent fatal error when calling Command::getHelper without helperSet
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #18619
| License | MIT
| Doc PR | n/a
Patch attached to #18619
Commits
-------
31285c2 [Console][#18619] Prevent fatal error when calling Command#getHelper() without helperSet
This PR was submitted for the master branch but it was merged into the 2.7 branch instead (closes#18708).
Discussion
----------
[Asset] added a test for StaticVerionStrategy
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | N/A
| License | MIT
| Doc PR | N/A
Commits
-------
80300f5 added StaticVerionStrategyTest
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes#18719).
Discussion
----------
Add SplFileInfo array doc on Finder iterator methods so that IDE will known it
| Q | A
| ------------- | ---
| Branch | master
| Bug fix | no
| New feature | no
| BC breaks | no
| Deprecations | no
| Tests pass | yes
| Fixed tickets | #16965
| License | MIT
Add support for IDE completion of Finder iterator in userland
see #16965, http://stackoverflow.com/questions/37034643/autocomplete-doesnt-work-on-symfonys-splfileinfofinder-method-in-foreach/37055206
Examples:
```php
$finder->size()->in()[0]->getContents();
foreach ($finder->size()->in() as $file) {
$file->getContents();
}
```
Commits
-------
94b9e44 Add SplFileInfo array doc on Finder iterator methods so that IDE will know what it returns
This PR was merged into the 3.0 branch.
Discussion
----------
[3.0] Fixed DateTimeInterface comparison
| Q | A
| ------------- | ---
| Branch? | 3.0
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
DateTime class implements the DateTimeInterface.
It is useless to compare is a value is an instance of DateTime or DateTimeInterface.
Commits
-------
9a0bc99 Fixed DateTimeInterface comparaison
This PR was squashed before being merged into the 2.3 branch (closes#18761).
Discussion
----------
[2.3] [Form] Modified iterator_to_array's 2nd parameter to false in ViolationMapper
| Q | A
| ------------- | ---
| Branch? | 2.3
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
For https://github.com/symfony/symfony/pull/18747
Commits
-------
7101cab [2.3] [Form] Modified iterator_to_array's 2nd parameter to false in ViolationMapper
This PR was merged into the 2.3 branch.
Discussion
----------
Updated the link to the list of currency codes
| Q | A
| ------------- | ---
| Branch? | 2.3
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #18758
| License | MIT
| Doc PR | -
Commits
-------
09b70a1 Updated the link to the list of currency codes
* 2.8:
Drop hirak/prestissimo
bumped Symfony version to 2.8.7
updated VERSION for 2.8.6
updated CHANGELOG for 2.8.6
bumped Symfony version to 2.7.14
updated VERSION for 2.7.13
updated CHANGELOG for 2.7.13
bumped Symfony version to 2.3.42
[Debug] Fix fatal error handlers on PHP 7
updated VERSION for 2.3.41
update CONTRIBUTORS for 2.3.41
updated CHANGELOG for 2.3.41
Conflicts:
CHANGELOG-2.3.md
CHANGELOG-2.7.md
CHANGELOG-3.0.md
appveyor.yml
src/Symfony/Component/HttpKernel/Kernel.php
* 2.7:
Drop hirak/prestissimo
bumped Symfony version to 2.7.14
updated VERSION for 2.7.13
updated CHANGELOG for 2.7.13
bumped Symfony version to 2.3.42
[Debug] Fix fatal error handlers on PHP 7
updated VERSION for 2.3.41
update CONTRIBUTORS for 2.3.41
updated CHANGELOG for 2.3.41
Conflicts:
src/Symfony/Component/HttpKernel/Kernel.php
* 2.3:
Drop hirak/prestissimo
bumped Symfony version to 2.3.42
updated VERSION for 2.3.41
update CONTRIBUTORS for 2.3.41
updated CHANGELOG for 2.3.41
Conflicts:
appveyor.yml
src/Symfony/Component/HttpKernel/Kernel.php
This PR was merged into the 2.3 branch.
Discussion
----------
Drop hirak/prestissimo
| Q | A
| ------------- | ---
| Branch? | 2.3
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
unstable (see #18743 on appveyor)
Commits
-------
8f136ab Drop hirak/prestissimo
This PR was merged into the 3.0 branch.
Discussion
----------
[MonologBridge] Uninstallable together with symfony/http-kernel in 3.0.6
| Q | A
| ------------- | ---
| Branch? | 3.0
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Caused by #18705, it is impossible to install v3.0.6 of symfony/monolog-bridge
together with v3.0.6 of symfony/http-kernel.
The intention of #18705 "added a conflict between Monolog bridge 2.8 and
HTTP Kernel 3.0+" was to prevent installing symfony/monolog-bridge from the
3.0 series with http-kernel from the 2.8 series of symfony. While this now
works correctly in v2.8.6, it breaks installing symfony/monolog-bridge v3.0.6
with symfony/http-kernel v3.0.6.
This PR resolves this issue.
# How to reproduce
- Create a test directory and change into it - e.g. with `mkdir /tmp/reproduce-symfony-18745 && cd /tmp/reproduce-symfony-18745`
- Add the following composer.json to this test directory
```
{
"require": {
"symfony/monolog-bridge": "3.0.6",
"symfony/http-kernel": "3.0.6"
}
}
```
- Run `composer install` from the test directory
## Expected behavior
Composer installs symfony/monolog-bridge and symfony/http-kernel (together with their dependencies).
## Actual behavior
Composer fails with the following error messages:
```
#:/tmp/reproduce-symfony-18745$ composer install
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for symfony/monolog-bridge 3.0.6 -> satisfiable by symfony/monolog-bridge[v3.0.6].
- symfony/http-kernel v3.0.6 conflicts with symfony/monolog-bridge[v3.0.6].
- Installation request for symfony/http-kernel 3.0.6 -> satisfiable by symfony/http-kernel[v3.0.6].
```
Commits
-------
72c44c2 [MonologBridge] Uninstallable together with symfony/http-kernel in 3.0.6
Caused by #18705, it is impossible to install v3.0.6 of symfony/monolog-bridge
together with v3.0.6 of symfony/http-kernel.
The intention of #18705 "added a conflict between Monolog bridge 2.8 and
HTTP Kernel 3.0+" was to prevent installing symfony/monolog-bridge from the
3.0 series with http-kernel from the 2.8 series of symfony. While this now
works correctly in v2.8.6, it breaks installing symfony/monolog-bridge v3.0.6
with symfony/http-kernel v3.0.6.
This commit resolves this issue.