This PR was merged into the 2.7 branch.
Discussion
----------
Run an uptodate version of HHVM on Travis
| Q | A
| ------------- | ---
| Branch? |2.7
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR | n/a
Using the Trusty infrastructure allows running an uptodate version of HHVM rather than running the latest version supporting Precise, which is very old.
It relies on an undocumented feature of the Travis config file, namely the fact that ``matrix.include`` actually allows to overwrite everything from the config file (it is merged with the main config), even though the Travis linter complains about it. I think it is fine to use this and to replace it with an official approach once there is one.
Refs #18922
Commits
-------
e6956c9 Skip some tests on HHVM due to a PHPunit bug
e041da0 Use the Trusty Travis infrastructure for HHVM builds
This PR was merged into the 2.7 branch.
Discussion
----------
[appveyor] Ignore STATUS_HEAP_CORRUPTION errors on Windows
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
As in e.g. https://ci.appveyor.com/project/fabpot/symfony/build/1.0.9382#L1505
Commits
-------
574f4e4 [appveyor] Ignore STATUS_HEAP_CORRUPTION errors on Windows
* 2.3:
[Routing] Finish annotation loader taking a class constant as a beginning of a class name
[Routing] Fix the annotation loader taking a class constant as a beginning of a class name
This PR was merged into the 2.3 branch.
Discussion
----------
[Routing] Fix the annotation loader taking a class constant as a beginning of a class name
| Q | A
| ------------- | ---
| Branch? | 2.3
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #18633
| License | MIT
| Doc PR | -
Code copy/pasted from ClassMapGenerator.php
Commits
-------
8d4f35d [Routing] Finish annotation loader taking a class constant as a beginning of a class name
43c7f9b [Routing] Fix the annotation loader taking a class constant as a beginning of a class name
This PR was merged into the 2.3 branch.
Discussion
----------
[PropertyAccess] Fix for PHP 7.0.7
| Q | A
| ------------- | ---
| Branch? | 2.3
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
This is what break travis currently.
See https://3v4l.org/r37rY
Commits
-------
a125af7 [PropertyAccess] Fix for PHP 7.0.7
This PR was submitted for the master branch but it was merged into the 2.7 branch instead (closes#18879).
Discussion
----------
[Console] SymfonyStyle: Align multi-line/very-long-line blocks
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #18564
| License | MIT
| Doc PR | n/a
This PR makes all lines aligned in multi-line blocks.
Very-long-line block:
```php
SymfonyStyle::warning('Lorem ipsum...');
```
Before:
![before-1](http://image.prntscr.com/image/d8443d3a85924a0182a62bd6d3dc1086.png)
After:
![after-1](http://image.prntscr.com/image/dbbdd275bff140bdad06de336f032ec1.png)
Multi-line block:
```php
SymfonyStyle::success(['Lorem ipsum...', 'Lorem ipsum...', 'Lorem ipsum...']);
```
Before:
![before-2](http://image.prntscr.com/image/6d7c05b4ab3a42f0b0be652527aed7c8.png)
After:
![after-2](http://image.prntscr.com/image/bba017309f4a4dd09e0147d5917cb0ae.png)
Also @javiereguiluz pointed the case of `SymfonyStyle::comment()` in #18564, I needed to make it calling `SymfonyStyle::block()` with ` // ` as prefix to fit the first intention of this one.
So if this one is merged I'll propose the changes for comments in a second PR (out of this scope).
Commits
-------
963fe1d [Console] SymfonyStyle: Align multi-line/very-long-line blocks
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes#18864).
Discussion
----------
[Console][DX] Fixed ambiguous error message when using a duplicate option shortcut
| Q | A
| ------------- | ---
| Branch? | 2.3
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #18856
| License | MIT
| Doc PR | -
I assume this should be merged into 2.3 as per @stof's comment.
There is a race condition when you run a command which has a duplicate option shortcut. Simply changing the order so that Options are merged before the Arguments solves that race condition.
````php
$this->setName('my:super:command')
->setAliases(['my:super:commandalias'])
->setDescription('Performs some irrelevant work.')
->addOption('survey', 'e', InputOption::VALUE_REQUIRED, 'My option with a shortcut.')
````
Gives the error message:
```
[Symfony\Component\Console\Exception\LogicException]
An argument with name "command" already exists.
```
This happens as the first time the definition is merged happens here:
https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Console/Application.php#L820
As this throws an error here:
https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Console/Command/Command.php#L309
The commans are merged but not the options.
Merging it then again when the command is run
https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Console/Command/Command.php#L217
throws an error due to the duplicate argument as the arguments already have been merged. This time the error message is not surpressed and will confuse the user.
Changing the order should fix the issue for duplicate arguments as well as for duplicate options.
Commits
-------
7cb7655 [Console][DX] Fixed ambiguous error message when using a duplicate option shortcut
This PR was merged into the 2.7 branch.
Discussion
----------
Fix js comment in profiler
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Single line comment introduced in #18413 causes the toolbar to fail to load with a syntax error.
Commits
-------
91a2f5d Fix js comment in profiler
* 2.3:
[Yaml] fix exception contexts
People - person singularization
[Yaml] properly handle unindented collections
chomp newlines only at the end of YAML documents
This PR was submitted for the 2.8 branch but it was merged into the 2.3 branch instead (closes#18839).
Discussion
----------
People - person singularization
| Q | A
| ------------- | ---
| Branch? | 2.8
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Bugfix for version 2.8 - more information [#18824]
Commits
-------
02070f9 People - person singularization
This PR was merged into the 2.3 branch.
Discussion
----------
[Yaml] chomp newlines only at the end of YAML documents
| Q | A
| ------------- | ---
| Branch? | 2.3
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #18784
| License | MIT
| Doc PR |
Commits
-------
a4b1fa6 chomp newlines only at the end of YAML documents
This PR was merged into the 2.7 branch.
Discussion
----------
[Serializer] Add test for ignored attributes during denormalization
| 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 | n/a
Commits
-------
c2f7fed [Serializer] Add test for ignored attributes during denormalization
This PR was submitted for the 2.8 branch but it was merged into the 2.7 branch instead (closes#18814).
Discussion
----------
Fixed server status command when port has been omitted
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #18810
| License | MIT
| Doc PR | -
Modified the status command to behave exactly as the server:start command. When the port is omitted in the address argument the default port is added from the port option.
Commits
-------
94e4706 Fixed server status command when port has been omitted
This PR was submitted for the master branch but it was merged into the 2.7 branch instead (closes#18772).
Discussion
----------
Update UPGRADE FROM 2.x to 3.0
| Q | A
| ------------- | ---
| Branch? | "master"
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | deprecated in 2.7 removed in 3.0
| Tests pass? | yes
| Fixed tickets | none
| License | MIT
| Doc PR | http://symfony.com/doc/2.8/reference/forms/types/text.html for starters
You missed the Form max_length option deprecation in several field types (Text, Password, Email, etc...).
Commits
-------
cd66a45 Update UPGRADE FROM 2.x to 3.0
This PR was merged into the 2.7 branch.
Discussion
----------
Use levenshtein level for better Bundle matching
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
_I've targetted 2.7 branch since this was introduced in the 2.6 version but the 2.6 isn't maintain anymore._
**TL;DR:** I found unused code in bad bundle exception when Symfony try to find the best bundle to fix the typo. Should we remove that code (and got a potential lower matching bundle name) or keep it and make it work?
-----
I've noticed that a part of the code wasn't used when determining which bundle typo was written on _bad bundle exception_, from https://github.com/symfony/symfony/pull/11210.
```php
$alternative = null;
$shortest = null;
foreach ($bundleNames as $bundleName) {
// if there's a partial match, return it immediately
if (false !== strpos($bundleName, $nonExistentBundleName)) {
return $bundleName;
}
$lev = levenshtein($nonExistentBundleName, $bundleName);
if ($lev <= strlen($nonExistentBundleName) / 3 && ($alternative === null || $lev < $shortest)) {
$alternative = $bundleName;
}
}
```
In this snippet, the `$shortest` wasn't update in the `foreach`. Reading the code, I guess it was supposed to add an even better accuracy when multiple bundle matche the typo'd bundle name.
Which mean when an alternative is found, we have to assign the level `$lev` from that match to `$shortest`.
```php
if ($lev <= strlen($nonExistentBundleName) / 3 && ($alternative === null || $lev < $shortest)) {
$alternative = $bundleName;
$shortest = $lev;
}
```
Let say you have these bundles: `FoooooBundle` and `FooBundle` and you request the bundle `FoodBundle`.
- Without `$shortest` updated, you'll got a suggestion with `FoooooBundle` (first matching bundle found)
- With `$shortest` upadted, you'll got a suggestion with `FooBundle` (because it has a better level than `FoooooBundle`)
This isn't a _bug fix_ since this is only supposed to help developper but not the final user.
**Question is**: should we keep that level comparison or just remove it?
Commits
-------
ac7f74e Use levenshtein level for better Bundle matching
This PR was merged into the 2.7 branch.
Discussion
----------
[2.7][WebProfilerBundle] Fix CORS ajax security issues
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | N/A
| License | MIT
| Doc PR | N/A
The WebProfiler toolbar monitors ajax requests. However, when using cross domain ajax requests, it triggers a security issues `Refused to get unsafe header "X-Debug-Token"` `Refused to get unsafe header "X-Debug-Token-Link"` because if the other app is not a Symfony App configured to expose these headers in CORS.
![image](https://cloud.githubusercontent.com/assets/137574/14225799/f462c09c-f8cf-11e5-925d-88be99945a92.png)
This fixes the issue. It adds a new configuration node to explicitly activate it on purpose.
Commits
-------
f8dd87d [WebProfilerBundle] Fix CORS ajax security issues
This PR was merged into the 2.3 branch.
Discussion
----------
Fix computation of PR diffs for component matrix lines
| Q | A
| ------------- | ---
| Branch? | 2.3
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
Validated on https://travis-ci.org/symfony/symfony/jobs/130061271 who fails otherwise.
Commits
-------
e7a3ae7 Fix computation of PR diffs for component matrix lines
This PR was submitted for the 3.0 branch but it was merged into the 2.7 branch instead (closes#18507).
Discussion
----------
[BUG] Delete class 'control-group' in bootstrap 3
| Q | A
| ------------- | ---
| Branch? | 3.0
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #18506
| License | MIT
| Doc PR | any
Commits
-------
99f61d6 [BUG] Delete class 'control-group' in bootstrap 3