If you delete the target of a symlink (at least on Windows systems) you
don't get the kind of the target anymore (obviously). Therefore it might
happen that a broken symlink to a directory should be removed with
unlink() which fails. This patch adds another check for a broken symlink
and tries to remove with rmdir() before throwing an exception. It helps
to clean up test folders on Windows systems (so already proofed by the
existing tests).
This PR was merged into the 2.7 branch.
Discussion
----------
[FrameworkBundle] Test that ObjectNormalizer is registered
| Q | A
| ------------- | ---
| 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
-------
129b140 [FrameworkBundle] Test that ObjectNormalizer is registered
This PR was squashed before being merged into the 3.1-dev branch (closes#17714).
Discussion
----------
Adding new TargetPathTrait to get/set the authentication "target_path"
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | not yet...
Hi guys!
This is a small guy. Basically, when you're doing custom auth (i.e. a guard authenticator), it's common to need the previous URL the user tried to get to (i.e. the "target path"). It's not much work to do it now, but it's very abstract - needing to know a weird string pattern. This just wraps that weirdness up in a simple function (`getTargetPath()`).
Thanks!
Commits
-------
18dfe37 Adding new TargetPathTrait to get/set the authentication "target_path"
This PR was merged into the 2.3 branch.
Discussion
----------
[Yaml] ensure dump indentation to be greather than zero
| Q | A
| ------------- | ---
| Branch | 2.3
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/17943#issuecomment-190881815, #17977
| License | MIT
| Doc PR |
Commits
-------
3464282 ensure dump indentation to be greather than zero
This PR was squashed before being merged into the 2.7 branch (closes#16886).
Discussion
----------
[Form] [ChoiceType] Prefer placeholder to empty_value
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16885
| License | MIT
| Doc PR | -
Prefer an explicitly set `placeholder` option (i.e. `false` or a non-empty
string) to an `empty_value` option when both are set.
The fix is to change the behaviour in the placeholder normalizer in
ChoiceType::configureOptions so that the value of the `empty_value` option is
used for placeholder only when the value of `placeholder` is null or an empty
string.
Commits
-------
a4d4c8a [Form] [ChoiceType] Prefer placeholder to empty_value
* 3.0:
fix debug toolbar rendering by removing inadvertently added links
[Form] minor fix tests of Bootstrap layout
[From] minor fix tests added by #17798 for bootstrap theme
simplified code
Allow variadic controller parameters to be resolved.
* 2.8:
fix debug toolbar rendering by removing inadvertently added links
[Form] minor fix tests of Bootstrap layout
[From] minor fix tests added by #17798 for bootstrap theme
simplified code
Allow variadic controller parameters to be resolved.
This PR was merged into the 2.7 branch.
Discussion
----------
[From] minor fix tests added by #17798 for bootstrap theme
| Q | A
| ------------- | ---
| Branch | 2.7+
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | -
Commits
-------
ee5b119 [From] minor fix tests added by #17798 for bootstrap theme
This PR was merged into the 2.3 branch.
Discussion
----------
[2.3][WebProfilerBundle] fix debug toolbar rendering by removing inadvertently added links
| Q | A
| ------------- | ---
| Branch | 2.3+
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
The debug toolbar was broken by #17527...
**before**
![debug-toolbar-link-a](https://cloud.githubusercontent.com/assets/800119/13433728/7c48c382-dfd3-11e5-8432-299bfa143647.png)
**and after**
![debug-toolbar-link-b](https://cloud.githubusercontent.com/assets/800119/13433732/7fd97dc0-dfd3-11e5-80c6-62c009447a2e.png)
**explanation**
If `false` is explicitly passed for `link` then `link | default(true)` would evaluate to `true`, which is not what we want. The correct expression `link is not defined or link` was suggested originally in #16653.
Commits
-------
a0ddfc4 fix debug toolbar rendering by removing inadvertently added links
This PR was squashed before being merged into the 3.1-dev branch (closes#17761).
Discussion
----------
[Console] Add non-auto column width functionality
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR | [#6296](https://github.com/symfony/symfony-docs/pull/6296)
Be able to fix a columns width in a console table (i.e. set a columns width beforehand).
When a column's contents exceed the given column width, it will stretch.
Very useful, for instance, when one wants to display multiple tables that are separated from each other, but still want to align their columns.
Commits
-------
20c81b2 [Console] Add non-auto column width functionality
* 3.0:
fixed issue with PHP 5.3
The WebProcessor now forwards the client IP
minor changes
[#17878] Fixing a bug where scalar values caused invalid ordering
[#17724] Fixing autowiring bug where if some args are set, new ones are put in the wrong spot
bumped Symfony version to 2.3.39
updated VERSION for 2.3.38
update CONTRIBUTORS for 2.3.38
updated CHANGELOG for 2.3.38
* 2.8:
fixed issue with PHP 5.3
The WebProcessor now forwards the client IP
minor changes
[#17878] Fixing a bug where scalar values caused invalid ordering
[#17724] Fixing autowiring bug where if some args are set, new ones are put in the wrong spot
bumped Symfony version to 2.3.39
updated VERSION for 2.3.38
update CONTRIBUTORS for 2.3.38
updated CHANGELOG for 2.3.38
* 2.7:
fixed issue with PHP 5.3
The WebProcessor now forwards the client IP
bumped Symfony version to 2.3.39
updated VERSION for 2.3.38
update CONTRIBUTORS for 2.3.38
updated CHANGELOG for 2.3.38
* 2.3:
fixed issue with PHP 5.3
The WebProcessor now forwards the client IP
bumped Symfony version to 2.3.39
updated VERSION for 2.3.38
update CONTRIBUTORS for 2.3.38
updated CHANGELOG for 2.3.38
This PR was merged into the 2.8 branch.
Discussion
----------
[DependencyInjection] Fixing autowiring bug when some args are set
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17724, #17878
| License | MIT
| Doc PR | todo
This fixes#17724 & #17878.
**#17724**
I've set this against the 2.8 branch because imo it's a bug fix. The [test](https://github.com/symfony/symfony/compare/2.8...weaverryan:auto-wiring-individuals?expand=1#diff-d124c3d39cd5f7c732fb3d3be7a8cb42R298) illustrates the bug - having *some* arguments set beforehand caused auto-wired arguments to be set on the wrong index.
**#17878**
I've also included this fix just to get all the weird ordering problems taken care of at once. I don't think this is a behavior change - autowiring with scalars only worked previously if the argument was optional (still works now) or if you specified that argument explicitly (still works). Otherwise, your argument ordering would have gotten messed up.
Commits
-------
260731b minor changes
865f202 [#17878] Fixing a bug where scalar values caused invalid ordering
cf692a6 [#17724] Fixing autowiring bug where if some args are set, new ones are put in the wrong spot
* 3.0:
Improved Bootstrap form theme for hidden fields
[WebProfilerBundle] Fix design issue in profiler when having errors in forms
bumped Symfony version to 3.0.4
updated VERSION for 3.0.3
updated CHANGELOG for 3.0.3
bumped Symfony version to 2.8.4
updated VERSION for 2.8.3
updated CHANGELOG for 2.8.3
bumped Symfony version to 2.7.11
updated VERSION for 2.7.10
updated CHANGELOG for 2.7.10
* 2.8:
Improved Bootstrap form theme for hidden fields
[WebProfilerBundle] Fix design issue in profiler when having errors in forms
bumped Symfony version to 2.8.4
updated VERSION for 2.8.3
updated CHANGELOG for 2.8.3
bumped Symfony version to 2.7.11
updated VERSION for 2.7.10
updated CHANGELOG for 2.7.10
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Validator] Added a format option to the DateTime constraint.
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets | #14521
| License | MIT
This PR adds a `format` option to the `DateTime` constraint, this allows to validate dates in custom formats, for example:
```php
use Symfony\Component\Validator\Constraints\DateTime;
use Symfony\Component\Validator\Validation;
$validator = Validation::createValidator();
$validator->validate('December 31, 1999', new DateTime(['format' => 'F d, Y']));
$validator->validate('01:02:03', new DateTime(['format' => 'H:i:s']));
$validator->validate('2010/01/01 01:02', new DateTime(['format' => 'Y/m/d H:i']));
```
As you can see this new option allows to use the `DateTime` constraint to validate dates and times, so, maybe the `Date` and `Time` constraints can be deprecated in this PR.
Commits
-------
9e94c9f Added a format option to the DateTime constraint.
This PR was squashed before being merged into the 2.7 branch (closes#17568).
Discussion
----------
Improved Bootstrap form theme for hidden fields
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16925
| License | MIT
| Doc PR | -
Commits
-------
ba5d7f9 Improved Bootstrap form theme for hidden fields
This PR was merged into the 3.1-dev branch.
Discussion
----------
[FrameworkBundle] Fix PhpDocExtractor registration
| Q | A
| ------------- | ---
| Branch | master
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | no
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Fix for the fix... (#17931). `class_exists` on an interface will never work. I've tested this one in real condition and it works.
Commits
-------
89467b5 [FrameworkBundle] Fix PhpDocExtractor registration
This PR was squashed before being merged into the 2.8 branch (closes#17561).
Discussion
----------
[WebProfilerBundle] Fix design issue in profiler when having errors in forms
| Q | A
| ------------- | ---
| 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 error occurs mostly when having long form field names or types,
**Before:**
![before](https://cloud.githubusercontent.com/assets/3369266/12610913/89bddfd8-c4ea-11e5-9372-2b7740d8c4b3.png)
**After:**
![after](https://cloud.githubusercontent.com/assets/3369266/12610915/8ae22a4a-c4ea-11e5-94ce-9257a9409b4a.png)
That said, I don't know what to do about z-index, whether the error count prevails on the type or *vice-versa* 😕
@javiereguiluz, an idea ?
Commits
-------
76e1c0a [WebProfilerBundle] Fix design issue in profiler when having errors in forms
This PR was squashed before being merged into the 3.1-dev branch (closes#17931).
Discussion
----------
[FrameworkBundle] Fix PropertyInfo registration when using reflection-docblock 3
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | yes
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Currently, the PHPDoc extractor of PropertyInfo is not registered anymore because #17531 was merged.
Commits
-------
6d31365 [FrameworkBundle] Fix PropertyInfo registration when using reflection-docblock 3
* 3.0:
#17676 - making the proxy instantiation compatible with ProxyManager 2.x by detecting proxy features
#17676 - making the proxy instantiation compatible with ProxyManager 2.x by detecting proxy features
Fix bug when using an private aliased factory service
[Form] fix tests added by #17798 by removing `choices_as_values`
[Form] fix FQCN in tests added by #17798
[DependencyInjection] Remove unused parameter of private property
bug #17798 [Form] allow `choice_label` option to be `false`
[Form] fix tests added by #17760 with FQCN
ChoiceFormField of type "select" could be "disabled"
Update contributing docs
[Console] Fix escaping of trailing backslashes
Fix constraint validator alias being required
[DependencyInjection] Simplified code in AutowirePass
[ci] clone with depth=1 to kill push-forced PRs
Add check on If-Range header
* 2.8:
#17676 - making the proxy instantiation compatible with ProxyManager 2.x by detecting proxy features
Fix bug when using an private aliased factory service
ChoiceFormField of type "select" could be "disabled"
Update contributing docs
[Console] Fix escaping of trailing backslashes
Fix constraint validator alias being required
[ci] clone with depth=1 to kill push-forced PRs
Add check on If-Range header
* 2.7:
#17676 - making the proxy instantiation compatible with ProxyManager 2.x by detecting proxy features
Fix bug when using an private aliased factory service
ChoiceFormField of type "select" could be "disabled"
Update contributing docs
[Console] Fix escaping of trailing backslashes
Fix constraint validator alias being required
[ci] clone with depth=1 to kill push-forced PRs
Add check on If-Range header
* 2.3:
#17676 - making the proxy instantiation compatible with ProxyManager 2.x by detecting proxy features
Fix bug when using an private aliased factory service
ChoiceFormField of type "select" could be "disabled"
Update contributing docs
[Console] Fix escaping of trailing backslashes
Fix constraint validator alias being required
[ci] clone with depth=1 to kill push-forced PRs
Add check on If-Range header
This PR was merged into the 2.3 branch.
Discussion
----------
Fix - #17676 (backport #17919 to 2.3)
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17676
| License | MIT
| Doc PR |
This is a backport of #17919
Commits
-------
0c6400a#17676 - making the proxy instantiation compatible with ProxyManager 2.x by detecting proxy features
* 2.8:
[Form] fix FQCN in tests added by #17798
bug #17798 [Form] allow `choice_label` option to be `false`
[DependencyInjection] Simplified code in AutowirePass
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Yaml] add option to dump objects as maps
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #9870, #12860, #15781, #15937, #16266
| License | MIT
| Doc PR | TODO
Commits
-------
3941d2e [Yaml] add option to dump objects as maps
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Yaml] add support for parsing the !!binary tag
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8094, #15587, #17599
| License | MIT
| Doc PR | TODO
Commits
-------
79a63d5 [Yaml] add support for the !!binary tag
This PR was merged into the 3.1-dev branch.
Discussion
----------
[FrameworkBundle] Fix test for JsonSerializableNormalizer
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Fix a test failure introduced by #17603
Commits
-------
a696107 [FrameworkBundle] Fix test for JsonSerializableNormalizer
This PR was merged into the 2.8 branch.
Discussion
----------
[DependencyInjection] Simplified code in AutowirePass
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Commits
-------
ce0357e [DependencyInjection] Simplified code in AutowirePass
This PR was squashed before being merged into the 3.1-dev branch (closes#17738).
Discussion
----------
[PropertyAccess] Throw an InvalidArgumentException when the type do not match
| Q | A
| ------------- | ---
| Bug fix? | no (?)
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Currently, when the Property Access Component call a setter with a value not matching its typehint, a `\TypeError` is thrown with PHP 7 and a `PHP Catchable fatal error` with PHP 5.
This PR make the component returning an `InvalidArgumentException` with both version. It's a (better) alternative to #17660 (the hardening part) to make the Symfony Serializer (and probably many other pieces of code) more robust when types do not match.
/cc @csarrazi @mRoca @blazarecki
Commits
-------
e70fdbc [PropertyAccess] Throw an InvalidArgumentException when the type do not match
* 3.0:
[WIP] [3.0] [Form] fix tests added by #17760 by removing
removed obsolete code
[HttpFoundation] Remove @throws from ParameterBag::get() PHPDoc. This was for the now removed deep flag.
[Form] refactor `RadioListMapper::mapDataToForm()`
[Form] fix choice value "false" in ChoiceType
This PR was squashed before being merged into the 3.0 branch (closes#17886).
Discussion
----------
[WIP] [3.0] [Form] fix tests added by #17760 by removing `choices_as_values`
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | not yet
| Fixed tickets | n/a
| License | MIT
| Doc PR | -
- [x] Wait for #17760 being merged in 3.0
Commits
-------
03a7705 [WIP] [3.0] [Form] fix tests added by #17760 by removing
This PR was merged into the 3.1-dev branch.
Discussion
----------
[PropertyInfo] Use last version of reflection docblock
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
This PR improve the PhpDocExtractor to use https://github.com/phpDocumentor/ReflectionDocBlock 3.0 dev branch instead of https://github.com/phpDocumentor/ReflectionDocBlock 1.0.7 which is not maintained since 2014
I don't know if it's a BC break since it's only a suggested dependency.
This is somehow mandatory (we can maybe use a more stable, but also not maintained version of this repository) for #17516 as it does not have a dependency on php-parser 0.9.4 which is very old and not really suitable for the new component.
Commits
-------
d642eae Use last version of reflection dockblock, avoid extra dependancy if library needed
This PR was merged into the 3.1-dev branch.
Discussion
----------
Support autowiring for Doctrine\Common\Annotations\Reader
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
I've added support for autowiring based on `Doctrine\Common\Annotations\Reader` interface simmilar to https://github.com/symfony/symfony/pull/17703/files
The `annotations.cached_reader` service is injected when cache is enabled.
Commits
-------
b325f9c Support autowiring for Doctrine\Common\Annotations\Reader
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Ldap] Added environment-based Ldap server configuration for tests
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
This PR makes Ldap server host and port configurable by using environment variables. This enables a developer to test the Ldap component locally, or on a vagrant virtual machine, depending on the use case.
If one wishes to run the tests against his own Ldap server, one simply needs to use the `LDAP_HOST` and `LDAP_PORT` environment variables when running the `phpunit` command.
Commits
-------
d0fbaea Added environment-based Ldap server configuration for tests
This PR was merged into the 2.7 branch.
Discussion
----------
[2.7] [Form] fix choice value "false" in ChoiceType
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17292, #14712, #17789
| License | MIT
| Doc PR | -
- [x] Add tests for choices with `boolean` and `null` values, and with a placeholder
- [x] Fix FQCN in 2.8 tests, see #17759
- [x] Remove `choices_as_values` in 3.0 tests, see #17886
Commits
-------
8f918e5 [Form] refactor `RadioListMapper::mapDataToForm()`
3eac469 [Form] fix choice value "false" in ChoiceType
This PR was merged into the 3.0 branch.
Discussion
----------
[HttpFoundation] Remove @throws from ParameterBag::get() PHPDoc
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
This was for the now removed deep flag.
Commits
-------
cdfb696 [HttpFoundation] Remove @throws from ParameterBag::get() PHPDoc. This was for the now removed deep flag.
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Serializer] Add a normalizer that support JsonSerializable objects
This normalizer makes it easier to start to combine using `JsonSerializable` objects with the Symfony serializer. I have implemented it in a number of projects and #13496 shows that others are doing so as well. So it seemed like it would be useful to include it in the Serializer component.
It handles circular references in the same way as the other normalizers.
Because groups and max depth are based on property annotations it doesn't make sense to apply them here.
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #13496
| License | MIT
| Doc PR |
Commits
-------
a678881 Add a normalizer that support JsonSerializable objects
* 3.0:
[3.0] [Tests] minor fix following #17787
[2.8] [Form] minor fix some tests with placeholder in AbstractLayout
[DependencyInjection] fix tests
Validate XLIFF translation files
[DependencyInjection] replace alias in factories
replace alias in factory services
This PR was merged into the 3.0 branch.
Discussion
----------
[3.0] [Form/Tests] minor fix following #17787
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | -
Commits
-------
020ac04 [3.0] [Tests] minor fix following #17787
* 2.8:
[2.8] [Form] minor fix some tests with placeholder in AbstractLayout
[DependencyInjection] fix tests
Validate XLIFF translation files
[DependencyInjection] replace alias in factories
replace alias in factory services
This PR was merged into the 2.8 branch.
Discussion
----------
[2.8] [Form] minor fix some regression in tests with placeholder in AbstractLayout
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | -
Commits
-------
6977583 [2.8] [Form] minor fix some tests with placeholder in AbstractLayout
This PR was merged into the 2.7 branch.
Discussion
----------
[DependencyInjection] replace alias in factories
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17864
| License | MIT
| Doc PR |
Commits
-------
b43b79b [DependencyInjection] replace alias in factories
This PR was merged into the 2.3 branch.
Discussion
----------
[DependencyInjection] replace alias in factory services
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17864
| License | MIT
| Doc PR |
Commits
-------
56f8798 replace alias in factory services
This PR was squashed before being merged into the 2.3 branch (closes#17903).
Discussion
----------
Validate XLIFF translation files
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
In #17902 @stof proposed to add a simple test to validate `.xlf` files (to avoid issues like #17893).
This is a proposal for that test. My questions:
**1)** Do you agree displaying detailed error messages when the XML is not valid. Example output for the #17893 error:
![error_log](https://cloud.githubusercontent.com/assets/73419/13250664/932d2f14-da2b-11e5-8ea0-ecb43f58feea.png)
Or is it enough displaying just the PHPUnit error message and let the user figure out the details?
![simple_error](https://cloud.githubusercontent.com/assets/73419/13250671/a3b4bfd2-da2b-11e5-9277-454d0dd160b2.png)
**2)** How do I validate the translation files of the Security and Form components? Do I just copy+paste this test in those components?
Commits
-------
db03055 Validate XLIFF translation files
* 3.0: (21 commits)
fixed typo
fixed typo
Fixed a minor XML issue in a translation file
Fix merge
Fix merge
Fix merge
Fix merge
Update twig.html.twig
PhpUnitNoDedicateAssertFixer results
disable the assets helper when assets are disabled
Improve Norwegian translations
[2.7] [FrameworkBundle] minor fix tests added by #17569
Fixed the antialiasing of the toolbar text
Simplify markdown for PR template
fixed CS
fixed CS
documented the $url parameter better
[Form] add test for ArrayChoiceList handling null
[Form] fix edge cases with choice placeholder
register commands from kernel when accessing list
...
* 2.8:
fixed typo
fixed typo
Fixed a minor XML issue in a translation file
Fix merge
Fix merge
Fix merge
Fix merge
Update twig.html.twig
PhpUnitNoDedicateAssertFixer results
Improve Norwegian translations
[2.7] [FrameworkBundle] minor fix tests added by #17569
Fixed the antialiasing of the toolbar text
Simplify markdown for PR template
fixed CS
fixed CS
documented the $url parameter better
[Form] add test for ArrayChoiceList handling null
[Form] fix edge cases with choice placeholder
register commands from kernel when accessing list
Update FileSystem
This PR was squashed before being merged into the 3.1-dev branch (closes#17630).
Discussion
----------
[FrameworkBundle] Register the DateTimeNormalizer
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | todo
Commits
-------
5a76eb2 [FrameworkBundle] Register the DateTimeNormalizer
This PR was squashed before being merged into the 3.1-dev branch (closes#17631).
Discussion
----------
[FrameworkBundle] Register the DataUriNormalizer
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | todo
Commits
-------
9bd0d31 [FrameworkBundle] Register the DataUriNormalizer
* 2.7:
Update twig.html.twig
[2.7] [FrameworkBundle] minor fix tests added by #17569
fixed CS
fixed CS
documented the $url parameter better
[Form] add test for ArrayChoiceList handling null
[Form] fix edge cases with choice placeholder
register commands from kernel when accessing list
Update FileSystem
This PR was merged into the 2.7 branch.
Discussion
----------
Update twig.html.twig
| Q | A
| ------------- | ---
| Bug fix? | [no]
| New feature? | [yes]
| BC breaks? | [no]
| Deprecations? | [no]
| Tests pass? | [yes]
| Fixed tickets |
| License | MIT
| Doc PR |
Replace base64 template icon with svg version. If you set the Content-Security-Policy you would need to provide "img-src 'self' data:;" just for that icon (or get an error in the console). This should be fixed in the new version of the toolbar but it would be nice to have a fix for 2.7 LTS too.
Commits
-------
d29f04c Update twig.html.twig
Replace base64 template icon with svg version. If you set the Content-Security-Policy you would need to provide "img-src 'self' data:;" just for that icon (or get an error in the console). This should be fixed in the new version of the toolbar but it would be nice to have a fix for 2.7 LTS too.
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Serializer] Add normalizer / denormalizer awarness
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
SerializerAwareInterface is not really usable in a decode -> normalize context, as if we need to transform a subproperty with another class, we only have the context of a serialize however the data is already decoded so it will fail.
This interfaces allow a normalizer / denormalizer to have a sub normalization / denormalization process context and not the whole context with serializer.
I have also add a `AwareNormalizer` which is an abstract class implementing the 3 aware interfaces like it was done with the SerializerAwareNormalizer, since it's a standard way to implement this interfaces.
This is needed for #17516, other solution would be to have a RawDecoder which don't decode and return the input as it is, but really not a fan of this solution.
Commits
-------
790fb6e Add normalizer / denormalizer awarness
This PR was merged into the 2.3 branch.
Discussion
----------
[FrameworkBundle] read commands from bundles when accessing list
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
This allows access to the list of commands registered by the kernel (bundle and later service ids) programmatically when you do not `run` the application.
Commits
-------
0fe3088 register commands from kernel when accessing list
This PR was merged into the 2.3 branch.
Discussion
----------
[FileSystem] Windows fix
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/16783
| License | MIT
| Doc PR |
* Fixes edge case on windows where PHP does not generate a PHP Warning but instead returns a wrong result https://bugs.php.net/bug.php?id=71103
* Improved error reporting on `unlink` used in `remove()`
Commits
-------
0d5f7e2 Update FileSystem
This PR was squashed before being merged into the 3.1-dev branch (closes#17732).
Discussion
----------
[DEPRECATION] : deprecated support for Traversable in method ResizeFormListener::PreSubmit
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets | #17701
| License | MIT
Commits
-------
68c9305 [DEPRECATION] : deprecated support for Traversable in method ResizeFormListener::PreSubmit
This PR was merged into the 2.7 branch.
Discussion
----------
[Form] Fix choice placeholder edge cases
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Fixing several problems with choice placeholder that enhances #9030 for more edge cases:
- A choice with an empty value manually added in the choices array should only be considered a placeholder when it is the first element in the final choice select.
This is part of the HTML spec and how browsers also behave. If you select a choice with an empty value that is not the first option, it will still pass the "required" check
and thus submit the empty value. So it's not a placeholder.
If in the example below you move the empty option to the first place, the browsers will error on submit that you
must select a value. So only then it is a placeholder to show as initial value.
```html
<select id="form_timezone" name="form[timezone]" required="required">
<option value="Africa/Abidjan">Abidjan</option>
<option value="">Empty</option>
</select>
```
Also the validator https://validator.w3.org/nu/ will mark the above code as error:
> The first child option element of a select element with a required attribute, and without a multiple attribute, and without a size attribute whose value is greater than 1, must have either an empty value attribute, or must have no text content. Consider either adding a placeholder option label, or adding a size attribute with a value equal to the number of option elements.
This is fixed by replacing`0 !== count($choiceList->getChoicesForValues(array('')))` with `$view->vars['placeholder_in_choices'] = $choiceListView->hasPlaceholder()`.
Which means, the required attribute is removed automatically because the select form element is required implicitly anyway due to the nature of the choice UI.
- As the above quote mentions, the `size` attribute also has impact. Namely for a select with size > 1 it can be possible to have a required attribute even without placeholder.
This is because when the size > 1, there is no default choice selected (similar to select with "multiple").
- A placeholder for required radio buttons or a select with size > 1 does not make sense as it would just be fake data that can be submitted (similar to the ignored placeholder for multi-select and checkboxes).
Commits
-------
0efbc30 [Form] fix edge cases with choice placeholder
* 3.0:
Create PULL_REQUEST_TEMPLATE.md
Remove duplicate validation in RedirectResponse
[Yaml] fix default timezone to be UTC
[DependencyInjection] fix dumped YAML string
[Config] Add suggest to composer.json for symfony/yaml
* 2.8:
Create PULL_REQUEST_TEMPLATE.md
Remove duplicate validation in RedirectResponse
[Yaml] fix default timezone to be UTC
[DependencyInjection] fix dumped YAML string
[Config] Add suggest to composer.json for symfony/yaml
Conflicts:
src/Symfony/Component/DependencyInjection/Dumper/YamlDumper.php
* 2.7:
Create PULL_REQUEST_TEMPLATE.md
Remove duplicate validation in RedirectResponse
[Yaml] fix default timezone to be UTC
[DependencyInjection] fix dumped YAML string
[Config] Add suggest to composer.json for symfony/yaml
Conflicts:
src/Symfony/Component/DependencyInjection/Dumper/YamlDumper.php
This PR was merged into the 2.7 branch.
Discussion
----------
[Config] Add suggest to composer.json for symfony/yaml
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17826
| License | MIT
Fixes#17826
Commits
-------
2200b0c [Config] Add suggest to composer.json for symfony/yaml
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Ldap] Add write support for the Ldap component
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | yes
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17679
| License | MIT
| Doc PR | no
This PR implements write support for the Ldap component.
Commits
-------
dfd04ff Added support for adding / removing / updating Ldap entries
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Ldap] Fixed CS and hardened some code
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16665
| License | MIT
| Doc PR | no
This PR takes into account remaining comments from #16665
Commits
-------
eefa70d Fixed CS and hardened some code
This PR was merged into the 2.3 branch.
Discussion
----------
[Yaml] fix default timezone to be UTC
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Commits
-------
e9ee877 [Yaml] fix default timezone to be UTC
* 3.0:
The exception should be thrown if an object doesn't implement Traversable AND doesn't implement Countable, not when it doesn't implement Traversable but DOES implement Countable
[Form] fix violation mapper tests
[HttpKernel] Prevent a fatal error when DebugHandlersListener is used with a kernel with no terminateWithException() method
don't rely on deprecated YAML parser feature
* 2.8:
The exception should be thrown if an object doesn't implement Traversable AND doesn't implement Countable, not when it doesn't implement Traversable but DOES implement Countable
[Form] fix violation mapper tests
[HttpKernel] Prevent a fatal error when DebugHandlersListener is used with a kernel with no terminateWithException() method
don't rely on deprecated YAML parser feature
* 2.7:
The exception should be thrown if an object doesn't implement Traversable AND doesn't implement Countable, not when it doesn't implement Traversable but DOES implement Countable
[Form] fix violation mapper tests
[HttpKernel] Prevent a fatal error when DebugHandlersListener is used with a kernel with no terminateWithException() method
don't rely on deprecated YAML parser feature
This PR was merged into the 2.7 branch.
Discussion
----------
[Form] fix violation mapper tests
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17099
| License | MIT
| Doc PR |
This takes into account the changes to the `getErrors()` in Symfony 2.5
(the method rturns a `FormErrorIterator` instead of an array) as well as
the fact that non-submitted forms do not accept errors since #10567
anymore.
Commits
-------
f87558d [Form] fix violation mapper tests
This takes into account the changes to the `getErrors()` in Symfony 2.5
(the method rturns a `FormErrorIterator` instead of an array) as well as
the fact that non-submitted forms do not accept errors since #10567
anymore.
* 3.0:
[DependencyInjection] fix dumped YAML snytax
Remove InputOption::VALUE_REQUIRED mode from $default parameter description as InputOption::setDefault() throws an exception only when called in InputOption::VALUE_NONE mode. In practice the $default value could still be accessed in InputOption::VALUE_REQUIRED mode in case InputOption was never set but accessed from InputDefinition::getOption() method
[Yaml] always restore the error handler in tests
[FrameworkBundle] fix YAML syntax
fix YAML syntax in functional tests config
[HttpFoundation] [Session] Removed unnecessary PHP version check as minimum requirement is now 5.5.9
[Form] Fixed violation mapping if multiple forms are using the same (or part of the same) property path
fix FQCN in tests added by #17694
Fix locale and written standard inconsistencies for Norwegian translations
[Form] [Validator] Fix locale inconsistencies in Norwegian translations
[TwigBridge] Symfony 3.1 forward compatibility
fixed CS
[DependencyInjection] fixed exceptions thrown by get method of ContainerBuilder
[Yaml] properly parse lists in object maps
[FrameworkBundle] Remove unused private method.
[Form] remove useless code in ResizeFormListener
[Config] Fix EnumNodeDefinition to allow building enum nodes with one element
[Form] remove deprecated empty_value_in_choices
fix choice_value option in EntityType and add some tests
This PR was merged into the 2.3 branch.
Discussion
----------
fix YAML syntax in functional tests config
| Q | A
| ------------- | ---
| Fixed tickets |
| License | MIT
see failing tests in #17809
Commits
-------
d9af4bc fix YAML syntax in functional tests config
This PR was merged into the 2.8 branch.
Discussion
----------
[Yaml] always restore the error handler in tests
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/17809#discussion_r52928131
| License | MIT
| Doc PR |
The error handler must be restored even when assertions failed.
Commits
-------
7631202 [Yaml] always restore the error handler in tests
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Yaml] mark the Inline class as internal
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Users imo should use the `Yaml` class as the only entry point. Thus marking the other classes as internal makes it easier for us to break BC in them when implementing new features in Symfony 4.
Commits
-------
09a54ef [Yaml] mark the Inline class as internal
* 2.8:
[DependencyInjection] fix dumped YAML snytax
Remove InputOption::VALUE_REQUIRED mode from $default parameter description as InputOption::setDefault() throws an exception only when called in InputOption::VALUE_NONE mode. In practice the $default value could still be accessed in InputOption::VALUE_REQUIRED mode in case InputOption was never set but accessed from InputDefinition::getOption() method
[Form] Fixed violation mapping if multiple forms are using the same (or part of the same) property path
fix FQCN in tests added by #17694
Fix locale and written standard inconsistencies for Norwegian translations
[Form] [Validator] Fix locale inconsistencies in Norwegian translations
[TwigBridge] Symfony 3.1 forward compatibility
fixed CS
[DependencyInjection] fixed exceptions thrown by get method of ContainerBuilder
[Yaml] properly parse lists in object maps
[FrameworkBundle] Remove unused private method.
[Form] remove useless code in ResizeFormListener
[Config] Fix EnumNodeDefinition to allow building enum nodes with one element
fix choice_value option in EntityType and add some tests
* 2.7:
[DependencyInjection] fix dumped YAML snytax
Remove InputOption::VALUE_REQUIRED mode from $default parameter description as InputOption::setDefault() throws an exception only when called in InputOption::VALUE_NONE mode. In practice the $default value could still be accessed in InputOption::VALUE_REQUIRED mode in case InputOption was never set but accessed from InputDefinition::getOption() method
[Form] Fixed violation mapping if multiple forms are using the same (or part of the same) property path
[TwigBridge] Symfony 3.1 forward compatibility
* 2.3:
[DependencyInjection] fix dumped YAML snytax
Remove InputOption::VALUE_REQUIRED mode from $default parameter description as InputOption::setDefault() throws an exception only when called in InputOption::VALUE_NONE mode. In practice the $default value could still be accessed in InputOption::VALUE_REQUIRED mode in case InputOption was never set but accessed from InputDefinition::getOption() method
[Form] Fixed violation mapping if multiple forms are using the same (or part of the same) property path
[TwigBridge] Symfony 3.1 forward compatibility
In practice the $default value could still be accessed in InputOption::VALUE_REQUIRED mode in case InputOption was never set but accessed from InputDefinition::getOption() method
This PR was merged into the 3.0 branch.
Discussion
----------
[HttpFoundation] [Session] Removed unnecessary PHP version check
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets | #17805
| License | MIT
Fixes#17805
Commits
-------
c0e41f9 [HttpFoundation] [Session] Removed unnecessary PHP version check as minimum requirement is now 5.5.9
This PR was squashed before being merged into the 2.3 branch (closes#17099).
Discussion
----------
[Form] Fixed violation mapping if multiple forms are using the same (or part of the same) property path
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #5656
| License | MIT
| Doc PR |
Commits
-------
f005c80 [Form] Fixed violation mapping if multiple forms are using the same (or part of the same) property path
This PR was merged into the 2.8 branch.
Discussion
----------
[Config] Fix EnumNodeDefinition to allow building enum nodes with one element
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15433, #17774
| License | MIT
| Doc PR | -
Commits
-------
e9111e4 [Config] Fix EnumNodeDefinition to allow building enum nodes with one element
* 2.7:
Fix locale and written standard inconsistencies for Norwegian translations
[Form] [Validator] Fix locale inconsistencies in Norwegian translations
fixed CS
[DependencyInjection] fixed exceptions thrown by get method of ContainerBuilder
[Form] remove useless code in ResizeFormListener
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Ldap] Improving the LDAP component
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | yes
| Deprecations? | no
| Tests pass? | no
| Fixed tickets | #14602
| License | MIT
| Doc PR | not yet
This PR will address a few issues mentioned in #14602.
* [x] Integrate the Config component in order to simplify the client's configuration
* [x] Separate Connection handling from the Client
* [x] Support for multiple drivers
* [x] Add functional tests
* [x] Update Security component
Commits
-------
34d3c85 Added compatibility layer for previous version of the Security component
81cb79b Improved the Ldap Component
This PR was squashed before being merged into the 2.3 branch (closes#17719).
Discussion
----------
[DependencyInjection] fixed exceptions thrown by get method of ContainerBuilder
[DependencyInjection] fixed exceptions thrown by get method of ContainerBuilder
Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
The ContainerBuilder class wasn't implementing the ContainerInterface interface as it should according to the Liskov substitution principle.
It caused dependency on implementation instead than on the interface when using an instance of the ContainerBuilder class.
For example this code:
```php
<?php
use Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException;
use Symfony\Component\DependencyInjection\ContainerInterface;
/* @var $container ContainerInterface */
try {
$container->get("wrong_service_key");
} catch (ServiceNotFoundException $e) {
//action on a wrong key
}
```
works for correct implementations of the ContainerInterface interface, but the ContainerBuilder class was breaking that by throwing more abstract exceptions.
As the ServiceNotFoundException exceptions inherits from the InvalidArgumentException exception, this change shouldn't break code which catches the InvalidArgumentException exception while fetching values from a ContainerInterface interface implementation.
Commits
-------
aecb0fa [DependencyInjection] fixed exceptions thrown by get method of ContainerBuilder
This PR was merged into the 3.0 branch.
Discussion
----------
[Form] remove deprecated empty_value_in_choices
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | tiny
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
This has been deprecated since 2.6 in #12003. One part has already been removed (`empty_value`) but this part has been forgotten.
Commits
-------
735f92e [Form] remove deprecated empty_value_in_choices
* 3.0:
[VarDumper] Fix tests on PHP 7
[DomCrawler] Clarify the value returned by getPhpFiles()
[DependencyInjection] Fix#16461 Let Container::set() replace existing aliases
avoid (string) catchable fatal error for instances of __PHP_Incomplete_Class
remove unnecessary retrieval and setting of data
Update validators.fr.xlf
avoid (string) catchable fatal error for __PHP_Incomplete_Class instances
sendContent return as parent.
[DomCrawler] Remove the overridden getHash() method to prevent problems when cloning the crawler
[FrameworkBundle] Fix a typo
Added more exceptions to singularify method
Add width attribute on SVG
[FrameworkBundle] Support autowiring for TranslationInterface
[Validator] remove obsolete context and PropertyAccess code
[WebProfiler] Fixed styles for search block and menu profiler for IE Edge
* 2.8:
[VarDumper] Fix tests on PHP 7
[DomCrawler] Clarify the value returned by getPhpFiles()
[DependencyInjection] Fix#16461 Let Container::set() replace existing aliases
avoid (string) catchable fatal error for instances of __PHP_Incomplete_Class
remove unnecessary retrieval and setting of data
Update validators.fr.xlf
avoid (string) catchable fatal error for __PHP_Incomplete_Class instances
sendContent return as parent.
[DomCrawler] Remove the overridden getHash() method to prevent problems when cloning the crawler
[FrameworkBundle] Fix a typo
Added more exceptions to singularify method
Add width attribute on SVG
[FrameworkBundle] Support autowiring for TranslationInterface
[WebProfiler] Fixed styles for search block and menu profiler for IE Edge
Conflicts:
src/Symfony/Component/DependencyInjection/Tests/ContainerTest.php
src/Symfony/Component/DomCrawler/Crawler.php
* 2.7:
[VarDumper] Fix tests on PHP 7
[DomCrawler] Clarify the value returned by getPhpFiles()
[DependencyInjection] Fix#16461 Let Container::set() replace existing aliases
avoid (string) catchable fatal error for instances of __PHP_Incomplete_Class
remove unnecessary retrieval and setting of data
avoid (string) catchable fatal error for __PHP_Incomplete_Class instances
sendContent return as parent.
[FrameworkBundle] Fix a typo
Added more exceptions to singularify method
* 2.3:
[DomCrawler] Clarify the value returned by getPhpFiles()
[DependencyInjection] Fix#16461 Let Container::set() replace existing aliases
Added more exceptions to singularify method
This PR was merged into the 3.1-dev branch.
Discussion
----------
[FrameworkBundle] Improve debug:container command
| Q | A |
------------- | --- |
Bug fix? | no |
New feature? | yes |
BC breaks? | no |
Deprecations? | no |
Tests pass? | yes |
License | MIT |
When the only one service found we could set it as a default value, so user have to just press enter to see it's definition.
Commits
-------
3c6043e Improve debug:container command
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Yaml] dumper flag for enabling exceptions on invalid type
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Commits
-------
e572a64 dumper flag to enable exceptions on invalid types
The comment was previously suggesting the returned value is similar to the one stored in $_FILES, while it is more similar to the way PHP stores submitted form values. It is actually more convenient to have it this way, so rather then changing the returned value (which would break BC), it is better to clarify the comment.
This PR was merged into the 2.3 branch.
Discussion
----------
Added more exceptions to singularify method
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16532
| License | MIT
| Doc PR | -
Added exceptions for `series`, `news` and `services`.
Commits
-------
f5daa0d Added more exceptions to singularify method
* 2.3:
remove unnecessary retrieval and setting of data
avoid (string) catchable fatal error for __PHP_Incomplete_Class instances
sendContent return as parent.
[FrameworkBundle] Fix a typo
* Moved connection logic to dedicated class
* Added support for Ldap result entries iterator and renamed LdapClient to Ldap
* Added support for multiple adapters
* Attempt anonymous bind if the connection is not bound beforehand
* Finalized API
* Updated the Security component to use v3.1 of the Ldap component
* Updated unit tests
* Added support for functional tests
* Updated README file
Overriding the SplObjectStorage::getHash() is affected by a PHP bug (https://bugs.php.net/bug.php?id=67582),
which makes the Crawler unusable in Symfony 2.8 for anyone who relied on SplObjectStorage methods.
Removing the getHash() method means we will no longer trigger the deprecation error. Given this method
is unlikely to be used directly and other SplObjectStorage methods will trigger the error, it is the simplest
thing we can do to maintain BC.
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Yaml] introduce flags to customize the parser behavior
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR | TODO
Since #17578 it is possible to customise dumped YAML strings with an optional bit field. This pull request does the same for the parser part of the Yaml component.
Commits
-------
9cb8552 introduce flags to customize the parser behavior
This PR was squashed before being merged into the 2.8 branch (closes#17703).
Discussion
----------
[FrameworkBundle] Support autowiring for TranslationInterface
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Commits
-------
2419725 [FrameworkBundle] Support autowiring for TranslationInterface
This PR was merged into the 2.8 branch.
Discussion
----------
[WebProfiler] Fixed logo and menu profiler for Microsoft Edge
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16887
| License | MIT
| Doc PR | -
Commits
-------
d120c08 [WebProfiler] Fixed styles for search block and menu profiler for IE Edge
This PR was merged into the 3.1-dev branch.
Discussion
----------
[TwigBridge] deprecate the boolean object support trigger
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
This reflects the changes done in the Yaml component in #17578.
Commits
-------
27243c6 deprecate the boolean object support trigger
This PR was squashed before being merged into the 3.0 branch (closes#17398).
Discussion
----------
[Validator] remove obsolete context and PropertyAccess code
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Commits
-------
a9d9d62 [Validator] remove obsolete context and PropertyAccess code
This PR was merged into the 2.3 branch.
Discussion
----------
[appveyor] Ignore failures due to STATUS_ACCESS_VIOLATION errors
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15617
| License | MIT
| Doc PR | -
E.g. https://ci.appveyor.com/project/fabpot/symfony/build/1.0.5754#L1525
Commits
-------
1d4ea39 [appveyor] Ignore failures due to STATUS_ACCESS_VIOLATION errors
This PR was merged into the 2.8 branch.
Discussion
----------
[Routing] add files used in FileResource objects
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/17598#discussion_r51756307
| License | MIT
| Doc PR |
Starting with Symfony 3.1, the constructor of the `FileResource` class
will throw an exception when the passed file does not exist.
Commits
-------
73afd0f add files used in FileResource objects
* 3.0: (105 commits)
[Console] remove readline support
bumped Symfony version to 3.0.3
updated VERSION for 3.0.2
updated CHANGELOG for 3.0.2
[Routing] added a suggestion to add the HttpFoundation component.
[FrameworkBundle] fix assets and templating tests
[ClassLoader] fix ApcClassLoader tests on HHVM
[travis] Add some comments
changed operator from and to &&
[DependencyInjection] Remove unused parameter
[Process] Fix transient tests for incremental outputs
[Console] Add missing `@require` annotation in test
Fix merge
[appveyor] Fix failure reporting
[#17634] move DebugBundle license file
Limit Ldap component version for the 3.0 branch
backport GlobTest from 2.7 branch
Move licenses according to new best practices
[FrameworkBundle] Remove unused code in test
[2.3] Fixed an undefined variable in Glob::toRegex
...
Conflicts:
.travis.yml
composer.json
src/Symfony/Bridge/Doctrine/Tests/Validator/Constraints/UniqueEntityValidatorTest.php
src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php
src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php
src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/assets.php
src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/assets.xml
src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/assets.yml
src/Symfony/Bundle/WebProfilerBundle/Resources/views/Profiler/toolbar_item.html.twig
src/Symfony/Component/Console/CHANGELOG.md
src/Symfony/Component/HttpKernel/Kernel.php
src/Symfony/Component/PropertyInfo/Tests/PropertyInfoExtractorTest.php
src/Symfony/Component/Yaml/Tests/ParserTest.php
* 2.8:
[Console] remove readline support
[Routing] added a suggestion to add the HttpFoundation component.
[travis] Add some comments
changed operator from and to &&
Fixed the Bootstrap form theme for inlined checkbox/radio
* 2.7:
[Routing] added a suggestion to add the HttpFoundation component.
[travis] Add some comments
changed operator from and to &&
Fixed the Bootstrap form theme for inlined checkbox/radio
Conflicts:
src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/choice_widget_collapsed.html.php
* 2.3:
[travis] Add some comments
changed operator from and to &&
Conflicts:
src/Symfony/Bundle/FrameworkBundle/Resources/views/Form/choice_widget_collapsed.html.php
This PR was squashed before being merged into the 3.1-dev branch (closes#17585).
Discussion
----------
[DomCrawler] Abstract URI logic and crawl images
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #12429
| License | MIT
| Doc PR | symfony/symfony-docs#4971
This is a backward-compatible version of #13620, and a rebase of #13649 on current `master`.
Commits
-------
1553b07 [DomCrawler] Abstract URI logic and crawl images
This PR was merged into the 2.7 branch.
Discussion
----------
[Routing] added a suggestion to add the HttpFoundation component.
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | ~
| License | MIT
| Doc PR | ~
Commits
-------
a45e8bb [Routing] added a suggestion to add the HttpFoundation component.
This PR was merged into the 2.7 branch.
Discussion
----------
Fixed the Bootstrap form theme for inlined checkbox/radio
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14704
| License | MIT
| Doc PR | -
@qferr provided the solution for this bug. I only verified it and created the PR.
@aderuwe @JHGitty @tjaadvd all of you took part in the original discussion. Could you please verify if this change fixes your issues? Thanks.
Commits
-------
cb1a921 Fixed the Bootstrap form theme for inlined checkbox/radio
Now that the `assets` section is automatically enabled when `templating`
is enabled (see #17506), the `templating.helper.assets` will also be
present as soon as the `templating` section is activated.
* 2.8:
[Process] Fix transient tests for incremental outputs
[Console] Add missing `@require` annotation in test
Fix merge
[appveyor] Fix failure reporting
[#17634] move DebugBundle license file
backport GlobTest from 2.7 branch
Move licenses according to new best practices
[FrameworkBundle] Remove unused code in test
[2.3] Fixed an undefined variable in Glob::toRegex
simplified a test
fix container cache key generation
[Form] fix option name in upgrade file
[Form] fix option name in changelog
[Translation] Add resources from fallback locale
[DependencyInjection] enforce tags to have a name
[YAML] Refine the return value of Yaml::parse()
Conflicts:
UPGRADE-2.8.md
This PR was squashed before being merged into the 3.1-dev branch (closes#16947).
Discussion
----------
[FrameworkBundle] PropertyInfo: register the SerializerExtractor
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Commits
-------
4422103 [FrameworkBundle] PropertyInfo: register the SerializerExtractor
* 2.7:
[Console] Add missing `@require` annotation in test
Fix merge
[appveyor] Fix failure reporting
[#17634] move DebugBundle license file
backport GlobTest from 2.7 branch
Move licenses according to new best practices
[FrameworkBundle] Remove unused code in test
[2.3] Fixed an undefined variable in Glob::toRegex
simplified a test
fix container cache key generation
[Form] fix option name in changelog
[Translation] Add resources from fallback locale
[DependencyInjection] enforce tags to have a name
[YAML] Refine the return value of Yaml::parse()
Conflicts:
src/Symfony/Component/DependencyInjection/Tests/Loader/YamlFileLoaderTest.php
This PR was merged into the 2.3 branch.
Discussion
----------
Move licenses according to new best practices
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | n/a
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Commits
-------
aab5dec Move licenses according to new best practices
This PR was merged into the 3.0 branch.
Discussion
----------
[Security] [Ldap] [Easy-Pick] Limit ldap component version for branch 3.0
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | no
| License | MIT
| Doc PR | no
As the Ldap component will introduce BC changes for version 3.1 of Symfony, this PR limits the version to use in composer dependencies. This way, we can ensure that running composer update won't try to install the 3.1 Ldap component with version 2.8 or 3.0 of the Security component, Security Core component and SecurityBundle.
The required version will be changed in PR #17577, so version 3.1 of Symfony actually uses only version `3.1` onwards of the Ldap component.
Commits
-------
1391311 Limit Ldap component version for the 3.0 branch
* 2.3:
fix container cache key generation
[Translation] Add resources from fallback locale
[DependencyInjection] enforce tags to have a name
[YAML] Refine the return value of Yaml::parse()
This PR was merged into the 2.3 branch.
Discussion
----------
[Translation] Add resources from fallback locale to parent catalogue
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
The resources representing a locale includes those of the fallback locale. However, `getCatalogue()->getResources()` only returns the resources belonging specifically to the selected locale.
Example: The locale `en_GB` falls back to `en`. I use the locale `en_GB`. During development, when I modify the `en_GB` translation file, the changes appear instantly when reloading the page. If I modify the `en` translation file, I need to manually clear the cache in order for the new translation to appear.
I believe this is a regression that was introduced in #15527.
This patch is for the 2.3 branch. For 2.6 and later, the test can be updated to use the getCatalogue() method instead of using ReflectionProperty.
Commits
-------
f7f82fa [Translation] Add resources from fallback locale
If the actual class name were not taken into, we would not be able to
detect inconsistencies between the different configuration formats (PHP,
YAML, and XML) as the container built based on the first evaluated
configuration format would be cached and reused by tests for the other
formats too.
* 2.8:
[2.7] Fix tests
pass triggerDeprecationError arg to parent class
remove default null value for asset version
remove duplicated value
[Ldap] Remove unused private property
Update UPGRADE-3.0 with correct Voter details
Change few occurences of a public setUp() method to protected
[DependencyInjection] simplify the BC layer
Change couple of occurences of a public setUp() method to protected
* 2.7:
[2.7] Fix tests
pass triggerDeprecationError arg to parent class
remove default null value for asset version
remove duplicated value
[DependencyInjection] simplify the BC layer
Change couple of occurences of a public setUp() method to protected
This PR was merged into the 2.7 branch.
Discussion
----------
[FrameworkBundle] remove default null value for asset version
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Setting `null` as the version of a package means that it uses the empty
version strategy. However, omitting the `version` option entirely was
meant to fall back to the default version strategy. This is not possible
when the default version value is `null` as there is no way to remove
it.
Commits
-------
25f735f remove default null value for asset version
Setting `null` as the version of a package means that it uses the empty
version strategy. However, omitting the `version` option entirely was
meant to fall back to the default version strategy. This is not possible
when the default version value is `null` as there is no way to remove
it.
This PR was merged into the 2.7 branch.
Discussion
----------
[DependencyInjection] simplify the BC layer
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
The change to the `setFactoryService()` method is consistent with what
we did with the `getFactoryService()` before (and how we handle the
deprecation of strict references in Symfony 2.8).
Commits
-------
6cd5ee3 [DependencyInjection] simplify the BC layer
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Serializer] Use ::class in new tests
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/17446#discussion_r50965366
| License | MIT
| Doc PR | n/a
Commits
-------
48e8041 [Serializer] Use ::class in new tests
This PR was merged into the 3.1-dev branch.
Discussion
----------
Change few occurences of a public setUp() method to protected
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
A new rule for fabbot.io 😊?
Commits
-------
31696b7 Change few occurences of a public setUp() method to protected
The change to the `setFactoryService()` method is consistent with what
we did with the `getFactoryService()` before (and how we handle the
deprecation of strict references in Symfony 2.8).
* 2.8:
fixed CS
[BrowserKit] Corrected HTTP_HOST logic #15398
Fixed HTTP Digest auth not being passed user checker
resolve aliases in factories
resolve aliases in factory services
Remove invalid CSS white-space value
Fix FileSystem tests on Windows
[Form] ArrayChoiceList can now deal with a null in choices
* 2.7:
fixed CS
[BrowserKit] Corrected HTTP_HOST logic #15398
resolve aliases in factories
resolve aliases in factory services
Remove invalid CSS white-space value
Fix FileSystem tests on Windows
[Form] ArrayChoiceList can now deal with a null in choices
This PR was merged into the 2.3 branch.
Discussion
----------
Remove invalid CSS white-space value
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Commits
-------
03d3182 Remove invalid CSS white-space value
Commit 05be5da1710ab681a04334d58126f8c3d431e3cb added the ability to
configure a user checker on a per firewall basis. However, that commit seems to
have missed updating the HttpDigestFactory.
This PR was merged into the 2.7 branch.
Discussion
----------
[Form] ArrayChoiceList can now deal with a null in choices
re-create for mistaken #17502
---
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Documentation says, since 2.7, choice value is treated as corresponding item value (if `choices_as_values` option is true). Null as well.
```php
$builder->add('attending', 'choice', array(
'choices' => array(
'yes' => true,
'no' => false,
'maybe' => null,
),
'choices_as_values' => true,
));
```
But actually null doesn't work as expected since `ArrayChoiceList::getChoicesForValues()` uses `isset` to check whether given value exists in its choices.
It should use `array_key_exists` instead to do so here.
Commits
-------
68292bb [Form] ArrayChoiceList can now deal with a null in choices
This PR was merged into the 2.3 branch.
Discussion
----------
Fix Filesystem tests on Windows
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16985
| License | MIT
| Doc PR | -
PHP's symlink function doesn't support relative symlinks on Windows. Running the filesystem tests in Windows resulted in 2 erroring tests because of this. After this PR, these tests are skipped on Windows.
The error wasn't catched by appveyor, as appveyor doesn't support symlinks at all.
Commits
-------
c376cf3 Fix FileSystem tests on Windows
* 2.8:
[WebProfilerBundle] Don't inherit CSS text-transform property for the toolbar.
Remove duplicate cursor property
Increase the inlining YAML level for config:debug
[Serializer] Minor: fix CS and PHPDoc
[Form] fix tests
[Serializer] Ensure that groups are strings
[Debug] Tell that the extension is for PHP 5 only
Static code analysis
Update AnnotationDirectoryLoader.php
added a test
Escape the delimiter in Glob::toRegex
[FrameworkBundle] Fix template location for PHP templates
[FrameworkBundle] Add path verification to the template parsing test cases
* 2.7:
Increase the inlining YAML level for config:debug
[Serializer] Minor: fix CS and PHPDoc
[Form] fix tests
[Serializer] Ensure that groups are strings
[Debug] Tell that the extension is for PHP 5 only
Static code analysis
Update AnnotationDirectoryLoader.php
added a test
Escape the delimiter in Glob::toRegex
[FrameworkBundle] Fix template location for PHP templates
[FrameworkBundle] Add path verification to the template parsing test cases
This PR was merged into the 2.3 branch.
Discussion
----------
Static code analysis
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Things that done:
* fix case in method calls
* removed unused imports
* use shorter concat where it possible
* optimize some css
* removed duplicated array keys
* removed redurant return statements
* removed one-time variables
* do not pass arguments that not used in functions
Commits
-------
8db691a Static code analysis
This PR was squashed before being merged into the 3.1-dev branch (closes#17504).
Discussion
----------
[Console] Show code when an exception is thrown
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Hi !
When an exception is thrown, sf console doesn't show the code exception, while this code is very useful during developpement (for example, [guzzle put http status code in his code exception](https://github.com/guzzle/guzzle/blob/6.1.1/src/Exception/RequestException.php#L30-L33)).
I propose you that we show the code exception only when the code exception > 0 and with ``-v`` verbosity. It means :
- ``throw new Exception('Not found', 0)`` with normal verbosity --> no change
- ``throw new Exception('Not found', 0)`` with ``-v`` verbosity --> no change
- ``throw new Exception('Not found', 404)`` with normal verbosity --> no change
- **but** ``throw new Exception('Not found', 404)`` with ``-v`` verbosity --> showing :
![image](https://cloud.githubusercontent.com/assets/4578773/12530638/052991f2-c1e5-11e5-92f1-b7b3f60cc4ba.png)
Commits
-------
f8cd9e8 [Console] Show code when an exception is thrown
This PR was squashed before being merged into the 3.1-dev branch (closes#16917).
Discussion
----------
[PropertyInfo] Cache support
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16893
| License | MIT
| Doc PR | todo
Replace #16893 with several advantages:
- Less complex patch
- Work for all usages of PropertyInfo (even outside of the Serializer)
- Avoid a circular reference between Serializer's CallMetadataFactory and PropertyInfo's SerializerExtractor
- Allow @mihai-stancu's #16143 to work as-is
Commits
-------
86c20df [PropertyInfo] Cache support
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Validator] Minor fixes for the PSR-6 adapter
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | todo
Follows #17440. Take into account comments of @Tobion.
Commits
-------
aa60d5b [Validator] Minor fixes for the PSR-6 adapter
This PR was squashed before being merged into the 3.1-dev branch (closes#17532).
Discussion
----------
[Asset] Version as service
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
While I working on #14832 I realize that all this problems and hidden magic can be avoided, if we will have ability to set asset version strategy as service.
This PR implementation of this idea.
Now it is possible to do something like this:
```yaml
framework:
assets:
version_strategy: assets.custom_version_strategy
base_urls: http://cdn.example.com
packages:
foo:
base_urls: ["https://example.com"]
version_strategy: assets.custom_version_strategy
```
There is can be some conflicts with #16511 when it will be in master
Commits
-------
52d116b [Asset] Version as service
This PR was squashed before being merged into the 3.1-dev branch (closes#17440).
Discussion
----------
[Validator] Add a PSR-6 adapter
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | todo
Commits
-------
1f0ba00 [Validator] Add a PSR-6 adapter
This PR was squashed before being merged into the 3.1-dev branch (closes#17113).
Discussion
----------
[Serializer] Add a MaxDepth option
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/14924#issuecomment-111977173, https://github.com/dunglas/DunglasApiBundle/issues/104#issuecomment-110644569
| License | MIT
| Doc PR | todo
Add a max depth option during the normalization process. Especially useful when normalizing trees.
Usage:
```php
use Symfony\Component\Serializer\Annotation\MaxDepth;
class MyObj
{
/**
* @MaxDepth(2)
*/
public $foo;
/**
* @var self
*/
public $child;
}
use Doctrine\Common\Annotations\AnnotationReader;
use Symfony\Component\Serializer\Normalizer\ObjectNormalizer;
use Symfony\Component\Serializer\Serializer;
use Symfony\Component\Serializer\Mapping\Loader\AnnotationLoader;
use Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactory;
$classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
$normalizer = new ObjectNormalizer($classMetadataFactory);
$serializer = new Serializer(array($this->normalizer));
$level1 = new MyObj();
$level1->foo = 'level1';
$level2 = new MyObj();
$level2->foo = 'level2';
$level1->child = $level2;
$level3 = new MyObj();
$level3->foo = 'level3';
$level2->child = $level3;
$result = $serializer->normalize($level1, null, array(ObjectNormalizer::ENABLE_MAX_DEPTH => true));
/* $result = array(
'foo' => 'level1',
'child' => array(
'foo' => 'level2',
'child' => array(
'child' => null,
),
),
);
*/
```
* [x] Metadata support
* [x] `@MaxDepth(2)` annotation and loader
* [x] XML loader
* [x] YAML loader
* [x] Delegate recursive normalization at the end of the process
* [x] Use constants with Late Static Binding in the abstract class instead of raw strings
* [x] Move common logic to the abstract class
/cc @mRoca @csarrazi
Commits
-------
a44bead [Serializer] Add a MaxDepth option
This PR was merged into the 2.7 branch.
Discussion
----------
[Debug] Tell that the extension is for PHP 5 only
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Commits
-------
1285a0d [Debug] Tell that the extension is for PHP 5 only
This PR was squashed before being merged into the 2.7 branch (closes#17430).
Discussion
----------
[Serializer] Ensure that groups are strings
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Commits
-------
0a3b877 [Serializer] Ensure that groups are strings
This PR was merged into the 2.3 branch.
Discussion
----------
[FrameworkBundle] Fix template location for PHP templates
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14804
| License | MIT
| Doc PR | -
- [x] improve the test to cover logical path & filesystem path
- [x] Add a new test case and fix the path to the template
As the first commit only enchanced the test, and the second commit fixed the bug, it's best to review them seperately.
Commits
-------
132a4e4 [FrameworkBundle] Fix template location for PHP templates
cd42e2d [FrameworkBundle] Add path verification to the template parsing test cases
* 2.8:
fixed undefined variable
Fixed the phpDoc of UserInterface
fixed APCu dep version
make apc class loader testable against apcu without apc bc layer
Added support for the `0.0.0.0/0` trusted proxy
fixed CS
[DoctrineBridge][Validator] >= 2.3 Pass association instead of ID as argument
Limit the max height/width of icons in the profiler menu
added missing constant
Added 451 status code
Remove unnecessary code
Allow absolute URLs to be displayed in the debug toolbar
[ClassLoader] Use symfony/polyfill-apcu
update upgrade files with CSRF related option info
[TranslationUpdateCommand] fixed undefined resultMessage var.
[HttpKernel] Lookup the response even if the lock was released after 2 seconds
* 2.7:
fixed undefined variable
Fixed the phpDoc of UserInterface
fixed APCu dep version
make apc class loader testable against apcu without apc bc layer
Added support for the `0.0.0.0/0` trusted proxy
[DoctrineBridge][Validator] >= 2.3 Pass association instead of ID as argument
added missing constant
Added 451 status code
Remove unnecessary code
Allow absolute URLs to be displayed in the debug toolbar
[ClassLoader] Use symfony/polyfill-apcu
[HttpKernel] Lookup the response even if the lock was released after 2 seconds
* 2.3:
fixed undefined variable
Fixed the phpDoc of UserInterface
fixed APCu dep version
Added support for the `0.0.0.0/0` trusted proxy
[DoctrineBridge][Validator] >= 2.3 Pass association instead of ID as argument
[HttpKernel] Lookup the response even if the lock was released after 2 seconds
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Cache] Use generator in ArrayAdapter
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17435
| License | MIT
| Doc PR | -
Commits
-------
367e784 [Cache] Use generator in ArrayAdapter
This PR was squashed before being merged into the 3.1-dev branch (closes#16164).
Discussion
----------
[Serializer] Add a data: URI normalizer
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | not yet
A new normalizer to transform `\SplFileInfo`, `\SplFileObject` and `\Symfony\Component\HttpFoundation\File\File` to [`data:` URI](https://en.wikipedia.org/wiki/Data_URI_scheme) and the opposite.
It's convenient when dealing with the JavaScript `FileReader` API.
Usage:
```php
$normalizer = new DataUriNormalizer();
echo $normalizer->normalize(new File(__DIR__.'/test.gif'));
// data:image/gif;base64,R0lGODdhAQABAIAAAP///////ywAAAAAAQABAAACAkQBADs=
echo $normalizer->normalize(new File(__DIR__.'/test.txt'));
// data:text/plain,K%C3%A9vin%20Dunglas%0A
var_dump($normalizer->denormalize('data:image/gif;base64,R0lGODdhAQABAIAAAP///////ywAAAAAAQABAAACAkQBADs=', 'SplFileObject');
// a SplFileObject (also supports HttpFoundation file if the composant is installed)
```
cc @clementtalleu
Commits
-------
cc7b5af [Serializer] Add a data: URI normalizer
This PR was merged into the 2.7 branch.
Discussion
----------
make apc class loader testable against apcu without apc bc layer
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Commits
-------
24160b3 make apc class loader testable against apcu without apc bc layer
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Cache] Allow and use generators in AbstractAdapter
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
The most important enhancement is allowing doFetch to return a generator, which wasn't possible before.
The other changes add strictness.
Commits
-------
0ba851a [Cache] Allow and use generators in AbstractAdapter
This PR was merged into the 2.3 branch.
Discussion
----------
[HttpKernel] Lookup the response even if the lock was released after two second wait
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
While looking into #15813 I noticed that we [wait for the lock to be released for five seconds, but then only do a lookup if the lock was released in two seconds](fa604d3c6f/src/Symfony/Component/HttpKernel/HttpCache/HttpCache.php (L540-L562)), no more.
I think it's worth to make both values the same (so either two or five seconds). I see no reason why we should wait for the lock for five seconds, but then only do a lookup if we waited for two. One way the wait either takes too long, the other way we loose the opportunity to actually return a response.
Commits
-------
9963170 [HttpKernel] Lookup the response even if the lock was released after 2 seconds
This PR was squashed before being merged into the 2.3 branch (closes#17355).
Discussion
----------
[DoctrineBridge][Validator] >= 2.3 Pass association instead of ID as argument
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
No verification on doctrine-orm version has been provided since the `composer.json` requires `"doctrine/orm": "~2.4,>=2.4.5"` and performing a query with an object as array argument has been added in 2.2.0-BETA1 (see https://github.com/doctrine/doctrine2/blob/2.2.0-BETA1/lib/Doctrine/ORM/Persisters/BasicEntityPersister.php#L1511)
Commits
-------
5c2d534 [DoctrineBridge][Validator] >= 2.3 Pass association instead of ID as argument
This PR was squashed before being merged into the 2.8 branch (closes#17330).
Discussion
----------
Limit the max height/width of icons in the profiler menu
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17329
| License | MIT
| Doc PR | -
Commits
-------
1f5f81c Limit the max height/width of icons in the profiler menu
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Process] Allow a callback whenever the output is disabled
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | Related to #17390
| License | MIT
This was not allowed in the past. However, it's possible with these changes
Commits
-------
02f0fc7 [Process] Allow a callback whenever the output is disabled
This PR was merged into the 2.3 branch.
Discussion
----------
[ClassLoader] Use symfony/polyfill-apcu
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
#17358 updated ApcClassLoader to use polyfill-apcu, but not ApcUniversalClassLoader
2.7 / 2.8 tests are in LegacyApcUniversalClassLoaderTest
Commits
-------
a0dc399 [ClassLoader] Use symfony/polyfill-apcu
This PR was merged into the 2.7 branch.
Discussion
----------
Allow absolute URLs to be displayed in the debug toolbar
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #12221
| License | MIT
| Doc PR | -
If you agree with the original issue, this should do the trick. If you don't agree, please explain the reasons and close#12221. Thanks!
Commits
-------
11b63ff Allow absolute URLs to be displayed in the debug toolbar
* 2.8:
fixed test
[Request] Ignore invalid IP addresses sent by proxies
[EventDispatcher] TraceableEventDispatcher resets listener priorities
Throw for missing container extensions
[TwigBridge] add missing unit tests (AppVariable)
Able to load big xml files with DomCrawler
fixed typo
[Form] Fix constraints could be null if not set
[Finder] Check PHP version before applying a workaround for a PHP bug
fixed CS
add defaultNull to version
sort bundles in config:dump-reference command
Fixer findings.
Profiler CSS position conflicts with JS detection
[Translation][Writer] avoid calling setBackup if the dumper is not an instance of FileDumper.
[FrameworkBundle] Compute the kernel root hash only one time
* 2.7:
fixed test
[Request] Ignore invalid IP addresses sent by proxies
Throw for missing container extensions
[TwigBridge] add missing unit tests (AppVariable)
Able to load big xml files with DomCrawler
fixed typo
[Form] Fix constraints could be null if not set
[Finder] Check PHP version before applying a workaround for a PHP bug
fixed CS
add defaultNull to version
sort bundles in config:dump-reference command
Fixer findings.
[Translation][Writer] avoid calling setBackup if the dumper is not an instance of FileDumper.
[FrameworkBundle] Compute the kernel root hash only one time
* 2.3:
[Request] Ignore invalid IP addresses sent by proxies
Able to load big xml files with DomCrawler
fixed typo
[Form] Fix constraints could be null if not set
[Finder] Check PHP version before applying a workaround for a PHP bug
fixed CS
sort bundles in config:dump-reference command
Fixer findings.
This PR was merged into the 2.8 branch.
Discussion
----------
Overriding profiler position in CSS breaks JS positioning
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
The positioning of a profiler info block (open to the left or right) is [calculated using Javascript](https://github.com/symfony/symfony/blob/master/src/Symfony/Bundle/WebProfilerBundle/Resources/views/Profiler/toolbar_js.html.twig#L35). Since Symfony 2.8, the config/version panel is right-aligned and opens to the left. If another panel is added to the right of it, the panel cannot open correctly.
Styles are unset in https://github.com/symfony/symfony/blob/master/src/Symfony/Bundle/WebProfilerBundle/Resources/views/Profiler/toolbar_js.html.twig#L46-L47 but that means it is set back to the stylesheet settings, which results in `right:0, left:0` on the element.
Manual testing is fairly easy: Just add a CSS class `sf-toolbar-block-right` on one or multiple panels (e.g. Doctrine) that result in the Config panel to have enough room to open to the right.
Here's a screenshot of the problem:
![bildschirmfoto 2015-12-11 um 10 27 55](https://cloud.githubusercontent.com/assets/1073273/11740305/e2c94cfc-9ff1-11e5-86ae-1fd94ec5a93e.png)
The other option would be to set the position in javascript to `right: auto` instead of unsetting, but I prefer to fix invalid CSS ;-)
Commits
-------
79474a6 Profiler CSS position conflicts with JS detection
This PR was squashed before being merged into the 2.3 branch (closes#16897).
Discussion
----------
[Form] Fix constraints could be null if not set
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
If the form options has no key for constraints the default should be an empty array to be ignored by the loop in the FormValidator. The default without this fix is ```null``` and foreach will throw an error.
The "Bug" also still exists in master-Branch.
Commits
-------
f80e0eb [Form] Fix constraints could be null if not set
This PR was merged into the 3.1-dev branch.
Discussion
----------
Allows access to payload in callback validator
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15092
| License | MIT
| Doc PR | none
Commits
-------
26cd91d allows access to payload in callback validator
This PR was merged into the 2.7 branch.
Discussion
----------
[Translation][Writer] avoid calling setBackup if the dumper is not FileDumper
| 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
-------
369b2d4 [Translation][Writer] avoid calling setBackup if the dumper is not an instance of FileDumper.
This PR was merged into the 2.7 branch.
Discussion
----------
[FrameworkBundle] Compute the kernel root hash only one time
| Q | A
| ------------- | ---
| 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
-------
23431e9 [FrameworkBundle] Compute the kernel root hash only one time
This PR was squashed before being merged into the 2.3 branch (closes#17134).
Discussion
----------
[Finder] Check PHP version before applying a workaround for a PHP bug
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | --
| License | MIT
| Doc PR | --
Commits
-------
cba206a [Finder] Check PHP version before applying a workaround for a PHP bug
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Profiler] make it possible to omit the link var
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Currently, when you do not want to have a section in the web profiler,
you would have to explicitly pass `false` as value for the `link`
variable. With this change you can omit it when including the toolbar
item template.
Commits
-------
c430a47 [Profiler] make it possible to omit the link var
This PR was merged into the 2.3 branch.
Discussion
----------
sort bundles in config:dump-reference command
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
This backports #17495 to the `2.3` branch.
Commits
-------
a5c8811 sort bundles in config:dump-reference command
This puts back the default behavior of Symfony 2.8 where the Asset
component features were implicitly configured with sensible default
values when no explicit configuration was present but the templating
section was enabled.
This PR was merged into the 2.3 branch.
Discussion
----------
[2.3] [CS] MethodSeparationFixer - findings.
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
Th goal of this PR is _not_ to have it merged, but to see if the `MethodSeparationFixer` (https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/1426) is suitable for SF level/configuration in the PHP-CS-Fixer (and thereby might later become part of `fabbot.io`).
Commits
-------
d7b730f Fixer findings.
* 2.8:
Ability to set empty version strategy in packages
Display Ajax request from newest to oldest in the toolbar
CLI: use request context to generate absolute URLs
[SecurityBundle] Optimize dependency injection tests
Sort bundles in config commands
[HttpFoundation] Do not overwrite the Authorization header if it is already set
tag for dumped PHP objects must be a local one
* 2.7:
Ability to set empty version strategy in packages
CLI: use request context to generate absolute URLs
[SecurityBundle] Optimize dependency injection tests
Sort bundles in config commands
[HttpFoundation] Do not overwrite the Authorization header if it is already set
tag for dumped PHP objects must be a local one
* 2.3:
[SecurityBundle] Optimize dependency injection tests
[HttpFoundation] Do not overwrite the Authorization header if it is already set
tag for dumped PHP objects must be a local one
This PR was merged into the 2.7 branch.
Discussion
----------
[2.7] [FrameworkBundle] [DX] Sort bundles in config commands
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | none
| License | MIT
| Doc PR | none
Reopened against `2.7` instead of #17490
This makes the behaviour of config commands a bit more user-friendly. Scanning through an ordered list should be a lot easier for the user, especially if she knows what's the exact bundle they're looking for. The sort is applied to the bundle name, as the extension alias might not always be present.
Before:
![before](https://cloud.githubusercontent.com/assets/345754/12498061/8e0ff30a-c0c1-11e5-9c96-561065eedc79.png)
After:
![after](https://cloud.githubusercontent.com/assets/345754/12498064/93019bde-c0c1-11e5-8bbc-c85a74b3f5e8.png)
Commits
-------
80d51e0 Sort bundles in config commands
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Serializer] Add a new DateTime normalizer
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | todo
This PR add support for dates and times to the Normalizer component. It supports all date and time formats supported by PHP. Dates and times are normalized in the RFC 3339 format by default. The output format can be customized using the `$context` parameter. The default format can be changed using a constructor parameter.
Usage:
```php
use Symfony\Component\Serializer\Normalizer\DateTimeNormalizer;
use Symfony\Component\Serializer\Serializer;
$serializer = new Serializer(array(new DateTimeNormalizer()));
echo $serializer->normalize(new \DateTimeImmutable('2016/01/01'));
// 2016-01-01T00:00:00+00:00
echo $serializer->normalize(new \DateTime('2016/01/01'));
// 2016-01-01T00:00:00+00:00
echo $serializer->normalize(new \DateTime('2016/01/01'), null, array(DateTimeNormalizer::FORMAT_KEY => 'Y'))
// 2016
var_dump($serializer->denormalize('2016-01-01T00:00:00+00:00', \DateTimeInterface::class));
// class DateTimeImmutable#1 (3) {
// public $date =>
// string(26) "2016-01-01 00:00:00.000000"
// public $timezone_type =>
// int(1)
// public $timezone =>
// string(6) "+00:00"
// }
var_dump($serializer->denormalize('2016-01-01T00:00:00+00:00', \DateTime::class));
// class DateTime#1 (3) {
// public $date =>
// string(26) "2016-01-01 00:00:00.000000"
// public $timezone_type =>
// int(1)
// public $timezone =>
// string(6) "+00:00"
// }
```
Commits
-------
6749a70 [Serializer] Add a new DateTime normalizer
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Yaml] deprecate parsing the !!php/object tag
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets | #16877
| License | MIT
| Doc PR |
Commits
-------
3380346 [Yaml] deprecate parsing the !!php/object tag
f146c8d tag for dumped PHP objects must be a local one
This PR was merged into the 2.3 branch.
Discussion
----------
[Yaml] tag for dumped PHP objects must be a local one
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16877
| License | MIT
| Doc PR |
Commits
-------
9d03478 tag for dumped PHP objects must be a local one
This PR was merged into the 2.8 branch.
Discussion
----------
[FrameworkBundle][Validator] Fix apc cache service deprecation
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Related to #16795
I guess the deprecation was on the wrong service.
Also, no deprecation notice was triggered about using `"apc"` as the value of the `framework.validation.cache` configuration option. This PR adds the missing deprecation.
> 📝 _NOTE_: The standard edition will need to be updated [here](https://github.com/symfony/symfony-standard/blob/2.8/app/config/config_prod.yml#L6).
Commits
-------
907bbec [FrameworkBundle][Validator] Fix apc cache service deprecation
* 3.0: (36 commits)
Fixed form types in profiler
[Process] Use stream based storage to avoid memory issues
Fix upgrade guides concerning erroneous removal of assets helper
[Process] Remove a misleading comment
Fix markdown typo
ChooseBaseUrl should return an index
[Form] ChoiceType: Fix a notice when 'choices' normalizer is replaced
Improve the phpdoc of SplFileInfo methods
[Process] Use stream based storage to avoid memory issues
[FrameworkBundle] Don't log twice with the error handler
synchronize 2.8 and 3.0 upgrade files
Remove useless is_object condition
[Process] Fix typo, no arguments needed anymore
[Serializer] Introduce constants for context keys
Fixed the documentation of VoterInterface::supportsAttribute
Fixed Bootstrap form theme form "reset" buttons
Fixed the form profiler when using long form types
[PropertyInfo] PhpDocExtractor: Fix a notice when the property doesn't exist
Remove useless duplicated tests
[FrameworkBundle] Optimize framework extension tests
...
* 2.8: (48 commits)
[Process] Use stream based storage to avoid memory issues
Fix upgrade guides concerning erroneous removal of assets helper
[Process] Remove a misleading comment
Fix markdown typo
ChooseBaseUrl should return an index
[Form] ChoiceType: Fix a notice when 'choices' normalizer is replaced
Improve the phpdoc of SplFileInfo methods
[Process] Use stream based storage to avoid memory issues
[FrameworkBundle] Don't log twice with the error handler
synchronize 2.8 and 3.0 upgrade files
Remove useless is_object condition
[Process] Fix typo, no arguments needed anymore
[Serializer] Introduce constants for context keys
Fixed the documentation of VoterInterface::supportsAttribute
Fixed Bootstrap form theme form "reset" buttons
Fixed the form profiler when using long form types
[PropertyInfo] PhpDocExtractor: Fix a notice when the property doesn't exist
Remove useless duplicated tests
[FrameworkBundle] Optimize framework extension tests
synchronize 2.7 and 3.0 upgrade files
...
* 2.7: (28 commits)
[Process] Use stream based storage to avoid memory issues
Fix upgrade guides concerning erroneous removal of assets helper
[Process] Remove a misleading comment
Fix markdown typo
ChooseBaseUrl should return an index
[Form] ChoiceType: Fix a notice when 'choices' normalizer is replaced
Improve the phpdoc of SplFileInfo methods
[Process] Use stream based storage to avoid memory issues
[FrameworkBundle] Don't log twice with the error handler
Remove useless is_object condition
[Process] Fix typo, no arguments needed anymore
[Serializer] Introduce constants for context keys
Fixed the documentation of VoterInterface::supportsAttribute
Fixed Bootstrap form theme form "reset" buttons
Remove useless duplicated tests
[FrameworkBundle] Optimize framework extension tests
synchronize 2.7 and 3.0 upgrade files
fix merge 2.3 into 2.7 for SecureRandom dependency
Use is_subclass_of instead of reflection
Use is_subclass_of instead of Reflection when possible
...
* 2.3:
[Process] Remove a misleading comment
Improve the phpdoc of SplFileInfo methods
[Process] Use stream based storage to avoid memory issues
Fixed the documentation of VoterInterface::supportsAttribute
Remove useless duplicated tests
[FrameworkBundle] Optimize framework extension tests
Use is_subclass_of instead of Reflection when possible
This PR was merged into the 2.3 branch.
Discussion
----------
[2.3][Process] Use stream based storage to avoid memory issues
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17390
| License | MIT
Commits
-------
da73125 [Process] Use stream based storage to avoid memory issues
This PR was merged into the 2.3 branch.
Discussion
----------
Fixed the documentation of VoterInterface::supportsAttribute
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14655
| License | MIT
| Doc PR | -
Commits
-------
d662c2a Fixed the documentation of VoterInterface::supportsAttribute
This PR was merged into the 3.0 branch.
Discussion
----------
[FrameworkBundle] Added the assets helper again
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
This PR is a follow up of #14972, we deprecated and removed the AssetsHelper in 2.7/3.0 doing impossible to use the Asset component and the PHP templates together, I've submitted this PR to be merged in 3.0 because IMO this is a bug fix, but we documented the deprecation and removal of the helper, what we should do here? (https://github.com/symfony/symfony/blob/3.0/UPGRADE-3.0.md#frameworkbundle and https://github.com/symfony/symfony/blob/2.8/UPGRADE-2.7.md#frameworkbundle)
cc/ @WouterJ
Commits
-------
98cb838 Added the assets helper again
This PR was merged into the 2.7 branch.
Discussion
----------
[Asset] ChooseBaseUrl should return an offset
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Enforce chooseBaseUrl to return an integer offset to the baseUrls member.
Commits
-------
0d041c3 ChooseBaseUrl should return an index
This PR was merged into the 2.7 branch.
Discussion
----------
[Serializer] Introduce constants for context keys
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Introduces constants for keys. Follow up @xabbuh's https://github.com/symfony/symfony/pull/17113/files#r48598904
Commits
-------
c56c7bf [Serializer] Introduce constants for context keys
This PR was merged into the 2.7 branch.
Discussion
----------
[Serializer] Remove useless is_object condition
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
[This condition](https://github.com/symfony/symfony/blob/2.7/src/Symfony/Component/Serializer/Serializer.php#L185) is useless, because ```$class``` is not used in ```getNormalizer()```.
Commits
-------
f6fd5e4 Remove useless is_object condition
This PR was merged into the 2.7 branch.
Discussion
----------
[FrameworkBundle] Don't log twice with the error handler
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16980, #17202
| License | MIT
| Doc PR |
Commits
-------
90d493e [FrameworkBundle] Don't log twice with the error handler
This PR was merged into the 2.7 branch.
Discussion
----------
[Serializer] Refactor serializer normalize method
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
The serializer normalize method contains some dead or duplicate code. This PR refactor the method to make it simpler.
I tried to keep the same Exceptions in the same situations but they could probably be simplified too. (The last case only append if you pass a ressource to the serializer.)
Commits
-------
2bb5f45 Refactor serializer normalize method
This PR was merged into the 2.7 branch.
Discussion
----------
Fixed Bootstrap form theme form "reset" buttons
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14290
| License | MIT
| Doc PR | -
All the credit for this solution goes to @AntonioAmore, who reported the error originally and provided a solution. I only confirmed the bug and verified the proposed solution.
Commits
-------
67c7f05 Fixed Bootstrap form theme form "reset" buttons
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Cache] Symfony PSR-6 implementation
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
From the provided README.md:
This component provides a strict [PSR-6](http://www.php-fig.org/psr/psr-6/) implementation for adding cache to your applications. It is designed to have a low overhead so that caching is fastest. It ships with a few caching adapters for the most widespread and suited to caching backends. It also provides a `doctrine/cache` proxy adapter to cover more advanced caching needs.
Todo:
- [ ] add more tests
- [ ] add a FilesystemAdapter
Commits
-------
91e482a [Cache] Symfony PSR-6 implementation
This PR was squashed before being merged into the 2.3 branch (closes#17399).
Discussion
----------
[FrameworkBundle] Optimize framework extension tests
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17366
| License | MIT
| Doc PR | -
```XmlFrameworkExtensionTest```, ```YamlFrameworkExtensionTest``` and ```PhpFrameworkExtensionTest``` are slow tests. The reason is that the [parent test](https://github.com/symfony/symfony/blob/2.3/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php#L308) creates the container in every test case. With different parameters, but the same is created several times. (actually with 'full' parameter it is created 12 times in 2.3) If we cache the different containers during test, we avoid to creating the same container multiple times.
As I experienced it can be merged without a conflict into 2.3 and 2.7, but 2.8 and 3.0 conflicts.
I have these result on my local setup. Not that big optimalization, but a few second can matter too imo. :)
**2.3 before**
```go
Time: 8.79 seconds, Memory: 55.75Mb
OK (449 tests, 586 assertions)
OK src/Symfony/Bundle/FrameworkBundle
```
**2.3 after**
```go
Time: 5.85 seconds, Memory: 58.25Mb
OK (449 tests, 586 assertions)
OK src/Symfony/Bundle/FrameworkBundle
```
----
**2.7 before**
```go
Time: 17.17 seconds, Memory: 81.50Mb
OK, but incomplete, skipped, or risky tests!
Tests: 753, Assertions: 1098, Skipped: 3.
Legacy deprecation notices (45)
OK src/Symfony/Bundle/FrameworkBundle
```
**2.7 after**
```go
Time: 12.65 seconds, Memory: 88.00Mb
OK, but incomplete, skipped, or risky tests!
Tests: 753, Assertions: 1098, Skipped: 3.
Legacy deprecation notices (41)
OK src/Symfony/Bundle/FrameworkBundle
```
----
**2.8 before**
```go
Time: 18.94 seconds, Memory: 88.00Mb
OK, but incomplete, skipped, or risky tests!
Tests: 787, Assertions: 1159, Skipped: 3.
Legacy deprecation notices (89)
OK src/Symfony/Bundle/FrameworkBundle
```
**2.8 after**
```go
Time: 12.69 seconds, Memory: 94.50Mb
OK, but incomplete, skipped, or risky tests!
Tests: 787, Assertions: 1159, Skipped: 3.
Legacy deprecation notices (85)
OK src/Symfony/Bundle/FrameworkBundle
```
----
**3.0 before**
```go
Time: 16.48 seconds, Memory: 73.75Mb
OK (741 tests, 1043 assertions)
OK src/Symfony/Bundle/FrameworkBundle
```
**3.0 after**
```go
Time: 11.49 seconds, Memory: 76.75Mb
OK (741 tests, 1043 assertions)
OK src/Symfony/Bundle/FrameworkBundle
```
Commits
-------
f6a078b [FrameworkBundle] Optimize framework extension tests
This PR was merged into the 2.7 branch.
Discussion
----------
[2.7] Use is_subclass_of instead of reflection
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
Follows https://github.com/symfony/symfony/pull/17400
>
For performance reason, I replaced a reflection instantiation by ``is_subclass_of``.
Commits
-------
5af5d06 Use is_subclass_of instead of reflection
Currently, when you do not want to have a section in the web profiler,
you would have to explicitly pass `false` as value for the `link`
variable. With this change you can omit it when including the toolbar
item template.
This PR was squashed before being merged into the 3.1-dev branch (closes#17323).
Discussion
----------
[DependencyInjection] Deprecate unsupported attributes/elements for alias
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets | #17256
| License | MIT
Following https://github.com/symfony/symfony/pull/17133, this PR deprecates using unsupported keywords on alias definition.
For example the following examples will trigger deprecations:
```xml
<?xml version="1.0" encoding="utf-8"?>
<container>
<services>
<service id="bar" alias="foo" class="Foo">
<tag name="foo.bar" />
</service>
</services>
</container>
```
```yml
services:
bar:
alias: foo
parent: quz
```
Commits
-------
49eb65c [DependencyInjection] Deprecate unsupported attributes/elements for alias
* 2.3:
Fixed correct class name in thrown exception
Add gc_mem_caches() call for PHP7 after itoken_get_all() as new memory manager will not release small buckets to OS automatically
Removed a duplicated test in CardSchemeValidatorTest
Fix perf and mem issue when using token_get_all
[SecurityBundle] fix SecureRandom service constructor args
Normalize params only when used.
This PR was merged into the 2.8 branch.
Discussion
----------
[TwigBridge] Use label_format option for checkbox and radio labels
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Commits
-------
6fbd9a7 [TwigBridge] Use label_format option for checkbox and radio labels
This PR was merged into the 2.7 branch.
Discussion
----------
[TwigBridge] Use label_format option for checkbox and radio labels
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Commits
-------
dc8f780 [TwigBridge] Use label_format option for checkbox and radio labels
This PR was merged into the 2.3 branch.
Discussion
----------
[Bridge] [Doctrine] Normalize params only when used. [2.3]
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
If no logger is set the params are not used so those don't have to be normalized.
Commits
-------
6852a46 Normalize params only when used.
This PR was merged into the 2.3 branch.
Discussion
----------
Fix performance (PHP5) and memory (PHP7) issues when using token_get_all
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16868
| License | MIT
| Doc PR | -
Although it's not the case anymore on PHP 7, on PHP 5, `is_array` checks are much slower than `isset` checks.
Also from @peteward in #17384:
> New PHP7 memory manager will not release small buckets to OS automatically in cases exposed by `token_get_all()`. This function call addition specifically for PHP7 will reclaim this memory to keep the footprint down of long processe
> See above ticket and suggested actions by PHP internals team for long-running tasks (https://bugs.php.net/70098) - I think `cache:clear/warmup` on a heavy app justifies this.
> We're running on cloud-based hosting platforms under memory limitations (Platform.sh). When memory is exceeded we're into swap and the cache clearing process goes from seconds to minutes for the initial deployment, which really slows our development workflow and also causes holding page delays.
Commits
-------
e555aad Add gc_mem_caches() call for PHP7 after itoken_get_all() as new memory manager will not release small buckets to OS automatically
d1f72d8 Fix perf and mem issue when using token_get_all
* 3.0:
[ClassLoader] Use symfony/polyfill-apcu
[HttpFoundation][Cookie] Cookie DateTimeInterface fix
bumped Symfony version to 2.8.3
updated VERSION for 2.8.2
updated CHANGELOG for 2.8.2
bumped Symfony version to 2.7.10
updated VERSION for 2.7.9
updated CHANGELOG for 2.7.9
bumped Symfony version to 2.3.38
updated VERSION for 2.3.37
update CONTRIBUTORS for 2.3.37
updated CHANGELOG for 2.3.37
added missing requirement
removed obsolete tests, fixed composer.json
do not ship with a custom rng implementation
[Console] HHVM read input stream bug
Fix max width for multibyte keys in choice question
[Console] Display console application name even when no version set
Remove calls to non-existing method
Remove empty statements.
* 2.8:
[ClassLoader] Use symfony/polyfill-apcu
[HttpFoundation][Cookie] Cookie DateTimeInterface fix
bumped Symfony version to 2.8.3
updated VERSION for 2.8.2
updated CHANGELOG for 2.8.2
bumped Symfony version to 2.7.10
updated VERSION for 2.7.9
updated CHANGELOG for 2.7.9
bumped Symfony version to 2.3.38
updated VERSION for 2.3.37
update CONTRIBUTORS for 2.3.37
updated CHANGELOG for 2.3.37
added missing requirement
removed obsolete tests, fixed composer.json
do not ship with a custom rng implementation
[Console] HHVM read input stream bug
Conflicts:
CHANGELOG-2.3.md
CHANGELOG-2.7.md
CHANGELOG-2.8.md
composer.json
src/Symfony/Component/ClassLoader/composer.json
src/Symfony/Component/HttpKernel/Kernel.php
* 2.7:
[ClassLoader] Use symfony/polyfill-apcu
[HttpFoundation][Cookie] Cookie DateTimeInterface fix
bumped Symfony version to 2.7.10
updated VERSION for 2.7.9
updated CHANGELOG for 2.7.9
bumped Symfony version to 2.3.38
updated VERSION for 2.3.37
update CONTRIBUTORS for 2.3.37
updated CHANGELOG for 2.3.37
Conflicts:
composer.json
src/Symfony/Component/ClassLoader/Tests/ApcClassLoaderTest.php
src/Symfony/Component/HttpKernel/Kernel.php
* 2.3:
[ClassLoader] Use symfony/polyfill-apcu
[HttpFoundation][Cookie] Cookie DateTimeInterface fix
bumped Symfony version to 2.3.38
updated VERSION for 2.3.37
update CONTRIBUTORS for 2.3.37
updated CHANGELOG for 2.3.37
Conflicts:
.travis.yml
src/Symfony/Component/ClassLoader/composer.json
src/Symfony/Component/HttpKernel/Kernel.php
This PR was merged into the 2.3 branch.
Discussion
----------
[ClassLoader] Use symfony/polyfill-apcu
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Fixes APC usage on PHP 7 or when APCu bc-layer is disabled
Commits
-------
623595f [ClassLoader] Use symfony/polyfill-apcu
This PR was merged into the 3.1-dev branch.
Discussion
----------
[VarDumper] Add flags to allow fine tuning dumps representation
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15856
| License | MIT
| Doc PR | -
The `DUMP_STRING_LENGTH` behavior has been requested in #15856,
the `DUMP_LIGHT_ARRAY` behavior is what should have been done for the VarDumperTestTrait. Anticipated usage is opt-in, by adding `<env name="DUMP_LIGHT_ARRAY" value="1" />` in `phpunit.xml.dist`.
Any more flags proposal anyone? Better names maybe?
Commits
-------
a35ceb0 [VarDumper] Add flags to allow fine tuning dumps representation
This PR was squashed before being merged into the 2.8 branch (closes#17253).
Discussion
----------
[Console] HHVM read input stream bug
| Q | A
| ------------- | ---
| Bug fix? | [yes]
| New feature? | [no]
| BC breaks? | [no]
| Deprecations? | [no]
| Tests pass? | [yes]
| License | MIT
HHVM readline() function requires a parameter see:
https://github.com/facebook/hhvm/blob/master/hphp/runtime/ext/readline/ext_readline.php
But the php readline does not require one.
```
In Symfony\Component\Console\Helper\QuestionHelper
…
readFromInput($stream)
…
```
we use readline() without a parameter.
HHVM Version:
```
HipHop VM 3.10.1 (rel)
Compiler: tags/HHVM-3.10.1-0-g689b4969a141620ee5a282ce0dbf72278c84d44b
Repo schema: 6c99ee1f98340f6f3ef397a332583f0e843a627d
```
Docker Container:
```
docker run --rm -it -v `pwd`:`pwd` -w `pwd` brunoric/hhvm:deb hhvm test.php ls
```
Test.php
```
<?php
use Symfony\Component\Console\Application;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Output\OutputInterface;
use Symfony\Component\Console\Question\Question;
use Symfony\Component\Console\Helper\QuestionHelper;
require_once "vendor/autoload.php";
$console = new Application();
$console
->register('ls')
->setDescription('Try input')
->setCode(function (InputInterface $input, OutputInterface $output) {
$question = new Question('Your email address: ');
$question->setValidator(
function ($answer) {
return $answer;
}
);
$question->setMaxAttempts(5);
$helper = new QuestionHelper();
$email = $helper->ask($input, $output, $question);
$output->writeln(sprintf('Email Adress: <info>%s</info>', $email));
})
;
$console->run();
```
composer.json
```
{
"require": {
"symfony/console": "^3.0"
}
}
```
Result:
No input is possible and you got a warning
```
Your email address:
Warning: readline() expects exactly 1 parameter, 0 given in /clitest/vendor/symfony/console/Helper/QuestionHelper.php on line 436
Email Adress:
```
Fix:
Add a empty string parameter to readline() or use fgets() for hhvm.
Commits
-------
e7f17a7 [Console] HHVM read input stream bug
* 2.8:
Fix max width for multibyte keys in choice question
[Console] Display console application name even when no version set
Remove empty statements.
* 2.7:
Fix max width for multibyte keys in choice question
[Console] Display console application name even when no version set
Remove empty statements.
This PR was merged into the 3.1-dev branch.
Discussion
----------
Add placeholders into log messages
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15753
| License | MIT
| Doc PR |
Commits
-------
c92fcdb Added placeholders to all log messages instead of hardcoded values
This PR was merged into the 3.1-dev branch.
Discussion
----------
[HttpFoundation] Allow to get all the mime types associated to a format in the Request
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
This PR creates a new method in ``Request`` to allow to get all the mime types associated to a format.
This is useful in the case of a format negotiator which needs to convert a list of format to a list of mime types (see [the ``FormatNegotiator`` of the ``FOSRestBundle``](https://github.com/FriendsOfSymfony/FOSRestBundle/blob/master/Negotiation/FormatNegotiator.php#L126))
Commits
-------
4618c9f [HttpFoundation] Allow to get all the mime types associated to a format in the Request
This PR was squashed before being merged into the 2.3 branch (closes#17326).
Discussion
----------
[Console] Display console application name even when no version set
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
When displaying help of an Application with a name but no version, it show "Console Tool" instead of the application name.
Commits
-------
61e810e [Console] Display console application name even when no version set
* 3.0: (22 commits)
[Yaml] Fix tests on PHP 7.0.2
[FrameworkBundle] Don't log twice with the error handler
[2.7] Workaround https://bugs.php.net/63206
[2.3] Workaround https://bugs.php.net/63206
Add closing parenthesis
[Serializer] Unset object_to_populate after using it
Typo fix
[WebProfiler] Fixed sf-minitoolbar height
[HttpFoundation] Fixed Request HTTP_USER_AGENT on 3.X versions
[2.3] Static Code Analysis for Components
[Serializer] Use $context['cache_key'] to enhance caching
Removed non-existent directory from composer autoload
Fixed erroneous deprecation notice for extended Interfaces
[Routing] cs fix
Added support \IteratorAggregate for UniqueEntityValidator
Update AbstractChoiceListTest.php
[Serializer] Allow to use proxies in object_to_populate
Fix#17306 Paths with % in it are note allowed (like urlencoded)
Use proper class to fetch $versionStrategy property
Added sort order SORT_STRING for params in UriSigner
...
Conflicts:
src/Symfony/Component/Serializer/Normalizer/ObjectNormalizer.php
* 2.8:
[Yaml] Fix tests on PHP 7.0.2
[FrameworkBundle] Don't log twice with the error handler
[2.7] Workaround https://bugs.php.net/63206
[2.3] Workaround https://bugs.php.net/63206
Add closing parenthesis
[Serializer] Unset object_to_populate after using it
[Serializer] Allow to use proxies in object_to_populate
Conflicts:
src/Symfony/Component/Debug/ErrorHandler.php
src/Symfony/Component/HttpFoundation/JsonResponse.php
* 2.7:
[Yaml] Fix tests on PHP 7.0.2
[2.7] Workaround https://bugs.php.net/63206
[2.3] Workaround https://bugs.php.net/63206
Add closing parenthesis
[Serializer] Unset object_to_populate after using it
[Serializer] Allow to use proxies in object_to_populate
This PR was merged into the 2.7 branch.
Discussion
----------
[Serializer] Allow to use proxies in object_to_populate
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15627, dunglas/DunglasApiBundle#381
| License | MIT
| Doc PR | n/a
Allows to populate a proxy (or any class having the given type).
Commits
-------
b16b5b9 [Serializer] Allow to use proxies in object_to_populate
This PR was merged into the 2.8 branch.
Discussion
----------
[FrameworkBundle] Don't log twice with the error handler
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16980
| License | MIT
| Doc PR | -
ping @Tobion @yapro does it work as expected with this patch?
Commits
-------
5926ff2 [FrameworkBundle] Don't log twice with the error handler
This PR was merged into the 2.3 branch.
Discussion
----------
[Yaml] Fix tests on PHP 7.0.2
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #1234
| License | MIT
| Doc PR | -
Related to https://bugs.php.net/66179 that has been fixed in 7.0.2
Commits
-------
902f6dd [Yaml] Fix tests on PHP 7.0.2
* 2.8:
Typo fix
[WebProfiler] Fixed sf-minitoolbar height
[2.3] Static Code Analysis for Components
[Serializer] Use $context['cache_key'] to enhance caching
Fixed erroneous deprecation notice for extended Interfaces
[Routing] cs fix
Added support \IteratorAggregate for UniqueEntityValidator
Update AbstractChoiceListTest.php
Fix#17306 Paths with % in it are note allowed (like urlencoded)
Use proper class to fetch $versionStrategy property
Added sort order SORT_STRING for params in UriSigner
Remove normalizer cache in Serializer class
[Serializer] ObjectNormalizer: context can contain not serializable data
* 2.7:
Typo fix
[2.3] Static Code Analysis for Components
Added support \IteratorAggregate for UniqueEntityValidator
Update AbstractChoiceListTest.php
Fix#17306 Paths with % in it are note allowed (like urlencoded)
Use proper class to fetch $versionStrategy property
Added sort order SORT_STRING for params in UriSigner
Remove normalizer cache in Serializer class
* 2.3:
Typo fix
[2.3] Static Code Analysis for Components
Added support \IteratorAggregate for UniqueEntityValidator
Fix#17306 Paths with % in it are note allowed (like urlencoded)
Added sort order SORT_STRING for params in UriSigner
Remove normalizer cache in Serializer class
This PR was merged into the 2.8 branch.
Discussion
----------
[Serializer] Allow context to contain not serializable data
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Allow the context to contain not serializable data even for the `ObjectNormalizer` (BC break fix).
Commits
-------
996f69d Merge pull request #2 from nicolas-grekas/ser-cache
8560c13 [Serializer] Use $context['cache_key'] to enhance caching
c1740fc [Serializer] ObjectNormalizer: context can contain not serializable data
This PR was merged into the 2.8 branch.
Discussion
----------
[WebProfiler] Fixed sf-minitoolbar height
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
![toolbar-sf-2 8](https://cloud.githubusercontent.com/assets/2028198/12245117/d293c178-b874-11e5-981b-0ca335a8c3aa.png)
EDIT: This bug occurs when we use
```css
* {
box-sizing: border-box;
}
```
in the stylesheet (TwitterBootstrap for instance)
Commits
-------
9d1e65d [WebProfiler] Fixed sf-minitoolbar height
This PR was merged into the 2.3 branch.
Discussion
----------
[Serializer] Remove normalizer cache in Serializer class
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
The serializer cache the normalizer/denormalizer to use based only on the class and format. But the supportsNormalization and supportDenormalization methods can decide based on the data passed leading to hard to find bugs when the serializer used a cached normalizer it shouldn't use.
Commits
-------
8566dc1 Remove normalizer cache in Serializer class
This PR was merged into the 2.3 branch.
Discussion
----------
[FrameworkBundle] Fix paths with % in it (like urlencoded)
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | Travis passed
| Fixed tickets | #17306
| License | MIT
| Doc PR | none
Commits
-------
de7b4d7Fix#17306 Paths with % in it are note allowed (like urlencoded)
Expand the list of supported types of results returned from the repositories.
Added processing of type \IteratorAggregate (and as a consequence doctrine Collection)
* 3.0:
[WebProfilerBundle] Remove loading status from AJAX toolbar after error
Add missing apostrophe in setSaveHandler phpdoc
[VarDumper] Fix typo
bug #14246 [Filesystem] dumpFile() negates default file permissions
[FrameworkBundle] Add case in Kernel directory guess for PHPUnit
[FrameworkBundle] Add case in Kernel directory guess for PHPUnit
* 2.8:
[WebProfilerBundle] Remove loading status from AJAX toolbar after error
Add missing apostrophe in setSaveHandler phpdoc
[VarDumper] Fix typo
[FrameworkBundle] Add case in Kernel directory guess for PHPUnit
[FrameworkBundle] Add case in Kernel directory guess for PHPUnit
* 2.7:
Add missing apostrophe in setSaveHandler phpdoc
[VarDumper] Fix typo
[FrameworkBundle] Add case in Kernel directory guess for PHPUnit
[FrameworkBundle] Add case in Kernel directory guess for PHPUnit
This PR was merged into the 3.1-dev branch.
Discussion
----------
[DependencyInjection] Make YamlFileLoader raise a deprecation notice if a service definition contains unsupported keywords.
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets | ~
| License | MIT
| Doc PR | ~
Merry Christmas Symfony!!!
Commits
-------
bb5f118 [DependencyInjection] make YamlFileLoader raise a deprecation notice if a service definition contains unsupported keywords.
This PR was merged into the 2.7 branch.
Discussion
----------
[2.7][FrameworkBundle] Add case in Kernel directory guess for PHPUnit
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
The current automatic guess of the Kernel directory in the context of PHPUnit does work properly using the following commands:
- `phpunit -c app`
- `phpunit --configuration app`
- `phpunit --configuration=app`
But it fails with the synthax `phpunit -capp`, even if PHPUnit supports it. This PR fixes this.
See https://github.com/symfony/symfony/pull/17272.
Commits
-------
a7b7766 [FrameworkBundle] Add case in Kernel directory guess for PHPUnit
This PR was merged into the 2.3 branch.
Discussion
----------
[2.3][FrameworkBundle] Add case in Kernel directory guess for PHPUnit
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
The current automatic guess of the Kernel directory in the context of PHPUnit does work properly using the following commands:
- `phpunit -c app`
- `phpunit --configuration app`
- `phpunit --configuration=app`
But it fails with the synthax `phpunit -capp`, even if PHPUnit supports it. This PR fixes this.
See https://github.com/symfony/symfony/pull/17272.
Commits
-------
758fc1d [FrameworkBundle] Add case in Kernel directory guess for PHPUnit
This PR was merged into the 3.0 branch.
Discussion
----------
bug #14246 [Filesystem] dumpFile() negates default file permissions
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14246
| License | MIT
| Doc PR | none
Remain BC compatible with Symfony 2.8.
Without this change a chmod is needed after calling `dumpFile`, making it non atomic.
Commits
-------
53d6d4b bug #14246 [Filesystem] dumpFile() negates default file permissions
* 3.0:
[Process] Fix potential race condition
[PhpUnitBridge] Re-enable the garbage collector
typo
[FrameworkBundle] Allow to autowire service_container
[FrameworkBundle] Set the kernel.name properly after a cache warmup
Fix toolbar display when nvd3 is loaded on page
Removed spaces before semicolon
cast arrays to objects after parsing has finished
* 2.8:
[Process] Fix potential race condition
[PhpUnitBridge] Re-enable the garbage collector
typo
[FrameworkBundle] Allow to autowire service_container
[FrameworkBundle] Set the kernel.name properly after a cache warmup
Fix toolbar display when nvd3 is loaded on page
Removed spaces before semicolon
cast arrays to objects after parsing has finished
Conflicts:
src/Symfony/Bridge/PhpUnit/bootstrap.php
src/Symfony/Bundle/FrameworkBundle/Resources/config/services.xml
src/Symfony/Component/Console/Helper/DialogHelper.php
* 2.7:
[Process] Fix potential race condition
[PhpUnitBridge] Re-enable the garbage collector
typo
[FrameworkBundle] Set the kernel.name properly after a cache warmup
Removed spaces before semicolon
This PR was squashed before being merged into the 3.1-dev branch (closes#17191).
Discussion
----------
[Serializer] Move the normalization logic in an abstract class
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
As suggested by @xabbuh, move all the normalization logic for objects in an abstract class.
It will ease the maintenance as well as adding new features such as #17113 and #16143.
I've introduced a new abstract class to avoid BC breaks in `AbstractNormalizer`. As a (good) side effect, all normalizers now benefits from the caching system introduced in #16547.
Commits
-------
3bec813 [Serializer] Move the normalization logic in an abstract class
This PR was merged into the 2.8 branch.
Discussion
----------
[Yaml] cast arrays to objects after parsing has finished
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17190
| License | MIT
| Doc PR |
Casting arrays to objects must happen after the complete YAML string has
been parsed to avoid errors when parsing subsequent lines.
Commits
-------
8251d67 cast arrays to objects after parsing has finished
This PR was merged into the 2.8 branch.
Discussion
----------
Fix toolbar display when nvd3 is loaded on page
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | not applicable
Minor CSS fix for the toolbar, as nvd3 sets `svg { display: block }` so you end up with something like:
![image](https://cloud.githubusercontent.com/assets/183678/12079564/974aa694-b235-11e5-897e-ecb31ba20f26.png)
Commits
-------
d7010c0 Fix toolbar display when nvd3 is loaded on page
This PR was merged into the 2.3 branch.
Discussion
----------
[Yaml] recognize when a block scalar is left
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17116
| License | MIT
| Doc PR |
The parser did not recognize when the block scalar was completely parsed
and thus treated following comments as they need to be kept leading to
parse errors on the following lines.
Commits
-------
3a22165 [Yaml] recognize when a block scalar is left
The parser did not recognize when the block scalar was completely parsed
and thus treated following comments as they need to be kept leading to
parse errors on the following lines.
This PR was merged into the 2.8 branch.
Discussion
----------
[Bridge/Doctrine] Fix test case
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
The choice_list vs choice_loader change is already applied on 3.0,
the `@group legacy` tags a test case that has been already removed in 3.0.
@webmozart or anyone else could you please have a quick look here and confirm it's ok?
Commits
-------
4ef2c33 [Bridge/Doctrine] Fix test case
This PR was merged into the 2.3 branch.
Discussion
----------
bug #14246 [Filesystem] dumpFile() non atomic
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14246
| License | MIT
| Doc PR | none
Remove race condition where `dumpFile` has written the resulting file but has not given access yet.
Commits
-------
e4015d5 bug #14246 [Filesystem] dumpFile() non atomic
* 3.0:
Fix merge
[Process] Fix running tests on HHVM>=3.8
[Form] Improved performance of ChoiceType and its subtypes
Removed an object as route generator argument
* 2.8:
Fix merge
[Process] Fix running tests on HHVM>=3.8
[Form] Improved performance of ChoiceType and its subtypes
Removed an object as route generator argument
Conflicts:
src/Symfony/Bridge/Doctrine/Tests/Form/Type/EntityTypeTest.php
src/Symfony/Bundle/FrameworkBundle/Resources/config/form.xml
This PR was merged into the 2.7 branch.
Discussion
----------
[Form] Improved performance of ChoiceType and its subtypes
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
I found out today that, although CachingFactoryDecorator is part of Symfony 2.7, it is not configured to be used in the DI configuration. This simple in-memory cache improved the page load by 50% for one considerably large form with many (~600) choice/entity fields that I was working on today.
Also, caching of query builders with parameters was broken, since the parameters are represented by objects. PHP's object hashes were used to calculate the cache keys, hence the cache always missed. I converted parameters to arrays for calculating the cache keys to fix this problem.
Commits
-------
a0ef101 [Form] Improved performance of ChoiceType and its subtypes
This PR was merged into the 2.8 branch.
Discussion
----------
[WebProfiler] Removed an object as route generator argument
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17178
| License | MIT
| Doc PR | ~
Commits
-------
43fd7bb Removed an object as route generator argument
* 3.0:
[Form] fix Catchable Fatal Error if choices is not an array
[Process] Fix a transient test
[Process] Fix potential race condition leading to transient tests
[DoctrineBridge] [PropertyInfo] Catch Doctrine\ORM\Mapping\MappingException
[Routing] removed unused variable in PhpMatcherDumperTest class.
[travis] use github token to fetch deps from ZIP files
[DependencyInjection] fixes typo in triggered deprecation notice.
[Form] improve deprecation messages for the "empty_value" and "choice_list" options in the ChoiceType class.
[Form] Fixed regression on Collection type
add missing symfony/polyfill-php55 dependency
* 2.8:
[Form] fix Catchable Fatal Error if choices is not an array
[Process] Fix a transient test
[Process] Fix potential race condition leading to transient tests
[DoctrineBridge] [PropertyInfo] Catch Doctrine\ORM\Mapping\MappingException
[Routing] removed unused variable in PhpMatcherDumperTest class.
[travis] use github token to fetch deps from ZIP files
[DependencyInjection] fixes typo in triggered deprecation notice.
[Form] improve deprecation messages for the "empty_value" and "choice_list" options in the ChoiceType class.
[Form] Fixed regression on Collection type
add missing symfony/polyfill-php55 dependency
Conflicts:
src/Symfony/Component/DependencyInjection/SimpleXMLElement.php
src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php
src/Symfony/Component/Form/Tests/Extension/Core/Type/ChoiceTypeTest.php
src/Symfony/Component/Form/Tests/Extension/Core/Type/CollectionTypeTest.php
src/Symfony/Component/HttpFoundation/composer.json
* 2.7:
[Form] fix Catchable Fatal Error if choices is not an array
[Process] Fix a transient test
[Process] Fix potential race condition leading to transient tests
[Routing] removed unused variable in PhpMatcherDumperTest class.
[travis] use github token to fetch deps from ZIP files
[DependencyInjection] fixes typo in triggered deprecation notice.
[Form] improve deprecation messages for the "empty_value" and "choice_list" options in the ChoiceType class.
Conflicts:
src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php
* 2.3:
[Process] Fix potential race condition leading to transient tests
[Routing] removed unused variable in PhpMatcherDumperTest class.
[travis] use github token to fetch deps from ZIP files
This PR was merged into the 2.7 branch.
Discussion
----------
[Process] Fix a transient test
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15617
| License | MIT
| Doc PR | -
Commits
-------
7e2c67c [Process] Fix a transient test
This PR was merged into the 2.7 branch.
Discussion
----------
[Form] fix Catchable Fatal Error if choices is not an array
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR |
Since 2.7.8 I got a BC-Break Error
Catchable Fatal Error: Argument 1 passed to Symfony\Component\Form\Extension\Core\Type\ChoiceType::normalizeLegacyChoices() must be of the type array, null given
normalizeLegacyChoices work only with array, so if choices not an array, just don't try to normlize.
Commits
-------
f3c2a9b [Form] fix Catchable Fatal Error if choices is not an array
This PR was squashed before being merged into the 2.8 branch (closes#17152).
Discussion
----------
[DoctrineBridge] [PropertyInfo] Catch Doctrine\ORM\Mapping\MappingException
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Sometimes the Doctrine ORM `ClassMetadataFactory` throws a `Doctrine\Common\Persistence\Mapping\MappingException` exception, sometime a `Doctrine\ORM\Mapping\MappingException`.
This PR catch both.
Port of dunglas/php-property-info#10.
Commits
-------
ceded10 [DoctrineBridge] [PropertyInfo] Catch Doctrine\ORM\Mapping\MappingException
This PR was merged into the 2.8 branch.
Discussion
----------
[HttpFoundation] add missing symfony/polyfill-php55 dependency
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16317
| License | MIT
| Doc PR |
The `json_last_error_msg()` function used in the `JsonResponse` class
requires PHP 5.5.
Commits
-------
3cc4e4d add missing symfony/polyfill-php55 dependency
* 3.0:
[travis] timeout the sigchild tests at 60s
CS: Single line comments should use double slashes (//) and not hash (#).
Do not use HttpKernel Extension when not needed for 2.7
bumped Symfony version to 3.0.2
Do not use HttpKernel Extension when not needed
updated VERSION for 3.0.1
updated CHANGELOG for 3.0.1
bumped Symfony version to 2.8.2
updated VERSION for 2.8.1
updated CHANGELOG for 2.8.1
bumped Symfony version to 2.7.9
updated VERSION for 2.7.8
updated CHANGELOG for 2.7.8
bumped Symfony version to 2.3.37
updated VERSION for 2.3.36
update CONTRIBUTORS for 2.3.36
updated CHANGELOG for 2.3.36
Revert "Revert "bug #17052 [2.7] Fixed flatten exception recursion with errors (GrahamCampbell)""
Revert "bug #17052 [2.7] Fixed flatten exception recursion with errors (GrahamCampbell)"
use nowdoc instead of heredoc
Conflicts:
src/Symfony/Component/HttpKernel/Kernel.php
* 2.8:
[travis] timeout the sigchild tests at 60s
CS: Single line comments should use double slashes (//) and not hash (#).
Do not use HttpKernel Extension when not needed for 2.7
Do not use HttpKernel Extension when not needed
bumped Symfony version to 2.8.2
updated VERSION for 2.8.1
updated CHANGELOG for 2.8.1
bumped Symfony version to 2.7.9
updated VERSION for 2.7.8
updated CHANGELOG for 2.7.8
bumped Symfony version to 2.3.37
updated VERSION for 2.3.36
update CONTRIBUTORS for 2.3.36
updated CHANGELOG for 2.3.36
Revert "Revert "bug #17052 [2.7] Fixed flatten exception recursion with errors (GrahamCampbell)""
Revert "bug #17052 [2.7] Fixed flatten exception recursion with errors (GrahamCampbell)"
use nowdoc instead of heredoc
Conflicts:
CHANGELOG-2.3.md
CHANGELOG-2.7.md
CHANGELOG-2.8.md
src/Symfony/Bundle/FrameworkBundle/Command/RouterApacheDumperCommand.php
src/Symfony/Bundle/WebProfilerBundle/Command/ExportCommand.php
src/Symfony/Bundle/WebProfilerBundle/Command/ImportCommand.php
src/Symfony/Component/Console/Shell.php
src/Symfony/Component/Console/Tests/Helper/LegacyTableHelperTest.php
src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
src/Symfony/Component/HttpKernel/Kernel.php
* 2.7:
[travis] timeout the sigchild tests at 60s
CS: Single line comments should use double slashes (//) and not hash (#).
Do not use HttpKernel Extension when not needed for 2.7
Do not use HttpKernel Extension when not needed
bumped Symfony version to 2.7.9
updated VERSION for 2.7.8
updated CHANGELOG for 2.7.8
bumped Symfony version to 2.3.37
updated VERSION for 2.3.36
update CONTRIBUTORS for 2.3.36
updated CHANGELOG for 2.3.36
Revert "Revert "bug #17052 [2.7] Fixed flatten exception recursion with errors (GrahamCampbell)""
Revert "bug #17052 [2.7] Fixed flatten exception recursion with errors (GrahamCampbell)"
use nowdoc instead of heredoc
Conflicts:
src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
src/Symfony/Component/HttpKernel/Kernel.php
src/Symfony/Component/Security/Acl/Dbal/AclProvider.php
src/Symfony/Component/Security/Acl/Dbal/MutableAclProvider.php
* 2.3:
[travis] timeout the sigchild tests at 60s
CS: Single line comments should use double slashes (//) and not hash (#).
Do not use HttpKernel Extension when not needed
bumped Symfony version to 2.3.37
updated VERSION for 2.3.36
update CONTRIBUTORS for 2.3.36
updated CHANGELOG for 2.3.36
use nowdoc instead of heredoc
Conflicts:
src/Symfony/Bundle/FrameworkBundle/Command/ConfigDumpReferenceCommand.php
src/Symfony/Bundle/FrameworkBundle/Command/RouterApacheDumperCommand.php
src/Symfony/Bundle/FrameworkBundle/Command/RouterMatchCommand.php
src/Symfony/Bundle/FrameworkBundle/Translation/Translator.php
src/Symfony/Bundle/TwigBundle/Command/LintCommand.php
src/Symfony/Component/Config/Tests/Definition/Dumper/YamlReferenceDumperTest.php
src/Symfony/Component/Debug/ExceptionHandler.php
src/Symfony/Component/HttpKernel/Kernel.php
src/Symfony/Component/Routing/Generator/Dumper/PhpGeneratorDumper.php
This PR was merged into the 2.3 branch.
Discussion
----------
CS: use nowdoc instead of heredoc
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | —
| License | MIT
| Doc PR | —
if this is accepted, we could add the fixer to symfony level of php-cs-fixer: https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/1580
Commits
-------
3dca549 use nowdoc instead of heredoc
This PR was merged into the 2.3 branch.
Discussion
----------
Do not use HttpKernel Extension when not needed
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
HttpKernel Extension only adds `addClassesToCompile`. So the class hierarchy should be slim if it's not used.
Commits
-------
4978e19 Do not use HttpKernel Extension when not needed
* 3.0:
fixed previous merge
[2.7] Fixed flatten exception recursion with errors
Embedded identifier support
Also transform inline mappings to objects
Change the ExtensionInterface load method definition to bo identical to the documentation.
add and correct armenian translations
[Config] Fix array sort on normalization in edge case
[Security] Run tests on all PHP versions
[DomCrawler] Revert previous restriction, allow selection of every DOMNode object
[Serializer] Make metadata interfaces internal
[Yaml] fix indented line handling in folded blocks
improve BrowserKit test coverage p1
* 2.8:
[2.7] Fixed flatten exception recursion with errors
Embedded identifier support
Also transform inline mappings to objects
Change the ExtensionInterface load method definition to bo identical to the documentation.
add and correct armenian translations
[Config] Fix array sort on normalization in edge case
[Security] Run tests on all PHP versions
[DomCrawler] Revert previous restriction, allow selection of every DOMNode object
[Serializer] Make metadata interfaces internal
[Yaml] fix indented line handling in folded blocks
improve BrowserKit test coverage p1
* 2.7:
[2.7] Fixed flatten exception recursion with errors
Embedded identifier support
Also transform inline mappings to objects
Change the ExtensionInterface load method definition to bo identical to the documentation.
add and correct armenian translations
[Config] Fix array sort on normalization in edge case
[Security] Run tests on all PHP versions
[Serializer] Make metadata interfaces internal
[Yaml] fix indented line handling in folded blocks
improve BrowserKit test coverage p1
* 2.3:
[2.7] Fixed flatten exception recursion with errors
Embedded identifier support
Change the ExtensionInterface load method definition to bo identical to the documentation.
add and correct armenian translations
[Config] Fix array sort on normalization in edge case
[Yaml] fix indented line handling in folded blocks
improve BrowserKit test coverage p1
This PR was merged into the 2.3 branch.
Discussion
----------
[Yaml] fix indented line handling in folded blocks
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #9105
| License | MIT
| Doc PR |
Commits
-------
756834c [Yaml] fix indented line handling in folded blocks
This PR was merged into the 2.7 branch.
Discussion
----------
[Serializer] Make metadata interfaces internal
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/17113#discussion_r48291776
| License | MIT
| Doc PR | n/a
Introducing such interfaces was a (my) mistake. Serializer metadata are value objects. Nobody will (nor should) implement these interfaces. Composition is better for "extending" metadata.
They were not marked as `@api` and should now be marked as `@internal` (or even deprecated but it will cause some maintenance headaches).
Commits
-------
3f6cfcd [Serializer] Make metadata interfaces internal
This PR was merged into the 2.3 branch.
Discussion
----------
[Config] Fix array sort on normalization in edge case
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | N/A
| License | MIT
| Doc PR | N/A
Commits
-------
eca41a8 [Config] Fix array sort on normalization in edge case
This PR was merged into the 2.3 branch.
Discussion
----------
improve BrowserKit test coverage p1
Hi,
This PR improves BrowserKit test coverage.
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
I rebased previous PR https://github.com/symfony/symfony/pull/16549 to 2.3
Commits
-------
0261b48 improve BrowserKit test coverage p1
This PR was squashed before being merged into the 2.8 branch (closes#17035).
Discussion
----------
[DomCrawler] Revert previous restriction, allow selection of every DOMNode object
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes, revert to previous behaviour
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16933
| License | MIT
| Doc PR |
This is a backport of PR https://github.com/symfony/symfony/pull/17021
Commits
-------
d2872a3 [DomCrawler] Revert previous restriction, allow selection of every DOMNode object
* 3.0:
[Process] Fix transient test on Windows
[Process] Make tests more deterministic
[PropertyAccess] Reorder elements array after PropertyPathBuilder::replace
[Validator] fixed wrong php docs
Improved the design of the web debug toolbar
[Routing] Skip PhpGeneratorDumperTest::testDumpWithTooManyRoutes on HHVM
[Process] More robustness and deterministic tests
* 2.8:
[Process] Fix transient test on Windows
[Process] Make tests more deterministic
[PropertyAccess] Reorder elements array after PropertyPathBuilder::replace
Improved the design of the web debug toolbar
[Routing] Skip PhpGeneratorDumperTest::testDumpWithTooManyRoutes on HHVM
[Process] More robustness and deterministic tests
* 2.7:
[Process] Fix transient test on Windows
[Process] Make tests more deterministic
[PropertyAccess] Reorder elements array after PropertyPathBuilder::replace
[Routing] Skip PhpGeneratorDumperTest::testDumpWithTooManyRoutes on HHVM
[Process] More robustness and deterministic tests
This PR was merged into the 2.7 branch.
Discussion
----------
[Process] Make tests more deterministic
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16988
| License | MIT
| Doc PR | -
This makes running the Process tests faster and more deterministic.
Commits
-------
0dc9389 [Process] Make tests more deterministic
* 2.3:
[PropertyAccess] Reorder elements array after PropertyPathBuilder::replace
[Routing] Skip PhpGeneratorDumperTest::testDumpWithTooManyRoutes on HHVM
[Process] More robustness and deterministic tests
Conflicts:
src/Symfony/Component/Process/Process.php
src/Symfony/Component/Process/Tests/ProcessTest.php
This PR was merged into the 2.3 branch.
Discussion
----------
[Process] More robustness and deterministic tests
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16988, #15617
| License | MIT
| Doc PR | -
Commits
-------
d1a178a [Process] More robustness and deterministic tests
* 3.0:
Clean EOL whitespace
[travis] Fix
[Routing] Reduce memory usage of a high consuming test case
use requires annotation
skip bcrypt tests on incompatible platforms
* 2.8:
Clean EOL whitespace
[travis] Fix
[Routing] Reduce memory usage of a high consuming test case
use requires annotation
skip bcrypt tests on incompatible platforms
* 2.7:
Clean EOL whitespace
[travis] Fix
[Routing] Reduce memory usage of a high consuming test case
use requires annotation
skip bcrypt tests on incompatible platforms
* 2.3:
Clean EOL whitespace
[travis] Fix
[Routing] Reduce memory usage of a high consuming test case
use requires annotation
skip bcrypt tests on incompatible platforms
Conflicts:
.travis.yml
This PR was merged into the 2.3 branch.
Discussion
----------
[Security] skip bcrypt tests on incompatible platforms
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17055
| License | MIT
| Doc PR |
Not all PHP versions before 5.3.7 have backported fixes that make it
possible to use `password_hash()` function. Therefore, we have to skip
tests on not supported platforms.
Commits
-------
2a6fa7b use requires annotation
65eb188 skip bcrypt tests on incompatible platforms
* 3.0:
Fix merge
[SecurityBundle] Removing test insulations for a huge perf win
[Validator] Use the new interface in the README
[Validator] Add missing pt_BR translation
Fix doctrine bridge tests on older PHP versions
[Filesystem] fix tests on 2.3
[Filesystem] Recursivly widen non-executable directories
[DependencyInjection] fixed definition loosing property shared when decorated by a parent definition
[Form] fix#15544 when a collection type attribute "required" is false, "prototype" should too
updated validators.bg.xlf
[Security] Enable bcrypt validation and result length tests on all PHP versions
[Security] Verify if a password encoded with bcrypt is no longer than 72 characters
[Console] Avoid extra blank lines when rendering exceptions
[Console][Table] fixed render row with multiple cells.
[Yaml] do not remove "comments" in scalar blocks
* 2.8:
Fix merge
[SecurityBundle] Removing test insulations for a huge perf win
[Validator] Use the new interface in the README
[Validator] Add missing pt_BR translation
Fix doctrine bridge tests on older PHP versions
[Filesystem] fix tests on 2.3
[Filesystem] Recursivly widen non-executable directories
[DependencyInjection] fixed definition loosing property shared when decorated by a parent definition
[Form] fix#15544 when a collection type attribute "required" is false, "prototype" should too
updated validators.bg.xlf
[Security] Enable bcrypt validation and result length tests on all PHP versions
[Security] Verify if a password encoded with bcrypt is no longer than 72 characters
[Console] Avoid extra blank lines when rendering exceptions
[Console][Table] fixed render row with multiple cells.
[Yaml] do not remove "comments" in scalar blocks
Conflicts:
src/Symfony/Component/Console/Tests/Fixtures/application_renderexception2.txt
src/Symfony/Component/DependencyInjection/Compiler/ResolveDefinitionTemplatesPass.php
src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveDefinitionTemplatesPassTest.php
* 2.7:
[SecurityBundle] Removing test insulations for a huge perf win
[Validator] Use the new interface in the README
[Filesystem] fix tests on 2.3
[Filesystem] Recursivly widen non-executable directories
[Form] fix#15544 when a collection type attribute "required" is false, "prototype" should too
updated validators.bg.xlf
[Security] Enable bcrypt validation and result length tests on all PHP versions
[Security] Verify if a password encoded with bcrypt is no longer than 72 characters
[Console] Avoid extra blank lines when rendering exceptions
[Console][Table] fixed render row with multiple cells.
[Yaml] do not remove "comments" in scalar blocks
Conflicts:
src/Symfony/Component/Console/Application.php
src/Symfony/Component/Console/Tests/Fixtures/application_renderexception1.txt
src/Symfony/Component/Console/Tests/Fixtures/application_renderexception2.txt
src/Symfony/Component/Console/Tests/Fixtures/application_renderexception4.txt
src/Symfony/Component/Form/Extension/Core/Type/CollectionType.php
src/Symfony/Component/Form/Tests/Extension/Core/Type/CollectionTypeTest.php
src/Symfony/Component/Yaml/Tests/ParserTest.php
This PR was merged into the 2.3 branch.
Discussion
----------
[SecurityBundle] Removing test insulations for a huge perf win
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Commits
-------
b8fa471 [SecurityBundle] Removing test insulations for a huge perf win
Not all PHP versions before 5.3.7 have backported fixes that make it
possible to use `password_hash()` function. Therefore, we have to skip
tests on not supported platforms.
The test introduced in #16797 used the `assertFilePermissions()` method
to test for the expected result. This worked quite well for the PR as it
was submitted for the `master` branch. However, the tests now fail on
2.3 as the `FilesystemTestCase` class which contains this method was
introduced with Symfony 2.4.
This PR was squashed before being merged into the 2.8 branch (closes#16926).
Discussion
----------
[DependencyInjection] fixed definition loosing property shared when decorated by a parent definition
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
While upgrading my applications from 2.7 and 2.8 I found out that the attribute "shared" gets lost when a parent is configured. I wrote a Test to confirm my assumption and added a bugfix
Commits
-------
d3a4a77 [DependencyInjection] fixed definition loosing property shared when decorated by a parent definition
* 2.3:
[Form] fix#15544 when a collection type attribute "required" is false, "prototype" should too
updated validators.bg.xlf
[Security] Enable bcrypt validation and result length tests on all PHP versions
[Security] Verify if a password encoded with bcrypt is no longer than 72 characters
[Console] Avoid extra blank lines when rendering exceptions
[Yaml] do not remove "comments" in scalar blocks
* 3.0:
Fix merge
[Form] fix BC break introduced with prototype_data option
[Ldap] Escape carriage returns in LDAP DNs.
Upgrade for 2.8: ContainerAware was deprecated in favour of ContainerAwareTrait [ci skip]
simplify debug error_reporting levels given php version > 5.3
Fix wrong method name mapping in UPGRADE-3.0.md
Use correct height for clearer
[Validator] fixed raising violations to a maximum of one
* 2.8:
Fix merge
[Form] fix BC break introduced with prototype_data option
[Ldap] Escape carriage returns in LDAP DNs.
Upgrade for 2.8: ContainerAware was deprecated in favour of ContainerAwareTrait [ci skip]
Fix wrong method name mapping in UPGRADE-3.0.md
Use correct height for clearer
[Validator] fixed raising violations to a maximum of one
Conflicts:
UPGRADE-2.8.md
This PR was merged into the 2.3 branch.
Discussion
----------
[Console] Avoid extra blank lines when rendering exceptions
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Don't know if it can be considered as a bug fix as it is the behavior since a while (https://github.com/symfony/symfony/pull/9055), but I let you see by yourself the old vs new rendering:
![Console exception rendering](https://cloud.githubusercontent.com/assets/2211145/11857447/92cebfbe-a458-11e5-9d3d-6147b0338080.PNG)
Commits
-------
2e158df [Console] Avoid extra blank lines when rendering exceptions
This PR was squashed before being merged into the 2.8 branch (closes#17044).
Discussion
----------
[Form] fix BC break introduced with prototype_data option
| Q | A
| ------------- | ---
| Bug fix? | [yes]
| New feature? | [no]
| BC breaks? | [no]
| Deprecations? | [no]
| Tests pass? | [no]
| Fixed tickets | [#15707]
| License | MIT
| Doc PR | []
This fixes the BC break introduced with prototype_data option in collection type. At the moment whether option is set or not it overwrites prototype data but it has different behaviour before and prototype data was taken from the mapped form data/entity.
- [x] make the test work (can't figure yet how to test that prototype without prototype_data option has default values)
Commits
-------
d73485a [Form] fix BC break introduced with prototype_data option
This PR was merged into the 2.3 branch.
Discussion
----------
[Security] Verify if a password encoded with bcrypt is no longer than 72 characters
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17047
| License | MIT
| Doc PR | -
From the [password_hash() docs](http://php.net/password_hash):
> Caution Using the PASSWORD_BCRYPT as the algorithm, will result in the password parameter being truncated to a maximum length of 72 characters.
Commits
-------
0a496e7 [Security] Enable bcrypt validation and result length tests on all PHP versions
5c30266 [Security] Verify if a password encoded with bcrypt is no longer than 72 characters
This PR was squashed before being merged into the 2.3 branch (closes#16959).
Discussion
----------
[Form] fix#15544 when a collection type attribute "required" is false, "prototype" should too
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15544
| License | MIT
| Doc PR | -
Commits
-------
b4b5d63 [Form] fix#15544 when a collection type attribute "required" is false, "prototype" should too
This PR was merged into the 2.8 branch.
Discussion
----------
[Validator] BicValidator - fixed raising violations to a maximum of one
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | none
| License | MIT
| Doc PR | none
I just found a bug while using the constraint. For example my value "a" will raise three violations at one time. I just expected to get a maximum number of one.
This PR will fix that behavior.
I do not know how I can easily add Unit-Tests for that, can someone please help me?
Commits
-------
7860bb4 [Validator] fixed raising violations to a maximum of one
This PR was squashed before being merged into the 2.8 branch (closes#16842).
Discussion
----------
[Ldap] Escape carriage returns in LDAP DNs.
Depends upon this commit in polyfill: https://github.com/symfony/polyfill/pull/14
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Carriage returns are supposed to be escaped in a LDAP DN. Leading and trailing spaces should be encoded as well. The spaces were taken care of in the polyfill implementation of `ldap_escape`, but the actual PHP function doesn't do the same. So I moved that logic within the component function and removed it from the polyfill function.
Commits
-------
2243db4 [Ldap] Escape carriage returns in LDAP DNs.
This PR was merged into the 2.3 branch.
Discussion
----------
[Yaml] do not remove "comments" in scalar blocks
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #12478, #15857
| License | MIT
| Doc PR |
Inside scalar blocks, lines starting with a `#` character must be
treated like every other strings and must not be ignored as comments.
Commits
-------
3c72fcc [Yaml] do not remove "comments" in scalar blocks
This PR was merged into the 3.0 branch.
Discussion
----------
[Debug] simplify error_reporting levels given php version > 5.3
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Since PHP 5.4 `E_ALL` contains `E_STRICT`. This allows us to simplify and clean up some code.
Commits
-------
b1c774f simplify debug error_reporting levels given php version > 5.3
This PR was merged into the 2.8 branch.
Discussion
----------
[2.8] Use correct height for toolbar clearer
The toolbar is 36px heigh, while the clearer is set at 38px. This means that there is 2px between the end of the page and the toolbar. This is especially not nice when the footer has a dark color (it renders a 2px white line between toolbar and footer).
| Q | A
| ------------- | ---
| Fixed tickets | -
| License | MIT
Commits
-------
1a9c0bc Use correct height for clearer
* 3.0:
prefer phpunit 5.x on hhvm
Reflected the change of the choice_value option in the Upgrade information
[FrameworkBundle][HttpKernel] the finder is required to discover bundle commands
[travis] Auto-conf deps=high matrix line
[FrameworkBundle] fixes outdated phpdoc on Controller::createForm() method.
fix error level for deprecation
Fix the logout path when not using the router
Fix the logout path when not using the router
[Form] cast IDs to match deprecated behaviour of EntityChoiceList
[FrameworkBundle] minor: fix property_info service name in composer.json
[HttpFoundation] Added the ability of mapping stream wrapper protocols when using X-Sendfile
[HttpFoundation] Add a test case for using BinaryFileResponse with stream wrappers
CSS min-height and min-width should not be "auto"
* 2.8:
prefer phpunit 5.x on hhvm
Reflected the change of the choice_value option in the Upgrade information
[FrameworkBundle][HttpKernel] the finder is required to discover bundle commands
[travis] Auto-conf deps=high matrix line
fix error level for deprecation
Fix the logout path when not using the router
Fix the logout path when not using the router
[Form] cast IDs to match deprecated behaviour of EntityChoiceList
[FrameworkBundle] minor: fix property_info service name in composer.json
[HttpFoundation] Added the ability of mapping stream wrapper protocols when using X-Sendfile
[HttpFoundation] Add a test case for using BinaryFileResponse with stream wrappers
CSS min-height and min-width should not be "auto"
Conflicts:
.travis.yml
UPGRADE-2.8.md
appveyor.yml
src/Symfony/Bundle/FrameworkBundle/composer.json
src/Symfony/Component/HttpFoundation/ParameterBag.php
* 2.7:
prefer phpunit 5.x on hhvm
[FrameworkBundle][HttpKernel] the finder is required to discover bundle commands
[travis] Auto-conf deps=high matrix line
Fix the logout path when not using the router
Fix the logout path when not using the router
[Form] cast IDs to match deprecated behaviour of EntityChoiceList
[HttpFoundation] Added the ability of mapping stream wrapper protocols when using X-Sendfile
[HttpFoundation] Add a test case for using BinaryFileResponse with stream wrappers
Conflicts:
.travis.yml
src/Symfony/Bundle/FrameworkBundle/composer.json
* 2.3:
prefer phpunit 5.x on hhvm
[FrameworkBundle][HttpKernel] the finder is required to discover bundle commands
[travis] Auto-conf deps=high matrix line
Fix the logout path when not using the router
[HttpFoundation] Added the ability of mapping stream wrapper protocols when using X-Sendfile
[HttpFoundation] Add a test case for using BinaryFileResponse with stream wrappers
Conflicts:
.travis.yml
src/Symfony/Bundle/FrameworkBundle/composer.json
src/Symfony/Bundle/SecurityBundle/Templating/Helper/LogoutUrlHelper.php
This PR was merged into the 2.3 branch.
Discussion
----------
[HttpFoundation] Added the ability of using BinaryFileResponse with stream wrappers
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #12990#13187
| License | MIT
| Doc PR | ~
Commits
-------
1da3d61 [HttpFoundation] Added the ability of mapping stream wrapper protocols when using X-Sendfile
dd129b7 [HttpFoundation] Add a test case for using BinaryFileResponse with stream wrappers
This PR was merged into the 2.8 branch.
Discussion
----------
[FrameworkBundle] minor: fix property_info service name in composer.json
| Q | A
| ------------- | ---
| 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
-------
2680b5c [FrameworkBundle] minor: fix property_info service name in composer.json
This PR was merged into the 2.3 branch.
Discussion
----------
Fix the logout path when not using the router
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #17029
| License | MIT
| Doc PR | n/a
This needs to use the base url, not the base path, so that it goes through the front controller when not using url rewriting.
Commits
-------
1a2567e Fix the logout path when not using the router
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Form] Deprecate the "choices_as_values" option of ChoiceType
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Commits
-------
9aa5507 [Form] Deprecate the "choices_as_values" option of ChoiceType
This PR was merged into the 2.8 branch.
Discussion
----------
[PropertyInfo] Fix some namespaces in tests
| Q | A
| ------------- | ---
| 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
-------
0660891 [PropertyInfo] Fix some namespaces in tests
This PR was squashed before being merged into the 2.8 branch (closes#16911).
Discussion
----------
[PropertyInfo] Update List Information from ReflectionExtractor
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16889
| License | MIT
| Doc PR | symfony/symfony-docs#5974
Unless a property with the same casing exists, lowercase the first letter of a property name extracted from a method. From what I understand, we don't actually need to support `snake_case` at all in the PropertyInfo component.
I cannot think of any use-case where PropertyAccess would be used to get/set a property value *before* using PropertyInfo to find out information about the property and the values it supports.
Since PropertyInfo supports the discovery of property names, which can then be used as identifiers in PropertyAccess, there should be no need to support a naming strategy to map property identifiers from one naming convention to another.
---
Running `$reflectionExtractor->getProperties($class)` with the following classes:
```php
class X
{
public $a;
public $b;
public function getA() {}
}
// Result: array('a', 'b');
```
```php
class Y
{
public $A;
public $b;
public function setA() {}
}
// Result: array('A', 'b');
```
```php
class Y
{
public $username;
protected $emailAddress;
public $password;
public function getEmailAddress() {}
public function isActive() {}
}
// Result: array('username', 'emailAddress', 'password', 'active');
```
Commits
-------
b2da76c [PropertyInfo] Update List Information from ReflectionExtractor
This PR was merged into the 2.8 branch.
Discussion
----------
[FrameworkBundle] ContainerDebugCommand: pass the right object to the descriptors
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | c5067dacb3 (commitcomment-14884960)
| License | MIT
| Doc PR |
Commits
-------
8cf0022 pass the right object to the descriptors
* Fixes edge case on windows where PHP does not generate a PHP Warning but instead returns a wrong result https://bugs.php.net/bug.php?id=71103
* Improved error reporting on `unlink` used in `remove()`
This PR was merged into the 2.8 branch.
Discussion
----------
[Form] Improve deprecation notice to mention the affected service id
| Q | A
| ------------- | ---
| Bug fix? |no
| New feature? |no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
This fix changes the deprecation notice to mention the affected service id. Without this update it is quite annoying to find the service with the deprecated definition.
Commits
-------
0b9ea95 Improve form deprecation notices to mention the affected service ids
This PR was merged into the 2.8 branch.
Discussion
----------
[Security][Guard] checkCredentials() should have a @return annotation
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | none
| License | MIT
| Doc PR | none
According to its documentation, an implementation of the `GuardAuthenticatorInterface::checkCredentials()` method should return `true` on success. I've added a `@return` annotation to the PHPDoc block to reflect the fact that this method should actually return something.
Commits
-------
4fd24a0 Added @return to checkCredentials()
This PR was merged into the 2.8 branch.
Discussion
----------
[PhpUnitBridge] Replace "weak-verbose" by "deprecations upper bound" mode
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16789, #14475
| License | MIT
| Doc PR | -
This is a "new feature" that replaces a "new feature" not yet released but merged into 2.8.1. See #16789.
It is way more flexible to be able to specify the upper bound of remaining deprecation notices that you allow in your test suite. This allows lowering this number while deprecations are removed, step after step.
ping @WouterJ @Tobion @craue @fabpot @stof
Commits
-------
58cd3ee [PhpUnitBridge] Replace "weak-verbose" by "deprecations upper bound" mode
This PR was merged into the 2.3 branch.
Discussion
----------
Clean useless deprecation silencing
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
We added these when we triggered unsilenced notices. But we silence them now.
Commits
-------
9953550 Clean useless deprecation silencing
* 3.0:
[Process] Enhance compatiblity with --enable-sigchild
[Validator] removes unused variable in LengthValidator class.
[FrameworkBundle] [Bug] Fixes new InputStyle bug #16920
fix short array syntax for php 5.3
[Serializer] Fixed on array of objects in .
[Process] Always call proc_close
[Form] Add missing tests for StringUtil::fqcnToBlockPrefix()
[Security] Fix a Polyfill import statement in StringUtils
[Validator] Updated Luxembourgish translations for 2.8
Improved the code of the commands that use the new SymfonyStyle class
disable server commands without Process component
list all server command names in suggestion
Suggested Process dependency
disable server:run cmd without Process component
Suggested Process dependency
Fix DeprecationErrorHandler on PHP 5.3
[FrameworkBundle] prevent cache:clear creating too long paths
[FrameworkBundle] [Translation] Fixed translations not written when no translations directory in update command
* 2.8:
[Process] Enhance compatiblity with --enable-sigchild
[Validator] removes unused variable in LengthValidator class.
[FrameworkBundle] [Bug] Fixes new InputStyle bug #16920
fix short array syntax for php 5.3
[Serializer] Fixed on array of objects in .
[Process] Always call proc_close
[Form] Add missing tests for StringUtil::fqcnToBlockPrefix()
[Security] Fix a Polyfill import statement in StringUtils
[Validator] Updated Luxembourgish translations for 2.8
Improved the code of the commands that use the new SymfonyStyle class
disable server commands without Process component
list all server command names in suggestion
Suggested Process dependency
disable server:run cmd without Process component
Suggested Process dependency
[FrameworkBundle] prevent cache:clear creating too long paths
[FrameworkBundle] [Translation] Fixed translations not written when no translations directory in update command
Conflicts:
.travis.yml
src/Symfony/Bridge/Twig/Command/LintCommand.php
src/Symfony/Bundle/FrameworkBundle/Command/ConfigDebugCommand.php
src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php
src/Symfony/Bundle/FrameworkBundle/Command/RouterApacheDumperCommand.php
src/Symfony/Bundle/FrameworkBundle/Command/RouterDebugCommand.php
src/Symfony/Bundle/FrameworkBundle/Command/ServerRunCommand.php
src/Symfony/Bundle/FrameworkBundle/Command/TranslationDebugCommand.php
src/Symfony/Bundle/FrameworkBundle/Command/YamlLintCommand.php
src/Symfony/Bundle/TwigBundle/Command/DebugCommand.php
src/Symfony/Component/Security/Core/Util/StringUtils.php
* 2.7:
[Process] Enhance compatiblity with --enable-sigchild
fix short array syntax for php 5.3
[Serializer] Fixed on array of objects in .
[Process] Always call proc_close
[Validator] Updated Luxembourgish translations for 2.8
disable server commands without Process component
list all server command names in suggestion
Suggested Process dependency
disable server:run cmd without Process component
Suggested Process dependency
[FrameworkBundle] prevent cache:clear creating too long paths
[FrameworkBundle] [Translation] Fixed translations not written when no translations directory in update command
Conflicts:
.travis.yml
src/Symfony/Bundle/FrameworkBundle/Command/TranslationUpdateCommand.php
src/Symfony/Bundle/FrameworkBundle/composer.json
This PR was merged into the 2.3 branch.
Discussion
----------
[Process] Enhance compatiblity with --enable-sigchild
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16888
| License | MIT
| Doc PR | -
This is complete rewrite of the fallback `--enable-sigchild` handling in the Process class.
It removes most of the differences between this and a non-sigchild-enabled php.
Which means the test suite doesn't need anymore to be replayed 3 times (which is how I started this PR, looking for a way to test this component in less time).
I validated this with a locally compiled php, sigchild-enabled. Green.
Changes affect only this special-mode php.
Ping @romainneutron and @Seldaek (original writer of the sigchild support)
Submitted on 2.3 as bugfix, which it is to me.
Commits
-------
e7cc4aa [Process] Enhance compatiblity with --enable-sigchild
This PR was merged into the 2.3 branch.
Discussion
----------
[FrameworkBundle] prevent cache:clear creating too long paths
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15547#16783
| License | MIT
| Doc PR | -
Commits
-------
6e279c5 [FrameworkBundle] prevent cache:clear creating too long paths
This PR was merged into the 2.7 branch.
Discussion
----------
[FrameworkBundle] [Translation] Fixed translations not written when no translations directory in update command
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Currently when you run the TranslationUpdateCommand and want to write the translation in the domain file without a `translations` directory the output is `[OK] Success` but the file is not created.
This PR fix the creation of the directory.
Commits
-------
8c45107 [FrameworkBundle] [Translation] Fixed translations not written when no translations directory in update command
This PR was merged into the 2.3 branch.
Discussion
----------
[Process] Always call proc_close
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15617
| License | MIT
| Doc PR | -
This should fix one more transient test, and a wrong behavior.
Commits
-------
ccb67d7 [Process] Always call proc_close
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
Conflicts:
src/Symfony/Component/Validator/Resources/translations/validators.lb.xlf
This PR was merged into the 2.7 branch.
Discussion
----------
[FrameworkBundle] Disable built-in server commands when Process component is missing
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
This also backports the improvement for the `suggest` section from #16650 to the `2.7` branch and improves it by also mentioning the other built-in server commands.
Commits
-------
972c4ca disable server commands without Process component
dd82b64 list all server command names in suggestion
d18fb9b Suggested Process dependency
* 3.0:
[Process] Fix stopping a process on Windows
[PhpUnitBridge] Add weak-verbose mode and match against message instead of test name
Added a note about the new requirement iconv.
Improved error messages for Yaml Deprecations
Added a test case for the Logger class.
[Form] Fix choices defined as Traversable
CS: general fixes
Suggested Process dependency
* 2.8:
[Process] Fix stopping a process on Windows
[PhpUnitBridge] Add weak-verbose mode and match against message instead of test name
Added a note about the new requirement iconv.
Improved error messages for Yaml Deprecations
Added a test case for the Logger class.
[Form] Fix choices defined as Traversable
CS: general fixes
Suggested Process dependency
This PR was merged into the 2.8 branch.
Discussion
----------
Suggested Process dependency
The `server:run` command requires the Process component.
Commits
-------
7c1231a Suggested Process dependency
This PR was merged into the 2.3 branch.
Discussion
----------
[Process] Fix stopping a process on Windows
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #15617
| License | MIT
| Doc PR | -
Commits
-------
80fb51c [Process] Fix stopping a process on Windows
This PR was merged into the 2.8 branch.
Discussion
----------
[PhpUnitBridge] Add weak-verbose mode and match against message instead of test name
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14475
| License | MIT
| Doc PR | -
This is double a DX bug fix:
- the weak-verbose allows showing messages but exit with 0 (see #14475)
- matching against $class::$method was a mistake of mine: you can already `--filter` in phpunit to get by-test filtering but you can't select which message should be traced without this change. I stumbled upon this limitation while doing a Symfony 3 migration workshop...
Commits
-------
a670ff1 [PhpUnitBridge] Add weak-verbose mode and match against message instead of test name
This PR was merged into the 2.8 branch.
Discussion
----------
[DX][YAML] Improved Deprecation Notices
Show the actual invalid string for the Yaml deprecations to ease the upgrade as you can grep the strings.
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Related #16745
Commits
-------
3179407 Improved error messages for Yaml Deprecations
This PR was merged into the 2.3 branch.
Discussion
----------
CS: general fixes
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | ?
| Fixed tickets | N/A
| License | MIT
| Doc PR | N/A
Commits
-------
d3f671e CS: general fixes
This PR was merged into the 2.3 branch.
Discussion
----------
[MonologBridge] Added a test case for the Logger class
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | none
| License | MIT
| Doc PR | none
So far, there is no test case that ensures that the `Symfony\Bridge\Monolog\Logger` can be instantiated. Because of this, bug #16837 was not discovered by the tests. This PR adds a simple test case that tests some basic functionality of that particular class.
Commits
-------
78c0a6e Added a test case for the Logger class.
This PR was merged into the 2.8 branch.
Discussion
----------
[Form] Fix choices defined as Traversable
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16792
| License | MIT
| Doc PR | -
Commits
-------
021d93a [Form] Fix choices defined as Traversable
* 3.0:
Set the redraw frequency at least to 1. Setting it to 0 would otherwise produce an error.
[Form] document changes to form type interfaces
[Process] Unset callback after stop to free memory
Improve error message for undefined DIC aliases
[VarDumper] fixed .sf-dump z-index
[Validator] Updated Luxembourgish translations for 2.8
Disallow http-kernel 3.x, fixes#16837.
[Config] Throw an exception when using cannotBeEmpty() on numeric or boolean nodes
[DependencyInjection] Validate class names and factory methods
ampq → amqp
Fix typo
Refactoring EntityUserProvider::__construct() to not do work, cause cache warm error
[Form] Add context to FormFactory deprecations
Reapply the Yaml bugfix of #16745
CS: remove unneeded parentheses around control statements
[DomCrawler] add upgrade hint on interface changes
[TwigBridge] Clean deps now that 2.8.0 is tagged
* 2.8:
Set the redraw frequency at least to 1. Setting it to 0 would otherwise produce an error.
[Process] Unset callback after stop to free memory
Improve error message for undefined DIC aliases
[VarDumper] fixed .sf-dump z-index
[Validator] Updated Luxembourgish translations for 2.8
Disallow http-kernel 3.x, fixes#16837.
[DependencyInjection] Validate class names and factory methods
ampq → amqp
Fix typo
Refactoring EntityUserProvider::__construct() to not do work, cause cache warm error
[Form] Add context to FormFactory deprecations
CS: remove unneeded parentheses around control statements
[TwigBridge] Clean deps now that 2.8.0 is tagged
* 2.7:
Set the redraw frequency at least to 1. Setting it to 0 would otherwise produce an error.
[Process] Unset callback after stop to free memory
Improve error message for undefined DIC aliases
[VarDumper] fixed .sf-dump z-index
[DependencyInjection] Validate class names and factory methods
ampq → amqp
Fix typo
CS: remove unneeded parentheses around control statements
[TwigBridge] Clean deps now that 2.8.0 is tagged
This PR was merged into the 2.7 branch.
Discussion
----------
[TwigBridge] Clean deps now that 2.8.0 is tagged
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Commits
-------
e6efe7e [TwigBridge] Clean deps now that 2.8.0 is tagged
This PR was merged into the 2.8 branch.
Discussion
----------
[MonologBridge] Monolog Bridge 2.8 is incompatible with HttpKernel 3.0
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16837
| License | MIT
| Doc PR | none
Greetings from the SymfonyCon hackday. I wanted to start my day with an easy PR. 😉
As pointed out by @anlutro in #16837, MonologBridge 2.8 uses a deprecated interface of HttpKernel that has been removed in 3.0. Because of this, MonologBridge 2.8 must not be marked as compatible with HttpKernel 3.0 in composer.json.
Commits
-------
cb8d2c3 Disallow http-kernel 3.x, fixes#16837.
This PR was squashed before being merged into the 2.3 branch (closes#16799).
Discussion
----------
Improve error message for undefined DIC aliases
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR | n/a
Additionally, I think the arguments need to be the other way round (`templating` is an alias pointing to `templating.engine.twig`).
Commits
-------
9195cd3 Improve error message for undefined DIC aliases
This PR was merged into the 2.7 branch.
Discussion
----------
[DependencyInjection] Validate class names and factory methods
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Because, you know, people do mistakes... I saw this happening during a workshop: when e.g. the factory tag has no `method` attribute, we generate an container that embeds a parse error.
Commits
-------
b2e3850 [DependencyInjection] Validate class names and factory methods
This PR was merged into the 2.3 branch.
Discussion
----------
CS: remove unneeded parentheses around control statements
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | ?
| Fixed tickets | N/A
| License | MIT
| Doc PR | N/A
Commits
-------
45d250d CS: remove unneeded parentheses around control statements
* 2.8:
[Form] Cleanup
Added the renamed options of the collection type to the upgrade information
Conflicts:
UPGRADE-2.8.md
src/Symfony/Component/Form/FormFactory.php
src/Symfony/Component/Form/Tests/FormFactoryTest.php
* 2.8:
Fix BC for the default root form name
Conflicts:
src/Symfony/Component/Form/FormFactory.php
src/Symfony/Component/Form/Tests/FormFactoryTest.php
* 2.8:
add subject variable to expression context
[Process] Fix signaling/stopping logic on Windows
Forward compatibility with AbstractLayout* 2.8 tests
[Yaml] minor CS cleaning
[Console] do not encode backslashes in console default description
* 2.7:
[Process] Fix signaling/stopping logic on Windows
Forward compatibility with AbstractLayout* 2.8 tests
[Yaml] minor CS cleaning
[Console] do not encode backslashes in console default description