Commit Graph

16234 Commits

Author SHA1 Message Date
Konstantin.Myakshin
384d0eeaf8 Fix event annotation for arguments resolving event 2016-10-04 15:51:31 -07:00
Nicolas Grekas
0884518107 [HttpKernel] Fix nullable types handling 2016-10-04 17:41:48 +02:00
Nicolas Grekas
4cc51bfb48 Merge branch '2.7' into 2.8
* 2.7:
  [VarDumper] Fix ReflectionNamedType->getName() detection
2016-10-04 14:40:49 +02:00
Nicolas Grekas
dda18df6de [VarDumper] Fix ReflectionNamedType->getName() detection 2016-10-04 14:01:35 +02:00
Nicolas Grekas
3ad5b2918d Merge branch '3.1'
* 3.1:
  [travis] Use hhvm-stable instead of discontinued hhvm-3.12
  bumped Symfony version to 3.1.6
  updated VERSION for 3.1.5
  updated CHANGELOG for 3.1.5
  bumped Symfony version to 2.8.13
  updated VERSION for 2.8.12
  updated CHANGELOG for 2.8.12
  bumped Symfony version to 2.7.20
  updated VERSION for 2.7.19
  update CONTRIBUTORS for 2.7.19
  updated CHANGELOG for 2.7.19
  [Validator] Url validator not validating hosts ending in a number
2016-10-04 11:33:03 +02:00
Fabien Potencier
222b56d426 [TwigBundle] added support for ClassExistenceResource when relevant 2016-10-03 16:53:52 -07:00
Robin Chalas
a8b910bec2
[Console] Fix validation of null values using SymfonyStyle::ask() 2016-10-04 00:20:32 +02:00
Fabien Potencier
70a620dfca bumped Symfony version to 3.1.6 2016-10-03 12:15:50 -07:00
Fabien Potencier
c0b98bbd3c updated VERSION for 3.1.5 2016-10-03 12:01:06 -07:00
Fabien Potencier
7f0ae27521 bumped Symfony version to 2.8.13 2016-10-03 11:59:23 -07:00
Fabien Potencier
5cd057a938 updated VERSION for 2.8.12 2016-10-03 11:44:05 -07:00
Fabien Potencier
3086fd38e5 bumped Symfony version to 2.7.20 2016-10-03 11:42:03 -07:00
Fabien Potencier
70afffbbff updated VERSION for 2.7.19 2016-10-03 11:15:49 -07:00
Fabien Potencier
d147e4294c Merge branch '2.8' into 3.1
* 2.8:
  [Validator] Url validator not validating hosts ending in a number
2016-10-03 10:30:23 -07:00
Fabien Potencier
1b943660e1 Merge branch '2.7' into 28
* 2.7:
  [Validator] Url validator not validating hosts ending in a number
2016-10-03 10:30:13 -07:00
Fabien Potencier
9ed8d576e1 bug #20102 [Validator] Url validator not validating hosts ending in a number (gwkunze)
This PR was squashed before being merged into the 2.7 branch (closes #20102).

Discussion
----------

[Validator] Url validator not validating hosts ending in a number

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no (Should validate slightly more urls)
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | None that I could find
| License       | MIT
| Doc PR        |

We ran into an issue where the URL validator wasn't validating URL that we got from a legitimate (intranet) URL. Afaict from skimming RFCs the URL `http://myhost123/` is valid, however the current regular expression doesn't accept the last part of a hostname (in this case the entire hostname is the last part as there are no periods in the host).

I've fixed this by adding the numbers unicode character property to the regular expression, I'm not sure but symbol characters (`\pS`) might need to be added to the group as well.

Commits
-------

934c434 [Validator] Url validator not validating hosts ending in a number
2016-10-03 09:05:36 -07:00
Gijs Kunze
934c434d33 [Validator] Url validator not validating hosts ending in a number 2016-10-03 09:05:35 -07:00
Fabien Potencier
8794617371 Merge branch '3.1'
* 3.1:
  Use "more entropy" option for uniqid()
  reset constraint options
2016-10-03 08:50:21 -07:00
Fabien Potencier
53d2bdee76 Merge branch '2.8' into 3.1
* 2.8:
  Use "more entropy" option for uniqid()
  reset constraint options
  added checks for public services on compiler passes that use service id and not references
2016-10-03 08:50:10 -07:00
Fabien Potencier
fcd401fc9c Merge branch '2.7' into 2.8
* 2.7:
  Use "more entropy" option for uniqid()
  reset constraint options
2016-10-03 08:49:46 -07:00
Javier Eguiluz
50a8c1f9d3 Add "more entropy" to every uniqid() call 2016-10-03 16:10:01 +02:00
Martin Hasoň
af84d23891 [Validator] Add Czech and Slovak translations for BIC 2016-10-03 09:43:29 +02:00
Fabien Potencier
80577f96bf bug #20122 [Validator] Reset constraint options (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] Reset constraint options

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #20106
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

I think it's good to reset the internal pointer of the options array if we depend on `key($options)`. I've added tests to clarify we intentionally check for the first key.

The current behavior actually differs for hhvm/php7 - https://3v4l.org/e6r6E

Commits
-------

4c6ddd4 reset constraint options
2016-10-02 08:50:33 -07:00
Roland Franssen
81b292280b parse bundle name+namespace at once 2016-10-02 08:41:41 +00:00
Roland Franssen
4c6ddd4737 reset constraint options 2016-10-01 21:36:38 +00:00
Fabien Potencier
d98eb7b5bb [Config] added ClassExistenceResource 2016-10-01 13:54:25 -07:00
Nicolas Grekas
f5703e5feb [VarDumper] Fix merge 2016-10-01 18:19:11 +01:00
Fabien Potencier
52284246a3 minor #20115 [Config] avoid loaded non-needed class in prod (fabpot)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Config] avoid loaded non-needed class in prod

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

Commits
-------

16489d6 [HttpKernel] avoid loading a class that's not-needed when doing HTTP
8371b50 [Config] avoid loaded non-needed class in prod
2016-10-01 08:43:47 -07:00
Fabien Potencier
cb52d42634 fixed tests 2016-10-01 07:22:03 -07:00
Fabien Potencier
6399ffa32b Merge branch '3.1'
* 3.1:
  [TwigBundle] added missing dependencies for tests
  fixed CS
  adding missing dep
  [TwigBundle] Adjust CacheWarmingTest for TemplateCacheWarmer introduced in 2.8
  [TwigBundle] Fix CacheWarmingTest are order dependent
  Revert "bug #20080 [Form] compound forms without children should be considered rendered implicitly (backbone87)"
  [2.7][VarDumper] Fix PHP 7.1 compat
  [2.8][VarDumper] Fix PHP 7.1 compat
  silent file operation to avoid open basedir issues
  Fix #19943 Make sure to process each interface metadata only once
  #17580 compound forms without children should be considered rendered implicitly
2016-10-01 07:21:27 -07:00
Fabien Potencier
0a56032f3f Merge branch '2.8' into 3.1
* 2.8:
  [TwigBundle] added missing dependencies for tests
  fixed CS
  [TwigBundle] Adjust CacheWarmingTest for TemplateCacheWarmer introduced in 2.8
  [TwigBundle] Fix CacheWarmingTest are order dependent
  Revert "bug #20080 [Form] compound forms without children should be considered rendered implicitly (backbone87)"
  Fix #19943 Make sure to process each interface metadata only once
  #17580 compound forms without children should be considered rendered implicitly
2016-10-01 07:19:21 -07:00
Fabien Potencier
997e6d7a0b Merge branch '2.7' into 2.8
* 2.7:
  [TwigBundle] added missing dependencies for tests
  fixed CS
  Fix #19943 Make sure to process each interface metadata only once
2016-10-01 07:18:53 -07:00
Fabien Potencier
16489d65c6 [HttpKernel] avoid loading a class that's not-needed when doing HTTP 2016-09-30 22:32:43 -07:00
Fabien Potencier
8371b50860 [Config] avoid loaded non-needed class in prod 2016-09-30 22:24:10 -07:00
Jordan Deitch
746dab31f1 casting setPublic() arg to bool 2016-09-30 15:53:07 -04:00
Fabien Potencier
e20cd8ae9f fixed CS 2016-09-30 12:35:09 -07:00
Fabien Potencier
c1c42a52bc bug #20078 Fix #19943 Make sure to process each interface metadata only once (lemoinem)
This PR was merged into the 2.7 branch.

Discussion
----------

Fix #19943 Make sure to process each interface metadata only once

| Q             | A
| ------------- | ---
| Branch?       | 2.7+
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #19943
| License       | MIT
| Doc PR        | N/A

Here is the fix for #19943, If you have `InterfaceA <- InterfaceB <- Class` with a constraint on a method defined on `InterfaceA`, the constraint and its eventual violations are currently validated and reported twice.

Copy from https://github.com/symfony/symfony/issues/19943#issuecomment-250238529:
As far as I can see, the problem seems to arise in [`LazyLoadingMetadataFactory`](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Validator/Mapping/Factory/LazyLoadingMetadataFactory.php#L117-L123):

[`ReflectionClass::getInterfaces()`](http://php.net/manual/en/reflectionclass.getinterfaces.php) returns both interfaces implemented directly and through inheritance (either through another interface or through a parent class). In the end, the following process occurs:

1. `PriceInterface` is parsed and its `NotBlank` constraint on `value` is loaded
2. `VariablePriceInterface` is parsed and inherits `PriceInterface`'s constraints (which is OK).
3. `ProductPrice` is parsed and inherits both `PriceInterface` and `VariablePriceInterface`'s  constraints, which leads to a duplicated `NotBlank` constraint, one from each Interface.

The Best Way ™️ would be to be able to extract the list of interfaces implemented by a class directly only. However, the process seems a bit intricate... I will start working on it and prepare a PR to that effect. However, if any of you has a better idea, I'm all hears...

TODO:
- [x] Regression tests to make sure the bug doesn't reappear

Commits
-------

2f9b65a Fix #19943 Make sure to process each interface metadata only once
2016-09-30 12:33:15 -07:00
Nicolas Grekas
27df38e2f3 Simplified link-to-source mapping definitions in debug.file_link_format 2016-09-30 11:45:11 +01:00
Fabien Potencier
35091b1837 Revert "bug #20080 [Form] compound forms without children should be considered rendered implicitly (backbone87)"
This reverts commit eae5a9ba0b, reversing
changes made to fd763ad5a3.
2016-09-29 16:48:55 -07:00
Jordan Deitch
0a3c290ce5 update docblocks and added test 2016-09-29 15:12:19 -04:00
jwdeitch
6d87837991 Update ApplicationDescription.php 2016-09-29 14:32:13 -04:00
jwdeitch
e969581f7b update hidden to public 2016-09-29 14:31:52 -04:00
Fabien Potencier
eae5a9ba0b bug #20080 [Form] compound forms without children should be considered rendered implicitly (backbone87)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] compound forms without children should be considered rendered implicitly

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

Commits
-------

8234f2a #17580 compound forms without children should be considered rendered implicitly
2016-09-29 09:02:32 -07:00
Fabien Potencier
df3dbc510e Merge branch '2.8' into 3.1
* 2.8:
  [2.7][VarDumper] Fix PHP 7.1 compat
  [2.8][VarDumper] Fix PHP 7.1 compat
  silent file operation to avoid open basedir issues
2016-09-29 07:13:09 -07:00
Fabien Potencier
98548f9030 bug #20087 [2.8][VarDumper] Fix PHP 7.1 compat (nicolas-grekas)
This PR was merged into the 2.8 branch.

Discussion
----------

[2.8][VarDumper] Fix PHP 7.1 compat

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

Fix PHP 7.1 nullable support.

Commits
-------

1e84452 [2.8][VarDumper] Fix PHP 7.1 compat
2016-09-29 07:06:15 -07:00
Fabien Potencier
d6a9e3de38 Merge branch '2.7' into 2.8
* 2.7:
  [2.7][VarDumper] Fix PHP 7.1 compat
  silent file operation to avoid open basedir issues
2016-09-29 07:03:54 -07:00
Nicolas Grekas
466dbe62b4 [2.7][VarDumper] Fix PHP 7.1 compat 2016-09-29 13:21:39 +01:00
Nicolas Grekas
1e84452acb [2.8][VarDumper] Fix PHP 7.1 compat 2016-09-29 12:10:56 +01:00
Christian Flothmann
30c9b1ec28 silent file operation to avoid open basedir issues
Using file operations on a symlink that points to a file outside the
directories being allowed by the open_basedir setting leads to PHP
warnings being raised.
2016-09-28 19:20:21 -07:00
Mathieu Lemoine
2f9b65aa5a Fix #19943 Make sure to process each interface metadata only once 2016-09-28 18:39:11 -04:00
Oliver Hoff
8234f2add4 #17580 compound forms without children should be considered rendered
implicitly
2016-09-28 21:40:37 +02:00
Fabien Potencier
b1c5a686c8 [FrameworkBundle] fixed yaml:lint when yaml is not installed along side framwork-bundle 2016-09-28 07:20:56 -07:00
Fabien Potencier
f1c1e37949 Merge branch '3.1'
* 3.1:
  format json fixtures
  cleanup
  apply rtrim
2016-09-27 17:11:20 -07:00
Fabien Potencier
d12c100ece Merge branch '2.8' into 3.1
* 2.8:
  format json fixtures
  apply rtrim
2016-09-27 17:11:12 -07:00
Fabien Potencier
aef5008360 Merge branch '2.7' into 2.8
* 2.7:
  format json fixtures
  apply rtrim
2016-09-27 17:10:16 -07:00
Fabien Potencier
da6c664e98 minor #20064 [Console] Format JSON fixtures (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Format JSON fixtures

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Should make merging upstream easier due better diffs.

```php
foreach (glob('src/Symfony/Component/Console/Tests/Fixtures/*.json') as $file) {
    file_put_contents($file, str_replace(PHP_EOL, "\n", json_encode(json_decode(trim(file_get_contents($file))), JSON_PRETTY_PRINT))."\n");
}
```

Should be re-applied on 2.8, 3.1 and master.

Commits
-------

2ca7823 format json fixtures
2016-09-27 17:09:53 -07:00
Fabien Potencier
40c2cbd12b bug #19951 [Finder] Trim trailing directory slash in ExcludeDirectoryFilterIterator (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[Finder] Trim trailing directory slash in ExcludeDirectoryFilterIterator

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #19599
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

In this context `path` equals `path/`

Commits
-------

e0e5f0c apply rtrim
2016-09-27 17:07:53 -07:00
Roland Franssen
2ca78233a1 format json fixtures 2016-09-27 17:33:51 +00:00
Roland Franssen
d50e3fe104 cleanup 2016-09-25 20:53:54 +00:00
jwdeitch
3efa8744be Update Command.php 2016-09-25 16:14:59 -04:00
jwdeitch
dfc1ac8438 Update Command.php 2016-09-25 16:12:50 -04:00
jwdeitch
cd771396e7 Update Command.php 2016-09-25 16:12:04 -04:00
jwdeitch
56a8b93b74 Update Command.php 2016-09-25 16:10:11 -04:00
jwdeitch
fb1f30c51d Update Command.php 2016-09-25 16:08:41 -04:00
Fabien Potencier
e9e29fa5be Merge branch '3.1'
* 3.1:
  fixed expected exception annotations
2016-09-25 09:21:58 -07:00
Roland Franssen
7574a92498 fixed expected exception annotations 2016-09-25 08:27:07 +00:00
Jáchym Toušek
5e4f4d4a37 [Form] Change FormTypeGuesserChain to accept Traversable 2016-09-24 18:09:44 +02:00
Fabien Potencier
6479f494de feature #20037 [Cache] Handle arbitrary key length when the backend cant using hashing (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Cache] Handle arbitrary key length when the backend cant using hashing

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

Saving some bits from #19521 :) Already awaited by PdoAdapter which defines the property.

Commits
-------

11f448f [Cache] Handle arbitrary key length when the backend cant using hashing
2016-09-24 09:02:03 -07:00
Fabien Potencier
2318b60984 Merge branch '3.1'
* 3.1:
  expectedException expects FQCN
  Fixed expectedException annotations
  [Cache] Fix password used to make the redis connection.
  Security and validators messages translation to Latvian
  [Form] FormView->isRendered() remove dead code and simplify the flow
  Fixed issue with legacy find() method not working as expected
2016-09-24 08:57:00 -07:00
Fabien Potencier
90f6b30f81 Merge branch '2.8' into 3.1
* 2.8:
  expectedException expects FQCN
  Fixed expectedException annotations
  Security and validators messages translation to Latvian
  [Form] FormView->isRendered() remove dead code and simplify the flow
2016-09-24 08:56:48 -07:00
Fabien Potencier
b049d098d3 Merge branch '2.7' into 2.8
* 2.7:
  Fixed expectedException annotations
  Security and validators messages translation to Latvian
  [Form] FormView->isRendered() remove dead code and simplify the flow
2016-09-24 08:56:40 -07:00
Roland Franssen
526b852d2c expectedException expects FQCN 2016-09-24 09:47:20 +00:00
Jáchym Toušek
31b609e582 [Validator] Allow validating multiple groups in one GroupSequence step 2016-09-24 06:36:14 +02:00
Jáchym Toušek
3847badd47 [Validator] Refactor tests 2016-09-24 06:36:13 +02:00
Jáchym Toušek
38b643a9f0 [Validator] Fix annotation 2016-09-24 06:36:13 +02:00
Nicolas Grekas
11f448f28e [Cache] Handle arbitrary key length when the backend cant using hashing 2016-09-23 21:28:47 +02:00
Roland Franssen
b074a7156a Fixed expectedException annotations 2016-09-23 11:13:36 -07:00
Fabien Potencier
d79dedf876 bug #19980 [Ldap] Fixed issue with legacy find() method not working as expected (csarrazi)
This PR was merged into the 3.1 branch.

Discussion
----------

[Ldap] Fixed issue with legacy find() method not working as expected

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

This PR fixes two bugs. The first, with the legacy `LdapClient` class' `find()` method not working as expected, sometimes throwing errors, which is an after-effect of missing Ldap attributes normalisation in the ResultIterator, and the second one being that the `find()` method does not return the expected output, which should be the same as PHP's `ldap_get_entries()` method.

As a reminder, this method should only be used by legacy software, which need to provide compatibility with Symfony 3.0 and Symfony 2.8.

Commits
-------

3bae5ea Fixed issue with legacy find() method not working as expected
2016-09-23 10:55:42 -07:00
Erik Saunier
77eea43ee1 [Cache] Fix password used to make the redis connection. 2016-09-23 15:37:10 +02:00
jwdeitch
199319649f Update Command.php 2016-09-22 16:18:11 -04:00
jwdeitch
1add2ad120 Update Command.php 2016-09-22 16:16:44 -04:00
jwdeitch
b73f494712 Update ApplicationDescription.php 2016-09-22 16:10:35 -04:00
jwdeitch
8d0262f832 Update Command.php 2016-09-22 16:10:04 -04:00
jwdeitch
b423ab4465 Add hidden field 2016-09-22 15:52:42 -04:00
Fabien Potencier
fc0fe87c6d minor #20027 Security and validators messages translation to Latvian (Rikijs)
This PR was merged into the 2.7 branch.

Discussion
----------

Security and validators messages translation to Latvian

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

Commits
-------

ff72f21 Security and validators messages translation to Latvian
2016-09-22 09:52:50 -07:00
Rikijs Murgs
ff72f21427 Security and validators messages translation to Latvian 2016-09-22 19:04:04 +03:00
Nicolas Grekas
b65f0a8011 [Form] Fix FormDataCollector 2016-09-22 14:29:46 +02:00
Fabien Potencier
287f7c821a bug #20015 [ExpressionLanguage] fixed a BC break (fabpot)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[ExpressionLanguage] fixed a BC break

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | fixes a BC break :)
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | see https://github.com/symfony/symfony/pull/19060#r79791581
| License       | MIT
| Doc PR        | n/a

Commits
-------

b00930f [ExpressionLanguage] fixed a BC break
2016-09-21 15:17:49 -07:00
Nicolas Grekas
e2b2c9b77e [VarDumper] Use ClassStub for reflected types 2016-09-21 23:18:12 +02:00
Fabien Potencier
da3ff6c5de Merge branch '3.1'
* 3.1:
  [VarDumper] Fix test
  Revert "minor #20011 Use UUID for error codes for Form validator. (Koc)"
  Use UUID for error codes for Form validator.
  Use UUID for error codes for Form validator.
  Fixed regression when exception message swallowed when logging it.
  [HttpFoundation] Enable memcached tests with the latest memcached extension
2016-09-21 13:57:00 -07:00
Fabien Potencier
b23389d85d Merge branch '2.8' into 3.1
* 2.8:
  [VarDumper] Fix test
  Revert "minor #20011 Use UUID for error codes for Form validator. (Koc)"
  Use UUID for error codes for Form validator.
  Use UUID for error codes for Form validator.
  Fixed regression when exception message swallowed when logging it.
  [HttpFoundation] Enable memcached tests with the latest memcached extension
2016-09-21 13:55:10 -07:00
Nicolas Grekas
ae118e7885 [VarDumper] Fix test 2016-09-21 22:46:44 +02:00
Fabien Potencier
e09510a468 bug #19986 [Form][EventDispatcher] Fix VarDumper usage related to perf regression (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Form][EventDispatcher] Fix VarDumper usage related to perf regression

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

Commits
-------

294868e [Form][EventDispatcher] Fix VarDumper usage related to perf regression
2016-09-21 13:46:05 -07:00
Fabien Potencier
b00930fd7f [ExpressionLanguage] fixed a BC break 2016-09-21 13:33:43 -07:00
Sergio Santoro
40af42cb60 [Form] FormView->isRendered() remove dead code and simplify the flow 2016-09-21 22:14:19 +02:00
Fabien Potencier
83d948be44 bug #20011 Use UUID for error codes for Form validator. (Koc)
This PR was merged into the 2.8 branch.

Discussion
----------

Use UUID for error codes for Form validator.

| Q             | A
| ------------- | ---
| Branch?       | 2.8
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | tiny, but it allowed http://symfony.com/doc/current/contributing/code/bc.html#changing-classes
| Deprecations? | no
| Tests pass?   | I hope so :)
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Commits
-------

3693e83 Use UUID for error codes for Form validator.
2016-09-21 12:04:33 -07:00
Fabien Potencier
456b09ce61 Merge branch '2.7' into 2.8
* 2.7:
  Revert "minor #20011 Use UUID for error codes for Form validator. (Koc)"
  Use UUID for error codes for Form validator.
  Fixed regression when exception message swallowed when logging it.
  [HttpFoundation] Enable memcached tests with the latest memcached extension
2016-09-21 12:04:07 -07:00
Fabien Potencier
bb51ed0d20 Revert "minor #20011 Use UUID for error codes for Form validator. (Koc)"
This reverts commit 2cd45a5043, reversing
changes made to d8423071de.
2016-09-21 12:03:56 -07:00
Fabien Potencier
5832c9d58f bug #20001 [Routing] Fixed route generation with fragment defined as defaults (akovalyov)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Routing] Fixed route generation with fragment defined as defaults

| Q             | A
| ------------- | ---
| Branch?       | "master"
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| License       | MIT

As stated in https://symfony.com/blog/new-in-symfony-3-2-routing-improvements, it should support `_fragment` option as part of `_defaults` of route definition.

Commits
-------

3c36596 [Routing] Fixed route generation with fragment defined as defaults
2016-09-21 11:12:23 -07:00
Charles Sarrazin
3bae5eaca1
Fixed issue with legacy find() method not working as expected 2016-09-21 19:59:54 +02:00
Konstantin.Myakshin
6dbb186f23 Use UUID for error codes for Form validator. 2016-09-21 10:52:48 -07:00
Fabien Potencier
7f1f23257d feature #20012 [Translation] added Base Exception for the component. (aitboudad)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Translation] added Base Exception for the component.

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

Commits
-------

0fa4397 [Translation] added Base Exception for the component.
2016-09-21 10:50:29 -07:00
Abdellatif Ait boudad
0fa4397b27 [Translation] added Base Exception for the component. 2016-09-21 18:16:56 +01:00
Fabien Potencier
d8423071de bug #20010 [DX] Fixed regression when exception message swallowed when logging it. (Koc)
This PR was merged into the 2.7 branch.

Discussion
----------

[DX] Fixed regression when exception message swallowed when logging it.

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | maybe, wait for Travis
| Fixed tickets | fixed regression introduced in #13418
| License       | MIT
| Doc PR        | -

The problem is: after merging referenced PR we cann't understand what error occured and why authentication request failed (see attached screenshot). Previously it displays exception message, but now it only displays class of the exception.

![9003644109](https://cloud.githubusercontent.com/assets/191082/18717550/f0df61c4-8028-11e6-8dbb-684e4928e913.jpg)

Commits
-------

042cb6b Fixed regression when exception message swallowed when logging it.
2016-09-21 10:05:38 -07:00
Konstantin.Myakshin
3693e8368f Use UUID for error codes for Form validator. 2016-09-21 19:22:38 +03:00
Fabien Potencier
f7f2871eea minor #20009 [Routing] fix reference type argument type (xabbuh)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Routing] fix reference type argument type

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

Commits
-------

a8dd628 [Routing] fix reference type argument type
2016-09-21 08:31:12 -07:00
Konstantin.Myakshin
042cb6b2b2 Fixed regression when exception message swallowed when logging it. 2016-09-21 18:21:51 +03:00
Andrew Kovalyov
3c36596284 [Routing] Fixed route generation with fragment defined as defaults 2016-09-21 17:48:58 +03:00
Christian Flothmann
a8dd62828d [Routing] fix reference type argument type 2016-09-21 16:43:50 +02:00
Christian Flothmann
a40c0e4484 [Serializer] use the injected YAML parser 2016-09-21 16:31:25 +02:00
Jakub Zalas
b482fb784e [HttpFoundation] Enable memcached tests with the latest memcached extension 2016-09-21 12:21:12 +01:00
Jonatan Männchen
ad3ac95d2d
bug #18042 [Security] $attributes can be anything, but RoleVoter assumes strings 2016-09-21 07:35:02 +00:00
Nicolas Grekas
663bd74d9f [DI] Fix expectedException annotation 2016-09-21 08:09:36 +02:00
Fabien Potencier
fba0638568 Merge branch '3.1'
* 3.1:
  fixed fixtures
2016-09-20 14:44:13 -07:00
Fabien Potencier
d86fc12365 Merge branch '2.8' into 3.1
* 2.8:
  fixed fixtures
2016-09-20 14:44:00 -07:00
Fabien Potencier
cd1ec1190f fixed fixtures 2016-09-20 14:43:39 -07:00
Paráda József
b016c6029b [DependencyInjection] Env parameterbag fix: use the correct exception class. 2016-09-20 14:34:27 -07:00
Nicolas Grekas
294868e5c0 [Form][EventDispatcher] Fix VarDumper usage related to perf regression 2016-09-20 17:12:39 +02:00
Nicolas Grekas
93c0e8adc2 Merge branch '3.1'
* 3.1:
  [VarDumper] Fix extra whitespace
2016-09-20 15:18:26 +02:00
Nicolas Grekas
e42ab5267b Merge branch '2.8' into 3.1
* 2.8:
  [VarDumper] Fix extra whitespace
2016-09-20 15:18:09 +02:00
Nicolas Grekas
00f87aca3a Merge branch '2.7' into 2.8
* 2.7:
  [VarDumper] Fix extra whitespace
2016-09-20 15:16:16 +02:00
Nicolas Grekas
0d9dacc6db [VarDumper] Fix extra whitespace 2016-09-20 15:04:49 +02:00
Christian Flothmann
3954530ba7 [Yaml] fix parsing multi-line mapping values 2016-09-20 10:33:13 +02:00
Fabien Potencier
84229f84fb Merge branch '3.1'
* 3.1:
  [TwigBridge] removed Twig null nodes (deprecated as of Twig 1.25)
  Make redis host configurable in tests
  [Console] Fix empty optionnal options with = separator in argv
2016-09-19 13:29:03 -07:00
Fabien Potencier
826fc39dd2 Merge branch '2.8' into 3.1
* 2.8:
  [TwigBridge] removed Twig null nodes (deprecated as of Twig 1.25)
  [Console] Fix empty optionnal options with = separator in argv
2016-09-19 13:28:39 -07:00
Fabien Potencier
4d2cfd08fb Merge branch '2.7' into 2.8
* 2.7:
  [TwigBridge] removed Twig null nodes (deprecated as of Twig 1.25)
  [Console] Fix empty optionnal options with = separator in argv
2016-09-19 13:28:05 -07:00
Fabien Potencier
36c399f632 feature #19191 [DependencyInjection] Automatically detect the definitions class when possible (Ener-Getick)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[DependencyInjection] Automatically detect the definitions class when possible

| Q             | A
| ------------- | ---
| Branch?       | "master"
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/19161
| License       | MIT
| Doc PR        |

> Thanks to the features of php 7.0 we can now guess the class of a service created with a factory:
> ```php
> function myFactory(): MyServiceClass
> {
> }
> ```
>
> So I propose to create a new pass to automatically update the services definition when possible. This is particularly useful for autowiring (this way you don't have to copy-paste the class name of the service, especially when this is from a third party library).
>
> What do you think ?

Commits
-------

63afe3c [DependencyInjection] Automatically detect the definitions class when possible
2016-09-19 12:25:58 -07:00
Fabien Potencier
8b7c3d38b3 minor #19974 Make redis host configurable in tests (jakzal)
This PR was squashed before being merged into the 3.1 branch (closes #19974).

Discussion
----------

Make redis host configurable in tests

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

Makes running tests on dockerized environments possible, since we can now export the `REDIS_HOST` environment variable:

```
REDIS_HOST=redis ./phpunit src/Symfony/Component/Cache
```

If this gets merged, in master we can later replace the `SYMFONY__REDIS_HOST` usage in the FrameworkBundle with the new `env(REDIS_HOST)`.

Commits
-------

c87de00 Make redis host configurable in tests
2016-09-19 12:25:04 -07:00
Jakub Zalas
c87de00e9a Make redis host configurable in tests 2016-09-19 12:25:01 -07:00
Fabien Potencier
a7a5c52b06 minor #19969 [Security] AccessDeniedException: rename object to subject (xabbuh)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Security] AccessDeniedException: rename object to subject

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/19473#r72766336
| License       | MIT
| Doc PR        |

With this change the name is inline with what we use in the base voter
interface.

Commits
-------

9603ffa AccessDeniedException: rename object to subject
2016-09-19 12:21:55 -07:00
Fabien Potencier
fbc66a94d2 bug #19967 [VarDumper] Fix small ClassStub rendering issues (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[VarDumper] Fix small ClassStub rendering issues

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

Commits
-------

7d0cee1 [VarDumper] Fix small ClassStub rendering issues
2016-09-19 12:20:29 -07:00
Nicolas Grekas
b359263623 minor #19964 fixed a deprecation warning in tests (fabpot)
This PR was merged into the 3.2-dev branch.

Discussion
----------

fixed a deprecation warning in tests

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

Commits
-------

9e1589e fixed a deprecation warning in tests
2016-09-19 13:28:39 +02:00
Christian Flothmann
9603ffa458 AccessDeniedException: rename object to subject
With this change the name is inline with what we use in the base voter
interface.
2016-09-19 13:01:06 +02:00
Nicolas Grekas
7d0cee175a [VarDumper] Fix small ClassStub rendering issues 2016-09-19 11:10:05 +02:00
Fabien Potencier
9e1589ec6b fixed a deprecation warning in tests 2016-09-18 21:45:47 -07:00
Fabien Potencier
fb0deaa177 fixed a test that do not pass onMac 2016-09-18 21:41:39 -07:00
Robin Chalas
eed3cc5b52
[Console] Escape default value and question in SymfonyStyle::ask() 2016-09-18 17:48:17 +02:00
Fabien Potencier
a86583d226 feature #19745 [Validator] Added context object method callback to choice validator (Peter Bouwdewijn)
This PR was squashed before being merged into the 3.2-dev branch (closes #19745).

Discussion
----------

[Validator] Added context object method callback to choice validator

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

Commits
-------

835dcf3 [Validator] Added context object method callback to choice validator
2016-09-17 12:51:23 -07:00
Peter Bouwdewijn
835dcf338d [Validator] Added context object method callback to choice validator 2016-09-17 12:51:16 -07:00
Nicolas Grekas
eddecbd112 [HttpKernel] Use VarDumper in the Logs&Events panels of the profiler 2016-09-17 16:23:22 +02:00
WouterJ
41a76494ec [HttpKernel] Use VarDumper in the profiler 2016-09-17 16:23:20 +02:00
Robin Chalas
8952155f92
[Console] Fix empty optionnal options with = separator in argv 2016-09-17 14:42:06 +02:00
Roland Franssen
e0e5f0c379 apply rtrim 2016-09-16 16:53:37 +00:00
Fabien Potencier
c21bed7fed feature #19480 [Config] Fix (Yaml|Xml)ReferenceDumper for nested prototypes (ogizanagi)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Config] Fix (Yaml|Xml)ReferenceDumper for nested prototypes

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

This tries to fix the nested prototypes case for the `YamlReferenceDumper` and `XmlReferenceDumper`.

### Before
```yml
cms_pages:

    # Prototype
    page:                 []
```

### After

```yml
cms_pages:

    # Prototype
    page:

        # Prototype
        locale:
            title:                ~ # Required
            path:                 ~ # Required
```

~~However, the `YamlReferenceDumperTest::testDumper` is marked as skipped, due to another unsupported prototype usage, but that's another issue (the `connections` key). Thus, the bug fix must be tested manually :/ (I'd recommend to merge #19570 first)~~

Commits
-------

1e80510 [Config] Fix YamlReferenceDumper for nested prototypes
2016-09-16 08:01:32 -07:00
Nicolas Grekas
f532322fe3 bug #19950 [FrameworkBundle] Parse source link maps using json_decode() instead of parse_str() (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[FrameworkBundle] Parse source link maps using json_decode() instead of parse_str()

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | updated code exists only on master
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #19807
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/6944

Because `parse_str()` turns some characters into underscores in keys (e.g. `.`).

Commits
-------

9b174fb [FrameworkBundle] Parse source link maps using json_decode() instead of parse_str()
2016-09-16 15:58:28 +02:00
Nicolas Grekas
9b174fb0c1 [FrameworkBundle] Parse source link maps using json_decode() instead of parse_str() 2016-09-16 15:37:46 +02:00
Jérémy Romey
642379f800 [HttpKernel] Fixed DumpDataCollector destruct 2016-09-16 13:29:24 +01:00
Fabien Potencier
c6f6e05e37 minor #19940 [Yaml] Port of #19922 for 3.2 (chalasr)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Yaml] Port of #19922 for 3.2

| Q             | A
| ------------- | ---
| Branch?       | master
| Tests pass?   | yes
| License       | MIT

The command has been moved in 3.2 so the new path is unmerged.

Commits
-------

017e88b [Yaml] Port of #19922 for 3.2
2016-09-15 10:50:15 -07:00
Fabien Potencier
1bcade56e6 feature #19681 [DI] Allow injecting ENV parameters at runtime using %env(MY_ENV_VAR)% (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[DI] Allow injecting ENV parameters at runtime using %env(MY_ENV_VAR)%

| Q             | A
| ------------- | ---
| Branch?       | master
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |  #10138, #7555, #16403, #18155
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/6918

This is an alternative approach to #18155 for injecting env vars into container configurations.

With this PR, anywhere parameters are allowed, one can use `%env(ENV_VAR)%` to inject a dynamic env var. Additionally, if one sets a value to such parameters in e.g. the `parameter.yml` file (`env(ENV_VAR): foo`), this value will be used as a default value when the env var is not defined. If no default value is specified, an `EnvVarNotFoundException` will be thrown at runtime.

Unlike previous attempts that also used parameters (#16403), the implementation is compatible with DI extensions: before being dumped, env vars are resolved to uniquely identifiable string placeholders that can get through DI extensions manipulations. When dumped, these unique placeholders are replaced by dynamic calls to a getEnv method..

ping @magnusnordlander @dzuelke @fabpot

Commits
-------

bac2132 [DI] Allow injecting ENV parameters at runtime using %env(MY_ENV_VAR)% syntax
2016-09-15 10:44:52 -07:00
Maxime STEINHAUSSER
1e8051081c [Config] Fix YamlReferenceDumper for nested prototypes 2016-09-15 16:03:09 +02:00
Robin Chalas
017e88b6a1
[Yaml] Port of #19922 for 3.2 2016-09-15 01:17:14 +02:00
Fabien Potencier
835176c932 Merge branch '3.1'
* 3.1:
  added a comment about a workaround
  [Finder] no PHP warning on empty directory iteration
  [HttpKernel] Fixed the nullable support for php 7.1 and below
  fixed CS
  [Form] Fix typo in doc comment
  Fix version constraint
  [Config] Handle open_basedir restrictions in FileLocator
  Fixed bad merge
  [DoctrineBridge][PropertyInfo] Treat Doctrine decimal type as string
  [bugfix] [Console] Set `Input::$interactive` to `false` when command is executed with `--quiet` as verbosity level
  Use JSON_UNESCAPED_SLASHES for lint commands output
  Fixed collapsed ChoiceType options attributes
  [FrameworkBundle] Remove cache clearer default value in config
  Consider the umask setting when dumping a file.
  Fixed the nullable support for php 7.1 and below
  Make ReflectionExtractor compatible with ReflectionType changes in PHP 7.1
2016-09-14 15:49:28 -07:00
Fabien Potencier
ad7bc0322a Merge branch '2.8' into 3.1
* 2.8:
  added a comment about a workaround
  [Finder] no PHP warning on empty directory iteration
  fixed CS
2016-09-14 15:47:38 -07:00
Fabien Potencier
0ae3838dc6 Merge branch '2.7' into 2.8
* 2.7:
  added a comment about a workaround
  [Finder] no PHP warning on empty directory iteration
  fixed CS
2016-09-14 15:47:13 -07:00
Fabien Potencier
47657e55d2 feature #19197 [Serializer][FrameworkBundle] Add a CSV encoder (dunglas)
This PR was squashed before being merged into the 3.2-dev branch (closes #19197).

Discussion
----------

[Serializer][FrameworkBundle] Add a CSV encoder

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

Usage:

```php
use Symfony\Component\Serializer\Serializer;
use Symfony\Component\Serializer\Encoder\CsvEncoder;
use Symfony\Component\Serializer\Normalizer\ObjectNormalizer;

$serializer = new Serializer(array(new ObjectNormalizer()), array(new CsvEncoder()));
// or $serializer = $container->get('serializer'); when using the full stack framework
$serializer->encode($something, 'csv');
$serializer->decode(<<<'CSV'
id,name
1,Kévin
CSV
, 'csv');
```

CSV files must contain a header line with property names as keys.

ping @clementtalleu @Simperfit @gorghoa

Commits
-------

e71f5be [Serializer][FrameworkBundle] Add a CSV encoder
2016-09-14 15:14:31 -07:00
Kévin Dunglas
e71f5bea96 [Serializer][FrameworkBundle] Add a CSV encoder 2016-09-14 15:10:23 -07:00
Fabien Potencier
d2a7994a2d feature #19257 [Validator][Choice] Make strict the default option for choice validation (peterrehm)
This PR was squashed before being merged into the 3.2-dev branch (closes #19257).

Discussion
----------

[Validator][Choice] Make strict the default option for choice validation

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

This is just the WIP as there are two options.

1. Just change default which would only possible to introduce in 4.x or in 3.2 if this BC break is considered as acceptable

2. Add a new option e.g. `strictComparison` which defaults to true in 4.x and deprecate the usage of the strict option for 3.2.

3. Just deprecate strict = false and remove the option but I would be against that as we remove flexibility which might be wanted.

As per discussion I went ahead with option 3. We can then still decide if we want to remove the option entirely or eventually reenable setting strict to false in a later release.

Commits
-------

177c513 [Validator][Choice] Make strict the default option for choice validation
2016-09-14 15:04:04 -07:00
Peter Rehm
177c513ece [Validator][Choice] Make strict the default option for choice validation 2016-09-14 15:03:11 -07:00
Fabien Potencier
d6d6a47fcf feature #19326 [Serializer][FrameworkBundle] Add a YAML encoder (dunglas)
This PR was squashed before being merged into the 3.2-dev branch (closes #19326).

Discussion
----------

[Serializer][FrameworkBundle] Add a YAML encoder

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

Add YAML support to the Serializer.

Commits
-------

9366a7d [Serializer][FrameworkBundle] Add a YAML encoder
2016-09-14 14:57:14 -07:00
Kévin Dunglas
9366a7dc77 [Serializer][FrameworkBundle] Add a YAML encoder 2016-09-14 14:57:11 -07:00
Fabien Potencier
fa18a4f8a0 feature #19484 [PropertyInfo] Extract the logic converting a php doc to a Type (Ener-Getick)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[PropertyInfo] Extract the logic converting a php doc to a Type

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

This PR creates a new trait `PhpDocTypeHelperTrait` extracting some logic of the `PhpDocExtractor`.
I would like to detect the return type of some methods but this is not easily doable as I have to transform the doc types to a ``Type`` instance.

Is this ok for you ?

Commits
-------

d6e93d8 [PropertyInfo] Extract the logic converting a php doc to a Type in PhpDocTypeHelperTrait
2016-09-14 14:44:37 -07:00
Fabien Potencier
a5108f42bd feature #19495 [master][console] Allow multiple options to be set. (SpacePossum)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[master][console] Allow multiple options to be set.

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

This PR add the possibility to set multiple options on a formatted string output.
Example:
```php
$output->writeln('<fg=green;options=bold,underscore>Test</>');
```

Secondly it makes the behavior on invalid values consistent.
```php
// current
$output->writeln('<fg=lime;>Test</>'); // throws exception
$output->writeln('<options=italic;>Test</>'); // silent ignore

// new
$output->writeln('<fg=lime;>Test</>'); // throws exception
$output->writeln('<options=italic;>Test</>'); // throws exception
```

All other changes are about making the code more strict or other SCA/CS fixes.

Commits
-------

1430138 Allow multiple options to be set.
2016-09-14 14:39:10 -07:00
Fabien Potencier
0e63f4796d feature #19584 [DependencyInjection] Improve ParameterNotFoundException when accessing a nested parameter (wouterj)
This PR was squashed before being merged into the 3.2-dev branch (closes #19584).

Discussion
----------

[DependencyInjection] Improve ParameterNotFoundException when accessing a nested parameter

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

A common problem under beginners is to think that the dot notation is used to access nested arrays saved in parameters (*common here means someone asks help for this problem at least once a week on IRC*). Adding a little extra detail to the exception message and a working alternative should help pointing these people in the right direction before spending time debugging this.

It's quite late in the night over here, so the wording of the exception message probably isn't great. I'm happy to accept better suggestions 😃

Commits
-------

df70f06 [DependencyInjection] Improve ParameterNotFoundException when accessing a nested parameter
2016-09-14 14:30:35 -07:00
WouterJ
df70f0622f [DependencyInjection] Improve ParameterNotFoundException when accessing a nested parameter 2016-09-14 14:25:50 -07:00
Fabien Potencier
68737ebbf3 feature #19485 [FrameworkBundle] Introduce a cache warmer for Validator based on PhpArrayAdapter (tgalopin)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[FrameworkBundle] Introduce a cache warmer for Validator based on PhpArrayAdapter

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

Following the cache warmer for annotations PR (https://github.com/symfony/symfony/pull/18533), this PR introduces a cache warmer for YAML and XML Validator configuration.

Based on the PhpArrayAdapter, it uses the naming conventions (`Resources/config/validation`) to find the files and compile them into a single PHP file stored in the cache directory. This file uses shared memory on PHP 7.

The benefit of this PR are the same than the ones of the annotations PR:

- validation configuration can be warmed up offline
- on PHP 7, there is no need for user extension to get maximum performances (ie. if you use this PR and the other one, you probably won't need to enable APCu to have great performances)
- on PHP 7 again, we are not sensitive to APCu memory fragmentation
- last but not least, global performance is slightly better (I get 30us per class gain in Blackfire)

This PR also deprecates the framework.validator.cache key in favor of the cache pool introduced in https://github.com/symfony/symfony/pull/18544.

Commits
-------

6bdaf0b [FrameworkBundle] Introduce a cache warmer for Validator based on PhpArrayAdapter
2016-09-14 14:10:29 -07:00
Fabien Potencier
b28cd81575 added a comment about a workaround 2016-09-14 14:04:40 -07:00
Götz Gottwald
695e341258 [Finder] no PHP warning on empty directory iteration 2016-09-14 14:03:47 -07:00
Fabien Potencier
46dd1d5719 feature #19507 [FrameworkBundle] Introduce a cache warmer for Serializer based on PhpArrayAdapter (tgalopin)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[FrameworkBundle] Introduce a cache warmer for Serializer based on PhpArrayAdapter

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

Following the cache warmer for annotations (#18533) and for the validator (#19485), this PR introduces a cache warmer for the Serializer YAML and XML metadata configuration (mainly groups).

Based on the PhpArrayAdapter, it uses the naming conventions (Resources/config/serialization) to find the files and compile them into a single PHP file stored in the cache directory. This file uses shared memory on PHP 7.

The benefit of this PR are the same than the ones of the previous PR:

- serialization metadata cache can be warmed up offline
- on PHP 7, there is no need for user extension to get maximum performances (ie. if you use this PR and the other one, you probably won't need to enable APCu to have great performances)
- on PHP 7 again, we are not sensitive to APCu memory fragmentation
last but not least, global performance is slightly better (I get 30us per class gain in Blackfire)

As previous work on the Serializer cache system introduced issues (see 96e418a14f), it would be interesting to pay careful attention to the backward compatibility during the review (ping @Ener-Getick).

Commits
-------

810f469 [FrameworkBundle] Introduce a cache warmer for Serializer based on PhpArrayAdapter
2016-09-14 13:50:36 -07:00
Fabien Potencier
65e254c2fe feature #19734 [HttpFoundation] Deprecate extending some methods (Ener-Getick)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[HttpFoundation] Deprecate extending some methods

| Q             | A
| ------------- | ---
| Branch?       | "master"
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | yes
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/19727
| License       | MIT
| Doc PR        |

It's really hard to change methods signature because of bc. I'm proposing to deprecate extending some getters/setters of `Response` because of this (and because extending them is not really useful).
If you like this approach it could be used in other places to simplify bc in 4.0.

Edit: This causes issues (warnings always triggered) when mocking `Response` entirely but does it matter as people should only mock needed methods?

Commits
-------

c0a26bc [HttpFoundation] Deprecate extending some methods
2016-09-14 13:47:40 -07:00
Fabien Potencier
4053283383 feature #19795 Replace %count% with a given number out of the box (bocharsky-bw)
This PR was squashed before being merged into the 3.2-dev branch (closes #19795).

Discussion
----------

Replace %count% with a given number out of the box

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

We already have this feature for [transchoice](https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Twig/Extension/TranslationExtension.php#L98) Twig filter, but why only for it? It will be consistent to have this for translator in general. We already have a `$number` parameter in `transChoice()` which we could easily use for that.

Before
```php
$this->get('translator')
    ->transChoice('1 apple|%count% apples', 7, [
        '%count%' => 7,
    ]);
```

After:
```php
$this->get('translator')
    ->transChoice('1 apple|%count% apples', 7);
```

Commits
-------

4c1a65d Replace %count% with a given number out of the box
2016-09-14 13:44:22 -07:00
Victor Bocharsky
4c1a65d2a8 Replace %count% with a given number out of the box 2016-09-14 13:44:20 -07:00
Fabien Potencier
3a4eaf968b bug #19784 [HttpKernel] Fixed the nullable support for php 7.1 and below (iltar)
This PR was squashed before being merged into the 3.1 branch (closes #19784).

Discussion
----------

[HttpKernel] Fixed the nullable support for php 7.1 and below

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

This PR gives support for for the new php 7.1 and will only work in beta3 or higher. I've had to backport the support to 3.1 because I consider this a bug that it won't work, even though 3.1 won't be supported for much longer. ~~The deprecation I've added in the `ArgumentMetadata` should not be triggered as all framework cases create it with the argument. Just for developers who for some reason implemented this manually, I've added the deprecation.~~

~~*If needed, I can re-open this against 3.2 and leave 3.1  "broken"*~~

On 7.1 lower than beta3 this will happen but shouldn't affect any higher versions (I hope).
```
There was 1 failure:

1) Symfony\Component\HttpKernel\Tests\ControllerMetadata\ArgumentMetadataFactoryTest::testNullableTypesSignature
Failed asserting that two arrays are equal.
--- Expected
+++ Actual
@@ @@
 Array (
     0 => Symfony\Component\HttpKernel\ControllerMetadata\ArgumentMetadata Object (...)
     1 => Symfony\Component\HttpKernel\ControllerMetadata\ArgumentMetadata Object (
         'name' => 'bar'
-        'type' => 'stdClass'
+        'type' => 'Symfony\Component\HttpKernel\Tests\Fixtures\Controller\stdClass'
         'isVariadic' => false
         'hasDefaultValue' => false
         'defaultValue' => null
         'isNullable' => true
     )
     2 => Symfony\Component\HttpKernel\ControllerMetadata\ArgumentMetadata Object (...)
 )

/home/ivanderberg/projects/symfony/src/Symfony/Component/HttpKernel/Tests/ControllerMetadata/ArgumentMetadataFactoryTest.php:123
```

Commits
-------

4a1ab6d [HttpKernel] Fixed the nullable support for php 7.1 and below
2016-09-14 13:38:12 -07:00
Iltar van der Berg
4a1ab6dcd5 [HttpKernel] Fixed the nullable support for php 7.1 and below 2016-09-14 13:37:40 -07:00
Fabien Potencier
0d5dbb75ee Merge branch '2.8' into 3.1
* 2.8:
  [Form] Fix typo in doc comment
  [Config] Handle open_basedir restrictions in FileLocator
  [bugfix] [Console] Set `Input::$interactive` to `false` when command is executed with `--quiet` as verbosity level
  Use JSON_UNESCAPED_SLASHES for lint commands output
  Fixed collapsed ChoiceType options attributes
  Fixed the nullable support for php 7.1 and below
2016-09-14 13:33:02 -07:00
Fabien Potencier
be3a827ef1 Merge branch '2.7' into 2.8
* 2.7:
  [Form] Fix typo in doc comment
  [Config] Handle open_basedir restrictions in FileLocator
  [bugfix] [Console] Set `Input::$interactive` to `false` when command is executed with `--quiet` as verbosity level
  Use JSON_UNESCAPED_SLASHES for lint commands output
  Fixed collapsed ChoiceType options attributes
  Fixed the nullable support for php 7.1 and below
2016-09-14 13:31:12 -07:00
Fabien Potencier
c1cc6ca40e bug #19923 [bugfix] [Console] Set Input::$interactive to false when command is executed with --quiet as verbosity level (phansys)
This PR was merged into the 2.7 branch.

Discussion
----------

[bugfix] [Console] Set `Input::$interactive` to `false` when command is executed with `--quiet` as verbosity level

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

Closes #19899.

Commits
-------

4214311 [bugfix] [Console] Set `Input::$interactive` to `false` when command is executed with `--quiet` as verbosity level
2016-09-14 13:28:32 -07:00
Fabien Potencier
059b4363d4 feature #19807 [FrameworkBundle] Add %debug.file_link_format% with remapping for IDE links (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[FrameworkBundle] Add %debug.file_link_format% with remapping for IDE links

| Q             | A
| ------------- | ---
| Branch?       | master
| New feature?  | yes
| Tests pass?   | yes
| Fixed tickets | #14340
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/6944

`templating.helper.code.file_link_format` is a parameter that requires templating to be defined, but holds a concept that is used beyond templating borders.
Let's make it a general parameter that can be injected easily when required.

Commits
-------

1c4ca8c [FrameworkBundle] Add %debug.file_link_format% with remapping for IDE links
2016-09-14 12:22:10 -07:00
Nicolas Grekas
1c4ca8c9a4 [FrameworkBundle] Add %debug.file_link_format% with remapping for IDE links 2016-09-14 21:12:42 +02:00
Fabien Potencier
ce73768d0f bug #19811 Fixed the nullable support for php 7.1 and below (2.7, 2.8, 3.0) (iltar)
This PR was merged into the 2.7 branch.

Discussion
----------

Fixed the nullable support for php 7.1 and below (2.7, 2.8, 3.0)

| Q             | A
| ------------- | ---
| Branch?       | 2.7, 2.8, 3.0
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/19784#issuecomment-243852825
| License       | MIT
| Doc PR        | ~

Fixes the nullable support for 2.7, 2.8 and 3.0, can probably be partially merged into 3.1 but not 100% sure.

/ping @fabpot

Commits
-------

9c48756 Fixed the nullable support for php 7.1 and below
2016-09-14 12:08:00 -07:00
Fabien Potencier
db2e2c888f feature #19570 [Config] Fix YamlReferenceDumper prototyped array support (ogizanagi)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Config] Fix YamlReferenceDumper prototyped array support

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

Also related to #19480 which fixes another prototype issue, but cannot be tested properly on Travis because marked as skipped by this missing implementation.

Previous output was:

```yaml
    [...]
    parameters:

        # Prototype
        name:                 ~
    connections:
        user:                 ~
        pass:                 ~
```

instead of:

```yaml
    [...]
    parameters:

        # Prototype
        name:                 ~
    connections:

        # Prototype
        -
            user:                 ~
            pass:                 ~
```

Commits
-------

063a980 [Config] Fix YamlReferenceDumper prototyped array support
2016-09-14 12:05:34 -07:00
Fabien Potencier
7136247b3d feature #19824 [Console] Add ability to regress the ProgressBar (jameshalsall)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Console] Add ability to regress the ProgressBar

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #15227
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/6949/files

Commits
-------

42971bb [Console] Add ability to regress the ProgressBar
2016-09-14 12:03:38 -07:00
Fabien Potencier
c69b89a26b feature #19892 [DI] Add corresponding service id in some exception messages (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[DI] Add corresponding service id in some exception messages

| Q             | A
| ------------- | ---
| Branch?       | master
| New feature?  | yes
| Tests pass?   | yes
| License       | MIT

This already helped me figure out where was my mistake :)

Commits
-------

d739f8d [DI] Add corresponding service id in some exception messages
2016-09-14 12:02:36 -07:00
Ener-Getick
c0a26bc8b0
[HttpFoundation] Deprecate extending some methods 2016-09-14 12:52:06 +02:00
Maxime Steinhausser
063a98040c [Config] Fix YamlReferenceDumper prototyped array support 2016-09-14 10:51:47 +02:00
James Halsall
42971bbfa3
[Console] Add ability to regress the ProgressBar 2016-09-14 08:47:54 +01:00
Fabien Bourigault
82415a1667 [Form] Fix typo in doc comment 2016-09-14 09:33:27 +02:00
Nicolas Grekas
156269d1e0 Merge branch '2.8' into 3.1
* 2.8:
  Fix version constraint
  Fixed bad merge
  [DoctrineBridge][PropertyInfo] Treat Doctrine decimal type as string
  Make ReflectionExtractor compatible with ReflectionType changes in PHP 7.1
2016-09-14 08:13:19 +02:00
Nicolas Grekas
c555d64390 Fix version constraint 2016-09-14 08:12:49 +02:00
Fabien Potencier
3d0d709d84 bug #19853 [PropertyInfo] Make ReflectionExtractor compatible with ReflectionType changes in PHP 7.1 (teohhanhui)
This PR was merged into the 2.8 branch.

Discussion
----------

[PropertyInfo] Make ReflectionExtractor compatible with ReflectionType changes in PHP 7.1

| Q             | A
| ------------- | ---
| Branch?       | 2.8
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/19677#issuecomment-244671828
| License       | MIT
| Doc PR        | N/A

Commits
-------

4a041e9 Make ReflectionExtractor compatible with ReflectionType changes in PHP 7.1
2016-09-13 17:30:09 -07:00
Fabien Potencier
26e2846c8a bug #19904 [Form] Fixed collapsed ChoiceType options attributes (HeahDude)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Fixed collapsed ChoiceType options attributes

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

Commits
-------

7806e2a Fixed collapsed ChoiceType options attributes
2016-09-13 17:22:22 -07:00
Fabien Potencier
da565de0af bug #19872 [Filesystem] Consider the umask setting when dumping a file (leofeyer)
This PR was merged into the 3.1 branch.

Discussion
----------

[Filesystem] Consider the umask setting when dumping a file

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

`Filesystem::dumpFile()` does not consider the umask setting and thus creates files with write permissions for everyone (`0666`). Other `chmod()` calls in Symfony do consider the umask setting (see e.g. [here](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/HttpFoundation/File/File.php#L101) or [here](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/HttpFoundation/File/UploadedFile.php#L230)), therefore I have adjusted the `dumpFile()` method accordingly.

Commits
-------

fdd266f Consider the umask setting when dumping a file.
2016-09-13 17:18:46 -07:00
Tristan Darricau
e8708195e2 [Config] Handle open_basedir restrictions in FileLocator
Silence `file_exists()` call to avoid open_basedir restrictions warning. (can happen when using relative imports)
2016-09-13 17:08:34 -07:00
Fabien Potencier
5129c4cf7e feature #19843 [Security] Allow run-time configuration of hash algo (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Security] Allow run-time configuration of hash algo

| Q             | A
| ------------- | ---
| Branch?       | master
| New feature?  | yes
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Required if we want run-time config with env vars. See #19681

Commits
-------

7903a46 [Security] Allow run-time configuration of hash algo
2016-09-13 17:06:01 -07:00
Fabien Potencier
e5088ac8bf feature #19894 [Cache] Add "persistent_id" option to RedisAdapter::createConnection() (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Cache] Add "persistent_id" option to RedisAdapter::createConnection()

| Q             | A
| ------------- | ---
| Branch?       | master
| New feature?  | yes
| Tests pass?   | yes
| License       | MIT

Commits
-------

3ee02a0 [Cache] Add persistent_id option to RedisAdapter::createConnection()
2016-09-13 16:58:58 -07:00
Graham Campbell
d30374d7eb Fixed bad merge 2016-09-13 16:47:15 -07:00
Nicolas Grekas
1d4bee5330 Merge branch '3.1'
* 3.1:
  [ci] Fix build-packages.php
  [Validator] Update IpValidatorTest data set with a valid reserved IP
2016-09-13 13:54:54 +02:00
Nicolas Grekas
476dadcfa1 Merge branch '2.8' into 3.1
* 2.8:
  [ci] Fix build-packages.php
  [Validator] Update IpValidatorTest data set with a valid reserved IP
2016-09-13 13:54:29 +02:00
Nicolas Grekas
fc97aa5e3b Merge branch '2.7' into 2.8
* 2.7:
  [ci] Fix build-packages.php
  [Validator] Update IpValidatorTest data set with a valid reserved IP
2016-09-13 13:53:53 +02:00
Nicolas Grekas
f32198954d bug #19928 [Validator] Update IpValidatorTest data set with a valid reserved IP (jakzal)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] Update IpValidatorTest data set with a valid reserved IP

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

The validator uses PHP filter which was recently fixed (see https://bugs.php.net/bug.php?id=72972).

Commits
-------

86a151c [Validator] Update IpValidatorTest data set with a valid reserved IP
2016-09-13 13:51:44 +02:00
Jakub Zalas
86a151c9f5 [Validator] Update IpValidatorTest data set with a valid reserved IP
The validator uses PHP filter which was recently fixed (see https://bugs.php.net/bug.php?id=72972).
2016-09-13 12:11:56 +01:00
Javier Spagnoletti
4214311a1c [bugfix] [Console] Set Input::$interactive to false when command is executed with --quiet as verbosity level 2016-09-13 00:14:14 -03:00
Nicolas Grekas
f5c1b1c077 Merge branch '3.1'
* 3.1:
  [travis/appveyor] Wire simple-phpunit
  [Console] fixed PHP7 Errors are now handled and converted to Exceptions
  Fix #19721
  Fix translation:update command count
  bumped Symfony version to 2.8.12
  updated VERSION for 2.8.11
  updated CHANGELOG for 2.8.11
  bumped Symfony version to 2.7.19
  updated VERSION for 2.7.18
  update CONTRIBUTORS for 2.7.18
  updated CHANGELOG for 2.7.18
  [Security] Optimize RoleHierarchy's buildRoleMap method
  [FrameworkBundle] Fix Incorrect line break in exception message (500 debug page)
  [Security] Added note inside phpdoc.
  Minor cleanups and improvements
  [form] lazy trans `post_max_size_message`.
  [DI] Fix setting synthetic services on ContainerBuilder
  [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1)
2016-09-12 21:03:45 +02:00
Fabien Potencier
fad40286ee Merge branch '2.8' into 3.1
* 2.8:
  [travis/appveyor] Wire simple-phpunit
  [Console] fixed PHP7 Errors are now handled and converted to Exceptions
  Fix #19721
  Fix translation:update command count
  bumped Symfony version to 2.8.12
  updated VERSION for 2.8.11
  updated CHANGELOG for 2.8.11
  bumped Symfony version to 2.7.19
  updated VERSION for 2.7.18
  update CONTRIBUTORS for 2.7.18
  updated CHANGELOG for 2.7.18
  [Security] Optimize RoleHierarchy's buildRoleMap method
2016-09-12 11:17:37 -07:00
Fabien Potencier
1e91ed7783 Merge branch '2.7' into 2.8
* 2.7:
  [travis/appveyor] Wire simple-phpunit
  [Console] fixed PHP7 Errors are now handled and converted to Exceptions
  Fix #19721
  bumped Symfony version to 2.7.19
  updated VERSION for 2.7.18
  update CONTRIBUTORS for 2.7.18
  updated CHANGELOG for 2.7.18
  [Security] Optimize RoleHierarchy's buildRoleMap method
2016-09-12 11:14:50 -07:00
HeahDude
7806e2a05d Fixed collapsed ChoiceType options attributes 2016-09-11 01:56:49 +02:00
Nicolas Grekas
bac2132aeb [DI] Allow injecting ENV parameters at runtime using %env(MY_ENV_VAR)% syntax 2016-09-10 12:12:34 +02:00
Nicolas Grekas
3ee02a0cac [Cache] Add persistent_id option to RedisAdapter::createConnection() 2016-09-09 15:54:20 +02:00
Nicolas Grekas
d739f8d71d [DI] Add corresponding service id in some exception messages 2016-09-09 12:12:11 +02:00
Fabien Potencier
ddf8b27e14 bug #19813 [Console] fixed PHP7 Errors are now handled and converted to Exceptions (fonsecas72)
This PR was squashed before being merged into the 2.7 branch (closes #19813).

Discussion
----------

[Console] fixed PHP7 Errors are now handled and converted to Exceptions

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

Commits
-------

d3c613b [Console] fixed PHP7 Errors are now handled and converted to Exceptions
2016-09-08 08:08:48 -07:00
Hugo Fonseca
d3c613be36 [Console] fixed PHP7 Errors are now handled and converted to Exceptions 2016-09-08 08:08:45 -07:00
Leo Feyer
fdd266f28e Consider the umask setting when dumping a file. 2016-09-08 11:14:03 +02:00
Matteo Beccati
bf6691ca46 Fix #19721
Issue was introduced in #19541
2016-09-07 13:06:20 +02:00
Fabien Potencier
69afe99f45 bumped Symfony version to 2.8.12 2016-09-06 19:58:32 -07:00
Fabien Potencier
af440e3f92 updated VERSION for 2.8.11 2016-09-06 19:02:58 -07:00
Fabien Potencier
be2a6d1291 bumped Symfony version to 2.7.19 2016-09-06 19:01:26 -07:00
Fabien Potencier
59985613b2 updated VERSION for 2.7.18 2016-09-06 17:54:19 -07:00
Fabien Potencier
a630f14659 minor #19868 [Security] Optimize RoleHierarchy's buildRoleMap method (Enleur)
This PR was squashed before being merged into the 2.7 branch (closes #19868).

Discussion
----------

[Security] Optimize RoleHierarchy's buildRoleMap method

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

I have an issue with a large role hierarchy(~150 roles). Optimized it a little bit

![image](https://cloud.githubusercontent.com/assets/858989/18271257/df6c4ba0-7439-11e6-8406-e13bdcefe9ca.png)

Commits
-------

c3b68b0 [Security] Optimize RoleHierarchy's buildRoleMap method
2016-09-06 17:21:47 -07:00
Enleur
c3b68b0d28 [Security] Optimize RoleHierarchy's buildRoleMap method 2016-09-06 17:21:44 -07:00
Fabien Potencier
86f8d74ba1 Merge branch '2.8' into 3.1
* 2.8:
  [FrameworkBundle] Fix Incorrect line break in exception message (500 debug page)
  [Security] Added note inside phpdoc.
  Minor cleanups and improvements
  [form] lazy trans `post_max_size_message`.
  [DI] Fix setting synthetic services on ContainerBuilder
  [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1)
2016-09-06 16:30:54 -07:00
Fabien Potencier
9e9b41d0ea Merge branch '2.7' into 2.8
* 2.7:
  [FrameworkBundle] Fix Incorrect line break in exception message (500 debug page)
  Minor cleanups and improvements
  [form] lazy trans `post_max_size_message`.
  [DI] Fix setting synthetic services on ContainerBuilder
  [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1)
2016-09-06 16:19:39 -07:00
Robin Chalas
f2e30bcc58
Use DI exceptions in components compiler passes 2016-09-07 01:13:31 +02:00
Fabien Potencier
993b405492 bug #19859 [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1) (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1)

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| Tests pass?   | yes
| Fixed tickets | #19845
| License       | MIT

See diff as https://github.com/symfony/symfony/pull/19859/files?w=1

Commits
-------

647b3d2 [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1)
2016-09-06 16:09:07 -07:00
Fabien Potencier
2ce310fc2a minor #19773 [Security] Added note inside phpdoc. (Koc)
This PR was squashed before being merged into the 2.8 branch (closes #19773).

Discussion
----------

[Security] Added note inside phpdoc.

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

Commits
-------

c49e462 [Security] Added note inside phpdoc.
2016-09-06 09:53:53 -07:00
Konstantin Myakshin
c49e46259c [Security] Added note inside phpdoc. 2016-09-06 09:53:48 -07:00
Fabien Potencier
3b5c353861 bug #19595 [form] lazy trans post_max_size_message. (aitboudad)
This PR was merged into the 2.7 branch.

Discussion
----------

[form] lazy trans `post_max_size_message`.

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

Commits
-------

c03164e [form] lazy trans `post_max_size_message`.
2016-09-06 09:12:45 -07:00
Javier Eguiluz
e4193c746c Minor cleanups and improvements 2016-09-06 09:06:41 -07:00
Abdellatif Ait boudad
c03164e4f9 [form] lazy trans post_max_size_message. 2016-09-06 16:01:53 +01:00
Nicolas Grekas
42244f2a2e [DI] Fix setting synthetic services on ContainerBuilder 2016-09-06 16:19:03 +02:00
Nicolas Grekas
a2a442b554 Merge branch '3.1'
* 3.1:
  [FrameworkBundle] Check for class existence before is_subclass_of
  Update GroupSequence.php
  Code enhancement and cleanup
  [Form] Fix transformer tests after the ICU update
  [DI] Add anti-regression test
  Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"
  bumped Symfony version to 3.1.5
  updated VERSION for 3.1.4
  updated CHANGELOG for 3.1.4
  bumped Symfony version to 2.8.11
  updated VERSION for 2.8.10
  updated CHANGELOG for 2.8.10
  [BrowserKit] Fix cookie expiration on 32 bit systems
  bumped Symfony version to 2.7.18
  updated VERSION for 2.7.17
  update CONTRIBUTORS for 2.7.17
  updated CHANGELOG for 2.7.17
  Update misleading comment about RFC4627
2016-09-06 13:07:23 +02:00
Nicolas Grekas
c5aa4f0a7e Merge branch '2.8' into 3.1
* 2.8:
  [FrameworkBundle] Check for class existence before is_subclass_of
  Update GroupSequence.php
  Code enhancement and cleanup
  [Form] Fix transformer tests after the ICU update
  [DI] Add anti-regression test
  Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"
  bumped Symfony version to 2.8.11
  updated VERSION for 2.8.10
  updated CHANGELOG for 2.8.10
  [BrowserKit] Fix cookie expiration on 32 bit systems
  bumped Symfony version to 2.7.18
  updated VERSION for 2.7.17
  update CONTRIBUTORS for 2.7.17
  updated CHANGELOG for 2.7.17
  Update misleading comment about RFC4627
2016-09-06 13:02:40 +02:00
Nicolas Grekas
ccf63e6b8d Merge branch '2.7' into 2.8
* 2.7:
  [FrameworkBundle] Check for class existence before is_subclass_of
  Update GroupSequence.php
  Code enhancement and cleanup
  [DI] Add anti-regression test
  Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"
  [BrowserKit] Fix cookie expiration on 32 bit systems
  bumped Symfony version to 2.7.18
  updated VERSION for 2.7.17
  update CONTRIBUTORS for 2.7.17
  updated CHANGELOG for 2.7.17
  Update misleading comment about RFC4627
2016-09-06 12:55:00 +02:00
Nicolas Grekas
0f6bc0b00a bug #19848 Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)" (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| Tests pass?   | yes
| Fixed tickets | #19689 #19840 #19825 #19857
| License       | MIT
| Doc PR        | -

This reverts commit c89f80a9cd, reversing
changes made to 386e5e78b4.

See discussion in #19847

I'll try adding test cases soon that ensure that:

- [x] *when not leaving scope* synthetic services always throw and ignore the `ContainerInterface::NULL_ON_INVALID_REFERENCE` flag (on 3.x also)
- [x] *when leaving scope* synthetic services always return null and ignore the `ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE`  (until 2.8 since scopes are gone in 3.x)

Commits
-------

8cb28bf [DI] Add anti-regression test
ac742df Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"
2016-09-06 12:51:08 +02:00
Iltar van der Berg
9c48756a19 Fixed the nullable support for php 7.1 and below 2016-09-06 11:34:14 +02:00
Nicolas Grekas
13d0510126 minor #19809 Update misleading comment about RFC4627 (teohhanhui)
This PR was merged into the 2.7 branch.

Discussion
----------

Update misleading comment about RFC4627

| 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

RFC 4627 does not dictate escaping of HTML special characters

Commits
-------

72b6c9e Update misleading comment about RFC4627
2016-09-06 11:29:51 +02:00
Nicolas Grekas
db3ed6c1d6 bug #19836 [VarDumper] Make ClassStub handle missing classes or methods (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[VarDumper] Make ClassStub handle missing classes or methods

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes (well, missing feat in previous PR)
| Tests pass?   | yes
| License       | MIT

So that one can still add ellipses when dumping about non existing classes or methods.

Commits
-------

73b3cf7 [VarDumper] Make ClassStub handle missing classes or methods
2016-09-06 10:22:18 +02:00
Nicolas Grekas
8a9b2870b7 minor #19862 Update GroupSequence.php (vudaltsov)
This PR was submitted for the 3.0 branch but it was merged into the 2.7 branch instead (closes #19862).

Discussion
----------

Update GroupSequence.php

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

Corrected the docblock example

Commits
-------

c8f3741 Update GroupSequence.php
2016-09-06 09:59:02 +02:00
Valentin Udaltsov
c8f3741eba Update GroupSequence.php
Corrected the docblock example
2016-09-06 09:57:53 +02:00
Nicolas Grekas
39905fd807 minor #19830 Code enhancement and cleanup (yceruto)
This PR was squashed before being merged into the 2.7 branch (closes #19830).

Discussion
----------

Code enhancement and cleanup

| 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        | -

Commits
-------

325da3c Code enhancement and cleanup
2016-09-06 09:26:09 +02:00
Yonel Ceruto
325da3c0d8 Code enhancement and cleanup 2016-09-06 09:26:07 +02:00
Nicolas Grekas
647b3d2f54 [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1) 2016-09-05 21:55:26 +02:00
Jakub Zalas
aa3c66e8c9 [Form] Fix transformer tests after the ICU update 2016-09-05 18:01:56 +01:00
Teoh Han Hui
4a041e9a75
Make ReflectionExtractor compatible with ReflectionType changes in PHP 7.1 2016-09-05 15:50:41 +08:00
Nicolas Grekas
8cb28bf751 [DI] Add anti-regression test 2016-09-05 09:18:55 +02:00
Ondřej Machulda
5957412fa7 [Workflow] Make PropertyAccess required dependency 2016-09-04 20:47:17 +02:00
Nicolas Grekas
ac742dfc48 Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"
This reverts commit c89f80a9cd, reversing
changes made to 386e5e78b4.
2016-09-04 19:06:49 +02:00
Nicolas Grekas
7903a46dfa [Security] Allow run-time configuration of hash algo 2016-09-04 11:38:12 +02:00
Fabien Potencier
260702b3ba bumped Symfony version to 3.1.5 2016-09-03 09:29:57 -07:00
Fabien Potencier
0ce8ccf036 updated VERSION for 3.1.4 2016-09-03 08:28:24 -07:00
Fabien Potencier
356a0ac7e4 bumped Symfony version to 2.8.11 2016-09-03 08:25:19 -07:00
Nicolas Grekas
73b3cf7231 [VarDumper] Make ClassStub handle missing classes or methods 2016-09-03 12:48:35 +02:00
Fabien Potencier
84fee0c855 updated VERSION for 2.8.10 2016-09-02 13:39:36 -07:00
James Halsall
68698f2bd4 [BrowserKit] Fix cookie expiration on 32 bit systems
On 32-bit systems the cookie expiration value was not being calculated
correctly as it was being fetched as an integer. When the timestamp exceeded
the PHP_INT_MAX size it would return an invalid value, breaking the cookie
construction.

The BrowserKit cookie has now been updated to get the timestamp as a string
which works around this platform limitation.
2016-09-02 13:36:08 -07:00
Nicolas Grekas
948859676c [VarDumper] LinkStub fix 2016-09-02 21:48:26 +02:00
Nicolas Grekas
788f7e84b0 [VarDumper] Add ClassStub for clickable & shorter PHP identifiers 2016-09-02 17:23:03 +02:00
Fabien Potencier
2511f2a191 bumped Symfony version to 2.7.18 2016-09-01 20:54:47 -07:00
Fabien Potencier
68124f52fa updated VERSION for 2.7.17 2016-09-01 20:05:16 -07:00
Fabien Potencier
35211051fa Merge branch '3.1'
* 3.1:
  [WebProfilerBundle] Fix margin on toolbar route panel.
  Update profiler's layout to use flexbox
  [Yaml] Remove legacy code
2016-09-01 19:14:06 -07:00
Fabien Potencier
cc5a65b7f6 Merge branch '2.8' into 3.1
* 2.8:
  Update profiler's layout to use flexbox
  [Yaml] Remove legacy code
2016-09-01 19:12:52 -07:00
Fabien Potencier
59d6784b22 Merge branch '2.7' into 2.8
* 2.7:
  [Yaml] Remove legacy code
2016-09-01 18:57:56 -07:00
Fabien Potencier
4ac89bbb7a feature #19816 [VarDumper] Add LinkStub to create links in HTML dumps (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[VarDumper] Add LinkStub to create links in HTML dumps

| Q             | A
| ------------- | ---
| Branch?       | master
| New feature?  | yes
| Tests pass?   | yes
| License       | MIT

This builds on top of #19797 & adds a new `LinkStub` to inform HtmlDumper about values that can be dumped as html links.

![capture du 2016-09-01 16-37-56](https://cloud.githubusercontent.com/assets/243674/18171810/8a786518-7063-11e6-9719-1eca295087e7.png)

Note in the screenshot:
- the "file" item has ellipsis,
- the browser displays the target at the bottom

Commits
-------

2b5d642 [VarDumper] Add LinkStub to create links in HTML dumps
2016-09-01 10:44:22 -07:00
Fabien Potencier
13161d5cdc feature #19768 [VarDumper] Enhance dumping arguments in stack traces (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[VarDumper] Enhance dumping arguments in stack traces

| Q             | A
| ------------- | ---
| Branch?       | master
| New feature?  | yes
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT

Commits
-------

58816bd [VarDumper] Enhance dumping arguments in stack traces
2016-09-01 10:41:41 -07:00
Fabien Potencier
15cb83bfa0 bug #19708 [DI] Dont use Container::get() when fetching private services internally (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[DI] Dont use Container::get() when fetching private services internally

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #19683, #19682, #19680
| License       | MIT

As spotted by @wouterj, we forgot to remove the deprecation notice when doing internal calls to get private services.

Yet, we don't need to get through this `get()` method, because we can already resolve many things at compile time for private services. This will provide another small performance optim, and fix the issue.

Commits
-------

a9c79fb [DI] Dont use Container::get() when fetching private services internally
2016-09-01 10:39:44 -07:00
Nicolas Grekas
2b5d642efd [VarDumper] Add LinkStub to create links in HTML dumps 2016-09-01 17:11:16 +02:00
Teoh Han Hui
72b6c9e0b9 Update misleading comment about RFC4627
RFC 4627 does not dictate escaping of HTML special characters
2016-09-01 12:16:03 +08:00
Nicolas Grekas
58816bd163 [VarDumper] Enhance dumping arguments in stack traces 2016-08-31 20:37:17 +02:00
Fabien Potencier
16c5c76052 feature #19796 [VarDumper] Make the line clickable to toggle dumps (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[VarDumper] Make the line clickable to toggle dumps

| Q             | A
| ------------- | ---
| Branch?       | master
| New feature?  | yes
| Tests pass?   | yes
| License       | MIT

The arrow to toggle dumps is too small. Let's make the text before it clickable.

Commits
-------

2697dd5 [VarDumper] Make the line clickable to toggle dumps
2016-08-31 11:32:07 -07:00
Fabien Potencier
4fbf80d50b feature #19764 [Config] Add ExprBuilder::ifEmpty() (ogizanagi)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Config] Add ExprBuilder::ifEmpty()

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/6922

Useful for instance when you don't expect to have a key set in the resolved config if its content is empty:

```php
$builder = new TreeBuilder();
$tree = $builder
    ->root('matcher')
        ->children()
            ->arrayNode('references_to_exclude')
                ->validate()
                    ->ifEmpty()
                    ->thenUnset()
                ->end()
                ->prototype('scalar')->end()
            ->end()
        ->end()
    ->end()
    ->buildTree()
;

$tree->finalize(['references_to_exclude' => ['foo', 'bar']]);
>>> ['references_to_exclude' => ['foo', 'bar']]

$tree->finalize(['references_to_exclude' => []]);
>>> []
```

Commits
-------

4e46f64 [Config] Add ExprBuilder::ifEmpty()
2016-08-31 11:30:14 -07:00
Fabien Potencier
09e4e49b2a minor #19802 [Yaml] Remove legacy code (Ener-Getick)
This PR was merged into the 2.7 branch.

Discussion
----------

[Yaml] Remove legacy code

| 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        |

It looks like these lines were forgotten during the transition to 2.0 as references are already [managed in `Inline`](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Yaml/Inline.php#L542-L559).

Commits
-------

a88dff3 [Yaml] Remove legacy code
2016-08-31 11:04:35 -07:00
Ener-Getick
a88dff3981
[Yaml] Remove legacy code 2016-08-31 15:10:08 +02:00
Nicolas Grekas
2937ffa125 [VarDumper] Handle attributes in Data clones for more semantic dumps 2016-08-31 13:39:45 +02:00
Arnout Boks
98d2c9d9dd [DomCrawler] Fixed typo in doc comment 2016-08-31 13:20:00 +02:00
Nicolas Grekas
2697dd5466 [VarDumper] Make the line clickable to toggle dumps 2016-08-31 11:10:35 +02:00
Nicolas Grekas
b835ab1d39 Merge branch '3.1'
* 3.1:
  Fix merge
2016-08-31 11:05:56 +02:00
Nicolas Grekas
0cd5f13615 Merge branch '2.8' into 3.1
* 2.8:
  Fix merge
2016-08-31 11:05:42 +02:00
Nicolas Grekas
23bc357ca7 Fix merge 2016-08-31 11:05:30 +02:00
Nicolas Grekas
731b62534c Merge branch '3.1'
* 3.1:
  [VarDumper] Various minor fixes & cleanups
  Revert "bug #18935 [Form] Consider a violation even if the form is not submitted (egeloen)"
  [Config] Fix DirectoryResourceTest for symlinks
  [HttpKernel] Add missing SsiFragmentRendererTest
  [DoctrineBridge] Fix exception message and tests after misresolved merge
  Fixes the calendar in constructor to handle null
2016-08-31 10:09:20 +02:00
Nicolas Grekas
46843d318b Merge branch '2.8' into 3.1
* 2.8:
  [VarDumper] Various minor fixes & cleanups
  Revert "bug #18935 [Form] Consider a violation even if the form is not submitted (egeloen)"
  [HttpKernel] Add missing SsiFragmentRendererTest
  [DoctrineBridge] Fix exception message and tests after misresolved merge
  Fixes the calendar in constructor to handle null
2016-08-31 10:07:33 +02:00
Nicolas Grekas
808333e5d0 Merge branch '2.7' into 2.8
* 2.7:
  [VarDumper] Various minor fixes & cleanups
  Revert "bug #18935 [Form] Consider a violation even if the form is not submitted (egeloen)"
  [HttpKernel] Add missing SsiFragmentRendererTest
  Fixes the calendar in constructor to handle null
2016-08-31 10:02:58 +02:00
Nicolas Grekas
ac9ac8364e bug #19794 [VarDumper] Various minor fixes & cleanups (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[VarDumper] Various minor fixes & cleanups

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| Tests pass?   | yes
| License       | MIT

Minor fixes & cleanups found while working on a few VarDumper enhancements.
I'm going to merge this one quickly to unlock the other PRs I'm preparing for master.

Commits
-------

a989491 [VarDumper] Various minor fixes & cleanups
2016-08-31 09:58:22 +02:00
Nicolas Grekas
a989491ade [VarDumper] Various minor fixes & cleanups 2016-08-31 09:12:09 +02:00
Fabien Potencier
2bc54e0863 minor #19779 [FrameworkBundle] Fix test scanning the full tmp directory (chalasr)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[FrameworkBundle] Fix test scanning the full tmp directory

| Q             | A
| ------------- | ---
| Branch?       | master
| Tests pass?   | yes/no
| Fixed tickets | n/a
| License       | MIT

Next to #19777 (my bad for both ☺️ ).

@nicolas-grekas It seems there are [some similar ones](https://github.com/search?utf8=%E2%9C%93&q=tempnam%28sys_get_temp_dir%28%29%2C+repo%3Asymfony%2Fsymfony&type=Code&ref=searchresults) that need to be fixed

Commits
-------

bb9413b [FrameworkBundle] Fix test scanning the full tmp directory
2016-08-30 10:58:27 -07:00
Fabien Potencier
45c0c493e9 minor #19765 [Config] Fix DirectoryResourceTest for symlinks (ogizanagi)
This PR was merged into the 3.1 branch.

Discussion
----------

[Config] Fix DirectoryResourceTest for symlinks

| Q             | A
| ------------- | ---
| Branch?       | 3.1
| Bug fix?      | no (only tests, locally)
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

Tests were failing locally (on my macbook), because the `DirectoryResource` implementation now uses `realpath`.
Which means the path returned by `->getResource()` may differ from the given one in case it is a symlink:

```diff
There were 2 failures:

1) Symfony\Component\Config\Tests\Resource\DirectoryResourceTest::testGetResource
->getResource() returns the path to the resource
Failed asserting that two strings are identical.
--- Expected
+++ Actual
@@ @@
-/var/folders/j0/grc5nstx5b5f95cgg09_cy_h0000gn/T/symfonyDirectoryIterator
+/private/var/folders/j0/grc5nstx5b5f95cgg09_cy_h0000gn/T/symfonyDirectoryIterator

src/Symfony/Component/Config/Tests/Resource/DirectoryResourceTest.php:56

2) Symfony\Component\Config\Tests\Resource\DirectoryResourceTest::testSerializeUnserialize
Failed asserting that two strings are identical.
--- Expected
+++ Actual
@@ @@
-/var/folders/j0/grc5nstx5b5f95cgg09_cy_h0000gn/T/symfonyDirectoryIterator
+/private/var/folders/j0/grc5nstx5b5f95cgg09_cy_h0000gn/T/symfonyDirectoryIterator

src/Symfony/Component/Config/Tests/Resource/DirectoryResourceTest.php:169
```

Commits
-------

56f74eb [Config] Fix DirectoryResourceTest for symlinks
2016-08-30 10:56:24 -07:00
Fabien Potencier
0fd7cdb40c bug #19724 [Console] Register terminal env variables (ogizanagi)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Console] Register terminal env variables

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

Solves #19719 by setting `COLUMNS` & `LINES` env vars when running an Application.
Those env vars are then meant to be reused when using the Process component.

~~It creates a new `Terminal::registerEnv()` method allowing to register terminal related informations into environment variables. ~~It allows getting "consistent terminal informations" across processes.~~

Unless the env vars handling is backported from the 3.2 `Terminal` class to older branches in the `Application` class, the mentioned issue can't be solved this way.

Commits
-------

926bc51 [Console] Register terminal env variables
2016-08-30 10:54:44 -07:00
Robin Chalas
bb9413b71b
[FrameworkBundle] Fix test scanning the full tmp directory 2016-08-29 20:58:41 +02:00
Fabien Potencier
bcb1d8fd0c Revert "bug #18935 [Form] Consider a violation even if the form is not submitted (egeloen)"
This reverts commit f28eb9a617, reversing
changes made to bbb75faa15.
2016-08-29 09:54:06 -07:00
SpacePossum
1430138b62 Allow multiple options to be set. 2016-08-29 13:13:33 +02:00
Nicolas Grekas
29b6b9b83e Merge branch '3.1'
* 3.1:
  [HttpKernel] Fix assertion of deprecation in fragment renderer
  [Yaml] sync test and actually triggered message
2016-08-29 10:54:53 +02:00
Nicolas Grekas
120a05d0e1 minor #19766 [Yaml] sync test and actually triggered message (xabbuh)
This PR was merged into the 3.1 branch.

Discussion
----------

[Yaml] sync test and actually triggered message

| Q             | A
| ------------- | ---
| Branch?       | 3.1
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | see failures in #19757
| License       | MIT
| Doc PR        |

Commits
-------

e8dfd4d [Yaml] sync test and actually triggered message
2016-08-29 10:53:50 +02:00
Nicolas Grekas
3030c79442 feature #19755 [VarDumper] Get dump as string with $dumper->dump(..., true); (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[VarDumper] Get dump as string with `$dumper->dump(..., true);`

| Q             | A
| ------------- | ---
| Branch?       | master
| New feature?  | yes
| Tests pass?   | yes
| License       | MIT

ping @lyrixx @wouterj since you expressed interest in boilerplate reduction around this in the past :)

Commits
-------

4be9776 [VarDumper] Get dump as string with `$dumper->dump(..., true);`
2016-08-28 20:58:22 +02:00
Fabien Potencier
feb5413b6b minor #19759 [Console] Fix Application::setDefaultCommand() missing return in docblock (ogizanagi)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Console] Fix Application::setDefaultCommand() missing return in docblock

| Q             | A
| ------------- | ---
| Branch?       | master
| License       | MIT

Despite the fact IDEs are clever enough to make this useless, I think it's clearly part of the contract of this public method anyway 😄

Commits
-------

0165835 [Console] Fix Application::setDefaultCommand() missing return in docblock
2016-08-27 17:33:16 -07:00
Maxime Steinhausser
56f74eb6c8 [Config] Fix DirectoryResourceTest for symlinks 2016-08-27 20:50:07 +02:00
Maxime Steinhausser
4e46f6474c [Config] Add ExprBuilder::ifEmpty() 2016-08-27 20:29:48 +02:00
Maxime Steinhausser
01658355da [Console] Fix Application::setDefaultCommand() missing return in docblock 2016-08-27 19:36:37 +02:00
Fabien Potencier
e4b48bbc88 minor #19761 [HttpKernel] Add missing SsiFragmentRendererTest (chalasr)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpKernel] Add missing SsiFragmentRendererTest

| 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

One notable difference between ESI/SSI fragments renderers is that [passing options to the strategy doesn't impact the rendered ssi include tag](d666c64eb0 (diff-98eb5db767a1d6600cff43b74800ae46R37)).

Commits
-------

6c89199 [HttpKernel] Add missing SsiFragmentRendererTest
2016-08-27 09:32:53 -07:00
Fabien Potencier
d923e35714 fixed CS 2016-08-27 09:29:21 -07:00
Fabien Potencier
8ee21c723b minor #19758 [Yaml] improve deprecation message and changelog (xabbuh)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Yaml] improve deprecation message and changelog

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

Commits
-------

a7128f8 [Yaml] improve deprecation message and changelog
2016-08-27 09:28:58 -07:00
Fabien Potencier
30ef6ff9be minor #19731 [Yaml] improve changelog and upgrade entries (xabbuh)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Yaml] improve changelog and upgrade entries

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

Improves the wording as suggested by @javiereguiluz in https://github.com/symfony/symfony/pull/19538#issuecomment-237769389.

Commits
-------

e288256 [Yaml] improve changelog and upgrade entries
2016-08-27 09:27:30 -07:00
Robin Chalas
6c8919935e
[HttpKernel] Add missing SsiFragmentRendererTest 2016-08-27 16:02:11 +02:00
Robin Chalas
4245bacdd5
[HttpKernel] Fix assertion of deprecation in fragment renderer 2016-08-27 14:44:09 +02:00
Christian Flothmann
e8dfd4dc48 [Yaml] sync test and actually triggered message 2016-08-27 13:14:18 +02:00
Christian Flothmann
e28825656b [Yaml] improve changelog and upgrade entries 2016-08-27 13:07:10 +02:00
Christian Flothmann
a7128f8c96 [Yaml] improve deprecation message and changelog 2016-08-27 12:43:03 +02:00
Nicolas Grekas
4be977627e [VarDumper] Get dump as string with $dumper->dump(..., true); 2016-08-27 08:12:35 +02:00
Waqas Ahmed
43f26727d0 Fixes the calendar in constructor to handle null 2016-08-26 20:13:58 +04:00
Nicolas Grekas
a9c79fb64e [DI] Dont use Container::get() when fetching private services internally 2016-08-26 17:24:58 +02:00
Nicolas Grekas
0cf50e2788 Merge branch '3.1'
* 3.1:
  fix typo
  add "provides" for psr/cache-implementation
  [Validator][GroupSequence] fixed GroupSequence validation ignores PropertyMetadata of parent classes
  [FrameworkBundle][Security] Remove useless mocks
  Add symfony/inflector to composer.json "replaces"
  [DoctrineBridge] Enhance exception message in EntityUserProvider
  added friendly exception when constraint validator does not exist or it is not enabled
  remove duplicate instruction
  [FrameworkBundle] Remove TranslatorBagInterface check
  [FrameworkBundle] Remove duplicated code in RouterDebugCommand
  [Validator] fixed duplicate constraints with parent class interfaces
  SecurityBundle:BasicAuthenticationListener: removed a default argument on getting a header value
2016-08-26 14:08:28 +02:00
Nicolas Grekas
224ebc0aff Merge branch '2.8' into 3.1
* 2.8:
  [Validator][GroupSequence] fixed GroupSequence validation ignores PropertyMetadata of parent classes
  [FrameworkBundle][Security] Remove useless mocks
  [DoctrineBridge] Enhance exception message in EntityUserProvider
  added friendly exception when constraint validator does not exist or it is not enabled
  remove duplicate instruction
  [FrameworkBundle] Remove TranslatorBagInterface check
  [FrameworkBundle] Remove duplicated code in RouterDebugCommand
  [Validator] fixed duplicate constraints with parent class interfaces
  SecurityBundle:BasicAuthenticationListener: removed a default argument on getting a header value
2016-08-26 14:04:02 +02:00
Nicolas Grekas
b05de7d2be Merge branch '2.7' into 2.8
* 2.7:
  [Validator][GroupSequence] fixed GroupSequence validation ignores PropertyMetadata of parent classes
  [FrameworkBundle][Security] Remove useless mocks
  [DoctrineBridge] Enhance exception message in EntityUserProvider
  added friendly exception when constraint validator does not exist or it is not enabled
  remove duplicate instruction
  [FrameworkBundle] Remove TranslatorBagInterface check
  [FrameworkBundle] Remove duplicated code in RouterDebugCommand
  [Validator] fixed duplicate constraints with parent class interfaces
  SecurityBundle:BasicAuthenticationListener: removed a default argument on getting a header value
2016-08-26 13:57:43 +02:00
Sandro Hopf
54a7eff868 [Validator][GroupSequence] fixed GroupSequence validation ignores PropertyMetadata of parent classes 2016-08-25 18:04:22 -07:00
Fabien Potencier
98051e909f feature #19604 [Routing] Add seamless support for unicode requirements (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Routing] Add seamless support for unicode requirements

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | yes
| Tests pass?   | yes
| Fixed tickets | #3629, #5236, #19562
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/6890

This PR adds unicode support to route matching and generation by automatically adding the `u` modifier to regexps that use either unicode characters or unicode enabled character classes (e.g. `\p...` `\x{...}` `\X`).

As a side note, if one wants to match a single unicode character (vs a single byte), one should use `\PM` or `\X` instead of `.` *or* set the `unicode` parameter to true.

Commits
-------

a829d34 [Routing] Add seamless support for unicode requirements
2016-08-25 11:15:34 -07:00
Fabien Potencier
6de4359e4b minor #19736 [FrameworkBundle][Security] Remove useless mocks (Ener-Getick)
This PR was merged into the 2.7 branch.

Discussion
----------

[FrameworkBundle][Security] Remove useless mocks

| 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        |

Removes mocks causing issues in https://github.com/symfony/symfony/pull/19734.

Commits
-------

fcd3345 [FrameworkBundle][Security] Remove useless mocks
2016-08-25 10:52:51 -07:00
Ener-Getick
d6e93d8931
[PropertyInfo] Extract the logic converting a php doc to a Type
in PhpDocTypeHelperTrait
2016-08-25 19:30:28 +02:00
Ener-Getick
fcd3345e34
[FrameworkBundle][Security] Remove useless mocks 2016-08-25 14:52:03 +02:00
Nicolas Grekas
a829d3411d [Routing] Add seamless support for unicode requirements 2016-08-25 11:23:01 +02:00
Maxime STEINHAUSSER
926bc51910 [Console] Register terminal env variables 2016-08-25 01:54:15 +02:00
Grégoire Pineau
b6d0050c38 [ExpressionLanguage] Move the ::dump method to the Node classe to ease its usage 2016-08-24 11:14:26 +02:00
Tom Van Looy
c811eb7e8e remove duplicate instruction 2016-08-23 21:36:25 +02:00
Fabien Potencier
865f344143 feature #19714 [VarDumper] Handle "title" attribute on virtual properties (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[VarDumper] Handle "title" attribute on virtual properties

| Q             | A
| ------------- | ---
| Branch?       | master
| New feature?  | yes
| Tests pass?   | yes
| License       | MIT

As seen with @wouterj , it would be better to *not* display the stack level in front of each stack line.
This PR does just that, and moves the stack level to a title attribute in HtmlDumper.

![capture du 2016-08-23 14-09-43](https://cloud.githubusercontent.com/assets/243674/17891395/cc40b088-693b-11e6-8523-89ff51be929a.png)

Commits
-------

19bcf63 [VarDumper] Handle "title" attribute on virtual properties
2016-08-23 10:20:39 -07:00
Fabien Potencier
7381d8e11f minor #19638 [DependencyInjection] Factorize listing of setters (dunglas)
This PR was squashed before being merged into the 3.2-dev branch (closes #19638).

Discussion
----------

[DependencyInjection] Factorize listing of setters

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

Add a new method to list setters of a class.

Commits
-------

163fbf4 [DependencyInjection] Factorize listing of setters
2016-08-23 09:55:49 -07:00
Kévin Dunglas
163fbf461f [DependencyInjection] Factorize listing of setters 2016-08-23 09:55:48 -07:00
Fabien Potencier
a45be6d82a minor #19499 [SecurityBundle] BasicAuthenticationListener: simpler getting value from Request (MacDada)
This PR was merged into the 2.7 branch.

Discussion
----------

[SecurityBundle] BasicAuthenticationListener: simpler getting value from Request

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

Unless I'm mistaken, the default `null` should be OK. If it's not, I will create a new PR with a test proving that `false` or other "special" value must be used.

Commits
-------

d67f090 SecurityBundle:BasicAuthenticationListener: removed a default argument on getting a header value
2016-08-23 09:54:14 -07:00
Fabien Potencier
0544117434 bug #19580 [Validator] fixed duplicate constraints with parent class interfaces (dmaicher)
This PR was merged into the 2.7 branch.

Discussion
----------

[Validator] fixed duplicate constraints with parent class interfaces

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/19516
| License       | MIT
| Doc PR        | -

This fixes https://github.com/symfony/symfony/issues/19516

Commits
-------

fb36c5a [Validator] fixed duplicate constraints with parent class interfaces
2016-08-23 09:51:32 -07:00
Nicolas Grekas
ab93dd8241 Merge branch '3.1'
* 3.1:
  [ClassLoader] Fix tests
  [Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes
  [DependencyInjection] PhpDumper::isFrozen inconsistency
  [DI] Cleanup array_key_exists
  include dynamic services in list of alternatives
  [Debug] Swap dumper services at bootstrap
2016-08-23 15:40:05 +02:00
Nicolas Grekas
e0acca67e0 Merge branch '2.8' into 3.1
* 2.8:
  [ClassLoader] Fix tests
  [Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes
  [DependencyInjection] PhpDumper::isFrozen inconsistency
  [DI] Cleanup array_key_exists
  include dynamic services in list of alternatives
  [Debug] Swap dumper services at bootstrap
2016-08-23 15:39:15 +02:00
Nicolas Grekas
69fbdc93cf Merge branch '2.7' into 2.8
* 2.7:
  [ClassLoader] Fix tests
  [Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes
  [DependencyInjection] PhpDumper::isFrozen inconsistency
  [DI] Cleanup array_key_exists
  include dynamic services in list of alternatives
  [Debug] Swap dumper services at bootstrap
2016-08-23 15:37:31 +02:00
Nicolas Grekas
5e5e1db912 minor #19710 [ClassLoader] Fix tests (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[ClassLoader] Fix tests

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Tests pass?   | yes
| License       | MIT

As discussed right now on php-internals, this string is ignored and the docs only tells about null.

Commits
-------

0f95708 [ClassLoader] Fix tests
2016-08-23 15:28:32 +02:00
Nicolas Grekas
19bcf63c8d [VarDumper] Handle "title" attribute on virtual properties 2016-08-23 15:23:44 +02:00
Nicolas Grekas
0f95708a1d [ClassLoader] Fix tests 2016-08-23 11:26:23 +02:00
Nicolas Grekas
2449a9712c bug #19647 [Debug] Swap dumper services at bootstrap (lyrixx)
This PR was merged into the 2.7 branch.

Discussion
----------

[Debug] Swap dumper services at bootstrap

| 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        |

---

This commit fix a bug when using debug function too soon.
For example, if you call dump function during kernel::boot() the
dump output will be sent to stderr, even in a web context.

With this patch, the data collector is used by default, so the
dump output is send to the WDT. In a CLI context, if dump is used
too soon, the datacollector will buffer it, and release it at the
end of the script. So in this case everything will be visible by the
end used.

Commits
-------

d80589c [Debug] Swap dumper services at bootstrap
2016-08-23 09:13:30 +02:00
Nicolas Grekas
3596cb26ad bug #19685 [DI][2.7] Include dynamic services in alternatives (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[DI][2.7] Include dynamic services in alternatives

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Commits
-------

428b5cc include dynamic services in list of alternatives
2016-08-23 09:00:45 +02:00
Nicolas Grekas
589b1d4c38 bug #19702 [Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes (aka "small-bc-breaks") (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes (aka "small-bc-breaks")

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| Tests pass?   | yes
| License       | MIT

On PHP 7.2:
- `is_object()` is going to return `true` for `__PHP_Incomplete_Class` instances
- `gettype($closed_resource);` returns "resource (closed)"

ping @nikic FYI
see https://travis-ci.org/symfony/symfony/jobs/154114269 for fixed tests (except the one on ClassLoader which is a BC break on 7.1 that should be fixed there IMHO).

Commits
-------

feb2cd0 [Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes
2016-08-23 08:53:13 +02:00
Nicolas Grekas
feb2cd0c71 [Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes 2016-08-22 19:42:59 +02:00
Fabien Potencier
c14fff01a4 minor #19656 [FrameworkBundle][Debug] Fix default config and cleaning of traces (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[FrameworkBundle][Debug] Fix default config and cleaning of traces

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| Tests pass?   | yes
| Fixed tickets | Follow up #19568
| License       | MIT
| Doc PR        | -

The default value of `framework.php_errors.log` must be `%kernel.debug%` to have deprecations and silenced errors logged in dev as before.

Cleaning the trace was broken because a closure can't be bound to an internal class.

This PR fixes both issues and enhance trace cleaning a bit by removing arguments from traces so that they take less memory when collected as part of the context of log messages.

Commits
-------

f640870 [FrameworkBundle][Debug] Fix default config and cleaning of traces
2016-08-22 10:31:21 -07:00
Fabien Potencier
d64bcdaaef feature #19339 [WebProfilerBundle][Form][DX] To expand the form nodes that contains children with errors (yceruto)
This PR was squashed before being merged into the 3.2-dev branch (closes #19339).

Discussion
----------

[WebProfilerBundle][Form][DX] To expand the form nodes that contains children with errors

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

Currently when we use nested forms and an error occurs into one of them, it's not displayed "easily" in the form panel profiler:

![first](https://cloud.githubusercontent.com/assets/2028198/17125622/1fd15142-52c3-11e6-830e-17b3e341ba60.png)

This happen because only the root form is expanded and the children are shown collapsed "by default".

**The main problem is to search where is the form with error**.

The purpose of this PR is to show expanded all forms that contains children with error, reducing a little bit the developer's time when debugging.

PR result when we access to the form panel profiler:

![form-error-result](https://cloud.githubusercontent.com/assets/2028198/17125447/83eb9c0c-52c1-11e6-94bc-a2a7492eea43.png)

In red the full path to the error.

![form-error-result2](https://cloud.githubusercontent.com/assets/2028198/17125459/a04de95e-52c1-11e6-8980-84a5dcd0914a.png)

Commits
-------

d626b28 [WebProfilerBundle][Form][DX] To expand the form nodes that contains children with errors
2016-08-22 10:27:18 -07:00
Yonel Ceruto
d626b285aa [WebProfilerBundle][Form][DX] To expand the form nodes that contains children with errors 2016-08-22 10:27:17 -07:00
Taras Girnyk
7c0a62c6a7 [DependencyInjection] PhpDumper::isFrozen inconsistency 2016-08-22 09:38:12 -07:00
Roland Franssen
3306c70a34 [DI] Cleanup array_key_exists 2016-08-22 08:32:51 -07:00
Nicolas Grekas
703db1e3b5 Merge branch '3.1'
* 3.1:
  [travis] Use 7.0 until 7.1 is fixed
  [DIC] Fix service autowiring inheritance
  [Serializer] Fix denormalization of arrays
  [SecurityBundle] Add missing deprecation notice for form_login.intention
  Verify explicitly that the request IP is a valid IPv4 address
  [WebProfilerBundle] replaces tabs characters by spaces.
2016-08-22 14:11:39 +02:00
Nicolas Grekas
298a680ea0 Merge branch '2.8' into 3.1
* 2.8:
  [travis] Use 7.0 until 7.1 is fixed
  [DIC] Fix service autowiring inheritance
  [SecurityBundle] Add missing deprecation notice for form_login.intention
  Verify explicitly that the request IP is a valid IPv4 address
2016-08-22 14:11:19 +02:00
Nicolas Grekas
909649ff5f Merge branch '2.7' into 2.8
* 2.7:
  [travis] Use 7.0 until 7.1 is fixed
  Verify explicitly that the request IP is a valid IPv4 address
2016-08-22 14:09:58 +02:00
Roland Franssen
428b5cc6a8 include dynamic services in list of alternatives 2016-08-20 13:46:51 +00:00
Fabien Potencier
5603bffdd9 feature #19519 [Cache] Add PDO + Doctrine DBAL adapter (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Cache] Add PDO + Doctrine DBAL adapter

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/6858

This PR adds a PDO adapter for our PSR-6 cache items. The implementation heavily borrows from PdoSessionHandler.

Commits
-------

82a0de2 [Cache] Add PDO + Doctrine DBAL adapter
2016-08-19 09:48:56 -07:00
Fabien Potencier
fc483cf432 bug #19643 [DependencyInjection] Fix service autowiring inheritance (chalasr)
This PR was merged into the 2.8 branch.

Discussion
----------

[DependencyInjection] Fix service autowiring inheritance

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

This makes services inherit the `autowire` attribute from their parent and fix the ability to override it from the child.

Fixed cases:

- Simple inheritance
```yaml
parent:
    class: Foo
    abstract: true
    autowire: true

child:
    class: Foo
```

- Set in the child (only)
```yaml
parent:
    class: Foo
    abstract: true

child:
    class: Foo
    autowire: true
```

- Set in the parent, changed in the child
```yaml
parent:
    class: Foo
    abstract: true
    autowire: true

child:
    class: Foo
    autowire: false
```

Commits
-------

fb95bdc [DIC] Fix service autowiring inheritance
2016-08-19 08:59:07 -07:00
Robin Chalas
fb95bdc965 [DIC] Fix service autowiring inheritance
Update Changelog
2016-08-19 17:56:42 +02:00
Fabien Potencier
3ab6d4ee44 bug #19649 [Serializer] Fix denormalization of arrays (dunglas)
This PR was squashed before being merged into the 3.1 branch (closes #19649).

Discussion
----------

[Serializer] Fix denormalization of arrays

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

ping @hensoko @theofidry

Commits
-------

99c582b [Serializer] Fix denormalization of arrays
2016-08-19 08:12:53 -07:00
Kévin Dunglas
99c582b432 [Serializer] Fix denormalization of arrays 2016-08-19 08:12:52 -07:00
Fabien Potencier
7b383a9788 bug #19666 Verify explicitly that the request IP is a valid IPv4 address (nesk)
This PR was squashed before being merged into the 2.7 branch (closes #19666).

Discussion
----------

Verify explicitly that the request IP is a valid IPv4 address

| 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        | -

Take the following base code (the array is based on [CloudFlare IP Ranges](https://www.cloudflare.com/ips/)):

```php
use Symfony\Component\HttpFoundation\IpUtils;

$ips = [
   "103.21.244.0/22",
   "103.22.200.0/22",
   "103.31.4.0/22",
   "104.16.0.0/12",
   "108.162.192.0/18",
   "131.0.72.0/22",
   "141.101.64.0/18",
   "162.158.0.0/15",
   "172.64.0.0/13",
   "173.245.48.0/20",
   "188.114.96.0/20",
   "190.93.240.0/20",
   "197.234.240.0/22",
   "198.41.128.0/17",
   "199.27.128.0/21",
   "2400:cb00::/32",
   "2405:8100::/32",
   "2405:b500::/32",
   "2606:4700::/32",
   "2803:f800::/32",
   "2c0f:f248::/32",
   "2a06:98c0::/29",
];
```

Before this PR, the following code would have returned `true` instead of the expected `false` value:

```php
IpUtils::checkIp('blablabla', $ips);
```

This due to the `ip2long` function returning `false` for an invalid IP address, thus returning `"00000000000000000000000000000000"` with the following code:

```php
sprintf('%032b', ip2long('blablabla'));
```

To fix this I simply check if the `$requestIp` variable contains a valid IP address.

Commits
-------

17e418c Verify explicitly that the request IP is a valid IPv4 address
2016-08-19 08:01:17 -07:00
Johann Pardanaud
17e418caf0 Verify explicitly that the request IP is a valid IPv4 address 2016-08-19 08:01:16 -07:00
Nicolas Grekas
8f2f440b77 [VarDumper] Allow dumping subparts of cloned Data structures 2016-08-19 15:47:08 +02:00
Nicolas Grekas
eaeeeaa91f Merge branch '3.1'
* 3.1:
  [HttpKernel] Fix too strict test
2016-08-19 15:46:39 +02:00