Commit Graph

40746 Commits

Author SHA1 Message Date
Nicolas Grekas
f9225109e4 Merge branch '4.4' into 5.0
* 4.4:
  [HttpClient][CurlHttpClient] Fix http_version option usage
  [HttpClient] fix parsing response headers in CurlResponse
  [Console] Do not check for "stty" using "exec" if that function is disabled
  [Console] always use stty when possible to ask hidden questions
2020-07-03 20:06:40 +02:00
Nicolas Grekas
fec23313e7 bug #37469 [Console] always use stty when possible to ask hidden questions (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[Console] always use stty when possible to ask hidden questions

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36565, replaces #36590
| License       | MIT
| Doc PR        | -

The current code doesn't make much sense: we check `hasSttyAvailable()`, and if the answer is `false`, we still use `stty` directly.

This PR relies on `stream_isatty` and equivalent fallback checks to decide if the password can be hidden or not.

Best reviewed [ignoring whitespaces](https://github.com/symfony/symfony/pull/37469/files?w=1).

Commits
-------

055b605e30 [Console] always use stty when possible to ask hidden questions
2020-07-03 20:04:21 +02:00
Nicolas Grekas
ee0e37b47d bug #37486 [HttpClient] fix parsing response headers in CurlResponse (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[HttpClient] fix parsing response headers in CurlResponse

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

This fixes rare notices that look like:
`Argument 2 passed to Symfony\Component\HttpClient\Chunk\DataChunk::__construct() must be of the type string, null given`

I'm unable to provide a test case since I'm unable to provide a simple reproducer.

It happens that curl can call the header-function with multiple lines at once apparently, while most of the time it does so with one at a time.

Commits
-------

eb70fb2f26 [HttpClient] fix parsing response headers in CurlResponse
2020-07-03 14:36:03 +02:00
Thomas Calvet
2676902a77 [HttpClient][CurlHttpClient] Fix http_version option usage 2020-07-03 13:44:40 +02:00
Nicolas Grekas
eb70fb2f26 [HttpClient] fix parsing response headers in CurlResponse 2020-07-03 13:27:27 +02:00
Mponos George
8942d5a5b8
[PropertyAccess] Remove inflector component
[PropertyAccess] Remove inflector component as a requirements since the component is deprecated.
2020-07-03 10:49:29 +03:00
Nicolas Grekas
659699b9ce Merge branch '3.4' into 4.4
* 3.4:
  [Console] Do not check for "stty" using "exec" if that function is disabled
2020-07-01 19:14:21 +02:00
Michael Voříšek
02124b6b3b [Console] Do not check for "stty" using "exec" if that function is disabled 2020-07-01 19:13:52 +02:00
Nicolas Grekas
055b605e30 [Console] always use stty when possible to ask hidden questions 2020-07-01 17:27:01 +02:00
YaFou
4288df4f74
[Console] Fixes question input encoding on Windows 2020-07-01 11:10:10 +02:00
Nicolas Grekas
d51e8d534e Merge branch '5.0' into 5.1
* 5.0:
  [Bridge/Twig] Relax tests
2020-06-30 19:59:51 +02:00
Nicolas Grekas
5c056c18fc Merge branch '4.4' into 5.0
* 4.4:
  [Bridge/Twig] Relax tests
2020-06-30 19:59:45 +02:00
Nicolas Grekas
b9354dc62f Merge branch '3.4' into 4.4
* 3.4:
  [Bridge/Twig] Relax tests
2020-06-30 19:59:39 +02:00
Nicolas Grekas
91f30e0b62 [Bridge/Twig] Relax tests 2020-06-30 19:58:38 +02:00
Nicolas Grekas
85d471bf05 Merge branch '5.0' into 5.1
* 5.0:
  [ErrorHandler] fix throwing from __toString()
  Removed comments and requirements relative to php <5.5 (not supported anymore)
  Fix caching of parent locales file in translator
  fix validating lazy properties that evaluate to null
2020-06-30 19:42:22 +02:00
Nicolas Grekas
23fcbd4dd5 Merge branch '4.4' into 5.0
* 4.4:
  [ErrorHandler] fix throwing from __toString()
  Removed comments and requirements relative to php <5.5 (not supported anymore)
  Fix caching of parent locales file in translator
  fix validating lazy properties that evaluate to null
2020-06-30 19:40:59 +02:00
Nicolas Grekas
450034c986 Merge branch '3.4' into 4.4
* 3.4:
  [ErrorHandler] fix throwing from __toString()
  Removed comments and requirements relative to php <5.5 (not supported anymore)
  fix validating lazy properties that evaluate to null
2020-06-30 19:40:09 +02:00
Nicolas Grekas
52ddce1a74 bug #37447 [Validator] fix validating lazy properties that evaluate to null (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[Validator] fix validating lazy properties that evaluate to null

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37430
| License       | MIT
| Doc PR        |

Commits
-------

776daf28b4 fix validating lazy properties that evaluate to null
2020-06-30 19:35:43 +02:00
Nicolas Grekas
aeb4637341 [ErrorHandler] fix throwing from __toString() 2020-06-30 19:28:29 +02:00
Nicolas Grekas
78e6fc4b42 bug #37449 [Translation] Fix caching of parent locales file in translator (jvasseur)
This PR was merged into the 4.4 branch.

Discussion
----------

[Translation] Fix caching of parent locales file in translator

| Q             | A
| ------------- | ---
| Branch?       | 4.4 (this is the lowest maintained branch with this code)
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       |
| License       | MIT
| Doc PR        |

The `parentLocales` property was probably meant as a cache for the content of the `parents.json` file but instead the content is stored in a local variable and the property stays `null`. This means the file is read on each call to `computeFallbackLocales`.

This PR update the code to what was probably meant to be.

(Ref https://github.com/symfony/symfony/pull/28070)

Commits
-------

02c9ac68a4 Fix caching of parent locales file in translator
2020-06-30 15:55:33 +02:00
Grégoire Pineau
5c5ea7500e Removed comments and requirements relative to php <5.5 (not supported anymore) 2020-06-30 14:50:28 +02:00
Christian Flothmann
eb58ea6a26 Merge branch '5.0' into 5.1
* 5.0:
  fix compatibility with Doctrine DBAL 3.0
  skip test if guesser is not supported
2020-06-29 16:31:29 +02:00
Christian Flothmann
5a91e51154 Merge branch '4.4' into 5.0
* 4.4:
  fix compatibility with Doctrine DBAL 3.0
  skip test if guesser is not supported
2020-06-29 16:24:36 +02:00
Christian Flothmann
f194602c30 minor #37450 [Mime] skip test if guesser is not supported (xabbuh)
This PR was merged into the 4.4 branch.

Discussion
----------

[Mime] skip test if guesser is not supported

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

fixes tests on AppVeyor

Commits
-------

3b77abea65 skip test if guesser is not supported
2020-06-29 16:24:11 +02:00
Christian Flothmann
b17df8cdd7 fix compatibility with Doctrine DBAL 3.0 2020-06-29 15:55:34 +02:00
Christian Flothmann
3b77abea65 skip test if guesser is not supported 2020-06-29 15:46:05 +02:00
Jérôme
02c9ac68a4
Fix caching of parent locales file in translator 2020-06-29 15:31:43 +02:00
Christian Flothmann
776daf28b4 fix validating lazy properties that evaluate to null 2020-06-29 12:55:42 +02:00
Fabien Potencier
f706d6a276 minor #37445 [Security] Added missing license headers (wouterj)
This PR was merged into the 5.1 branch.

Discussion
----------

[Security] Added missing license headers

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

See 3be6ce121b

Seems like the fabbot reviews (and I) missed quite a lot of these in my big security PR.

Commits
-------

ea81b61e5f Added missing license headers
2020-06-29 10:19:14 +02:00
Wouter de Jong
ea81b61e5f Added missing license headers 2020-06-28 20:41:01 +02:00
Nicolas Grekas
009961795b bug #37440 [HttpClient] fix casting TraceableResponse to php streams (nicolas-grekas)
This PR was merged into the 5.1 branch.

Discussion
----------

[HttpClient] fix casting TraceableResponse to php streams

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37393
| License       | MIT
| Doc PR        | -

We'd better replace these checks by an `instanceof` one, but that'd be for master.

Commits
-------

5733289278 [HttpClient] fix casting TraceableResponse to php streams
2020-06-28 17:33:45 +02:00
Nicolas Grekas
4ad5079082 Merge branch '5.0' into 5.1
* 5.0:
  Fix test that fails on old distros
  Fix: compatibility with phpunit 9.3
  [DoctrineBridge] work around Connection::ping() deprecation
  [MimeType] Duplicated MimeType due to PHP Bug
  [DI] fix parsing of argument type=binary in xml
  fix guessing form types for DateTime types
  fix handling typed properties as constraint options
  Fix the 'supports' method argument type of the security voter
  Use the driverConnection executeUpdate method
2020-06-28 17:32:35 +02:00
Nicolas Grekas
55768b18c9 Merge branch '4.4' into 5.0
* 4.4:
  Fix test that fails on old distros
  Fix: compatibility with phpunit 9.3
  [DoctrineBridge] work around Connection::ping() deprecation
  [MimeType] Duplicated MimeType due to PHP Bug
  [DI] fix parsing of argument type=binary in xml
  fix guessing form types for DateTime types
  fix handling typed properties as constraint options
  Use the driverConnection executeUpdate method
2020-06-28 17:28:17 +02:00
Nicolas Grekas
27290714b7 Merge branch '3.4' into 4.4
* 3.4:
  Fix test that fails on old distros
2020-06-28 17:22:55 +02:00
Nicolas Grekas
b344f6d7db Fix test that fails on old distros 2020-06-28 17:22:27 +02:00
Nicolas Grekas
9709500d29 bug #37418 [PhpUnitBridge] Fix compatibility with phpunit 9.3 (Gennadi Janzen)
This PR was merged into the 4.4 branch.

Discussion
----------

[PhpUnitBridge] Fix compatibility with phpunit 9.3

| Q             | A
| ------------- | ---
| Branch?       | master for features / 4.4 <!-- see below -->
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | - <!-- prefix each issue number with "Fix #", if any -->
| License       | MIT
| Doc PR        | -<!-- required for new features -->

In PHPUnit 9.3 some Classes were moved or renamed, to make the PhpunitBridge compatible with PhpUnit 9.3 it necessary to call the new Loader instead of the Registry.
<!--
Replace this notice by a short README for your feature/bugfix. This will help people
understand your PR and can be used as a start for the documentation.

Additionally (see https://symfony.com/releases):
 - Always add tests and ensure they pass.
 - Never break backward compatibility (see https://symfony.com/bc).
 - Bug fixes must be submitted against the lowest maintained branch where they apply
   (lowest branches are regularly merged to upper ones so they get the fixes too.)
 - Features and deprecations must be submitted against branch master.
-->

Commits
-------

de71a12f3b Fix: compatibility with phpunit 9.3
2020-06-28 17:12:52 +02:00
Gennadi Janzen
de71a12f3b Fix: compatibility with phpunit 9.3 2020-06-28 17:12:40 +02:00
Nicolas Grekas
9c6d53a78b bug #37441 [DoctrineBridge] work around Connection::ping() deprecation (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[DoctrineBridge] work around Connection::ping() deprecation

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Follows e603a2e233

Commits
-------

9ccf043c7c [DoctrineBridge] work around Connection::ping() deprecation
2020-06-28 17:08:21 +02:00
Nicolas Grekas
2e2fac8766 Merge branch '3.4' into 4.4
* 3.4:
  [MimeType] Duplicated MimeType due to PHP Bug
  fix guessing form types for DateTime types
  fix handling typed properties as constraint options
2020-06-28 17:07:02 +02:00
Nicolas Grekas
9ccf043c7c [DoctrineBridge] work around Connection::ping() deprecation 2020-06-28 16:59:58 +02:00
Nicolas Grekas
6ef3fee863 bug #37291 [MimeType] Duplicated MimeType due to PHP Bug (juanmrad)
This PR was squashed before being merged into the 3.4 branch.

Discussion
----------

[MimeType] Duplicated MimeType due to PHP Bug

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #... <!-- prefix each issue number with "Fix #", if any -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

## Issue:

Currently there is a PHP bug https://bugs.php.net/bug.php?id=77784 that is causing several MimeTypes to be given as duplicated:

```
application/vnd.openxmlformats-officedocument.spreadsheetml.sheetapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheet
```
Instead of:
```
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
```

This Patch will fix the Issues by checking if a returned MimeType is duplicated and return appropriate MimeType.

This patch should be reverted if the PHP Bug is ever fixed.

Commits
-------

7cb29c8b4b [MimeType] Duplicated MimeType due to PHP Bug
2020-06-28 16:49:48 +02:00
Juan Mrad
7cb29c8b4b [MimeType] Duplicated MimeType due to PHP Bug 2020-06-28 16:49:36 +02:00
Nicolas Grekas
5733289278 [HttpClient] fix casting TraceableResponse to php streams 2020-06-28 16:07:40 +02:00
Nicolas Grekas
b57f414d4a minor #37438 [Notifier] Notifier 5.2 is incompatible with 5.1 bridges (derrabus)
This PR was merged into the 5.1 branch.

Discussion
----------

[Notifier] Notifier 5.2 is incompatible with 5.1 bridges

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | N/A
| License       | MIT
| Doc PR        | N/A

#36611 introduced a breaking change that made the Notifier 5.2 incompatible with all Notifier bridges 5.0-5.1. Because of this, the tests are currently failing on Travis. This PR attempts to fix this.

Commits
-------

1b6bbc2e71 [Notifier] Notifier 5.2 is incompatible with 5.1 bridges.
2020-06-28 15:31:24 +02:00
Alexander M. Turek
1b6bbc2e71 [Notifier] Notifier 5.2 is incompatible with 5.1 bridges. 2020-06-27 23:56:40 +02:00
Nicolas Grekas
75e2ee17b0 [DI] fix minor perf regression when creating non-shared services 2020-06-27 15:48:04 +02:00
Tobias Schultze
70b6a00148 [DI] fix parsing of argument type=binary in xml 2020-06-26 19:49:20 +02:00
Christian Flothmann
9ba90bf1f8 fix guessing form types for DateTime types 2020-06-26 14:15:21 +02:00
Fabien Potencier
9660e6b1e2 bug #37392 [Validator] fix handling typed properties as constraint options (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[Validator] fix handling typed properties as constraint options

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37387
| License       | MIT
| Doc PR        |

Commits
-------

4a66a6098f fix handling typed properties as constraint options
2020-06-25 12:06:33 +02:00
Christian Flothmann
4a66a6098f fix handling typed properties as constraint options 2020-06-25 11:23:26 +02:00
François Pluchino
b8192eecab Fix the 'supports' method argument type of the security voter 2020-06-25 11:01:55 +02:00
Fabien Potencier
73596ef4f7 bug #37358 Directly use the driverConnection executeUpdate method (TristanPouliquen)
This PR was merged into the 4.4 branch.

Discussion
----------

Directly use the driverConnection executeUpdate method

executeUpdate & executeQuery methods do not throw a TableNotFoundException. No need for the try/catch as it is done for executeQuery

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix https://github.com/symfony/symfony/issues/37355
| License       | MIT

As explained in https://github.com/symfony/symfony/issues/37355, when doing a write operation, one should avoid using the `executeQuery` method of a Connection, as Doctrine's MasterSlaveConnection can pick a slave instance (usually read-only) for these operations.

Commits
-------

eec12ecd23 Use the driverConnection executeUpdate method
2020-06-25 10:28:26 +02:00
Robin Chalas
5355172c10 Merge branch '5.0' into 5.1
* 5.0:
  fix merge
  Fix merge
2020-06-24 17:21:02 +02:00
Robin Chalas
2caadf17b4 Merge branch '4.4' into 5.0
* 4.4:
  fix merge
  Fix merge
2020-06-24 17:19:54 +02:00
Robin Chalas
2f23b01b0b fix merge 2020-06-24 17:18:50 +02:00
Fabien Potencier
550ab6fd8c Fix merge 2020-06-24 15:38:36 +02:00
Fabien Potencier
01872c7fe3 Merge branch '5.0' into 5.1
* 5.0:
  [HttpClient] Support for cURL handler objects.
  [HttpClient] unset activity list when creating CurlResponse
  Fixed typo in test name
  add .body wrapper element
  [HttpFondation] Change file extension of "audio/mpeg" from "mpga" to "mp3"
  [VarDumper] Support for cURL handler objects.
  Check whether path is file in DataPart::fromPath()
  [DI][FrameworkBundle] Remove whitelist occurrences
  Avoid accessibility errors on debug toolbar
  update cookie test
2020-06-24 15:36:18 +02:00
Fabien Potencier
d1c1973bb4 Merge branch '4.4' into 5.0
* 4.4:
  [HttpClient] Support for cURL handler objects.
  [HttpClient] unset activity list when creating CurlResponse
  Fixed typo in test name
  add .body wrapper element
  [HttpFondation] Change file extension of "audio/mpeg" from "mpga" to "mp3"
  [VarDumper] Support for cURL handler objects.
  Check whether path is file in DataPart::fromPath()
  [DI][FrameworkBundle] Remove whitelist occurrences
  Avoid accessibility errors on debug toolbar
2020-06-24 15:36:01 +02:00
Fabien Potencier
378894d64d Merge branch '3.4' into 4.4
* 3.4:
  Fixed typo in test name
  [HttpFondation] Change file extension of "audio/mpeg" from "mpga" to "mp3"
  [VarDumper] Support for cURL handler objects.
  [DI][FrameworkBundle] Remove whitelist occurrences
  Avoid accessibility errors on debug toolbar
2020-06-24 15:34:53 +02:00
Fabien Potencier
40152c37ce bug #37389 [HttpFondation] Change file extension of "audio/mpeg" from "mpga" to "mp3" (YaFou)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpFondation] Change file extension of "audio/mpeg" from "mpga" to "mp3"

| Q             | A
| ------------- | ---
| Branch?       | 3.4 <!-- see below -->
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #36068 <!-- prefix each issue number with "Fix #", if any -->
| License       | MIT
| Doc PR        | no
<!--
Replace this notice by a short README for your feature/bugfix. This will help people
understand your PR and can be used as a start for the documentation.

Additionally (see https://symfony.com/releases):
 - Always add tests and ensure they pass.
 - Never break backward compatibility (see https://symfony.com/bc).
 - Bug fixes must be submitted against the lowest maintained branch where they apply
   (lowest branches are regularly merged to upper ones so they get the fixes too.)
 - Features and deprecations must be submitted against branch master.
-->

`.mp3` files are more common than `.mpga` files.

Commits
-------

76a744ad91 [HttpFondation] Change file extension of "audio/mpeg" from "mpga" to "mp3"
2020-06-24 15:26:36 +02:00
Fabien Potencier
de0563d8cd minor #37242 [BrowserKit] update cookie test for cookie values with double quotes (gabrielsolomon)
This PR was merged into the 5.0 branch.

Discussion
----------

[BrowserKit] update cookie test for cookie values with double quotes

| Q             | A
| ------------- | ---
| Branch?       | 5.0
| Bug fix?      | no
| New feature?  | noâ
| Deprecations? | no
| Tickets       | Fix #37161
| License       | MIT
| Doc PR        | symfony/symfony-docs#

Provide a test for cookie values with double quotes

Commits
-------

a50c660823 update cookie test
2020-06-24 11:01:43 +02:00
Alexander M. Turek
7ccc2e1f28 [HttpClient] Support for cURL handler objects. 2020-06-24 10:43:17 +02:00
Fabien Potencier
19668b2a75 bug #37383 [VarDumper] Support for cURL handler objects (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

[VarDumper] Support for cURL handler objects

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #37378
| License       | MIT
| Doc PR        | N/A

Commits
-------

39c1a6373b [VarDumper] Support for cURL handler objects.
2020-06-24 10:40:29 +02:00
Fabien Potencier
aeb0946df0 bug #37395 add .body wrapper element (Nemo64)
This PR was merged into the 4.4 branch.

Discussion
----------

add .body wrapper element

This change makes the notification email responsive.

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | none
| License       | MIT

There was a wrapper missing from the foundation template.
This wrapper applies all `table.body table.container` styles from the foundation stylesheet
including font's and the responsive rules that were missing.

Commits
-------

5b74bbd288 add .body wrapper element
2020-06-24 10:39:13 +02:00
Nicolas Grekas
b249f00519 [HttpClient] unset activity list when creating CurlResponse 2020-06-23 20:33:34 +02:00
Robin Chalas
968bd0ffec Fixed typo in test name 2020-06-23 14:31:34 +02:00
Kévin Dunglas
11da9d3c29
[DI] Fix call to sprintf in ServicesConfigurator::stack() 2020-06-23 12:20:00 +02:00
Marco Pfeiffer
5b74bbd288
add .body wrapper element
This change makes the notification email responsive.
2020-06-23 11:57:07 +02:00
YaFou
76a744ad91
[HttpFondation] Change file extension of "audio/mpeg" from "mpga" to "mp3" 2020-06-23 08:52:36 +02:00
Fabien Potencier
b83d250c53 bug #37368 [Security] Resolve event bubbling of logout + new events in a compiler pass (wouterj)
This PR was merged into the 5.1 branch.

Discussion
----------

[Security] Resolve event bubbling of logout + new events in a compiler pass

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37292
| License       | MIT
| Doc PR        | -

This PR proposes to create a compiler pass that registers listeners on the main `event_dispatcher` on the firewall-specific event dispatcher during compile time. This allows to still specify listener priorities while listening on a bubbled-up event (instead of a fix moment where the event bubbling occurs). It probably also improves performance, as it doesn't use duplicated event dispatching logic to provide event bubbling.

Nothing changes on the user side. I proposed this as a bugfix, as it fixes the bug mentioned in #37292 (not being able to use listener priorities). I did remove a class, which was introduced in 5.1 and is very internal. I think it's safe, but we can also keep it and remove in master.

Commits
-------

f962c26061 Resolve event bubbling logic in a compiler pass
2020-06-23 06:57:21 +02:00
Alexander M. Turek
39c1a6373b [VarDumper] Support for cURL handler objects. 2020-06-22 16:59:03 +02:00
Ondřej Frei
9e3670e140 Check whether path is file in DataPart::fromPath() 2020-06-22 16:55:08 +02:00
Fabien Potencier
33c6766117 minor #37376 [DI][FrameworkBundle] Remove "whitelist" occurrences (chalasr)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI][FrameworkBundle] Remove "whitelist" occurrences

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Commits
-------

12ab96ec9b [DI][FrameworkBundle] Remove whitelist occurrences
2020-06-22 13:34:12 +02:00
Robin Chalas
12ab96ec9b [DI][FrameworkBundle] Remove whitelist occurrences 2020-06-22 11:57:22 +02:00
Fabien Potencier
3aa7426ec2 minor #37372 Avoid accessibility errors on symfony web debug toolbar (alexander-schranz)
This PR was merged into the 3.4 branch.

Discussion
----------

Avoid accessibility errors on symfony web debug toolbar

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | symfony/symfony-docs#...

When for example using the [axe](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd) to test the website for accessibility. Axe will fail because a div element without a role or a parent [landmark](https://www.w3.org/TR/wai-aria-practices/examples/landmarks/HTML5.html) is rendered. To avoid this errors I think we should define it as a specific region.

Commits
-------

223b405168 Avoid accessibility errors on debug toolbar
2020-06-22 10:10:20 +02:00
Nicolas Grekas
0878dd4ac0 Merge branch '5.0' into 5.1
* 5.0:
  Relax tests to unlock change on master
  [DI] fix dumping deprecated private aliases
  [DI] fix typo in Preloader
2020-06-22 09:53:17 +02:00
Nicolas Grekas
cf68c1d810 Merge branch '4.4' into 5.0
* 4.4:
  Relax tests to unlock change on master
  [DI] fix dumping deprecated private aliases
  [DI] fix typo in Preloader
2020-06-22 09:53:10 +02:00
Nicolas Grekas
a9ffbf4ccf Merge branch '3.4' into 4.4
* 3.4:
  Relax tests to unlock change on master
2020-06-22 09:52:44 +02:00
Nicolas Grekas
afe596e16a Relax tests to unlock change on master 2020-06-22 09:47:42 +02:00
Tristan Pouliquen
eec12ecd23 Use the driverConnection executeUpdate method 2020-06-22 09:47:17 +02:00
Alexander Schranz
223b405168
Avoid accessibility errors on debug toolbar 2020-06-21 18:44:56 +02:00
Nicolas Grekas
90f6e11ee8 [DI] fix dumping deprecated private aliases 2020-06-21 18:08:20 +02:00
Nicolas Grekas
1f224763f4 [DI] fix typo in Preloader 2020-06-21 16:44:07 +02:00
Wouter de Jong
f962c26061 Resolve event bubbling logic in a compiler pass
* This removes duplicate event dispatching logic on event bubbling, which
  probably improves performance.
* It allows to still specify listener priorities while listening on a
  bubbled-up event (instead of a fix moment where the event bubbling occurs)
2020-06-21 01:27:36 +02:00
Robin Chalas
269a7a8a77 bug #37366 [SecurityBundle] Fix UserCheckerListener registration with custom user checker (wouterj)
This PR was merged into the 5.1 branch.

Discussion
----------

[SecurityBundle] Fix UserCheckerListener registration with custom user checker

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37365
| License       | MIT
| Doc PR        | -

The user checker listener was wrongly registered on the global event dispatcher, as it can be customized per firewall. This PR fixes that + correctly uses the configured user checker instead of always trying to use `UserCheckerInterface`.

Commits
-------

d63f59036c Fix UserCheckerListener registration with custom user checkers
2020-06-20 15:05:24 +02:00
Wouter de Jong
d63f59036c Fix UserCheckerListener registration with custom user checkers 2020-06-20 14:44:59 +02:00
Robin Chalas
0091864837 bug #37364 [Messenger] fixed queue_name option on amazon sqs connection (ck-developer)
This PR was merged into the 5.1 branch.

Discussion
----------

[Messenger] fixed queue_name option on amazon sqs connection

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37293
| License | MIT

Commits
-------

a6cb24d71f [Messenger] fixed queue_name option amazon sqs connection
2020-06-20 14:04:17 +02:00
c.khedhi@prismamedia.com
a6cb24d71f [Messenger] fixed queue_name option amazon sqs connection 2020-06-20 12:58:38 +02:00
Nicolas Grekas
71b65d4e70 [DI] fix merge 2020-06-20 10:54:56 +02:00
Nicolas Grekas
4e0b7e5d5b Merge branch '5.0' into 5.1
* 5.0:
  [SecurityBundle] Drop cache.security_expression_language definition if invalid
  [DI] disable preload.php on the CLI
  collect all transformation failures
2020-06-20 10:33:33 +02:00
Nicolas Grekas
8afd50ecca Merge branch '4.4' into 5.0
* 4.4:
  [SecurityBundle] Drop cache.security_expression_language definition if invalid
  [DI] disable preload.php on the CLI
  collect all transformation failures
2020-06-20 10:32:35 +02:00
Nicolas Grekas
c815e7632a Merge branch '3.4' into 4.4
* 3.4:
  collect all transformation failures
2020-06-20 10:31:25 +02:00
Robin Chalas
bc96693331 [SecurityBundle] Drop cache.security_expression_language definition if invalid 2020-06-19 21:56:07 +02:00
Nicolas Grekas
50ccf2f1b2 [DI] disable preload.php on the CLI 2020-06-19 15:00:29 +02:00
Christian Flothmann
a9987ce341 collect all transformation failures 2020-06-19 08:23:51 +02:00
Nicolas Grekas
f768dc7aaf fix 2020-06-18 23:37:09 +02:00
Nicolas Grekas
eb150febaf Merge branch '5.0' into 5.1
* 5.0:
  fix test
  Added Unit tests for php 8 union types.
2020-06-18 23:19:28 +02:00
Nicolas Grekas
723be72706 Merge branch '4.4' into 5.0
* 4.4:
  fix test
  Added Unit tests for php 8 union types.
2020-06-18 23:17:00 +02:00
Nicolas Grekas
64f280586b Merge branch '3.4' into 4.4
* 3.4:
  Added Unit tests for php 8 union types.
2020-06-18 22:41:34 +02:00
Nicolas Grekas
e707967ea8 minor #37346 Added Unit tests for php 8 union types (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

Added Unit tests for php 8 union types

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | N/A
| License       | MIT
| Doc PR        | N/A

The missing test cases for #37340.

Commits
-------

2ca8ecdb74 Added Unit tests for php 8 union types.
2020-06-18 22:40:01 +02:00
Nicolas Grekas
8df623e830 [Cache] fix test 2020-06-18 22:36:30 +02:00
Alexander M. Turek
2ca8ecdb74 Added Unit tests for php 8 union types. 2020-06-18 22:30:22 +02:00
Nicolas Grekas
04e6b995d9 [PropertyAccess] fix typo 2020-06-18 22:06:29 +02:00
Nicolas Grekas
eea6abf318 Merge branch '5.0' into 5.1
* 5.0:
  [DI] fix
  Use "composer/package-versions-deprecated" when possible
  Fix
2020-06-18 21:54:27 +02:00
Nicolas Grekas
f3d9cfe8db Merge branch '4.4' into 5.0
* 4.4:
  [DI] fix
  Use "composer/package-versions-deprecated" when possible
  Fix
2020-06-18 21:53:24 +02:00
Nicolas Grekas
d2efe50eee [DI] fix 2020-06-18 21:50:30 +02:00
Nicolas Grekas
03b9ff177d Use "composer/package-versions-deprecated" when possible 2020-06-18 21:48:48 +02:00
Nicolas Grekas
172d6400e3 Merge branch '3.4' into 4.4
* 3.4:
  Fix
2020-06-18 21:38:14 +02:00
Nicolas Grekas
8bbbdbe745 Fix 2020-06-18 21:30:53 +02:00
Nicolas Grekas
01b5b8312b minor #37289 [5.1] Fix support for PHP8 union types (nicolas-grekas)
This PR was merged into the 5.1 branch.

Discussion
----------

[5.1] Fix support for PHP8 union types

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Same as #37340 for 5.1

Commits
-------

dd1b61703f Fix support for PHP8 union types
2020-06-18 21:00:54 +02:00
Nyholm
00682acdea Small update in our internal terminology 2020-06-18 20:43:12 +02:00
Nicolas Grekas
dd1b61703f Fix support for PHP8 union types 2020-06-18 20:40:13 +02:00
Nicolas Grekas
2121c55b02 Merge branch '5.0' into 5.1
* 5.0:
  [VarDumper] fix typo
  Fix support for PHP8 union types
  [FrameworkBundle] preserve dots in query-string when redirecting
  [3.4] Fix support for PHP8 union types
  [PhpUnitBridge] Streamline ansi/no-ansi of composer according to phpunit --colors option
  [3.4] Small update in our internal terminology
  [Cache] fix compat with DBAL v3
  [HttpClient] Convert CurlHttpClient::handlePush() to instance method
  [VarDumper] Fix CliDumper coloration
  [DI] tighten detection of local dirs to prevent false positives
  [FrameworkBundle] preserve dots in query-string when redirecting
  Fix precendence in 4.4
  bumped Symfony version to 3.4.43
  updated VERSION for 3.4.42
  update CONTRIBUTORS for 3.4.42
  updated CHANGELOG for 3.4.42
2020-06-18 20:24:02 +02:00
Nicolas Grekas
3074cb0594 Merge branch '4.4' into 5.0
* 4.4:
  [VarDumper] fix typo
  Fix support for PHP8 union types
  [FrameworkBundle] preserve dots in query-string when redirecting
  [3.4] Fix support for PHP8 union types
  [PhpUnitBridge] Streamline ansi/no-ansi of composer according to phpunit --colors option
  [3.4] Small update in our internal terminology
  [Cache] fix compat with DBAL v3
  [HttpClient] Convert CurlHttpClient::handlePush() to instance method
  [VarDumper] Fix CliDumper coloration
  [DI] tighten detection of local dirs to prevent false positives
  [FrameworkBundle] preserve dots in query-string when redirecting
  Fix precendence in 4.4
  bumped Symfony version to 3.4.43
  updated VERSION for 3.4.42
  update CONTRIBUTORS for 3.4.42
  updated CHANGELOG for 3.4.42
2020-06-18 20:18:56 +02:00
Nicolas Grekas
2eb3c0eb7f [VarDumper] fix typo 2020-06-18 20:15:32 +02:00
Nicolas Grekas
453c3a7187 bug #37268 [Messenger] Fix precedence of DSN options for 4.4 (jderusse)
This PR was merged into the 4.4 branch.

Discussion
----------

[Messenger] Fix precedence of DSN options for 4.4

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | https://github.com/symfony/symfony/pull/37218#discussion_r438779225
| License       | MIT
| Doc PR        | N/A

This PR fix précédence of DSN options over constructor options in all component on branch 4.4

Commits
-------

992205a759 Fix precendence in 4.4
2020-06-18 20:10:55 +02:00
Nicolas Grekas
ab24fb9181 bug #37269 [Lock][Messenger] Fix precedence of DSN options for 5.1 (jderusse)
This PR was squashed before being merged into the 5.1 branch.

Discussion
----------

[Lock][Messenger] Fix precedence of DSN options for 5.1

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | https://github.com/symfony/symfony/pull/37218#discussion_r438779225
| License       | MIT
| Doc PR        | N/A

This PR fix précédence of DSN options over constructor options in all component on branch 5.1

Commits
-------

9670e9ff06 [Lock][Messenger] Fix precedence of DSN options for 5.1
2020-06-18 20:09:38 +02:00
Jérémy Derussé
9670e9ff06 [Lock][Messenger] Fix precedence of DSN options for 5.1 2020-06-18 20:07:42 +02:00
Nicolas Grekas
a6e3789882 bug #37341 [4.4] Fix support for PHP8 union types (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[4.4] Fix support for PHP8 union types

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Same as #37340 for 4.4

Commits
-------

da68e66a99 Fix support for PHP8 union types
2020-06-18 20:03:52 +02:00
Nicolas Grekas
da68e66a99 Fix support for PHP8 union types 2020-06-18 19:59:13 +02:00
Nicolas Grekas
3d0d59de20 [FrameworkBundle] preserve dots in query-string when redirecting 2020-06-18 19:56:41 +02:00
Nicolas Grekas
7eca3a5970 Merge branch '3.4' into 4.4
* 3.4:
  [3.4] Fix support for PHP8 union types
  [PhpUnitBridge] Streamline ansi/no-ansi of composer according to phpunit --colors option
  [3.4] Small update in our internal terminology
  [Cache] fix compat with DBAL v3
  [VarDumper] Fix CliDumper coloration
  [DI] tighten detection of local dirs to prevent false positives
  [FrameworkBundle] preserve dots in query-string when redirecting
  bumped Symfony version to 3.4.43
  updated VERSION for 3.4.42
  update CONTRIBUTORS for 3.4.42
  updated CHANGELOG for 3.4.42
2020-06-18 19:51:13 +02:00
Nicolas Grekas
e09372bcbf [3.4] Fix support for PHP8 union types 2020-06-18 19:32:39 +02:00
Nicolas Grekas
57251cdcdd bug #37275 [DI] tighten detection of local dirs to prevent false positives (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] tighten detection of local dirs to prevent false positives

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36510 and #37150
| License       | MIT
| Doc PR        | -

Commits
-------

b746dd900c [DI] tighten detection of local dirs to prevent false positives
2020-06-18 19:13:26 +02:00
Nicolas Grekas
2290c62047 bug #37090 [PhpUnitBridge] Streamline ansi/no-ansi of composer according to phpunit --colors option (kick-the-bucket)
This PR was squashed before being merged into the 3.4 branch.

Discussion
----------

[PhpUnitBridge] Streamline ansi/no-ansi of composer according to phpunit --colors option

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| License       | MIT

Currently the coloring of composer output is forced in some calls, forced not to be colored in one other call and left for auto in the others.

This change would make it uniform, depending on the --colors option of phpunit provided (or not provided) in the call

Commits
-------

968d6c4276 [PhpUnitBridge] Streamline ansi/no-ansi of composer according to phpunit --colors option
2020-06-18 19:09:06 +02:00
kick-the-bucket
968d6c4276 [PhpUnitBridge] Streamline ansi/no-ansi of composer according to phpunit --colors option 2020-06-18 19:08:53 +02:00
Nicolas Grekas
907ffa0701 bug #36230 [VarDumper] Fix CliDumper coloration on light arrays (l-vo)
This PR was merged into the 3.4 branch.

Discussion
----------

[VarDumper] Fix CliDumper coloration on light arrays

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

When `AbstractDumper::DUMP_LIGHT_ARRAY` is used with the `CliDumper`, the first line (opening bracket) is not colored. When an empty array is dumped (with or without  `AbstractDumper::DUMP_LIGHT_ARRAY`) the array is not colored too. This PR aims to fix that.

Commits
-------

7af3469771 [VarDumper] Fix CliDumper coloration
2020-06-18 18:42:48 +02:00
Nicolas Grekas
c16bb52252 bug #37270 [FrameworkBundle] preserve dots in query-string when redirecting (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] preserve dots in query-string when redirecting

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #29664
| License       | MIT
| Doc PR        | -

Commits
-------

fcc0e2c143 [FrameworkBundle] preserve dots in query-string when redirecting
2020-06-18 18:42:05 +02:00
Nyholm
c143aacd81 [3.4] Small update in our internal terminology 2020-06-18 18:35:04 +02:00
Nicolas Grekas
38c0971bf9 bug #37312 Fix package rename when releasing (94noni)
This PR was merged into the 5.1 branch.

Discussion
----------

Fix package rename when releasing

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix when upgrading my local project to use the package instead of my old code :)
| License       | MIT

---

Related to
a89a2a8893 (diff-bd586be86489d3e4725496bf5d4caf23) friendly ping @fabpot

The package is released at https://packagist.org/packages/symfony/free-mobile-notifier
And thus this needed to be fixed t give proper hint to devs

Thanks

Commits
-------

7a93222259 Fix package rename when releasing
2020-06-18 18:21:30 +02:00
Nicolas Grekas
8c4b49613a [Cache] fix compat with DBAL v3 2020-06-18 17:42:01 +02:00
Christian Scheb
a74a506883 Remove unnecessary null check 2020-06-18 16:13:31 +02:00
Taylor Otwell
14ec6a7659 [HttpFoundation] Allow null in InputBag@set 2020-06-18 01:21:19 +02:00
Mikko Pesari
9497972500 [HttpClient] Convert CurlHttpClient::handlePush() to instance method
Fix #37252
2020-06-18 00:57:36 +03:00
Antoine M
7a93222259 Fix package rename when releasing 2020-06-16 18:25:20 +01:00
Fabien Potencier
bf2fb938be bumped Symfony version to 5.1.3 2020-06-15 16:01:03 +02:00
Fabien Potencier
b551cb4c45
Merge pull request #37288 from fabpot/release-5.1.2
released v5.1.2
2020-06-15 15:51:55 +02:00
Fabien Potencier
04f054e44c updated VERSION for 5.1.2 2020-06-15 15:51:38 +02:00
Nicolas Grekas
d472983f21 Merge branch '5.0' into 5.1
* 5.0:
  [Console] Reset question validator attempts only for actual stdin (bis)
2020-06-15 14:59:21 +02:00
Nicolas Grekas
01095156ad Merge branch '4.4' into 5.0
* 4.4:
  [Console] Reset question validator attempts only for actual stdin (bis)
2020-06-15 14:59:07 +02:00
Nicolas Grekas
867642e337 [Console] Reset question validator attempts only for actual stdin (bis) 2020-06-15 14:37:55 +02:00
Fabien Potencier
5562d5c1ba Merge branch '5.0' into 5.1
* 5.0:
  Make PhpDocExtractor compatible with phpDocumentor v5
  Reset question validator attempts only for actual stdin
  bumped Symfony version to 5.0.11
  updated VERSION for 5.0.10
  updated CHANGELOG for 5.0.10
  bumped Symfony version to 4.4.11
  updated VERSION for 4.4.10
  updated CHANGELOG for 4.4.10
2020-06-15 13:50:15 +02:00
Fabien Potencier
6fff7b3672 Merge branch '4.4' into 5.0
* 4.4:
  Make PhpDocExtractor compatible with phpDocumentor v5
  Reset question validator attempts only for actual stdin
  bumped Symfony version to 4.4.11
  updated VERSION for 4.4.10
  updated CHANGELOG for 4.4.10
2020-06-15 13:49:47 +02:00
Fabien Potencier
05817f1928 bug #37265 [HttpFoundation] use InputBag for Request::$request only if data is coming from a form (nicolas-grekas)
This PR was merged into the 5.1 branch.

Discussion
----------

[HttpFoundation] use InputBag for Request::$request only if data is coming from a form

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37100
| License       | MIT
| Doc PR        | -

Commits
-------

786ba109d0 [HttpFoundation] use InputBag for Request::$request only if data is coming from a form
2020-06-15 13:42:23 +02:00
Wouter de Jong
47869887c0 Fix CookieClearingLogoutListener DI configuration 2020-06-15 10:29:02 +02:00
Laurent VOULLEMIER
7af3469771 [VarDumper] Fix CliDumper coloration
When using AbstractDumper::DUMP_LIGHT_ARRAY
2020-06-15 09:49:39 +02:00
Nicolas Grekas
786ba109d0 [HttpFoundation] use InputBag for Request::$request only if data is coming from a form 2020-06-15 08:52:54 +02:00
Fabien Potencier
52612b1541 bug #37160 Reset question validator attempts only for actual stdin (ostrolucky)
This PR was merged into the 4.4 branch.

Discussion
----------

Reset question validator attempts only for actual stdin

| Q             | A
| ------------- | ---
| Branch?       | 4/4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #37046
| License       | MIT
| Doc PR        |

Let's see what CI says. Works for me locally with phpunit and when running such command manually

Commits
-------

8fe7be4212 Reset question validator attempts only for actual stdin
2020-06-15 07:23:00 +02:00
Fabien Potencier
bb8e66bc5f bug #36975 [PropertyInfo] Make PhpDocExtractor compatible with phpDocumentor v5 (DerManoMann)
This PR was merged into the 4.4 branch.

Discussion
----------

[PropertyInfo] Make PhpDocExtractor compatible with phpDocumentor v5

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36049
| License       | MIT
| Doc PR        | N/A

Version 5 of phpDocumentor introduced some changes to the `getTagsByName()` method that break the `PhpDocExtractor`.

More specific, it now returns an instance of `InvalidTag` instead of `null` when parsing an invalid tag.

Commits
-------

b1f8e5a80a Make PhpDocExtractor compatible with phpDocumentor v5
2020-06-15 07:20:14 +02:00
DerManoMann
b1f8e5a80a Make PhpDocExtractor compatible with phpDocumentor v5
Version 5 of phpDocumentor introduced some changes to the
`getTagsByName()` method that break the `PhpDocExtractor`.
More specific, it now returns an instance of `InvalidTag` instead of
`null` when parsing an invalid tag.
2020-06-15 09:00:35 +12:00
Yonel Ceruto
65efc36e94 fixed prototype block prefixes hierarchy of the CollectionType 2020-06-14 11:52:41 -04:00
Gabriel Ostrolucký
8fe7be4212 Reset question validator attempts only for actual stdin 2020-06-14 17:02:32 +02:00
Yonel Ceruto
a8f2c60368 fixed block prefixes hierarchy of the CollectionType 2020-06-14 09:34:09 -04:00
Nicolas Grekas
b746dd900c [DI] tighten detection of local dirs to prevent false positives 2020-06-14 14:27:25 +02:00
Nicolas Grekas
fcc0e2c143 [FrameworkBundle] preserve dots in query-string when redirecting 2020-06-13 17:55:52 +02:00
Jérémy Derussé
992205a759
Fix precendence in 4.4 2020-06-13 17:35:21 +02:00
Wouter de Jong
49639caeaf [Security] Run functional tests also for the authenticator system 2020-06-13 17:06:42 +02:00
wapplay
485361e847 Fix register csrf protection listener 2020-06-13 17:05:31 +02:00
Fabien Potencier
86c79ce316 bumped Symfony version to 5.1.2 2020-06-12 14:20:44 +02:00
Fabien Potencier
6aafc48ddf updated VERSION for 5.1.1 2020-06-12 13:25:56 +02:00
Fabien Potencier
e5354f4f1b bumped Symfony version to 5.0.11 2020-06-12 13:25:22 +02:00
Fabien Potencier
3b4cc39f18 updated VERSION for 5.0.10 2020-06-12 13:20:19 +02:00
Fabien Potencier
055dd28bb8 bumped Symfony version to 4.4.11 2020-06-12 13:19:16 +02:00
Fabien Potencier
e71a9ff228 updated VERSION for 4.4.10 2020-06-12 13:15:37 +02:00
Fabien Potencier
b30f4c1537 bumped Symfony version to 3.4.43 2020-06-12 13:14:22 +02:00
Fabien Potencier
4d48338b6c updated VERSION for 3.4.42 2020-06-12 12:57:07 +02:00
Gabriel Solomon
a50c660823 update cookie test 2020-06-12 12:22:24 +03:00
Nicolas Grekas
3afa4b2e72 Merge branch '5.0' into 5.1
* 5.0:
  cs
  fix merge
2020-06-12 10:39:51 +02:00
Nicolas Grekas
7b6ffda0b9 cs 2020-06-12 10:39:40 +02:00
Nicolas Grekas
d735b76302 fix merge 2020-06-12 10:38:59 +02:00
Nicolas Grekas
acc88829de Merge branch '5.0' into 5.1
* 5.0:
  fix merge
2020-06-12 10:26:18 +02:00
Nicolas Grekas
15747d3ebb Merge branch '4.4' into 5.0
* 4.4:
  fix merge
2020-06-12 10:26:05 +02:00
Nicolas Grekas
6304b6b11a fix merge 2020-06-12 10:25:05 +02:00
Nicolas Grekas
5b70cc8ac8 Merge branch '5.0' into 5.1
* 5.0:
  fix merge
2020-06-12 10:22:42 +02:00
Nicolas Grekas
8fa1cea06d fix merge 2020-06-12 10:22:28 +02:00
Nicolas Grekas
03bd1bf90a Merge branch '5.0' into 5.1
* 5.0:
  [DependencyInjection][CheckTypeDeclarationsPass] Handle unresolved parameters pointing to environment variables
  switch the context when validating nested forms
  remove unused param from validator service config
  Fix typo
  [HttpKernel] Fix regression where Store does not return response body correctly
  rework form validator tests
  Update AbstractController.php
2020-06-12 10:11:32 +02:00
Nicolas Grekas
6c4695f4ec Merge branch '4.4' into 5.0
* 4.4:
  [DependencyInjection][CheckTypeDeclarationsPass] Handle unresolved parameters pointing to environment variables
  switch the context when validating nested forms
  remove unused param from validator service config
  Fix typo
  [HttpKernel] Fix regression where Store does not return response body correctly
  rework form validator tests
  Update AbstractController.php
2020-06-12 10:11:14 +02:00
Nicolas Grekas
02df1c9b53 Merge branch '3.4' into 4.4
* 3.4:
  switch the context when validating nested forms
  Fix typo
  [HttpKernel] Fix regression where Store does not return response body correctly
  rework form validator tests
  Update AbstractController.php
2020-06-12 10:10:13 +02:00
Thomas Calvet
dac3c8fae8 [DependencyInjection][CheckTypeDeclarationsPass] Handle unresolved parameters pointing to environment variables 2020-06-12 09:37:04 +02:00
Fabien Potencier
1f83212541 bug #37103 [Form] switch the context when validating nested forms (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[Form] switch the context when validating nested forms

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37072
| License       | MIT
| Doc PR        |

Commits
-------

38135de549 switch the context when validating nested forms
2020-06-12 09:33:15 +02:00
Christian Flothmann
38135de549 switch the context when validating nested forms 2020-06-12 09:11:17 +02:00
Tobias Schultze
d75ec21cdb remove unused param from validator service config 2020-06-12 02:09:24 +02:00
Tobias Schultze
bb80fbf931 Merge branch '5.0' into 5.1 2020-06-11 23:53:51 +02:00
Tobias Schultze
00bf63d9fd Merge branch '4.4' into 5.0 2020-06-11 23:53:02 +02:00
Tobias Schultze
2d781ddce6 fix test checking non-existing arg 2020-06-11 23:52:31 +02:00
Tobias Schultze
551f7cfa8d Merge branch '5.0' into 5.1 2020-06-11 23:20:02 +02:00
Tobias Schultze
c704acbf9b Merge branch '4.4' into 5.0 2020-06-11 23:19:34 +02:00
Fabien Potencier
51be09c13c minor #37214 Remove non-existing arg and param from serializer service config (Tobion)
This PR was merged into the 4.4 branch.

Discussion
----------

Remove non-existing arg and param from serializer service config

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       |
| License       | MIT
| Doc PR        |

Leftover from #22741

Commits
-------

d179d71f45 Remove non-existing arg and param from serializer service config
2020-06-11 16:32:27 +02:00
Fabien Potencier
816b6ea6f1 Fix typo 2020-06-11 15:00:25 +02:00
Matthias Pigulla
176e769e5f [HttpKernel] Fix regression where Store does not return response body correctly 2020-06-11 14:59:37 +02:00
Fabien Potencier
b1f2a1409c bug #37193 [DependencyInjection][CheckTypeDeclarationsPass] Always resolve parameters (fancyweb)
This PR was merged into the 4.4 branch.

Discussion
----------

[DependencyInjection][CheckTypeDeclarationsPass] Always resolve parameters

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | https://github.com/symfony/symfony/issues/37166
| License       | MIT
| Doc PR        | -

> Only array parameters are not inlined when dumped.

This is true only when the XML debug container is used, not on a live container that can contain unresolved parameters in the `%my_param%` form. That was my mistake. We have to resolve to get the parameter type.

`$value = [];` was just an improvement to avoid useless parameter resolve btw.

Commits
-------

da0e2c36ef [DependencyInjection][CheckTypeDeclarationsPass] Always resolve parameters
2020-06-11 14:58:51 +02:00
Fabien Potencier
faafec4a04 bug #37044 [DependencyInjection] Apply ExpressionLanguageProviderPass to router.default (wizhippo)
This PR was squashed before being merged into the 5.1 branch.

Discussion
----------

[DependencyInjection] Apply ExpressionLanguageProviderPass to router.default

| Q             | A
| ------------- | ---
| Branch?       |  5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix https://github.com/symfony/symfony/issues/37042
| License       | MIT

Using a `chain_router` usually replaces the `router` and add the `router.default` to it's chain.

This would `addExpressionLanguageProvider` to the default router only as the chain router is not expected to have `addExpressionLanguageProvider` as it is not part of the router interface.

Commits
-------

215ad1f93d [DependencyInjection] Apply ExpressionLanguageProviderPass to router.default
2020-06-11 14:57:51 +02:00
Douglas Hammond
215ad1f93d [DependencyInjection] Apply ExpressionLanguageProviderPass to router.default 2020-06-11 14:57:45 +02:00
Tobias Schultze
d179d71f45 Remove non-existing arg and param from serializer service config 2020-06-11 14:32:28 +02:00
Nicolas Grekas
69c37c0335 bug #37054 [String] Fix ellipsis of truncate when not using cut option (DuboisS)
This PR was merged into the 5.1 branch.

Discussion
----------

[String] Fix ellipsis of truncate when not using cut option

| Q             | A
| ------------- | ---
| Branch?       | 5.1 <!-- see below -->
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | - <!-- prefix each issue number with "Fix #", if any -->
| License       | MIT
| Doc PR        | - <!-- required for new features -->

[Since 5.1](https://symfony.com/blog/new-in-symfony-5-1-string-improvements#keep-the-last-word-when-truncating), we can use a cut option on truncate.
But with this option, we don't have the expected behavior when the entire chain is returned.

Currently:
`u('Lorem Ipsum')->truncate(8, '…', false); // 'Lorem Ipsum...'`
Instead of:
`u('Lorem Ipsum')->truncate(8, '…', false); // 'Lorem Ipsum'`

Thanks to @jmsche for his help.

Commits
-------

a2ee6c6cf4 [String] Fix ellipsis of truncate when not using cut option
2020-06-11 14:17:23 +02:00
Steven Dubois
a2ee6c6cf4 [String] Fix ellipsis of truncate when not using cut option 2020-06-11 14:16:36 +02:00
Thomas Calvet
da0e2c36ef [DependencyInjection][CheckTypeDeclarationsPass] Always resolve parameters 2020-06-10 18:12:11 +02:00
Nicolas Grekas
ff05be06ec [HttpClient] fix offset computation for data chunks 2020-06-10 17:33:47 +02:00
Nicolas Grekas
a7b18ff590 [HttpClient] disable AMP's inactivity timeout, we deal with it on our own already 2020-06-10 17:30:04 +02:00
Fabien Potencier
7c892eedba bug #37176 [Routing] Keeping routes priorities after add a name prefix to the collection (yceruto)
This PR was merged into the 5.1 branch.

Discussion
----------

[Routing] Keeping routes priorities after add a name prefix to the collection

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37089
| License       | MIT
| Doc PR        | -

Commits
-------

10105267b5 kept routes priorities after add a name prefix to the collection
2020-06-10 16:21:57 +02:00
Fabien Potencier
292be5fda8 bug #37140 [Lock] Fixed reading locks from replica set secondary nodes (kralos)
This PR was squashed before being merged into the 5.1 branch.

Discussion
----------

[Lock] Fixed reading locks from replica set secondary nodes

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37139
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/13775

Force lock existence query to use `readPreference=primary` in case the given mongo connection is using any of the following `readPreference`s:

* primaryPreferred
* secondary
* secondaryPreferred
* nearest

Any of the above would fail if a secondary node is queried during a lock release.

Commits
-------

ebf7eaf503 [Lock] Fixed reading locks from replica set secondary nodes
2020-06-10 16:19:12 +02:00
Joe Bennett
ebf7eaf503 [Lock] Fixed reading locks from replica set secondary nodes 2020-06-10 16:18:57 +02:00
Yonel Ceruto
10105267b5 kept routes priorities after add a name prefix to the collection 2020-06-10 07:49:58 -04:00
Robin Chalas
c70241e3d2 bug #37177 [Ldap] fix refreshUser() ignoring extra_fields (arkste)
This PR was squashed before being merged into the 4.4 branch (closes #37177).

Discussion
----------

[Ldap] fix refreshUser() ignoring extra_fields

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? |no
| Tickets       | -
| License       | MIT
| Doc PR        | -

While #31532 introduced `extra_fields` in general, #32824 later added `LdapUser` & `LdapUserProvider` and ignored `extra_fields` on `refreshUser()`.

This PR fixes `refreshUser()` and adds a test which makes sure, that the refreshed ldap user doesn't lose its default values.

Commits
-------

cb8f12996c [Ldap] fix refreshUser() ignoring extra_fields
2020-06-10 10:37:06 +02:00
Arkadius Stefanski
cb8f12996c [Ldap] fix refreshUser() ignoring extra_fields 2020-06-10 10:36:58 +02:00
Fabien Potencier
52161f35c7 [Mailer] Remove an internal annot 2020-06-10 07:55:43 +02:00
Fabien Potencier
f87c993c5c bug #36913 [FrameworkBundle] fix type annotation on ControllerTrait::addFlash() (ThomasLandauer)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] fix type annotation on ControllerTrait::addFlash()

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #28991 Fix #34645
| License       | MIT
| Doc PR        | not yet, see below

Removing `string` type-hint of $message at addFlash()

Closes https://github.com/symfony/symfony/issues/28991 and https://github.com/symfony/symfony/issues/34645

Reasons:

* `addFlash()` is just a convenience shortcut for `FlashBagInterface::add()` which doesn't have the type hint: https://github.com/symfony/symfony/blob/master/src/Symfony/Component/HttpFoundation/Session/Flash/FlashBagInterface.php#L28 . So removing it here improves consistency.

* https://github.com/symfony/symfony/issues/28991#issuecomment-436755949 is a valid use case for having an object as `$message`.

* Twig doesn't have any rendering helpers for the `message`, see https://symfony.com/doc/current/controller.html#flash-messages . And since users have to take care of displaying the `message` themselves, there's no reason to force a string upon them.

* This isn't a real new feature, but it isn't a bugfix either ;-)
* I didn't update `src/**/CHANGELOG.md` yet.
* I'm not sure if it's necessary to update the docs. Maybe a short note https://symfony.com/doc/current/controller.html#flash-messages ?

Commits
-------

dfb4614541 Update AbstractController.php
2020-06-10 03:56:08 +02:00
Fabien Potencier
5cefcc276a bug #37153 [PhpUnitBridge] Fix ExpectDeprecationTrait::expectDeprecation() conflict (fancyweb)
This PR was merged into the 5.1 branch.

Discussion
----------

[PhpUnitBridge] Fix ExpectDeprecationTrait::expectDeprecation() conflict

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | https://github.com/symfony/symfony/issues/37133
| License       | MIT
| Doc PR        | -

ExpectDeprecationTrait::expectDeprecation() must be compatible with TestCase::expectDeprecation(). I'm personally against a renaming on our side because this name is the best.

Commits
-------

ea5bb242fd [PhpUnitBridge] Fix ExpectDeprecationTrait::expectDeprecation() conflict
2020-06-10 03:44:33 +02:00
Fabien Potencier
f88570af2f bug #37162 [Mailer] added the reply-to addresses to the API SES transport request. (ribeiropaulor)
This PR was merged into the 4.4 branch.

Discussion
----------

[Mailer] added the reply-to addresses to the API SES transport request.

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| License       | MIT

The transport was not sending the reply-to addresses to the SES API when using SendEmail API method.

Commits
-------

ee752f90ed [Mailer] added the reply-to addresses to the API SES transport request.
2020-06-10 03:24:15 +02:00
Paulo Ribeiro
ee752f90ed [Mailer] added the reply-to addresses to the API SES transport request.
The transport was not sending the reply-to addresses to the SES API.
2020-06-10 03:24:02 +02:00
Nicolas Grekas
6d6d989dbe bug #37144 [DI] Add check around class_alias for generated proxy classes (enumag)
This PR was merged into the 5.1 branch.

Discussion
----------

[DI] Add check around class_alias for generated proxy classes

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | nofiles -->
| Tickets       | Fix #37059
| License       | MIT
| Doc PR        |

Here is the [requested](https://github.com/symfony/symfony/issues/37059#issuecomment-638633262) fix.

I'd like to note that I consider this kind of a workaround. I don't know why the issue only started to appear with Symfony 5.1 and not before. There might be some other problem hidden somewhere else.

Commits
-------

c8b7459115 Add class_alias for generated proxy classes
2020-06-09 18:10:54 +02:00
Nicolas Grekas
548818d7e9 [HttpClient] improve monitoring of timeouts with AmpHttpClient 2020-06-09 17:53:13 +02:00
Fabien Potencier
d08db0f3f5 Merge branch '5.0' into 5.1
* 5.0:
  [Mime] use fromString when creating a new Adress
2020-06-09 17:07:35 +02:00
Fabien Potencier
748854bad1 Merge branch '4.4' into 5.0
* 4.4:
  [Mime] use fromString when creating a new Adress
2020-06-09 17:07:20 +02:00
Fabien Potencier
5b719d1ee4 bug #37167 [Mime] use fromString when creating a new Address (fabpot)
This PR was merged into the 4.4 branch.

Discussion
----------

[Mime] use fromString when creating a new Address

| Q             | A
| ------------- | ---
| Branch?       | 4.4 <!-- see below -->
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | n/a <!-- prefix each issue number with "Fix #", if any -->
| License       | MIT
| Doc PR        | n/a

When creating an Address, there are two ways right now in 4.4: `Address::create()` which takes an email or an instance of Address and `Address::fromString()` which takes an email or an email+name.

In 4.4, I propose to make `create` supports everything possible. And in 5.2, I will probably propose to deprecate `fromString()`.

Commits
-------

de68787693 [Mime] use fromString when creating a new Adress
2020-06-09 17:06:27 +02:00
Christian Flothmann
f062e08f4d rework form validator tests 2020-06-09 16:48:06 +02:00
Nicolas Grekas
7da0ffd062 Merge branch '5.0' into 5.1
* 5.0:
  [Messenger] fix typo
2020-06-09 16:24:29 +02:00
Nicolas Grekas
bd4a238fb2 Merge branch '4.4' into 5.0
* 4.4:
  [Messenger] fix typo
2020-06-09 16:23:46 +02:00
Nicolas Grekas
749380a399 [Messenger] fix typo 2020-06-09 16:23:13 +02:00
Nicolas Grekas
374e23b967 Merge branch '5.0' into 5.1
* 5.0:
  Correctly use doctrine/dbal v3+
  Correctly use doctrine/dbal v3+
2020-06-09 16:15:34 +02:00
Nicolas Grekas
9bfe5065b7 Merge branch '4.4' into 5.0
* 4.4:
  Correctly use doctrine/dbal v3+
  Correctly use doctrine/dbal v3+
2020-06-09 16:10:15 +02:00
Nicolas Grekas
2ebb63a883 Merge branch '3.4' into 4.4
* 3.4:
  Correctly use doctrine/dbal v3+
2020-06-09 16:07:49 +02:00
Nicolas Grekas
909931d9a4 Correctly use doctrine/dbal v3+ 2020-06-09 16:07:03 +02:00
Nicolas Grekas
4a51827b6d Correctly use doctrine/dbal v3+ 2020-06-09 16:02:17 +02:00
Nicolas Grekas
d5ff9e7d81 Merge branch '5.0' into 5.1
* 5.0:
  [Cache] fix parse error on PHP 5.5
  [Cache] fix compat with doctrine/dbal v3
  [Lock] fix compat with doctrine/dbal v3
2020-06-09 14:11:32 +02:00
Nicolas Grekas
d0a11c7911 Merge branch '4.4' into 5.0
* 4.4:
  [Cache] fix parse error on PHP 5.5
2020-06-09 14:09:45 +02:00
Nicolas Grekas
e1050c9373 Merge branch '3.4' into 4.4
* 3.4:
  [Cache] fix parse error on PHP 5.5
2020-06-09 14:08:55 +02:00
Nicolas Grekas
ef6fc09260 [Cache] fix parse error on PHP 5.5 2020-06-09 14:06:18 +02:00
Nicolas Grekas
e8f4ca1c6d Merge branch '4.4' into 5.0
* 4.4:
  [Cache] fix compat with doctrine/dbal v3
  [Lock] fix compat with doctrine/dbal v3
2020-06-09 13:54:45 +02:00
Nicolas Grekas
1c328c64ad Merge branch '3.4' into 4.4
* 3.4:
  [Cache] fix compat with doctrine/dbal v3
2020-06-09 13:52:05 +02:00
Nicolas Grekas
0f76308929 [Cache] fix compat with doctrine/dbal v3 2020-06-09 13:48:38 +02:00
Nicolas Grekas
7bbbd3dd0d [Lock] fix compat with doctrine/dbal v3 2020-06-09 13:46:03 +02:00
Nicolas Grekas
afefcfd078 Merge branch '5.0' into 5.1
* 5.0:
  minor #37141 [Messenger] fix forward compatibility with Doctrine DBAL 2.11+ (xabbuh)
  fix forward compatibility with Doctrine DBAL 3
  [WebProfilerBundle] Set NullLogger for functional tests
  [Mailer] Fixed generator bug when creating multiple transports using Transport::fromDsn
  [FrameworkBundle] Fix XSD definition
  Update welcome.html.php
  [travis] add nightly to allowed failures
2020-06-09 13:33:28 +02:00
Nicolas Grekas
19228e6740 Merge branch '4.4' into 5.0
* 4.4:
  minor #37141 [Messenger] fix forward compatibility with Doctrine DBAL 2.11+ (xabbuh)
  fix forward compatibility with Doctrine DBAL 3
  [WebProfilerBundle] Set NullLogger for functional tests
  [Mailer] Fixed generator bug when creating multiple transports using Transport::fromDsn
  [FrameworkBundle] Fix XSD definition
  Update welcome.html.php
  [travis] add nightly to allowed failures
2020-06-09 13:33:14 +02:00
Fabien Potencier
5a0645974f minor #37141 [Messenger] fix forward compatibility with Doctrine DBAL 2.11+ (xabbuh)
This PR was merged into the 5.1 branch.

Discussion
----------

[Messenger] fix forward compatibility with Doctrine DBAL 2.11+

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

The methods will be deprecated in 2.11 (see doctrine/dbal#4019), but the forward compatibility layer is only present in 3.0 (see doctrine/dbal#4007).

Commits
-------

bca4f9970b fix forward compatibility with Doctrine DBAL 2.11+
2020-06-09 13:31:06 +02:00
Nicolas Grekas
ae6894c3ed Merge branch '3.4' into 4.4
* 3.4:
  fix forward compatibility with Doctrine DBAL 3
  [WebProfilerBundle] Set NullLogger for functional tests
  [travis] add nightly to allowed failures
2020-06-09 13:29:11 +02:00
Christian Flothmann
316efef8b8 fix forward compatibility with Doctrine DBAL 3 2020-06-09 13:16:53 +02:00
Thomas Calvet
ea5bb242fd [PhpUnitBridge] Fix ExpectDeprecationTrait::expectDeprecation() conflict 2020-06-09 11:56:30 +02:00
Fabien Potencier
de68787693 [Mime] use fromString when creating a new Adress 2020-06-09 11:16:12 +02:00
Thomas Calvet
0b9519975d [WebProfilerBundle] Set NullLogger for functional tests 2020-06-09 10:25:18 +02:00
Ahmed TAILOULOUTE
c5833fa784 [Mailer] Fixed generator bug when creating multiple transports using Transport::fromDsn 2020-06-09 10:20:50 +02:00
JakeFr
b35c81becb fix error with custom function and web profiler routing tab 2020-06-09 09:44:23 +02:00
Fabien Potencier
38ad0063a0 [FrameworkBundle] Fix XSD definition 2020-06-09 09:39:38 +02:00
Jáchym Toušek
c8b7459115
Add class_alias for generated proxy classes 2020-06-09 08:49:31 +02:00
Thomas Landauer
53491b9762 Update welcome.html.php 2020-06-08 20:54:12 +02:00
Nicolas Grekas
bf0b48ad87 [FrameworkBundle] Remove reference to APP_SECRET in MicroKernelTrait 2020-06-08 18:13:49 +02:00
Christian Flothmann
bca4f9970b fix forward compatibility with Doctrine DBAL 2.11+ 2020-06-08 11:16:34 +02:00
Fabien Potencier
9760d37057 bug #37126 [SecurityBundle] Fix the session listener registration under the new authentication manager (johnvandeweghe)
This PR was squashed before being merged into the 5.1 branch.

Discussion
----------

[SecurityBundle] Fix the session listener registration under the new authentication manager

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37119
| License       | MIT
| Doc PR        | N/A

Fixes the logic that adds session listeners for firewalls to properly add them only for statefull firewalls. Adds tests to confirm that it is only added to statefull ones. Also remove unused abstract field on session listener

Commits
-------

936ae9df75 [SecurityBundle] Fix the session listener registration under the new authentication manager
2020-06-08 08:10:18 +02:00
John VanDeWeghe
936ae9df75 [SecurityBundle] Fix the session listener registration under the new authentication manager 2020-06-08 08:10:12 +02:00
Christian Flothmann
aff1ffaeff allow cursor to be used even when STDIN is not defined 2020-06-07 21:47:44 +02:00
Nicolas Grekas
5de548b60e bug #37053 [PropertyAccess] Fix getter call order BC (1ed)
This PR was merged into the 5.1 branch.

Discussion
----------

[PropertyAccess] Fix getter call order BC

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #37052
| License       | MIT
| Doc PR        | -

Property Accessor breaks BC due to a change in the order of calling the getters, see #37052

Commits
-------

8cf80688c7 [PropertyAccess] Fix getter call order BC
2020-06-07 17:47:03 +02:00
Nicolas Grekas
717de3ef87 bug #37117 [Messenger/DoctrineBridge] set column length for mysql 5.6 compatibility (Nemo64)
This PR was merged into the 5.1 branch.

Discussion
----------

[Messenger/DoctrineBridge] set column length for mysql 5.6 compatibility

MySQL 5.6 does not support more than 191 characters when an index is used and when using utf8mb4 as charset.
As a workaround, I define the length of the queue_name field.

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37116
| License       | MIT

Commits
-------

d12190687b set column length for mysql 5.6 compatibility
2020-06-07 17:46:15 +02:00
Nicolas Grekas
a31d761bd8 bug #37127 [Messenger/AmazonSqsBridge] Fixed left-over debug statement (sstok)
This PR was merged into the 5.1 branch.

Discussion
----------

[Messenger/AmazonSqsBridge] Fixed left-over debug statement

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  |
| Deprecations? | no
| Tickets       | Related to #37038
| License       | MIT
| Doc PR        |

I noticed whats properly a left-over debugging statement that blocks the code from further execution. /cc @jderusse can you check this (thanks).

Commits
-------

8b827e46f6 Fixed left-over debug statement
2020-06-07 17:45:39 +02:00
Nicolas Grekas
2ea0a147ce Merge branch '5.0' into 5.1
* 5.0:
  [Mime] Remove unused var
  [HttpClient] fix monitoring timeouts when other streams are active
  [PhpUnitBridge] fix syntax on PHP 5.3
  [PhpUnitBridge] Fix undefined index when output of "composer show" cannot be parsed
  properly cascade validation to child forms
  [PhpUnitBridge] fix undefined var on version 3.4
  Move ajax clear event listener initialization on loadToolbar
  [HttpClient] Throw JsonException instead of TransportException on empty response in Response::toArray()
  take into account the context when preserving empty array objects
  [VarExporter] tfix: s/markAsSkipped/markTestSkipped/
  bumped Symfony version to 5.0.10
  updated VERSION for 5.0.9
  updated CHANGELOG for 5.0.9
  bumped Symfony version to 4.4.10
  updated VERSION for 4.4.9
  updated CHANGELOG for 4.4.9
  bumped Symfony version to 3.4.42
  updated VERSION for 3.4.41
  update CONTRIBUTORS for 3.4.41
  updated CHANGELOG for 3.4.41
2020-06-07 17:42:22 +02:00
Nicolas Grekas
12dce498e1 Merge branch '4.4' into 5.0
* 4.4:
  [Mime] Remove unused var
  [HttpClient] fix monitoring timeouts when other streams are active
  [PhpUnitBridge] fix syntax on PHP 5.3
  [PhpUnitBridge] Fix undefined index when output of "composer show" cannot be parsed
  properly cascade validation to child forms
  [PhpUnitBridge] fix undefined var on version 3.4
  Move ajax clear event listener initialization on loadToolbar
  [HttpClient] Throw JsonException instead of TransportException on empty response in Response::toArray()
  take into account the context when preserving empty array objects
  [VarExporter] tfix: s/markAsSkipped/markTestSkipped/
  bumped Symfony version to 4.4.10
  updated VERSION for 4.4.9
  updated CHANGELOG for 4.4.9
  bumped Symfony version to 3.4.42
  updated VERSION for 3.4.41
  update CONTRIBUTORS for 3.4.41
  updated CHANGELOG for 3.4.41
2020-06-07 17:38:39 +02:00
Nicolas Grekas
3755efd88c bug #37048 [HttpClient] fix monitoring timeouts when other streams are active (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[HttpClient] fix monitoring timeouts when other streams are active

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Commits
-------

d2a53f0bda [HttpClient] fix monitoring timeouts when other streams are active
2020-06-07 17:37:15 +02:00
Nicolas Grekas
1e7f3e26a1 Merge branch '3.4' into 4.4
* 3.4:
  [PhpUnitBridge] fix syntax on PHP 5.3
  [PhpUnitBridge] Fix undefined index when output of "composer show" cannot be parsed
  properly cascade validation to child forms
  [PhpUnitBridge] fix undefined var on version 3.4
  bumped Symfony version to 3.4.42
  updated VERSION for 3.4.41
  update CONTRIBUTORS for 3.4.41
  updated CHANGELOG for 3.4.41
2020-06-07 17:34:22 +02:00
Sebastiaan Stok
8b827e46f6
Fixed left-over debug statement 2020-06-07 11:03:29 +02:00
Marco Pfeiffer
d12190687b set column length for mysql 5.6 compatibility
MySQL 5.6 does not support more than 191 characters when an index is used and when using utf8mb4 as charset.
As a workaround, I define the length of the queue_name field.
2020-06-06 13:22:26 +02:00
Fabien Potencier
86613797d1 [Mime] Remove unused var 2020-06-05 23:43:09 +02:00
Nicolas Grekas
d2a53f0bda [HttpClient] fix monitoring timeouts when other streams are active 2020-06-05 22:14:25 +02:00
Nicolas Grekas
9f3b43ab42 [PhpUnitBridge] fix syntax on PHP 5.3 2020-06-04 17:36:03 +02:00
Fabien Potencier
3e0330fd41 bug #37085 [Form] properly cascade validation to child forms (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[Form] properly cascade validation to child forms

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37025, Fix #37027
| License       | MIT
| Doc PR        |

TODO:

- [x] improve test coverage

Commits
-------

7df5298ddf properly cascade validation to child forms
2020-06-04 14:25:55 +02:00
Thomas Landauer
dfb4614541 Update AbstractController.php
Removing `string` type-hint of $message at addFlash()

Closes https://github.com/symfony/symfony/issues/28991 and https://github.com/symfony/symfony/issues/34645

Reasons:

* `addFlash()` is just a convenience shortcut for `FlashBagInterface::add()` which doesn't have the type hint: https://github.com/symfony/symfony/blob/master/src/Symfony/Component/HttpFoundation/Session/Flash/FlashBagInterface.php#L28 . So removing it here improves consistency.

* https://github.com/symfony/symfony/issues/28991#issuecomment-436755949 is a valid use case for having an object as `$message`.

* Twig doesn't have any rendering helpers for the `message`, see https://symfony.com/doc/current/controller.html#flash-messages . And since users have to take care of displaying the `message` themselves, there's no reason to force a string upon them.
2020-06-04 12:40:01 +02:00
Nicolas Grekas
d3f9b7f833 [PhpUnitBridge] Fix undefined index when output of "composer show" cannot be parsed 2020-06-04 12:28:01 +02:00
Christian Flothmann
7df5298ddf properly cascade validation to child forms 2020-06-04 12:14:17 +02:00
Gábor Egyed
8cf80688c7
[PropertyAccess] Fix getter call order BC 2020-06-04 11:56:18 +02:00
Nicolas Grekas
bd6a06a8b3 [PhpUnitBridge] fix undefined var on version 3.4 2020-06-04 11:02:21 +02:00
Fabien Potencier
e778ea6367 bug #37022 [DependencyInjection] Improve missing package/version deprecation (acrobat)
This PR was merged into the 5.1 branch.

Discussion
----------

[DependencyInjection] Improve missing package/version deprecation

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       |
| License       | MIT
| Doc PR        |

After updating to symfony 5.1 I've got some deprecations related to the missing package/version attributes/options for `deprecated` on services.

But currently it's not clear which bundle/part of the code is triggering the deprecations. The only way for me to track down where they were coming from was by setting a xdebug breakpoint in the `XmlFileLoader` and check the `$file` variable.

So it seemed like a good idea to include the file path in the deprecation message, that way it will be easier for users to know if their code or a bundle (and which) is triggering this deprecation.

Before:
<img width="871" alt="Screenshot 2020-05-31 at 13 51 03" src="https://user-images.githubusercontent.com/1374857/83351609-d0d65600-a345-11ea-9785-3237a3ec2360.png">

After:
<img width="907" alt="Screenshot 2020-05-31 at 13 50 10" src="https://user-images.githubusercontent.com/1374857/83351606-cfa52900-a345-11ea-9617-60d07e46234b.png">

Commits
-------

f603317363 [DependencyInjection] Improve missing package/version deprecation
2020-06-03 10:14:01 +02:00
Fabien Potencier
773b4ef382 bug #37038 Fix invalid char in SQS Headers (jderusse)
This PR was squashed before being merged into the 5.1 branch.

Discussion
----------

Fix invalid char in SQS Headers

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | yes
| Tickets       | https://github.com/symfony/symfony/pull/36525#issuecomment-636658635
| License       | MIT
| Doc PR        | /

From [Amazon documnetation](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html) header's name have constraints:
- only `a-zA-Z0-9_\.-` + not start/end with a `.`
- 256 char

This PR serialize ALL headers in a single SQS Attribute.

Commits
-------

76a18b0b47 Fix invalid char in SQS Headers
2020-06-03 10:07:24 +02:00
Jérémy Derussé
76a18b0b47 Fix invalid char in SQS Headers 2020-06-03 10:07:11 +02:00
Fabien Potencier
d34125436b bug #37047 [SecurityBundle] Only register CSRF protection listener if CSRF is available (wouterj)
This PR was merged into the 5.1 branch.

Discussion
----------

[SecurityBundle] Only register CSRF protection listener if CSRF is available

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | yes
| Tickets       | Fix #37033
| License       | MIT
| Doc PR        | -

I know we're not allowed to add new deprecations in already released versions. However, I don't think anyone is using SecurityBundle's compiler passes except from Symfony itself - so I don't think anyone is affected by this deprecation. The alternatives would be:

* Add a new compiler pass in 5.1 that conditionally registers the CSRF listener
* Do this exact change in 5.2 and...
  * accept a `null` argument in the listener for 5.1
  * or add this to the `RegisterCsrfTokenClearingLogoutHandlerPass` class in 5.1

Commits
-------

2d738b30de Only register CSRF protection listener if CSRF is available
2020-06-03 10:04:58 +02:00
Fabien Potencier
fe61dd5c19 bug #37065 [HttpClient] Throw JsonException instead of TransportException on empty response in Response::toArray() (jeroennoten)
This PR was merged into the 4.4 branch.

Discussion
----------

[HttpClient] Throw JsonException instead of TransportException on empty response in Response::toArray()

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37064
| License       | MIT

Commits
-------

69547d9cfc [HttpClient] Throw JsonException instead of TransportException on empty response in Response::toArray()
2020-06-03 10:00:49 +02:00
Fabien Potencier
2a9edfadd8 bug #37058 [FrameworkBundle] Extension Serializer issue (Korbeil)
This PR was merged into the 5.1 branch.

Discussion
----------

[FrameworkBundle] Extension Serializer issue

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | ???
| License       | MIT
| Doc PR        |

Hi,

When creating a new Symfony project and requiring `symfony/serializer` we have an issue with required service.

Here is a simple reproducer:
![image](https://user-images.githubusercontent.com/944409/83497176-6266d480-a4ba-11ea-98cb-7e354be0a273.png)

This bug was introduced by https://github.com/symfony/symfony/pull/31390

Commits
-------

ab5628f0f4 FrameworkBundle Serializer issue
2020-06-03 09:58:46 +02:00
Bruno BOUTAREL
cf4587b498 Move ajax clear event listener initialization on loadToolbar 2020-06-02 18:20:08 +02:00
Jeroen Noten
69547d9cfc [HttpClient] Throw JsonException instead of TransportException on empty response in Response::toArray() 2020-06-02 15:48:45 +02:00
Fabien Potencier
706ff581fb bug #37056 [DoctrineBridge] register event listeners depending on the installed packages (xabbuh)
This PR was merged into the 5.1 branch.

Discussion
----------

[DoctrineBridge] register event listeners depending on the installed packages

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37045
| License       | MIT
| Doc PR        |

Commits
-------

f61b0097f4 register event listeners depending on the installed packages
2020-06-02 10:47:59 +02:00
Fabien Potencier
ab3772a94e bug #37020 [ExpressionLanguage] reset the internal state when the parser is finished (xabbuh)
This PR was merged into the 5.1 branch.

Discussion
----------

[ExpressionLanguage] reset the internal state when the parser is finished

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

Commits
-------

d58eb020d0 reset the internal state when the parser is finished
2020-06-02 10:46:57 +02:00
Fabien Potencier
73fed65d16 Fix CS 2020-06-02 10:42:14 +02:00
Fabien Potencier
2234a70621 minor #37057 [Validator] simplify the tests (xabbuh)
This PR was merged into the 5.1 branch.

Discussion
----------

[Validator] simplify the tests

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

Commits
-------

cfc6fc8527 simplify the tests
2020-06-02 10:41:45 +02:00
Baptiste Leduc
ab5628f0f4
FrameworkBundle Serializer issue 2020-06-02 10:26:46 +02:00
Christian Flothmann
f61b0097f4 register event listeners depending on the installed packages 2020-06-02 09:33:01 +02:00
Christian Flothmann
98fff21140 take into account the context when preserving empty array objects 2020-06-01 19:29:37 +02:00
Wouter de Jong
2d738b30de Only register CSRF protection listener if CSRF is available 2020-06-01 18:29:48 +02:00
Fabien Potencier
e5b5d9ea14 bug #37031 [Security] Fixed PUBLIC_ACCESS in authenticated sessions (wouterj)
This PR was merged into the 5.1 branch.

Discussion
----------

[Security] Fixed PUBLIC_ACCESS in authenticated sessions

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Found while testing https://github.com/scheb/2fa/pull/8, sorry for not spotting it before the stable release 😞

Currently, authenticated users are denied access for pages that have `PUBLIC_ACCESS` set, as this attribute is only checked when no token was set. It should be checked for both cases.

Commits
-------

0ac530f460 Also check PUBLIC_ACCESS for authenticated tokens
2020-06-01 07:24:47 +02:00
David Prévot
393c9d920a [VarExporter] tfix: s/markAsSkipped/markTestSkipped/ 2020-05-31 15:10:09 -10:00
Wouter de Jong
0ac530f460 Also check PUBLIC_ACCESS for authenticated tokens
Currently, authenticated users are denied access for pages that have
PUBLIC_ACCESS, as this attribute is only checked when no token was set.
2020-05-31 23:41:52 +02:00
Titouan Galopin
e2ce7f5030 Fix enabled_locales behavior 2020-05-31 21:55:44 +02:00
Jeroen Thora
f603317363
[DependencyInjection] Improve missing package/version deprecation 2020-05-31 13:36:45 +02:00
Christian Flothmann
d58eb020d0 reset the internal state when the parser is finished 2020-05-31 09:33:39 +02:00
Christian Flothmann
cfc6fc8527 simplify the tests 2020-05-31 09:21:25 +02:00
Fabien Potencier
2af156d6fe bumped Symfony version to 5.1.1 2020-05-31 08:17:42 +02:00
Fabien Potencier
70780fc68b updated VERSION for 5.1.0 2020-05-31 08:14:18 +02:00
Fabien Potencier
779a0d5453 bumped Symfony version to 5.0.10 2020-05-31 08:13:19 +02:00
Fabien Potencier
0bf2da0734 updated VERSION for 5.0.9 2020-05-31 07:30:12 +02:00
Fabien Potencier
d45883fb7b bumped Symfony version to 4.4.10 2020-05-31 07:29:28 +02:00
Fabien Potencier
8e93e5bec1 updated VERSION for 4.4.9 2020-05-31 07:25:51 +02:00
Fabien Potencier
3519647496 bumped Symfony version to 3.4.42 2020-05-31 07:24:17 +02:00
Fabien Potencier
8b909cef4b updated VERSION for 3.4.41 2020-05-31 07:14:17 +02:00
Nicolas Grekas
af444f8aaf bug #37009 [Validator] use "allowedVariables" to configure the ExpressionLanguageSyntax constraint (xabbuh)
This PR was merged into the 5.1 branch.

Discussion
----------

[Validator] use "allowedVariables" to configure the ExpressionLanguageSyntax constraint

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix symfony/symfony-docs#13669
| License       | MIT
| Doc PR        |

Commits
-------

4807dab305 [Validator] use "allowedVariables" to configure the ExpressionLanguageSyntax constraint
2020-05-30 23:58:16 +02:00
Christian Flothmann
4807dab305 [Validator] use "allowedVariables" to configure the ExpressionLanguageSyntax constraint 2020-05-30 23:56:41 +02:00
Nicolas Grekas
3e05f1dafe Merge branch '5.0' into 5.1
* 5.0:
  [Security] Fixed AbstractToken::hasUserChanged()
  [DI] fix typo
2020-05-30 23:52:37 +02:00
Nicolas Grekas
41b95952d3 Merge branch '4.4' into 5.0
* 4.4:
  [Security] Fixed AbstractToken::hasUserChanged()
  [DI] fix typo
2020-05-30 23:52:15 +02:00
Nicolas Grekas
bdb01db3dc bug #37008 [Security] Fixed AbstractToken::hasUserChanged() (wouterj)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Security] Fixed AbstractToken::hasUserChanged()

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36989
| License       | MIT
| Doc PR        | -

This PR completely reverts #35944.

That PR tried to fix a BC break (ref #35941, #35509) introduced by #31177. However, this broke many authentications (ref #36989), as the User is serialized in the session (as hinted by @stof). Many applications don't include the `roles` property in the serialization (at least, the MakerBundle doesn't include it).

In 5.2, we should probably deprecate having different roles in token and user, which fixes the BC breaks all together.

Commits
-------

f297beb42c [Security] Fixed AbstractToken::hasUserChanged()
2020-05-30 23:50:18 +02:00
Wouter de Jong
f297beb42c [Security] Fixed AbstractToken::hasUserChanged() 2020-05-30 23:50:11 +02:00
Nicolas Grekas
d9506ab843 Merge branch '3.4' into 4.4
* 3.4:
  [DI] fix typo
2020-05-30 23:49:23 +02:00
Nicolas Grekas
308f28678c [PropertyAccess] fix merge 2020-05-30 23:17:32 +02:00
Nicolas Grekas
fa31260e5e [DI] fix typo 2020-05-30 23:06:01 +02:00
Nicolas Grekas
51da6239ba Merge branch '5.0' into 5.1
* 5.0:
  Fix abstract method name in PHP doc block
  Various cleanups
  [HttpClient] fix issues in tests
  Fixes sprintf(): Too few arguments in form transformer
  [Console] Fix QuestionHelper::disableStty()
  [Validator] Use Mime component to determine mime type for file validator
  validate subforms in all validation groups
  Update Hungarian translations
  Add meaningful message when Process is not installed (ProcessHelper)
  [PropertyAccess] Fix TypeError parsing again.
  [TwigBridge] fix fallback html-to-txt body converter
  [Security/Http] fix merge
  [ErrorHandler] fix setting $trace to null in FatalError
  [Form] add missing Czech validators translation
  [Validator] add missing Czech translations
  never directly validate Existence (Required/Optional) constraints
2020-05-30 22:35:19 +02:00
Nicolas Grekas
527f3f305e Merge branch '4.4' into 5.0
* 4.4:
  Fix abstract method name in PHP doc block
  Various cleanups
  [HttpClient] fix issues in tests
  Fixes sprintf(): Too few arguments in form transformer
  [Console] Fix QuestionHelper::disableStty()
  [Validator] Use Mime component to determine mime type for file validator
  validate subforms in all validation groups
  Update Hungarian translations
  Add meaningful message when Process is not installed (ProcessHelper)
  [PropertyAccess] Fix TypeError parsing again.
  [TwigBridge] fix fallback html-to-txt body converter
  [Form] add missing Czech validators translation
  [Validator] add missing Czech translations
  never directly validate Existence (Required/Optional) constraints
2020-05-30 22:12:43 +02:00
Nicolas Grekas
143718c750 Merge branch '3.4' into 4.4
* 3.4:
  Fix abstract method name in PHP doc block
2020-05-30 22:07:26 +02:00
Nicolas Grekas
79f80d361c minor #37015 Fix abstract method name in PHP doc block (l-vo)
This PR was merged into the 3.4 branch.

Discussion
----------

Fix abstract method name in PHP doc block

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

Commits
-------

d6966c3147 Fix abstract method name in PHP doc block
2020-05-30 22:07:07 +02:00
Nicolas Grekas
282cafb093 Merge branch '3.4' into 4.4
* 3.4:
  Various cleanups
2020-05-30 22:06:45 +02:00
Laurent VOULLEMIER
d6966c3147
Fix abstract method name in PHP doc block 2020-05-30 21:50:06 +02:00
Nicolas Grekas
d8f282edca Various cleanups 2020-05-30 20:58:05 +02:00
Nicolas Grekas
255e9117a0 Merge branch '3.4' into 4.4
* 3.4:
  Fixes sprintf(): Too few arguments in form transformer
  [Console] Fix QuestionHelper::disableStty()
  validate subforms in all validation groups
  Update Hungarian translations
  Add meaningful message when Process is not installed (ProcessHelper)
  [PropertyAccess] Fix TypeError parsing again.
  [Form] add missing Czech validators translation
  [Validator] add missing Czech translations
  never directly validate Existence (Required/Optional) constraints
2020-05-30 20:50:54 +02:00
Nicolas Grekas
84081adbf7 bug #36894 [Validator] never directly validate Existence (Required/Optional) constraints (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[Validator] never directly validate Existence (Required/Optional) constraints

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36637 #36723
| License       | MIT
| Doc PR        |

Using `Optional` or `Required` like "regular" constraints does not make any sense, but doing so didn't break before #36365. I suggest to ignore them for now and deprecate using them outside the `Collection` constraint in 5.2.

Commits
-------

d333aae187 never directly validate Existence (Required/Optional) constraints
2020-05-30 20:43:38 +02:00
Nicolas Grekas
8e40814164 bug #37007 [Console] Fix QuestionHelper::disableStty() (chalasr)
This PR was merged into the 3.4 branch.

Discussion
----------

[Console] Fix QuestionHelper::disableStty()

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no>
| Tickets       | -
| License       | MIT
| Doc PR        | -

We broke it when adding `Terminal::hasSttyAvailable()`.
Let's fix it on 3.4 and move it to terminal on master, as suggested in #36977

Commits
-------

5d93b61278 [Console] Fix QuestionHelper::disableStty()
2020-05-30 20:43:03 +02:00
Nicolas Grekas
ca66e6cede minor #37003 [PropertyAccess] Fix TypeError parsing again (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

[PropertyAccess] Fix TypeError parsing again

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

Apparently, the format of `TypeError`s has changed again in php8. While investigating, I noticed our error message parsing is not handling anonymous classes well, so I've added some test cases for them.

I chose a fuzzier regular expression to parse the expected return type from the error message. Additionally, I'm checking the stack trace if the caught `TypeError` is really caused by the accessor call.

Commits
-------

03b4e98630 [PropertyAccess] Fix TypeError parsing again.
2020-05-30 20:42:19 +02:00
Nicolas Grekas
2e8ae40183 bug #36865 [Form] validate subforms in all validation groups (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[Form] validate subforms in all validation groups

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36852
| License       | MIT
| Doc PR        |

Commits
-------

b819d94d14 validate subforms in all validation groups
2020-05-30 20:41:29 +02:00
Nicolas Grekas
a337ba5547 [HttpClient] fix issues in tests 2020-05-30 20:33:03 +02:00
Pedro Casado
ff7d3f4f01 Fixes sprintf(): Too few arguments in form transformer 2020-05-30 19:48:24 +02:00
Robin Chalas
5d93b61278 [Console] Fix QuestionHelper::disableStty() 2020-05-29 16:49:42 +02:00
Pierre du Plessis
472883313f
[Validator] Use Mime component to determine mime type for file validator 2020-05-29 14:10:59 +02:00
Christian Flothmann
b819d94d14 validate subforms in all validation groups 2020-05-29 11:57:12 +02:00
Gábor Egyed
1614595424
Update Hungarian translations 2020-05-29 09:47:21 +02:00
Laurent VOULLEMIER
3ab76e40ff Add meaningful message when Process is not installed (ProcessHelper) 2020-05-29 05:22:46 +02:00
Fabien Potencier
2ff26b7ce8 bug #36990 [Messenger] Change the default notify timeout value for PostgreSQL (fabpot)
This PR was merged into the 5.1 branch.

Discussion
----------

[Messenger] Change the default notify timeout value for PostgreSQL

| Q             | A
| ------------- | ---
| Branch?       | 5.1 <!-- see below -->
| Bug fix?      | yes-ish
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | n/a <!-- prefix each issue number with "Fix #", if any -->
| License       | MIT
| Doc PR        | n/a

The default value of 0 means that notify is kind of disable and that incurs many SQL requests. 10 minutes is kind of arbitrary but seems to be a good balance between waiting for a message (blocking) and trying again later in case of an issue.

Commits
-------

d9decf9da2 [Messenger] Change the default notify timeout value for PostgreSQL
2020-05-29 05:19:22 +02:00
Fabien Potencier
d9decf9da2 [Messenger] Change the default notify timeout value for PostgreSQL 2020-05-29 05:17:08 +02:00
Alexander M. Turek
03b4e98630 [PropertyAccess] Fix TypeError parsing again. 2020-05-29 02:04:36 +02:00
Fabien Potencier
96d2d19de2 bug #36995 [TwigBridge] fix fallback html-to-txt body converter (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[TwigBridge] fix fallback html-to-txt body converter

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Right now, the content of the `<head>` and `<style>` are dumped as text. This fixes it.

Of course, use `league/html-to-markdown` if you need a better parser.

Commits
-------

6f59d60508 [TwigBridge] fix fallback html-to-txt body converter
2020-05-28 15:43:01 +02:00
Nicolas Grekas
6f59d60508 [TwigBridge] fix fallback html-to-txt body converter 2020-05-28 15:20:36 +02:00
Nicolas Grekas
8bbf62ea16 Merge branch '4.4' into 5.0
* 4.4:
  [Security/Http] fix merge
  [ErrorHandler] fix setting $trace to null in FatalError
2020-05-28 14:17:48 +02:00
Nicolas Grekas
15d4f7ac04 [Security/Http] fix merge 2020-05-28 14:17:38 +02:00
Nicolas Grekas
aa50c9287c [ErrorHandler] fix setting $trace to null in FatalError 2020-05-28 12:39:14 +02:00
Nicolas Grekas
50dda4c9a7 Merge branch '5.0' into 5.1
* 5.0:
  Handle fetch mode deprecation of DBAL 2.11.
2020-05-28 11:10:22 +02:00
Nicolas Grekas
f5673905d5 Merge branch '4.4' into 5.0
* 4.4:
  Handle fetch mode deprecation of DBAL 2.11.
2020-05-28 11:07:30 +02:00
Nicolas Grekas
5fe0f9490e minor #36992 Handle fetch mode deprecation of DBAL 2.11 (derrabus)
This PR was merged into the 4.4 branch.

Discussion
----------

Handle fetch mode deprecation of DBAL 2.11

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | N/A
| License       | MIT
| Doc PR        | N/A

Continuation of #36987 on the 4.4 branch.

Commits
-------

1385213a9a Handle fetch mode deprecation of DBAL 2.11.
2020-05-28 10:58:00 +02:00
Martin Hujer
afdda5d764 [Form] add missing Czech validators translation 2020-05-28 10:39:10 +02:00
Alexander M. Turek
1385213a9a Handle fetch mode deprecation of DBAL 2.11. 2020-05-28 10:27:51 +02:00
Nicolas Grekas
f36ec7cc81 Merge branch '5.0' into 5.1
* 5.0:
  Handle fetch mode deprecation of DBAL 2.11.
  Fixed handling of CSRF logout error
  [WebProfilerBundle] changed label of memory usage in time panel (Mb into MiB)
  [DotEnv][WebLink][Templating][ErrorHandler] Updated README with minimal example
2020-05-28 10:20:44 +02:00
Nicolas Grekas
da25ef172d Merge branch '4.4' into 5.0
* 4.4:
  Handle fetch mode deprecation of DBAL 2.11.
  Fixed handling of CSRF logout error
  [WebProfilerBundle] changed label of memory usage in time panel (Mb into MiB)
  [DotEnv][WebLink][Templating][ErrorHandler] Updated README with minimal example
2020-05-28 10:20:26 +02:00
Nicolas Grekas
dfe8c816a6 Merge branch '3.4' into 4.4
* 3.4:
  Handle fetch mode deprecation of DBAL 2.11.
  Fixed handling of CSRF logout error
2020-05-28 10:15:49 +02:00
Fabien Potencier
8861ee18a2 minor #36979 [Validator] Add missing translations for cs locale (Czech) (mhujer)
This PR was merged into the 3.4 branch.

Discussion
----------

[Validator] Add missing translations for cs locale (Czech)

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| License       | MIT

Is it enough to submit this only against 3.4 to have it included also in 5.1 version?

Commits
-------

3d18c1c185 [Validator] add missing Czech translations
2020-05-28 10:15:44 +02:00
Alexander M. Turek
ed518551e1 Handle fetch mode deprecation of DBAL 2.11. 2020-05-28 09:55:04 +02:00
Wouter de Jong
e3d9b259e0 Fixed security-* package dependencies 2020-05-27 21:00:01 +02:00
Martin Hujer
3d18c1c185 [Validator] add missing Czech translations 2020-05-27 12:08:15 +02:00
Dmitriy Derepko
5db0a8bf4b [Contracts/Deprecation] fix composer.json for PHP 8 2020-05-27 10:34:37 +02:00
Wouter de Jong
50348f2eb7 Fixed handling of CSRF logout error 2020-05-26 17:30:38 +02:00
Loïc Beurlet
a91204a79d [WebProfilerBundle] changed label of memory usage in time panel (Mb into MiB) 2020-05-26 14:58:50 +02:00
Wouter de Jong
f3b8a58513 [DotEnv][WebLink][Templating][ErrorHandler] Updated README with minimal example 2020-05-26 11:42:42 +02:00
Fabien Potencier
9a16c8ef27 bumped Symfony version to 5.1.0 2020-05-26 09:39:17 +02:00
Fabien Potencier
5715e6e4f0 updated VERSION for 5.1.0-RC2 2020-05-26 09:22:08 +02:00
Fabien Potencier
7f6934c257 bug #36966 Fix extra SQL support in Doctrine migrations (fabpot)
This PR was merged into the 5.1 branch.

Discussion
----------

Fix extra SQL support in Doctrine migrations

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | n/a
| License       | MIT
| Doc PR        | n/a

/cc @weaverryan

Commits
-------

1d1f3e1cd4 Fix extra SQL support in Doctrine migrations
2020-05-26 09:17:46 +02:00
Fabien Potencier
1d1f3e1cd4 Fix extra SQL support in Doctrine migrations 2020-05-26 08:12:19 +02:00
Nicolas Grekas
1ac069de0f [HttpClient] fix management of shorter-than-requested timeouts with AmpHttpClient 2020-05-25 19:37:45 +02:00
Nicolas Grekas
780c57672b Merge branch '5.0' into 5.1
* 5.0:
  Allow email message to have "To", "Cc", or "Bcc" header to be valid
  [FrameworkBundle] Removed detection of Serializer < 3.2
  Update pull request template for 5.1.
  [Security/Core] fix PHP8 deprecation
2020-05-25 14:33:44 +02:00
Nicolas Grekas
2c262df4ef Merge branch '4.4' into 5.0
* 4.4:
  Allow email message to have "To", "Cc", or "Bcc" header to be valid
  [FrameworkBundle] Removed detection of Serializer < 3.2
  Update pull request template for 5.1.
  [Security/Core] fix PHP8 deprecation
2020-05-25 14:33:25 +02:00
Nicolas Grekas
6a8b22d3b1 Merge branch '3.4' into 4.4
* 3.4:
  [FrameworkBundle] Removed detection of Serializer < 3.2
  Update pull request template for 5.1.
2020-05-25 14:18:50 +02:00
Nicolas Grekas
92adc3f0e5 [Lock] fix test 2020-05-25 13:55:11 +02:00
Javier Eguiluz
835712747d [Security] Updated a deprecation message 2020-05-25 11:48:26 +02:00
Ernest Hymel
35b7e1cb9a Allow email message to have "To", "Cc", or "Bcc" header to be valid 2020-05-25 07:42:33 +02:00
Alexander M. Turek
7f3132ebe3 [FrameworkBundle] Fix MicroKernelTrait for php 8 2020-05-24 23:59:22 +02:00
Nicolas Grekas
bf43fa3b34 minor #36941 [HttpFoundation] Avoid TypeError when calling \SessionHandlerInterface::gc() (derrabus)
This PR was merged into the 5.1 branch.

Discussion
----------

[HttpFoundation] Avoid TypeError when calling \SessionHandlerInterface::gc()

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

This should fix the remaining red php 8 test of the HttpFoundation suite.

Commits
-------

12f734d8b3 [HttpFoundation] Avoid TypeError when calling \SessionHandlerInterface::gc().
2020-05-24 20:56:05 +02:00
Alexander M. Turek
9badd71687 [FrameworkBundle] Removed detection of Serializer < 3.2 2020-05-24 17:32:05 +02:00
Alexander M. Turek
b27b535126 [DependencyInjection] Fixed tests for wither with static return type. 2020-05-24 17:04:36 +02:00
Alexander M. Turek
12f734d8b3 [HttpFoundation] Avoid TypeError when calling \SessionHandlerInterface::gc(). 2020-05-24 14:18:07 +02:00
Nicolas Grekas
5233cb96f4 bug #36938 Don't call method_exists() with non-objects. (derrabus)
This PR was merged into the 5.1 branch.

Discussion
----------

Don't call method_exists() with non-objects.

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

Followup to #36901.

Commits
-------

9efb442ce5 Don't call method_exists() with non-objects.
2020-05-24 12:54:01 +02:00
Alexander M. Turek
9efb442ce5 Don't call method_exists() with non-objects. 2020-05-24 12:15:36 +02:00
Nicolas Grekas
c0d4617820 [Lock] skip tests when ext-mongo is not installed 2020-05-24 12:09:11 +02:00
Nicolas Grekas
aa53bdb77b [Security/Core] fix PHP8 deprecation 2020-05-24 11:45:24 +02:00
Nicolas Grekas
e3069df98f bug #36936 [FrameworkBundle] don't use abstract methods in MicroKernelTrait, their semantics changed in PHP 8 (nicolas-grekas)
This PR was merged into the 5.1 branch.

Discussion
----------

[FrameworkBundle] don't use abstract methods in MicroKernelTrait, their semantics changed in PHP 8

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

In PHP 8, abstract methods on traits are now enforcing that their using classes match the signature.

But this is not the semantics we need in this trait: we want to allow ppl to use a different type of configurators, to provide extensibility of the DSL each provide.

This makes nightly job fail with fatal error currently.

There is no other options here.

/cc @nikic FYI

Commits
-------

4473f454ca [FrameworkBundle] don't use abstract methods in MicroKernelTrait, their semantics changed in PHP 8
2020-05-24 11:40:24 +02:00
Alexander M. Turek
e3aa78fd51 [HttpClient] Adjust AmpResponse to the stricter trait handling in php 8. 2020-05-24 11:25:47 +02:00
Nicolas Grekas
4473f454ca [FrameworkBundle] don't use abstract methods in MicroKernelTrait, their semantics changed in PHP 8 2020-05-24 11:24:07 +02:00
Nicolas Grekas
6868f6cd1a Merge branch '5.0' into 5.1
* 5.0:
  [travis] display deprecations in nightly jobs
2020-05-24 10:59:54 +02:00
Nicolas Grekas
466b70d655 Merge branch '4.4' into 5.0
* 4.4:
  [travis] display deprecations in nightly jobs
2020-05-24 10:58:00 +02:00
Nicolas Grekas
2ed4e0efce Merge branch '5.0' into 5.1
* 5.0:
  Parse and render anonymous classes correctly on php 8
  Enable APCu for the php 8 build.
  [Process] Fix failing test on php 8.
  [HttpKernel] fix test
  Make PHP 8 green on Travis
  Revert "[Cache] allow DBAL v3"
  [PropertyAccessor] Added missing property path on php 8.
  Don't execute tests with DBAL 2.x on php 8.
2020-05-24 10:49:09 +02:00
Nicolas Grekas
49eb5c9c1f Merge branch '4.4' into 5.0
* 4.4:
  Parse and render anonymous classes correctly on php 8
  Enable APCu for the php 8 build.
  [Process] Fix failing test on php 8.
  [HttpKernel] fix test
  Make PHP 8 green on Travis
  Revert "[Cache] allow DBAL v3"
  [PropertyAccessor] Added missing property path on php 8.
  Don't execute tests with DBAL 2.x on php 8.
2020-05-24 10:40:42 +02:00
Nicolas Grekas
6d02565ea7 bug #36914 Parse and render anonymous classes correctly on php 8 (derrabus)
This PR was merged into the 4.4 branch.

Discussion
----------

Parse and render anonymous classes correctly on php 8

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

The format of the value that `get_class()` returns for anonymous classes has changed in php 8. This PR attempts to detect both formats, with the help of the PHP80 polyfill where possible.

Commits
-------

9d702fd94b Parse and render anonymous classes correctly on php 8
2020-05-24 10:35:29 +02:00
Alexander M. Turek
9d702fd94b Parse and render anonymous classes correctly on php 8 2020-05-24 10:33:35 +02:00
Alexander M. Turek
98e5105bd3 [Process] Fix failing test on php 8. 2020-05-23 21:47:49 +02:00
Nicolas Grekas
5ebcd26f06 [HttpKernel] fix test 2020-05-23 19:37:50 +02:00
Nicolas Grekas
7b871133e9 Merge branch '3.4' into 4.4
* 3.4:
  Make PHP 8 green on Travis
2020-05-23 19:20:05 +02:00
Nicolas Grekas
571d46cf01 Make PHP 8 green on Travis 2020-05-23 19:05:51 +02:00
Nicolas Grekas
9de714c3d4 minor #36928 [PropertyAccessor] Added missing property path on php 8 (derrabus)
This PR was merged into the 4.4 branch.

Discussion
----------

[PropertyAccessor] Added missing property path on php 8

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

This PR adds the property path to the exception message to fix failing tests on php 8.

Commits
-------

6a73bcdb8e [PropertyAccessor] Added missing property path on php 8.
2020-05-23 18:30:14 +02:00
Nicolas Grekas
896b69c907 Revert "[Cache] allow DBAL v3"
This reverts commit d12b3b6a72.
2020-05-23 18:25:19 +02:00
Alexander M. Turek
6a73bcdb8e [PropertyAccessor] Added missing property path on php 8. 2020-05-23 17:44:24 +02:00
Alexander M. Turek
7dc3f9cb42 Don't execute tests with DBAL 2.x on php 8. 2020-05-23 17:32:20 +02:00
Nicolas Grekas
8dfac5c3b9 Merge branch '5.0' into 5.1
* 5.0:
  [BrowserKit] fix bad merge
2020-05-23 15:13:03 +02:00
Nicolas Grekas
fceea7ce01 [BrowserKit] fix bad merge 2020-05-23 15:12:54 +02:00
Nicolas Grekas
56faca9c38 Merge branch '5.0' into 5.1
* 5.0: (28 commits)
  [Cache] $lifetime cannot be null
  [Serializer] minor cleanup
  fix merge
  Run PHP 8 as 7.4.99
  Remove calls to deprecated ReflectionParameter::getClass().
  [VarDumper] fix PHP 8 support
  Add php 8 to travis.
  [Cache] Accessing undefined constants raises an Error in php8
  [Cache] allow DBAL v3
  Skip Doctrine DBAL on php 8 until we have a compatible version.
  [DomCrawler] Catch expected ValueError.
  Made method signatures compatible with their corresponding traits.
  [ErrorHandler] Apply php8 fixes from Debug component.
  [DomCrawler] Catch expected ValueError.
  [Validator] Catch expected ValueError.
  [VarDumper] ReflectionFunction::isDisabled() is deprecated.
  [BrowserKit] Raw body with custom Content-Type header
  [PropertyAccess] Parse php 8 TypeErrors correctly.
  [Intl] Fix call to ReflectionProperty::getValue() for static properties.
  [HttpKernel] Prevent calling method_exists() with non-string values.
  ...
2020-05-23 15:08:13 +02:00
Nicolas Grekas
c8c7d4c458 [Cache] $lifetime cannot be null 2020-05-23 15:02:18 +02:00
Nicolas Grekas
08afeed555 Merge branch '4.4' into 5.0
* 4.4: (27 commits)
  [Serializer] minor cleanup
  fix merge
  Run PHP 8 as 7.4.99
  Remove calls to deprecated ReflectionParameter::getClass().
  [VarDumper] fix PHP 8 support
  Add php 8 to travis.
  [Cache] Accessing undefined constants raises an Error in php8
  [Cache] allow DBAL v3
  Skip Doctrine DBAL on php 8 until we have a compatible version.
  [DomCrawler] Catch expected ValueError.
  Made method signatures compatible with their corresponding traits.
  [ErrorHandler] Apply php8 fixes from Debug component.
  [DomCrawler] Catch expected ValueError.
  [Validator] Catch expected ValueError.
  [VarDumper] ReflectionFunction::isDisabled() is deprecated.
  [BrowserKit] Raw body with custom Content-Type header
  [PropertyAccess] Parse php 8 TypeErrors correctly.
  [Intl] Fix call to ReflectionProperty::getValue() for static properties.
  [HttpKernel] Prevent calling method_exists() with non-string values.
  Fix wrong roles comparison
  ...
2020-05-23 14:58:59 +02:00
Nicolas Grekas
236a2145fc Merge branch '3.4' into 4.4
* 3.4:
  [Serializer] minor cleanup
2020-05-23 14:50:36 +02:00
Nicolas Grekas
1a21a7582e bug #36921 [OptionsResolver][Serializer] Remove calls to deprecated ReflectionParameter::getClass() (derrabus)
This PR was merged into the 4.4 branch.

Discussion
----------

[OptionsResolver][Serializer] Remove calls to deprecated ReflectionParameter::getClass()

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

Following #36891, this PR removes the remaining calls to `ReflectionParameter::getClass()` from the 4.4 branch.

Commits
-------

1575d853f1 Remove calls to deprecated ReflectionParameter::getClass().
2020-05-23 14:48:29 +02:00
Nicolas Grekas
ca695e55e8 [Serializer] minor cleanup 2020-05-23 14:46:57 +02:00
Nicolas Grekas
6f07b19b03 Merge branch '3.4' into 4.4
* 3.4:
  Run PHP 8 as 7.4.99
  [VarDumper] fix PHP 8 support
  Add php 8 to travis.
  [Cache] Accessing undefined constants raises an Error in php8
2020-05-23 14:24:27 +02:00
Alexander M. Turek
1575d853f1 Remove calls to deprecated ReflectionParameter::getClass(). 2020-05-23 14:09:32 +02:00
Nicolas Grekas
c4ac3c19c6 bug #36920 [VarDumper] fix PHP 8 support (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[VarDumper] fix PHP 8 support

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | -

/cc @derrabus FYI

Commits
-------

9bc1ab62cf [VarDumper] fix PHP 8 support
2020-05-23 14:06:05 +02:00
Nicolas Grekas
9bc1ab62cf [VarDumper] fix PHP 8 support 2020-05-23 14:00:17 +02:00
Nicolas Grekas
6e368f136f bug #36917 [Cache] Accessing undefined constants raises an Error in php8 (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

[Cache] Accessing undefined constants raises an Error in php8

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

Calling `constant()` for an undefined constant will raise an `Error` on php 8. This PR adjust the Memcached tests to this new behavior.

Commits
-------

49fd0efb12 [Cache] Accessing undefined constants raises an Error in php8
2020-05-23 13:35:31 +02:00
Wouter de Jong
387ed4a0a3 Removed "services" prototype node from "custom_authenticator" 2020-05-23 12:20:38 +02:00
Alexander M. Turek
49fd0efb12 [Cache] Accessing undefined constants raises an Error in php8 2020-05-23 11:57:43 +02:00
Nicolas Grekas
d12b3b6a72 [Cache] allow DBAL v3 2020-05-23 11:12:58 +02:00
Nicolas Grekas
8de1091347 Merge branch '3.4' into 4.4
* 3.4:
  Skip Doctrine DBAL on php 8 until we have a compatible version.
  [DomCrawler] Catch expected ValueError.
  [Validator] Catch expected ValueError.
  [VarDumper] ReflectionFunction::isDisabled() is deprecated.
  [PropertyAccess] Parse php 8 TypeErrors correctly.
  [Intl] Fix call to ReflectionProperty::getValue() for static properties.
  [HttpKernel] Prevent calling method_exists() with non-string values.
  [Debug] php 8 does not pass $context to error handlers.
  [Config] Removed implicit cast of ReflectionProperty to string.
  [Debug] Undefined variables raise a warning in php 8.
  [Debug] Skip test that would trigger a fatal error on php 8.
  Address deprecation of ReflectionType::getClass().
  Properties $originalName and $mimeType are never null in UploadedFile
2020-05-23 11:11:46 +02:00
Nicolas Grekas
f32c2c15d9 minor #36909 [ErrorHandler] Apply php8 fixes from Debug component (derrabus)
This PR was merged into the 4.4 branch.

Discussion
----------

[ErrorHandler] Apply php8 fixes from Debug component

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

The changes of #36898 and #36897 ported to the ErrorHandler component.

Commits
-------

54f18698af [ErrorHandler] Apply php8 fixes from Debug component.
2020-05-23 10:32:54 +02:00
Alexander M. Turek
1090738264 Skip Doctrine DBAL on php 8 until we have a compatible version. 2020-05-23 10:20:35 +02:00
Nicolas Grekas
410b6214ea bug #36891 Address deprecation of ReflectionType::getClass() (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

Address deprecation of ReflectionType::getClass()

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

Calling `ReflectionType::getClass()` will trigger a deprecation warning on php 8. This PR switches to `getType()` if available.

Commits
-------

53b1677a4e Address deprecation of ReflectionType::getClass().
2020-05-23 09:35:15 +02:00
Nicolas Grekas
fb91dc24eb bug #36899 [VarDumper] ReflectionFunction::isDisabled() is deprecated (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

[VarDumper] ReflectionFunction::isDisabled() is deprecated

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

See php/php-src#5473. Calling `ReflectionFunction::isDisabled()` is pointless on php 8 and doing so triggers a deprecation warning.

Someone who is more familiar with that component might want to have a second look on this PR. I'm not really sure if this is the right way to fix the issue.

Commits
-------

1da347e5ba [VarDumper] ReflectionFunction::isDisabled() is deprecated.
2020-05-23 09:34:32 +02:00
Nicolas Grekas
42692d625d bug #36905 [Validator] Catch expected ValueError (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

[Validator] Catch expected ValueError

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

`mb_check_encoding()` raises a `ValueError` on php 8 if an invalid encoding was passed. The validator that was patched here is expected to fail gracefully in that situation. This PR restores that behavior under php 8.

Maybe we can reconsider this behavior for Symfony 5.2. It feels a bit odd to me because we swallow a potential misconfiguration of the validator.

Commits
-------

8f3f67f82a [Validator] Catch expected ValueError.
2020-05-23 09:32:18 +02:00
Nicolas Grekas
5d7b7e9616 bug #36915 [DomCrawler] Catch expected ValueError (derrabus)
This PR was merged into the 4.4 branch.

Discussion
----------

[DomCrawler] Catch expected ValueError

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

This is #36906 ported to the 4.4 branch.

Commits
-------

32691e5157 [DomCrawler] Catch expected ValueError.
2020-05-23 09:22:08 +02:00
Alexander M. Turek
32691e5157 [DomCrawler] Catch expected ValueError. 2020-05-23 02:03:06 +02:00
Alexander M. Turek
6fda276feb Made method signatures compatible with their corresponding traits. 2020-05-22 22:05:30 +02:00
Alexander M. Turek
54f18698af [ErrorHandler] Apply php8 fixes from Debug component. 2020-05-22 21:58:53 +02:00
Alexander M. Turek
b1db13728b [DomCrawler] Catch expected ValueError. 2020-05-22 21:35:43 +02:00
Alexander M. Turek
8f3f67f82a [Validator] Catch expected ValueError. 2020-05-22 20:52:50 +02:00
Alexander M. Turek
1da347e5ba [VarDumper] ReflectionFunction::isDisabled() is deprecated. 2020-05-22 20:50:36 +02:00
Nicolas Grekas
e220e7cc01 bug #36904 [PropertyAccess] Parse php 8 TypeErrors correctly (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

[PropertyAccess] Parse php 8 TypeErrors correctly

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

The wording of `TypeError` messages has changed in php 8. Since `PropertyAccessor` parses those messages, the logic needed some adjustments.

Commits
-------

7100c3ce1b [PropertyAccess] Parse php 8 TypeErrors correctly.
2020-05-22 20:33:39 +02:00
Nicolas Grekas
4e191688fe minor #36898 [Debug] php 8 does not pass $context to error handlers (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

[Debug] php 8 does not pass $context to error handlers

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

php 8 will call error handlers without the optional `$context` parameter. Thus, error handlers that make that parameter mandatory will break.

Commits
-------

593897c9e1 [Debug] php 8 does not pass $context to error handlers.
2020-05-22 20:25:20 +02:00
Fabien Potencier
6d7c696742 bug #36839 [BrowserKit] Raw body with custom Content-Type header (azhurb)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[BrowserKit] Raw body with custom Content-Type header

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| License       | MIT

Currently, if you try to send POST/PUT request with custom `Content-Type` header and specified body, the real request will contain `text/plain` content type.

Following code
```php
$client->request(
    'POST',
    '/url',
    [],
    [],
    [
        'CONTENT_TYPE' => 'application/json'
    ],
    '{"foo":"bar"}'
);
```
produces next request
```
POST /
Content-Type: text/plain; charset=utf-8

{"foo":"bar"}
```

With this fix, the request will be
```
POST /
Content-Type: application/json

{"foo":"bar"}
```

Commits
-------

d2dd92be77 [BrowserKit] Raw body with custom Content-Type header
2020-05-22 19:28:00 +02:00
Oleksii Zhurbytskyi
d2dd92be77 [BrowserKit] Raw body with custom Content-Type header 2020-05-22 19:27:55 +02:00
Fabien Potencier
2468314e94 minor #36837 UploadedFile minor fixes (vudaltsov)
This PR was merged into the 3.4 branch.

Discussion
----------

UploadedFile minor fixes

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | none <!-- prefix each issue number with "Fix #", if any -->
| License       | MIT
| Doc PR        | no

According to the [constructor assignments](cb7e78c809/src/Symfony/Component/HttpFoundation/File/UploadedFile.php (L60)), properties `$originalName` and `$mimeType` are never null in `UploadedFile`, so `getClientOriginalName()` and `getClientMimeType()` always return `string`. Also `$test` does not need a default value because it's always set in the constructor.

Commits
-------

eb8d626c27 Properties $originalName and $mimeType are never null in UploadedFile
2020-05-22 19:19:03 +02:00
MatTheCat
d933fa136f Revert https://github.com/symfony/symfony/pull/34986 2020-05-22 19:15:59 +02:00
Jérémy Derussé
a010a87373 Make ExpressionLanguageSyntax validator usable with annotation 2020-05-22 19:13:22 +02:00
Fabien Potencier
14ffc0231f minor #36902 [Intl] Fix call to ReflectionProperty::getValue() for static properties (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

[Intl] Fix call to ReflectionProperty::getValue() for static properties

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

When we call `ReflectionProperty::getValue()` for a static property, we don't need to pass any arguments. The code that was fixed here raised a `TypeError` on php 8 because the argument has to be an object now.

Commits
-------

d4045897d6 [Intl] Fix call to ReflectionProperty::getValue() for static properties.
2020-05-22 19:06:23 +02:00
Fabien Potencier
77a826c8b7 bug #36896 [Config] Removed implicit cast of ReflectionProperty to string (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

[Config] Removed implicit cast of ReflectionProperty to string

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

PHP 8 does not allow casting `ReflectionProperty` instances to string anymore.

Commits
-------

8adbadede7 [Config] Removed implicit cast of ReflectionProperty to string.
2020-05-22 19:04:16 +02:00
Fabien Potencier
b2026966a7 minor #36897 [Debug] Undefined variables raise a warning in php 8 (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

[Debug] Undefined variables raise a warning in php 8

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

`ErrorHandlerTest` executes code with undefined variables to test how the error handler handles the triggered errors. In php 8.0, the severity and error message for this class of errors has been changed. I've adjusted the test accordingly.

Commits
-------

1d20b514f2 [Debug] Undefined variables raise a warning in php 8.
2020-05-22 18:47:25 +02:00
Robin Chalas
a7c09acda0 bug #36873 [Messenger] Fixed check for allowed options in AwsSqs configuration (kroshilin)
This PR was merged into the 5.1 branch.

Discussion
----------

[Messenger] Fixed check for allowed options in AwsSqs configuration

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | no
| License       | MIT

Before this fix it was unavailable to create Connection with access_key and secret_key in options, because they were added to $clientConfiguration var, and check for extra options was against $configuration var. Which lead to exception.
The idea is to check input options against self::DEFAULT_OPTIONS (which contains all available options)

Commits
-------

fb1967210e [Messenger] Fixed check for allowed options in AwsSqs configuration
2020-05-22 17:48:57 +02:00
Alexander M. Turek
7100c3ce1b [PropertyAccess] Parse php 8 TypeErrors correctly. 2020-05-22 16:26:18 +02:00
Eric Hertwig
de7f3fceec [Messenger] Add suggestion for Amazon SQS transport and make check more readable 2020-05-22 15:43:15 +02:00
Alexander M. Turek
d4045897d6 [Intl] Fix call to ReflectionProperty::getValue() for static properties. 2020-05-22 15:42:59 +02:00
Alexander M. Turek
1bbfdcbb8d [HttpKernel] Prevent calling method_exists() with non-string values. 2020-05-22 15:23:31 +02:00
Thibaut Salanon
7d2ad4b265 Fix wrong roles comparison 2020-05-22 14:29:11 +02:00
Alexander M. Turek
593897c9e1 [Debug] php 8 does not pass $context to error handlers. 2020-05-22 13:12:29 +02:00
Alexander M. Turek
8adbadede7 [Config] Removed implicit cast of ReflectionProperty to string. 2020-05-22 12:56:48 +02:00
Alexander M. Turek
1d20b514f2 [Debug] Undefined variables raise a warning in php 8. 2020-05-22 12:23:23 +02:00
Nicolas Grekas
52abcbeec9 minor #36892 [Debug] Skip test that would trigger a fatal error on php 8 (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

[Debug] Skip test that would trigger a fatal error on php 8

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | #36872
| License       | MIT
| Doc PR        | N/A

This PR skips a test of `DebugClassLoader`. The test uses incompatible method signatures in class inheritance to provoke a php warning that should be handled by the debug class loader. On php 8 however, this error is not recoverable anymore, so the tested logic will be obsolete there.

Commits
-------

573d0dd493 [Debug] Skip test that would trigger a fatal error on php 8.
2020-05-22 10:14:52 +02:00
Christian Flothmann
d333aae187 never directly validate Existence (Required/Optional) constraints 2020-05-22 09:54:54 +02:00
Nicolas Grekas
47180fe447 Merge branch '3.4' into 4.4
* 3.4:
  [PhpUnitBridge] fix setting platform.php
2020-05-21 20:35:07 +02:00
Nicolas Grekas
dd902d939f [PhpUnitBridge] fix setting platform.php 2020-05-21 20:33:26 +02:00
Alexander M. Turek
573d0dd493 [Debug] Skip test that would trigger a fatal error on php 8. 2020-05-21 16:02:48 +02:00
Alexander M. Turek
53b1677a4e Address deprecation of ReflectionType::getClass(). 2020-05-21 15:02:25 +02:00
JohJohan
6128dd0b75 ticket_36879 - Fix mandrill raw http request setting from email/name 2020-05-21 10:16:02 +02:00
Nicolas Grekas
4f93cc164a Merge branch '5.0' into 5.1
* 5.0:
  fix merge
2020-05-21 00:29:05 +02:00
Nicolas Grekas
4a365d2cf2 Merge branch '4.4' into 5.0
* 4.4:
  fix merge
2020-05-21 00:28:59 +02:00
Nicolas Grekas
0349890720 fix merge 2020-05-21 00:28:08 +02:00
Nicolas Grekas
819f76a11f Merge branch '5.0' into 5.1
* 5.0:
  [PhpUnitBridge] fix installing on PHP 8 (ter)
  [PhpUnitBridge] fix installing on PHP 8 (bis)
  [PhpUnitBridge] fix installing on PHP 8
2020-05-21 00:11:07 +02:00
Nicolas Grekas
f280829ad8 Merge branch '4.4' into 5.0
* 4.4:
  [PhpUnitBridge] fix installing on PHP 8 (ter)
  [PhpUnitBridge] fix installing on PHP 8 (bis)
  [PhpUnitBridge] fix installing on PHP 8
2020-05-21 00:10:58 +02:00
Nicolas Grekas
ef6a85b7ea Merge branch '3.4' into 4.4
* 3.4:
  [PhpUnitBridge] fix installing on PHP 8 (ter)
  [PhpUnitBridge] fix installing on PHP 8 (bis)
2020-05-21 00:10:46 +02:00
Nicolas Grekas
5ec5bfb23c [PhpUnitBridge] fix installing on PHP 8 (ter) 2020-05-21 00:09:52 +02:00
Nicolas Grekas
c101259192 [PhpUnitBridge] fix installing on PHP 8 (bis) 2020-05-20 23:58:15 +02:00
Nicolas Grekas
a6ea1da1e6 Merge branch '3.4' into 4.4
* 3.4:
  [PhpUnitBridge] fix installing on PHP 8
2020-05-20 23:50:56 +02:00
Nicolas Grekas
606715b6ec [PhpUnitBridge] fix installing on PHP 8 2020-05-20 23:49:59 +02:00
Nicolas Grekas
e65cdb685f Merge branch '5.0' into 5.1
* 5.0:
  [PhpUnitBridge] fix leftover
  [PhpUnitBridge] fix installing under PHP >= 8
  Use ">=" for the "php" requirement
  bump icu 67.1
2020-05-20 19:43:50 +02:00
Nicolas Grekas
b429b15eb5 Merge branch '4.4' into 5.0
* 4.4:
  [PhpUnitBridge] fix leftover
  [PhpUnitBridge] fix installing under PHP >= 8
  Use ">=" for the "php" requirement
  bump icu 67.1
2020-05-20 19:38:26 +02:00
Nicolas Grekas
53d89f71d6 Merge branch '3.4' into 4.4
* 3.4:
  [PhpUnitBridge] fix leftover
  [PhpUnitBridge] fix installing under PHP >= 8
2020-05-20 19:31:34 +02:00
Nicolas Grekas
b6151ed6cc [PhpUnitBridge] fix leftover 2020-05-20 19:29:51 +02:00
Nicolas Grekas
5aa25ceb41 [PhpUnitBridge] fix installing under PHP >= 8 2020-05-20 18:13:38 +02:00
Nicolas Grekas
f8aa0873cf Use ">=" for the "php" requirement 2020-05-20 10:37:50 +02:00
Roland Franssen
920e319051 bump icu 67.1 2020-05-19 19:12:53 +02:00
Nicolas Grekas
0fd5b95178 bug #36859 [Validator] allow passing a validator to Validation::createCallable() (nicolas-grekas)
This PR was merged into the 5.1 branch.

Discussion
----------

[Validator] allow passing a validator to Validation::createCallable()

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

As spotted by @stof in https://github.com/symfony/symfony/pull/31466#issuecomment-630054227

Commits
-------

1357cbf8ed [Validator] allow passing a validator to Validation::createCallable()
2020-05-19 19:03:49 +02:00
Nicolas Grekas
754bba483e minor #36866 [DI][Preload] Remove preload primitive types (Michał Jusięga, michaljusiega)
This PR was merged into the 5.1 branch.

Discussion
----------

[DI][Preload] Remove preload primitive types

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | no, but it could be for the future
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

After bump my project to  5.1.x-dev I saw the generated file of `*.preload.php` contains classes that are primitive types like int, string, bool.

```
composer create-project symfony/website-skeleton preload "5.1.x-dev"
cat preload/var/cache/dev/App_KernelDevDebugContainer.preload.php | grep "bool\|string\|int"
```

```
$ cat test/var/cache/dev/App_KernelDevDebugContainer.preload.php | grep "bool\|string\|int"
$classes[] = 'int';
$classes[] = 'string';
$classes[] = 'Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntityValidator';
$classes[] = 'Symfony\Component\Security\Http\EntryPoint\RetryAuthenticationEntryPoint';
$classes[] = 'Symfony\Component\Security\Core\Validator\Constraints\UserPasswordValidator';
$classes[] = 'Symfony\Component\Serializer\Normalizer\ConstraintViolationListNormalizer';
$classes[] = 'bool';
$classes[] = 'Symfony\Component\Validator\ContainerConstraintValidatorFactory';
$classes[] = 'Symfony\Component\Validator\Constraints\EmailValidator';
$classes[] = 'Symfony\Component\Validator\Constraints\ExpressionValidator';
$classes[] = 'Symfony\Component\Validator\Constraints\NotCompromisedPasswordValidator';
$classes[] = 'Symfony\\Component\\Form\\Extension\\Validator\\Constraints\\Form';
```

I don't know if it is expected behaviour, but if not - then PR fix it.

~~In addition, classes are sorted for better reading.~~

Commits
-------

4d05dbbfb5 [DI] Remove preload primitive types
2020-05-19 19:02:44 +02:00
Michał Jusięga
4d05dbbfb5 [DI] Remove preload primitive types 2020-05-19 19:02:10 +02:00
Nicolas Grekas
b7ecb1582a Merge branch '5.0' into 5.1
* 5.0:
  [Validator] Add missing translations of nn locale
  [HttpKernel] Fix that the `Store` would not save responses with the X-Content-Digest header present
  [Intl] bump icu 67.1
2020-05-19 18:57:22 +02:00
Nicolas Grekas
6237e3d569 Merge branch '4.4' into 5.0
* 4.4:
  [Validator] Add missing translations of nn locale
  [HttpKernel] Fix that the `Store` would not save responses with the X-Content-Digest header present
  [Intl] bump icu 67.1
2020-05-19 18:57:09 +02:00
Nicolas Grekas
2c57ae2b97 Merge branch '3.4' into 4.4
* 3.4:
  [Validator] Add missing translations of nn locale
  [HttpKernel] Fix that the `Store` would not save responses with the X-Content-Digest header present
  [Intl] bump icu 67.1
2020-05-19 18:54:45 +02:00
Nicolas Grekas
5fc4d1b645 minor #36863 [Validator] Add missing translations of nn locale (themilanfan)
This PR was squashed before being merged into the 3.4 branch.

Discussion
----------

[Validator] Add missing translations of nn locale

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes/no
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #30178
| License       | MIT

Added missing translations to validator with locale nn

Commits
-------

040d01e53b [Validator] Add missing translations of nn locale
2020-05-19 18:38:52 +02:00
Giuseppe Campanelli
040d01e53b [Validator] Add missing translations of nn locale 2020-05-19 18:38:46 +02:00
Nicolas Grekas
af0df4ce14 bug #36833 [HttpKernel] Fix that the Store would not save responses with the X-Content-Digest header present (mpdude)
This PR was squashed before being merged into the 3.4 branch.

Discussion
----------

[HttpKernel] Fix that the `Store` would not save responses with the X-Content-Digest header present

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

Responses fetched from upstream sources might have a `X-Content-Digest` header, for example if the Symfony Cache is used upstream. This currently prevents the `Store` from saving such responses. In general, the value of this header should not be trusted.

As I consider this header an implementation detail of the `Store`, the fix tries to be local to that class; we should not rely on the `HttpCache` or other classes to remove untrustworthy headers for us.

This fixes the issue that when using the `HttpCache` in combination with the Symfony HttpClient, responses that have also been cached upstream in an instance of `HttpCache` are not cached locally. It adds the overhead of re-computing the content digest every time the `HttpCache` successfully re-validated a response.

Commits
-------

d8964fb8b7 [HttpKernel] Fix that the `Store` would not save responses with the X-Content-Digest header present
2020-05-19 18:37:57 +02:00
Matthias Pigulla
d8964fb8b7 [HttpKernel] Fix that the Store would not save responses with the X-Content-Digest header present 2020-05-19 18:37:51 +02:00
Nicolas Grekas
42c79753eb minor #36860 [Intl] bump icu 67.1 (ro0NL)
This PR was squashed before being merged into the 3.4 branch.

Discussion
----------

[Intl] bump icu 67.1

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #... <!-- prefix each issue number with "Fix #", if any -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

mainly some new locales+scripts (see 3a3a9ba)

Commits
-------

29eb271184 [Intl] bump icu 67.1
2020-05-19 18:34:53 +02:00
Roland Franssen
29eb271184 [Intl] bump icu 67.1 2020-05-19 18:34:45 +02:00
Anton Kroshilin
fb1967210e [Messenger] Fixed check for allowed options in AwsSqs configuration
Before this fix it was unavailable to create Connection with access_key and secret_key in options, because they were added to $clientConfiguration var, and check for extra options was against $configuration var. Which lead to exception.
The idea is to check input options against self::DEFAULT_OPTIONS (which contains all available options)
2020-05-19 17:36:26 +03:00
Nicolas Grekas
b92399136e Merge branch '5.0' into 5.1
* 5.0:
  [PhpUnitBridge] fix bad detection of unsilenced deprecations
  [Security] Unserialize $parentData, if needed, to avoid errors
  [HttpKernel] Fix error logger when stderr is redirected to /dev/null (FPM)
2020-05-19 10:31:21 +02:00
Nicolas Grekas
31ffd761c3 Merge branch '4.4' into 5.0
* 4.4:
  [PhpUnitBridge] fix bad detection of unsilenced deprecations
  [Security] Unserialize $parentData, if needed, to avoid errors
  [HttpKernel] Fix error logger when stderr is redirected to /dev/null (FPM)
2020-05-19 10:31:00 +02:00
Nicolas Grekas
fd584bb9b3 Merge branch '3.4' into 4.4
* 3.4:
  [PhpUnitBridge] fix bad detection of unsilenced deprecations
  [HttpKernel] Fix error logger when stderr is redirected to /dev/null (FPM)
2020-05-19 10:30:42 +02:00
Nicolas Grekas
9d5bb11ec9 [PhpUnitBridge] fix bad detection of unsilenced deprecations 2020-05-19 10:12:21 +02:00
rfaivre
b447433b67 [Security] Unserialize $parentData, if needed, to avoid errors 2020-05-18 23:38:28 +02:00
Nicolas Grekas
1357cbf8ed [Validator] allow passing a validator to Validation::createCallable() 2020-05-18 18:55:18 +02:00
Fabien Potencier
5f829bdaeb [HttpKernel] Fix error logger when stderr is redirected to /dev/null (FPM) 2020-05-18 17:28:46 +02:00
Fabien Potencier
24067f1889 Merge branch '5.0' into 5.1
* 5.0:
  Revert "Change priority of KernelEvents::RESPONSE subscriber"
2020-05-18 09:51:22 +02:00
Fabien Potencier
08f204c79a Merge branch '4.4' into 5.0
* 4.4:
  Revert "Change priority of KernelEvents::RESPONSE subscriber"
2020-05-18 09:51:10 +02:00
Alexander M. Turek
9f8d225aa1 Revert "Change priority of KernelEvents::RESPONSE subscriber"
This reverts commit 6ed624ad16.
2020-05-16 15:57:47 +02:00
vudaltsov
eb8d626c27 Properties $originalName and $mimeType are never null in UploadedFile 2020-05-16 16:15:54 +03:00
Fabien Potencier
21dc296b18 bumped Symfony version to 5.1.0 2020-05-16 14:36:23 +02:00
Fabien Potencier
73acbab57b updated VERSION for 5.1.0-RC1 2020-05-16 14:31:53 +02:00
Nicolas Grekas
c268915352 bug #36832 [Security] Improved upgrade path for custom remember me services (wouterj)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[Security] Improved upgrade path for custom remember me services

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | -
| Deprecations? | -
| Tickets       | https://github.com/symfony/symfony/pull/36806#issuecomment-628592543
| License       | MIT
| Doc PR        |

This improves the upgrade path for custom remember me services now `LogoutHandlerInterface` has been deprecated.

As suggested in https://github.com/symfony/symfony/pull/36806#issuecomment-628592543, the `logout()` method should be added to the `RememberMeServicesInterface` in Symfony 6.

This patch allows developers to write a custom class implementing only `RememberMeServicesInterface` with a `logout()` method. Requiring them to implement `LogoutHandlerInterface` will mean they have to maintain 2 version of the class to support both Symfony 5.1+ and 6.0.

Commits
-------

c49d00f984 Added deprecation for RememberMe services without logout() method
2020-05-16 13:32:52 +02:00
Wouter de Jong
c49d00f984 Added deprecation for RememberMe services without logout() method 2020-05-16 13:05:23 +02:00
Nicolas Grekas
773bebc381 Merge branch '5.0'
* 5.0:
  [VarDumper] fix for change in PHP 7.4.6 (bis)
  [VarExporter] fix for change in PHP 7.4.6
  [BrowserKit] Allow Referer set by history to be overridden (3.4)
2020-05-16 12:14:47 +02:00
Nicolas Grekas
7e376fd5b5 Merge branch '4.4' into 5.0
* 4.4:
  [VarDumper] fix for change in PHP 7.4.6 (bis)
  [VarExporter] fix for change in PHP 7.4.6
  [BrowserKit] Allow Referer set by history to be overridden (3.4)
2020-05-16 12:14:41 +02:00
Nicolas Grekas
94e8c42736 Merge branch '3.4' into 4.4
* 3.4:
  [VarDumper] fix for change in PHP 7.4.6 (bis)
  [BrowserKit] Allow Referer set by history to be overridden (3.4)
2020-05-16 12:07:46 +02:00
Nicolas Grekas
cb7e78c809 bug #36592 [BrowserKit] Allow Referer set by history to be overridden (Slamdunk)
This PR was merged into the 3.4 branch.

Discussion
----------

[BrowserKit] Allow Referer set by history to be overridden

| Q             | A
| ------------- | ---
| Branch?       | 3.4, see https://github.com/symfony/symfony/pull/36591 for 5.0
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

Commits
-------

4774946fbd [BrowserKit] Allow Referer set by history to be overridden (3.4)
2020-05-16 12:06:03 +02:00
Nicolas Grekas
e69673562c [VarDumper] fix for change in PHP 7.4.6 (bis) 2020-05-16 12:04:57 +02:00
Nicolas Grekas
1e9486de89 [VarExporter] fix for change in PHP 7.4.6 2020-05-16 12:04:25 +02:00
Nicolas Grekas
cf04f1ec50 bug #36800 [DI] Renamed some PHP-DSL functions (javiereguiluz)
This PR was squashed before being merged into the 5.1-dev branch.

Discussion
----------

[DI] Renamed some PHP-DSL functions

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

As discussed in #36778, Symfony wants to move from XML to PHP for its own configuration. I propose these function renames to make the PHP-DSL a bit easier to understand:

```php
<?php
// Before
$services->set(Foo::class)
    ->args([ref(Bar::class), service('stdClass')]);

// After
$services->set(Foo::class)
    ->args([service(Bar::class), inline_service('stdClass')]);
```

Commits
-------

366405b93d [DI] Renamed some PHP-DSL functions
2020-05-16 11:33:23 +02:00
Javier Eguiluz
366405b93d [DI] Renamed some PHP-DSL functions 2020-05-16 11:33:10 +02:00
Nicolas Grekas
5dd99f2062 bug #36806 RememberMeLogoutListener should depend on LogoutHandlerInterface (scheb)
This PR was merged into the 5.1-dev branch.

Discussion
----------

RememberMeLogoutListener should depend on LogoutHandlerInterface

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

`RememberMeLogoutListener`, which was introduced together with the new authenticator security in Symfony 5.1,  depends on `AbstractRememberMeServices`. This forces people to always extend from `AbstractRememberMeServices`, even when they're implementing the correct interface.

I'd suggest to depend on the minimum interface, which is `LogoutHandlerInterface`, instead.

Example of the type errors you'd get otherwise:
`
Argument 1 passed to Symfony\Component\Security\Http\EventListener\RememberMeLogoutListener::__construct() must be an instance of Symfony\Component\Security\Http\RememberMe\AbstractRememberMeServices, instance of Scheb\TwoFactorBundle\Security\Authentication\RememberMe\RememberMeServicesDecorator given, called in var/cache/dev/Container3IpOCEd/getSecurity_Logout_Listener_RememberMe_MainService.php on line 22
`

with

```php
class RememberMeServicesDecorator implements RememberMeServicesInterface, LogoutHandlerInterface
[...]
```

Commits
-------

994700fbae Depend on LogoutHandlerInterface
2020-05-16 11:30:21 +02:00
Nicolas Grekas
a86058c2fb bug #36805 [Security\Core] Fix NoopAuthenticationManager::authenticate() return value (chalasr)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[Security\Core] Fix NoopAuthenticationManager::authenticate() return value

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36804
| License       | MIT
| Doc PR        | -

Commits
-------

b05da72a3c [Security\Core] Fix NoopAuthenticationManager::authenticate() return value
2020-05-16 11:27:10 +02:00
Robin Chalas
b05da72a3c [Security\Core] Fix NoopAuthenticationManager::authenticate() return value 2020-05-16 11:27:00 +02:00
Nicolas Grekas
02cedc3804 minor #36785 [Messenger] Move doctrine deps to require-dev (tyx)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[Messenger] Move doctrine deps to require-dev

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #36740
| License       | MIT

To avoid requiring all doctrine stuff when require symfony/messenger
(that require symfony/doctrine-messenger to ensure BC)

Commits
-------

b73b26eb79 Move doctrine deps to require-dev
2020-05-16 11:17:14 +02:00
Nicolas Grekas
fb80229a3b minor #36826 [String] Move Inflector's polyfill-ctype dependency to String (derrabus)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[String] Move Inflector's polyfill-ctype dependency to String

| Q             | A
| ------------- | ---
| Branch?       | 5.1
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | N/A
| License       | MIT
| Doc PR        | N/A

With  #35092, the inflector implementation was moved to the string component, including all calls to `ext-ctype`. This is why I think the dependency on the corresponding polyfill should be moved as well, which is what this PR does.

Commits
-------

de960b8007 [String] Move Inflector's polyfill-ctype dependency to String.
2020-05-16 11:16:27 +02:00
Nicolas Grekas
be93a222e4 Merge branch '5.0'
* 5.0:
  [VarDumper] fix for change in PHP 7.4.6
  Added regression test for AccountStatusException behavior (ref #36822)
  [HttpClient] fix PHP warning + accept status code >= 600
  [Security/Core] fix compat of `NativePasswordEncoder` with pre-PHP74 values of `PASSWORD_*` consts
  embed resource name in error message
  [FrameworkBundle] fix stringable annotation
  Change priority of KernelEvents::RESPONSE subscriber
  Fix register event listeners compiler pass
  Missing description in `messenger:setup-transports` command
  [Serializer] fix issue with PHP 8
  [WebProfiler] Remove 'none' when appending CSP tokens
  [TwigBundle] FormExtension does not have a constructor anymore since sf 4.0
  [Yaml] Fix escaped quotes in quoted multi-line string
2020-05-16 11:12:54 +02:00
Nicolas Grekas
241542e543 Merge branch '4.4' into 5.0
* 4.4:
  [VarDumper] fix for change in PHP 7.4.6
  Added regression test for AccountStatusException behavior (ref #36822)
  [HttpClient] fix PHP warning + accept status code >= 600
  [Security/Core] fix compat of `NativePasswordEncoder` with pre-PHP74 values of `PASSWORD_*` consts
  embed resource name in error message
  [FrameworkBundle] fix stringable annotation
  Change priority of KernelEvents::RESPONSE subscriber
  Fix register event listeners compiler pass
  Missing description in `messenger:setup-transports` command
  [Serializer] fix issue with PHP 8
  [WebProfiler] Remove 'none' when appending CSP tokens
  [TwigBundle] FormExtension does not have a constructor anymore since sf 4.0
  [Yaml] Fix escaped quotes in quoted multi-line string
2020-05-16 11:10:03 +02:00
Nicolas Grekas
cc519aa5a9 bug #36823 [HttpClient] fix PHP warning + accept status code >= 600 (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[HttpClient] fix PHP warning + accept status code >= 600

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36717
| License       | MIT
| Doc PR        | -

This fixes the PHP warning reported in the linked issue.

This also relaxes the accepted status codes, with https://www.linkedin.com/company/linkedin/ as an example that returns a non-conformant one (`999`).

These are now handled as 5xx codes, ie they trigger a ServerException.

Commits
-------

c764b5c36e [HttpClient] fix PHP warning + accept status code >= 600
2020-05-16 11:09:03 +02:00
Nicolas Grekas
bce37603cb bug #36824 [Security/Core] fix compat of NativePasswordEncoder with pre-PHP74 values of PASSWORD_* consts (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[Security/Core] fix compat of `NativePasswordEncoder` with pre-PHP74 values of `PASSWORD_*` consts

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36451
| License       | MIT
| Doc PR        | -

Commits
-------

df32171cb2 [Security/Core] fix compat of `NativePasswordEncoder` with pre-PHP74 values of `PASSWORD_*` consts
2020-05-16 11:07:52 +02:00
Nicolas Grekas
ae67376ad3 bug #36811 [DependencyInjection] Fix register event listeners compiler pass (X-Coder264)
This PR was merged into the 4.4 branch.

Discussion
----------

[DependencyInjection] Fix register event listeners compiler pass

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

I've wanted to use the simpler event listener registration syntax (https://symfony.com/blog/new-in-symfony-4-4-simpler-event-listeners) in my project and it didn't work so I'm sending this fix.

We use the `KnpPaginatorBundle` bundle which also [calls the `RegisterListenersPass` compiler pass](https://github.com/KnpLabs/KnpPaginatorBundle/blob/v5.2.0/src/DependencyInjection/Compiler/PaginatorConfigurationPass.php#L22) in order to register with the event dispatcher their custom tags for listeners and subscribers (`knp_paginator.listener` and `knp_paginator.subscriber`).

Their compiler pass is `TYPE_BEFORE_REMOVING` and priority zero which is the same type and priority as the pass that gets [added by FrameworkBundle](https://github.com/symfony/symfony/blob/v4.4.8/src/Symfony/Bundle/FrameworkBundle/FrameworkBundle.php#L125). Since both the type and priority is the same the order of execution is `undefined` (because [that is how regular sort behaves in PHP which is used by default by `krsort`](https://github.com/symfony/symfony/blob/v4.4.8/src/Symfony/Component/DependencyInjection/Compiler/PassConfig.php#L264)) and the `RegisterListenersPass` currently removes the `eventAliasesParameter` parameter from the container if it is set (which is [set here](https://github.com/symfony/symfony/blob/v4.4.8/src/Symfony/Bundle/FrameworkBundle/Resources/config/services.xml#L9)). So what happens in my app is that the Knp compiler pass runs first, the `event_dispatcher.event_aliases` parameter is removed and then the FrameworkBundle registered compiler pass runs and since the aliases are not present anymore the events do not get aliased properly. The event dispatcher service in the compiled container looks like:

```php
$instance->addListener('Symfony\Component\HttpKernel\Event\RequestEvent', ...);
```

instead of the expected

```php
$instance->addListener('kernel.request', ...);
```

This means that my listener never gets called on the kernel request event.

Another potential fix would be to adjust the Knp compiler pass priority, but seeing as that would fix only that bundle (who knows how many bundles out there have the same problem) and that I don't see any drawback in letting the `event_dispatcher.event_aliases` parameter stay in the container I think that this is better to fix here.

Commits
-------

646878d072 Fix register event listeners compiler pass
2020-05-16 11:07:08 +02:00
Nicolas Grekas
fb4c3f920f Merge branch '3.4' into 4.4
* 3.4:
  [VarDumper] fix for change in PHP 7.4.6
  Added regression test for AccountStatusException behavior (ref #36822)
  embed resource name in error message
  [Serializer] fix issue with PHP 8
  [Yaml] Fix escaped quotes in quoted multi-line string
2020-05-16 11:03:35 +02:00
Nicolas Grekas
924822c2e8 [VarDumper] fix for change in PHP 7.4.6 2020-05-16 10:59:45 +02:00
Nicolas Grekas
cec0dfe5b3 minor #36780 [Translator] embed resource name in error message (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[Translator] embed resource name in error message

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

Someone reported on Slack that they accidentally stored a translation file with the `.twig` extension and that the error message was quite confusing.

Commits
-------

507a5963e4 embed resource name in error message
2020-05-16 10:35:38 +02:00
Wouter J
08fbfcf5a0 Added regression test for AccountStatusException behavior (ref #36822) 2020-05-15 23:22:25 +02:00
Alexander M. Turek
de960b8007 [String] Move Inflector's polyfill-ctype dependency to String. 2020-05-15 17:20:05 +02:00
Nicolas Grekas
c764b5c36e [HttpClient] fix PHP warning + accept status code >= 600 2020-05-15 16:28:26 +02:00
Nicolas Grekas
df32171cb2 [Security/Core] fix compat of NativePasswordEncoder with pre-PHP74 values of PASSWORD_* consts 2020-05-15 14:38:59 +02:00
Christian Flothmann
507a5963e4 embed resource name in error message 2020-05-15 09:32:03 +02:00
Nicolas Grekas
65e6812c1d [FrameworkBundle] fix stringable annotation 2020-05-14 20:47:17 +02:00
Timothée Barray
b73b26eb79 Move doctrine deps to require-dev
To avoid requiring all doctrine stuff when require symfony/messenger
(that require symfony/doctrine-messenger to ensure BC)
2020-05-14 17:52:50 +02:00
Fabien Potencier
e5c82c566e bug #36789 Change priority of KernelEvents::RESPONSE subscriber (marcw)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

Change priority of KernelEvents::RESPONSE subscriber

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| License       | MIT

This PR changes the priority of the `KernelEvents::RESPONSE` subscriber of the `ProfilerListener` so that it is the penultimate to be executed (just before `StreamedResponseListener`).

The reason is that other listeners that were executed after this one CAN change the response (such as `SessionListener` for example). This creates a headache when debugging, with a discrepancy between what is shown in a curl command, and by the Symfony profiler.

Commits
-------

6ed624ad16 Change priority of KernelEvents::RESPONSE subscriber
2020-05-14 11:30:03 +02:00
Marc Weistroff
6ed624ad16 Change priority of KernelEvents::RESPONSE subscriber 2020-05-14 11:29:57 +02:00
Fabien Potencier
315010422f bug #36786 [WebProfiler] Remove 'none' when appending CSP tokens (ndench)
This PR was merged into the 4.4 branch.

Discussion
----------

[WebProfiler] Remove 'none' when appending CSP tokens

| Q             | A
| ------------- | ---
| Branch?       | 3.4, 4.4, 5.0
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36645
| License       | MIT
| Doc PR        | n/a

@nicolas-grekas  asked me to to have a look at this after #36678.

If a user has a CSP policy of `default-src 'none'`, then the WebProfiler copies `'none'` to `script-src` and `style-src` then adds other sources. This creates an invalid policy since `'none'` is only allowed when it's the only item in the source list.

This will probably need to be merged into 3.4 first, I started on 4.4 so I can test in my current symfony project which requires 4.4.

Commits
-------

967bc4a860 [WebProfiler] Remove 'none' when appending CSP tokens
2020-05-13 19:00:16 +02:00
Antonio Pauletich
646878d072 Fix register event listeners compiler pass 2020-05-13 18:27:55 +02:00
Christian Scheb
994700fbae Depend on LogoutHandlerInterface 2020-05-13 15:07:15 +02:00
Carlos Buenosvinos
d31d1e0111 Missing description in messenger:setup-transports command
making `bin/console` to show an empty description when the rest of the commands have one.
2020-05-12 22:52:55 +02:00
Fabien Potencier
a73523b065 minor #36798 Secrets, Security, and Messenger commands descriptions should not end with a "." (dot) (carlosbuenosvinos)
This PR was squashed before being merged into the 5.1-dev branch.

Discussion
----------

Secrets, Security, and Messenger commands descriptions should not end with a "." (dot)

| Q             | A
| ------------- | ---
| Branch?       | 4.4 (to be switched while merging)
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | N/A
| License       | MIT
| Doc PR        | N/A

When running `bin/console` almost all the command descriptions do not end with a ".". So in order to be consistent, we should remove it from the Secrets Commands.

**Current Output for Secrets Commands (with dots)**
![image](https://user-images.githubusercontent.com/351553/81734096-4a8bca00-9493-11ea-8d5c-bb1dda20bcb0.png)

**Other Command Descriptions (without dots)**
![image](https://user-images.githubusercontent.com/351553/81734428-c84fd580-9493-11ea-8312-05557c7e6f0b.png)

![image](https://user-images.githubusercontent.com/351553/81734489-def62c80-9493-11ea-8d2b-1eb3668291cc.png)

**Symfony CLI output (without dots)**
![image](https://user-images.githubusercontent.com/351553/81734720-3eecd300-9494-11ea-805e-2a3ae3178e8c.png)

Commits
-------

4f7633983e Secrets, Security, and Messenger commands descriptions should not end with a "." (dot)
2020-05-12 22:48:08 +02:00
Carlos Buenosvinos
4f7633983e Secrets, Security, and Messenger commands descriptions should not end with a "." (dot) 2020-05-12 22:47:58 +02:00
Nicolas Grekas
44b45cbaf1 [Serializer] fix issue with PHP 8 2020-05-12 22:34:06 +02:00
Catalin Dan
a53d12674c bug #36793 [DI][Preload] Use require_once instead of require when appending cache warmer-returned files to preload file. 2020-05-12 20:28:51 +03:00
Nathan Dench
967bc4a860 [WebProfiler] Remove 'none' when appending CSP tokens 2020-05-12 17:24:37 +10:00
Fabien Potencier
a8cb3cd2da bug #36743 [Yaml] Fix escaped quotes in quoted multi-line string (ossinkine)
This PR was merged into the 3.4 branch.

Discussion
----------

[Yaml] Fix escaped quotes in quoted multi-line string

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| License       | MIT

This PR continues https://github.com/symfony/symfony/pull/19304

This PR fixes incorrect parsing quoted multi-line string which contain escaped quotes, see tests

Commits
-------

2e99caacaf [Yaml] Fix escaped quotes in quoted multi-line string
2020-05-11 09:51:54 +02:00
Fabien Potencier
1de42a5f08 bug #36773 [HttpClient] preserve the identity of responses streamed by TraceableHttpClient (nicolas-grekas)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[HttpClient] preserve the identity of responses streamed by TraceableHttpClient

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Commits
-------

afc44dae16 [HttpClient] preserve the identity of responses streamed by TraceableHttpClient
2020-05-10 18:21:09 +02:00
Tobias Schultze
35e391aaa2 [TwigBundle] FormExtension does not have a constructor anymore since sf 4.0 2020-05-10 16:50:02 +02:00
Nicolas Grekas
afc44dae16 [HttpClient] preserve the identity of responses streamed by TraceableHttpClient 2020-05-10 09:16:11 +02:00
Nicolas Grekas
ab8eca0ef6 [HttpClient] add TimeoutExceptionInterface 2020-05-09 20:37:03 +02:00
Nicolas Grekas
2ed6a0d74c Merge branch '5.0'
* 5.0:
  [HttpClient] fix testTimeoutIsNotAFatalError (bis)
2020-05-09 19:43:56 +02:00
Nicolas Grekas
b3e49ee2b4 Merge branch '4.4' into 5.0
* 4.4:
  [HttpClient] fix testTimeoutIsNotAFatalError (bis)
2020-05-09 19:43:51 +02:00
Nicolas Grekas
333f7187dc [HttpClient] fix testTimeoutIsNotAFatalError (bis) 2020-05-09 19:43:44 +02:00
Nicolas Grekas
3cdd2e4643 Merge branch '5.0'
* 5.0:
  [HttpClient] fix testTimeoutIsNotAFatalError
2020-05-09 18:24:19 +02:00
Nicolas Grekas
0ff13b2404 Merge branch '4.4' into 5.0
* 4.4:
  [HttpClient] fix testTimeoutIsNotAFatalError
2020-05-09 18:24:13 +02:00
Nicolas Grekas
00ae470307 [HttpClient] fix testTimeoutIsNotAFatalError 2020-05-09 18:24:06 +02:00
Nicolas Grekas
53423db039 Merge branch '5.0'
* 5.0:
  [HttpClient] improve testTimeoutIsNotAFatalError
  Fix for #36715
2020-05-09 17:57:56 +02:00
Nicolas Grekas
c794cab0cb Merge branch '4.4' into 5.0
* 4.4:
  [HttpClient] improve testTimeoutIsNotAFatalError
  Fix for #36715
2020-05-09 17:57:42 +02:00
Nicolas Grekas
4ab6ff37bd [HttpClient] improve testTimeoutIsNotAFatalError 2020-05-09 17:57:30 +02:00
Fabien Potencier
6310084f25 bug #36716 [Mime] handle passing custom mime types as string (mcneely)
This PR was merged into the 4.4 branch.

Discussion
----------

[Mime] handle passing custom mime types as string

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36715
| License       | MIT
| Doc PR        | none
Fix's issue where custom mimetypes were failing

Commits
-------

f3005ec653 Fix for #36715
2020-05-09 14:32:08 +02:00
Paul L. McNeely
f3005ec653
Fix for #36715 2020-05-09 07:22:40 -05:00
Fabien Potencier
97a578201d minor #36763 [Security] Improve method signatures (minor) (umulmrum)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[Security] Improve method signatures (minor)

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

Improves type declarations and docblocks of new authenticator-related methods.

Commits
-------

b009254090 [Security] Improve method signatures (minor)
2020-05-09 14:14:32 +02:00
Nicolas Grekas
52c52a846c Merge branch '5.0'
* 5.0:
  [HttpClient] test that timeout is not fatal
2020-05-09 14:11:30 +02:00
Nicolas Grekas
d01ea50f7b Merge branch '4.4' into 5.0
* 4.4:
  [HttpClient] test that timeout is not fatal
2020-05-09 14:10:43 +02:00
Nicolas Grekas
36ccf4c65b [HttpClient] test that timeout is not fatal 2020-05-09 14:08:40 +02:00
Stefan Kruppa
b009254090 [Security] Improve method signatures (minor) 2020-05-09 13:45:48 +02:00
Nicolas Grekas
8fec0654d2 bug #36765 [HttpClient] fix dealing with informational response (nicolas-grekas)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[HttpClient] fix dealing with informational response

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Skipping the test was a bad idea, the failure was legit.

Commits
-------

9068aa48e2 [HttpClient] fix dealing with informational response
2020-05-08 23:44:02 +02:00
Nicolas Grekas
012247dc98 minor #36764 [HttpClient] remove "experimental" annotations (nicolas-grekas)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[HttpClient] remove "experimental" annotations

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Commits
-------

db4cb51f0c [HttpClient] remove "experimental" annotations
2020-05-08 23:43:12 +02:00
Nicolas Grekas
2b554d8ad7 [Contracts] bump branch alias 2020-05-08 23:41:03 +02:00
Nicolas Grekas
9068aa48e2 [HttpClient] fix dealing with informational response 2020-05-08 22:52:14 +02:00
Nicolas Grekas
db4cb51f0c [HttpClient] remove "experimental" annotations 2020-05-08 22:08:25 +02:00
Nicolas Grekas
fb90fb3bb7 minor #36758 [5.1] CS fixes (nicolas-grekas)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[5.1] CS fixes

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Commits
-------

bb164e6615 [5.1] CS fixes
2020-05-08 14:37:13 +02:00
Nicolas Grekas
f8616f8eae Merge branch '5.0'
* 5.0:
  [PhpUnitBridge] fix bad test
  [4.4] CS fixes
  [3.4] CS fixes
  Disable phpunit verbosity
  Queue name is a required parameter
  [FrameworkBundle] display actual target for error in AssetsInstallCommand
  Remove patches for Doctrine bugs and deprecations
  [Mime] fix bad method call on "EmailAddressContains"
  [DI][EventDispatcher] added contract for implementation
2020-05-08 14:36:29 +02:00
Nicolas Grekas
0b34b39cc8 Merge branch '4.4' into 5.0
* 4.4:
  [PhpUnitBridge] fix bad test
  [4.4] CS fixes
  [3.4] CS fixes
  Disable phpunit verbosity
  Queue name is a required parameter
  [FrameworkBundle] display actual target for error in AssetsInstallCommand
  Remove patches for Doctrine bugs and deprecations
  [Mime] fix bad method call on "EmailAddressContains"
  [DI][EventDispatcher] added contract for implementation
2020-05-08 14:34:39 +02:00
Nicolas Grekas
edb517699a [PhpUnitBridge] fix bad test 2020-05-08 14:32:38 +02:00
Nicolas Grekas
da8b9552ad Merge branch '3.4' into 4.4
* 3.4:
  [3.4] CS fixes
2020-05-08 12:54:34 +02:00
Nicolas Grekas
bb164e6615 [5.1] CS fixes 2020-05-08 12:41:08 +02:00
Nicolas Grekas
eba09d47e7 [4.4] CS fixes 2020-05-08 12:39:41 +02:00
Nicolas Grekas
02b378f248 [3.4] CS fixes 2020-05-08 12:38:31 +02:00
theravel
9d48eedbdc Queue name is a required parameter 2020-05-08 12:02:31 +02:00
Nicolas Grekas
a60937519b bug #36751 [Mime] fix bad method call on EmailAddressContains (Kocal)
This PR was merged into the 4.4 branch.

Discussion
----------

[Mime] fix bad method call on `EmailAddressContains`

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | -
| License       | MIT
| Doc PR        | -

There is no method `Address` on [`MailboxHeader`](https://github.com/symfony/symfony/blob/4.4/src/Symfony/Component/Mime/Header/MailboxHeader.php), but a method `getAddress`.

Commits
-------

227ebd2fe9 [Mime] fix bad method call on "EmailAddressContains"
2020-05-08 11:59:36 +02:00
Nicolas Grekas
2dbfeb9db9 Merge branch '3.4' into 4.4
* 3.4:
  [FrameworkBundle] display actual target for error in AssetsInstallCommand
  Remove patches for Doctrine bugs and deprecations
  [DI][EventDispatcher] added contract for implementation
2020-05-08 11:58:40 +02:00
Nicolas Grekas
f6ae18e3ac minor #36710 [DI][EventDispatcher] added contract for implementation (bestform)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI][EventDispatcher] added contract for implementation

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36708
| License       | MIT

As described in the attached issue a comment in the documentation of the `EventSubscriberInterface` would be helpful to make sure users do not use logic based on runtime state in their implementation of `getSubscribedEvents`.

Commits
-------

88e43d4d4c [DI][EventDispatcher] added contract for implementation
2020-05-08 11:57:02 +02:00
Matthias Larisch
f177b3d488 [FrameworkBundle] display actual target for error in AssetsInstallCommand
When assets:install fails because the target directory does not exist, it should display the actual directory it wanted to have instead of the configuration directive. In most cases, the target directory is retrieved from the kernel config and thus differs from the argument.
2020-05-08 11:56:06 +02:00
Grégoire Paris
2f305cdc83 Remove patches for Doctrine bugs and deprecations 2020-05-08 11:45:13 +02:00
Hugo Alliaume
227ebd2fe9
[Mime] fix bad method call on "EmailAddressContains"
There is no method `Address` on `MailboxHeader`, but a method `getAddress`.
2020-05-08 10:53:13 +02:00
Fabien Potencier
8f58a2d392 bug #36737 [Cache] fix accepting sub-second max-lifetimes in ArrayAdapter (nicolas-grekas)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[Cache] fix accepting sub-second max-lifetimes in ArrayAdapter

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Commits
-------

cefa1e6e82 [Cache] fix accepting sub-second max-lifetimes in ArrayAdapter
2020-05-08 08:20:41 +02:00
Fabien Potencier
070552e1ca bug #36749 [DI] give priority to container.hot_path over container.no_preload (nicolas-grekas)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[DI] give priority to container.hot_path over container.no_preload

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Spotted by looking at a website skeleton: `ConsoleHandler` is not preloaded right now (because it listens to console events only) while it should (because it is also wired as a monolog handle and is thus on the hot path.)

Commits
-------

461041f87d [DI] give priority to container.hot_path over container.no_preload
2020-05-08 08:17:45 +02:00
Nicolas Grekas
9d13d88e8d [DI] reduce recursivity of ResolveHotPathPass 2020-05-08 00:37:41 +02:00
Nicolas Grekas
461041f87d [DI] give priority to container.hot_path over container.no_preload 2020-05-08 00:34:01 +02:00
Gocha Ossinkine
2e99caacaf [Yaml] Fix escaped quotes in quoted multi-line string 2020-05-07 22:33:48 +05:00
Nicolas Grekas
cefa1e6e82 [Cache] fix accepting sub-second max-lifetimes in ArrayAdapter 2020-05-07 11:51:26 +02:00
Maxime Steinhausser
a08ddf7636 [Validator] Add target guards for Composite nested constraints 2020-05-06 16:01:04 +02:00
Fabien Potencier
75e71e3bbe bug #36721 [FrameworkBundle] remove getProjectDir method from MicroKernelTrait (garak)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[FrameworkBundle] remove getProjectDir method from MicroKernelTrait

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36719
| License       | MIT
| Doc PR        | not needed

Remove method added in trait, to be able to use same method in base kernel class.

Commits
-------

f2f3ebac8b remove getProjectDir method from MicroKernelTrait
2020-05-06 13:28:34 +02:00
Nicolas Grekas
1294cb5240 [HttpFoundation] fix perf of ResponseHeaderBag::initDate() 2020-05-06 12:54:46 +02:00
Massimiliano Arione
f2f3ebac8b
remove getProjectDir method from MicroKernelTrait 2020-05-06 12:44:29 +02:00
Jakub Zalas
dc7ac57a3c
Configure services additionally required by the master branch 2020-05-05 20:37:11 +01:00
Fabien Potencier
651f434783 bumped Symfony version to 5.1.0 2020-05-05 19:11:24 +02:00
Fabien Potencier
4bc152b033 updated VERSION for 5.1.0-BETA1 2020-05-05 19:05:38 +02:00
Nicolas Grekas
ea638549f4 [Form] deprecate NumberToLocalizedStringTransformer::ROUND_* constants 2020-05-05 18:27:54 +02:00
Nicolas Grekas
21edafac5e CI fixes 2020-05-05 18:19:12 +02:00
Nicolas Grekas
623e266cab Fix tests 2020-05-05 17:08:52 +02:00
Matthias Derer
88e43d4d4c [DI][EventDispatcher] added contract for implementation
fixes #36708.
2020-05-05 17:06:23 +02:00
Nicolas Grekas
02d9597a41 Merge branch '5.0'
* 5.0:
  Force doctrine/dbal <=2.10.2 when testing
2020-05-05 15:53:42 +02:00
Nicolas Grekas
cd21c8208e Merge branch '4.4' into 5.0
* 4.4:
  Force doctrine/dbal <=2.10.2 when testing
2020-05-05 15:53:15 +02:00
Nicolas Grekas
f8bedf4e79 Merge branch '3.4' into 4.4
* 3.4:
  Force doctrine/dbal <=2.10.2 when testing
2020-05-05 15:52:57 +02:00
Nicolas Grekas
d1953d61cd Force doctrine/dbal <=2.10.2 when testing 2020-05-05 15:43:18 +02:00
Fabien Potencier
4228676b1a Merge branch '5.0'
* 5.0:
  [Console] fix "data lost during stream conversion" with QuestionHelper
2020-05-05 13:56:29 +02:00
Fabien Potencier
1f5eab2955 Merge branch '4.4' into 5.0
* 4.4:
  [Console] fix "data lost during stream conversion" with QuestionHelper
2020-05-05 13:56:08 +02:00
Nicolas Grekas
6d089ac437 [Console] fix "data lost during stream conversion" with QuestionHelper 2020-05-05 13:09:20 +02:00
Nicolas Grekas
11f4e8b475 Merge branch '5.0'
* 5.0:
  [PhpUnitBridge] fix PHP 5.3 compat
  [PhpUnitBridge] Mark parent class also covered in CoverageListener
  prevent notice for invalid octal numbers on PHP 7.4
2020-05-05 09:46:02 +02:00
Nicolas Grekas
bf1222621a Merge branch '4.4' into 5.0
* 4.4:
  [PhpUnitBridge] fix PHP 5.3 compat
  [PhpUnitBridge] Mark parent class also covered in CoverageListener
  prevent notice for invalid octal numbers on PHP 7.4
2020-05-05 09:39:14 +02:00
Nicolas Grekas
2732dda83c Merge branch '3.4' into 4.4
* 3.4:
  [PhpUnitBridge] fix PHP 5.3 compat
  [PhpUnitBridge] Mark parent class also covered in CoverageListener
  prevent notice for invalid octal numbers on PHP 7.4
2020-05-05 09:39:02 +02:00
Nicolas Grekas
f7fc3cf6cb [PhpUnitBridge] fix PHP 5.3 compat 2020-05-05 09:38:03 +02:00
Fabien Potencier
36c0ce7cfb feature #36681 [FrameworkBundle] use the router context by default for assets (nicolas-grekas)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[FrameworkBundle] use the router context by default for assets

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

Follows #36651 and #21027

This means assets are going to be configured automatically most of the time. The only case where `asset.request_context.base_path` is useful is when the webserver still keeps a `/index.php/` in URLs. (I'm not sure if the doc should tell ppl to use the parameter, or if we should tell ppl to improve the config of their server...)

Commits
-------

1ac5f68810 [FrameworkBundle] use the router context by default for assets
2020-05-05 09:03:13 +02:00
Kévin Dunglas
be855a20bf [Serializer] Allow to include the severity in ConstraintViolationList 2020-05-05 08:59:24 +02:00
Fabien Potencier
5a2aef1d7e feature #36471 [String] allow passing a string of custom characters to ByteString::fromRandom (azjezz)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[String] allow passing a string of custom characters to ByteString::fromRandom

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes/
| Deprecations? | no
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

Commits
-------

5d15c0be60 [String] allow passing a string of custom characters to ByteString::fromRandom
2020-05-05 08:58:12 +02:00
Fabien Potencier
ad01068b38 Revert "feature #36184 [FrameworkBundle] Deprecate renderView() in favor of renderTemplate() (javiereguiluz)"
This reverts commit b494beb5dc, reversing
changes made to b9d41490fe.
2020-05-05 08:53:10 +02:00
Fabien Potencier
3e737ec28f feature #35092 [Inflector][String] Move Inflector in String (fancyweb)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[Inflector][String] Move Inflector in String

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | yes
| Tickets       | https://github.com/orgs/symfony/projects/1#card-30499514
| License       | MIT
| Doc PR        | -

Needs https://github.com/symfony/symfony/pull/35091.

Should we have a standalone inflector (like the Slugger) or 2 new methods (pluralize and singularize) on the AbstractString class? I implemented both but since we only handle English I finally preferred the first one.

TODO (after the "move" is OK):
- [x] Deprecate the Inflector component
- [x] Use the String inflector in Symfony's code

Commits
-------

9c6a5c0093 [String] Move Inflector in String
2020-05-05 08:52:01 +02:00
Fabien Potencier
341ea45219 feature #36302 [Form] Add the html5 option to ColorType to validate the input (fancyweb)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[Form] Add the html5 option to ColorType to validate the input

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Tickets       | no
| License       | MIT
| Doc PR        | TODO

Continuation of https://github.com/symfony/symfony/pull/35626.

I'm resubmitting the initial implementation, this time in the Form component.

This `Color` constraint is dedicated to the HTML5 input type="color".

Commits
-------

454b6ff48b [Form] Add the html5 option to ColorType to validate the input
2020-05-05 08:48:59 +02:00
Thomas Calvet
9c6a5c0093 [String] Move Inflector in String 2020-05-05 08:40:05 +02:00
Javier Eguiluz
7b9ff2a445 [FrameworkBundle] Deprecate renderView() in favor of renderTemplate() 2020-05-05 08:26:27 +02:00
Fabien Potencier
b9d41490fe feature #36655 Automatically provide Messenger Doctrine schema to "diff" (weaverryan)
This PR was squashed before being merged into the 5.1-dev branch.

Discussion
----------

Automatically provide Messenger Doctrine schema to "diff"

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Tickets       | Alternative to #36629
| License       | MIT
| Doc PR        | TODO - WILL be needed

This follows this conversation: https://github.com/symfony/symfony/pull/36629#issuecomment-621745821 - it automatically adds SQL to Doctrine's migration/diff system when features are added the require a database table:

The new feature works for:

### A) Messenger Doctrine transport
**FULL support**
Works perfectly: configure a doctrine transport and run `make:migration`

**Note**: There is no current way to disable this. So if you have `auto_setup` ON and you
run `make:migration` before trying Messenger, it will generate the table SQL. Adding a
flag to disable it might be very complicated, because we need to know (in DoctrineBundle, at compile time) whether or not this feature is enabled/disabled so that we can decide *not* to add `messenger_messages` to the `schema_filter`.

### B) `PdoAdapter` from Cache
**FULL support**
Works perfectly: configure a doctrine transport and run `make:migration`

### C) `PdoStore` from Lock
**PARTIAL support**
I added `PdoStore::configureSchema()` but did NOT add a listener. While `PdoStore` *does* accept a DBAL `Connection`, I don't think it's possible via the `framework.lock` config to create a `PdoStore` that is passed a `Connection`. In other words: if we added a listener that called `PdoStore::configureSchema` if the user configured a `pdo` lock, that service will *never* have a `Connection` object... so it's kind of worthless.

**NEED**: A proper way to inject a DBAL `Connection` into `PdoStore` via `framework.lock` config.

### D) `PdoSessionHandler`
**NO support**

This class doesn't accept a DBAL `Connection` object. And so, we can't reliably create a listener to add the schema because (if there are multiple connections) we wouldn't know which Connection to use.

We could compare (`===`) the `PDO` instance inside `PdoSessionHandler` to the wrapped `PDO` connection in Doctrine. That would only work if the user has configured their `PdoSessionHandler` to re-use the Doctrine PDO connection.

The `PdoSessionHandler` *already* has a `createTable()` method on it to help with manual migration. But... it's not easy to call from a migration because you would need to fetch the `PdoSessionHandler` service from the container. Adding something

**NEED**: Either:

A) A way for `PdoSessionHandler` to use a DBAL Connection
or
B) We try to hack this feature by comparing the `PDO` instances in the event subscriber
or
C) We add an easier way to access the `createTable()` method from inside a migration.

TODOs

* [X] Determine service injection XML needed for getting all PdoAdapter pools
* [ ] Finish DoctrineBundle PR: https://github.com/doctrine/DoctrineBundle/pull/1163

Commits
-------

2dd9c3c3c8 Automatically provide Messenger Doctrine schema to "diff"
2020-05-05 08:13:58 +02:00
Ryan Weaver
2dd9c3c3c8 Automatically provide Messenger Doctrine schema to "diff" 2020-05-05 08:13:52 +02:00
Fabien Potencier
3d30ff7677 feature #35849 [ExpressionLanguage] Added expression language syntax validator (Andrej-in-ua)
This PR was squashed before being merged into the 5.1-dev branch.

Discussion
----------

[ExpressionLanguage] Added expression language syntax validator

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Tickets       | #35700
| License       | MIT
| Doc PR        | N/A <!-- required for new features -->

Proposal implementation #35700

The current solution is a compromise between support complexity and cleanliness.

I tried different solutions to the issue. A beautiful solution was obtained only with full duplication of the parser code. That is unacceptable because parser complexity is quite high.

The main problem in this solution is that nodes instances are created which are then not used. I do not think that linter can be a bottleneck and will greatly affect performance. If this is corrected, the parser code becomes a bunch of if's.

JFI: I did not added parsing without variable names, because this breaks caching and potential location for vulnerabilities.

Commits
-------

a5cd965494 [ExpressionLanguage] Added expression language syntax validator
2020-05-05 07:59:29 +02:00
Andrey Sevastianov
a5cd965494 [ExpressionLanguage] Added expression language syntax validator 2020-05-05 07:59:23 +02:00
Fabien Potencier
ac1a336040 Fix typo 2020-05-05 07:41:22 +02:00
Fabien Potencier
a0c2dd8a87 feature #36656 [Security/Core] Add CustomUserMessageAccountStatusException (VincentLanglet)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[Security/Core] Add CustomUserMessageAccountStatusException

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| License       | MIT
| Doc PR        | Not really needed

When implementing the `UserCheckerInterface`, we can throw `AccountStatusException`. Similar to `CustomUserMessageAuthenticationException`, this exception allow to throw an `AccountStatusException` with a custom message.

Commits
-------

9233efbe06 Add CustomUserMessageAccountStatusException
2020-05-05 07:40:46 +02:00
Fabien Potencier
c2cc99375d Fix changelog 2020-05-05 07:40:09 +02:00
Fabien Potencier
55706f75ac feature #36621 Log deprecations on a dedicated Monolog channel (l-vo)
This PR was squashed before being merged into the 5.1-dev branch.

Discussion
----------

Log deprecations on a dedicated Monolog channel

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Tickets       | https://github.com/orgs/symfony/projects/1#card-35233930
| License       | MIT
| Doc PR        |

This PR allows to activate a specific channel for deprecations.

## Base configuration

```yaml
monolog:
    handlers:
        #...
        deprecation:
            type: stream
            path: "%kernel.logs_dir%/%kernel.environment%.deprecations.log"
        deprecation_filter:
            type: filter
            handler: deprecation
            max_level: info
            channels: ["php"]
```

## Deprecation specific channel enabled:

```yaml
monolog:
    channels: ['deprecation']
    handlers:
        #...
        deprecation:
            type: stream
            channels: ["deprecation"]
            path: "%kernel.logs_dir%/%kernel.environment%.deprecations.log"
```

Commits
-------

3d415cb70d Log deprecations on a dedicated Monolog channel
2020-05-05 07:39:34 +02:00
Laurent VOULLEMIER
3d415cb70d Log deprecations on a dedicated Monolog channel 2020-05-05 07:39:28 +02:00
Fabien Potencier
9b8911598b bug #36569 [PhpUnitBridge] Mark parent class also covered in CoverageListener (lyrixx)
This PR was merged into the 3.4 branch.

Discussion
----------

[PhpUnitBridge] Mark parent class also covered in CoverageListener

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Tickets       |
| License       | MIT
| Doc PR        |

Commits
-------

dcb5653728 [PhpUnitBridge] Mark parent class also covered in CoverageListener
2020-05-05 07:34:36 +02:00
Grégoire Pineau
dcb5653728 [PhpUnitBridge] Mark parent class also covered in CoverageListener 2020-05-05 00:33:45 +02:00
azjezz
5d15c0be60 [String] allow passing a string of custom characters to ByteString::fromRandom 2020-05-04 23:13:29 +01:00
Christian Flothmann
440e0b7b63 support YAML 1.2 octal notation, deprecate YAML 1.1 one 2020-05-04 22:33:22 +02:00
Christian Flothmann
92bc19fd0c prevent notice for invalid octal numbers on PHP 7.4 2020-05-04 18:58:31 +02:00
Fabien Potencier
0d4bba82b8 feature #36557 [Messenger] Add support for RecoverableException (jderusse)
This PR was squashed before being merged into the 5.1-dev branch.

Discussion
----------

[Messenger] Add support for RecoverableException

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Tickets       | N/A
| License       | MIT
| Doc PR        | N/A

The messenger supports the `UnrecoverableException` preventing the messenger retry mechanism
 when the Handler will never be able to process the Message.

This PR adds the opposite behavior to always retry the message.

UseCase:
- High concurency Consumers use non-blocking lock
- 503/429 errors from 3rd party API

Commits
-------

e7c31675f7 [Messenger] Add support for RecoverableException
2020-05-04 18:55:50 +02:00
Jérémy Derussé
e7c31675f7 [Messenger] Add support for RecoverableException 2020-05-04 18:55:44 +02:00
Christian Flothmann
e91bb614ae properly handle empty lines 2020-05-04 18:35:27 +02:00
Christian Flothmann
6d0195f3cd fix tests 2020-05-04 18:17:53 +02:00
Nicolas Grekas
39aab260d4 Merge branch '5.0'
* 5.0:
  Use PHP 7.2 minimum in tests run with github actions
  Fix exception messages containing exception messages
2020-05-04 17:54:21 +02:00
Nicolas Grekas
992f50fee2 Merge branch '4.4' into 5.0
* 4.4:
  Fix exception messages containing exception messages
2020-05-04 17:34:58 +02:00
Nicolas Grekas
b0573cb418 Merge branch '3.4' into 4.4
* 3.4:
  Fix exception messages containing exception messages
2020-05-04 17:32:48 +02:00
Nicolas Grekas
169e49d491 Fix exception messages containing exception messages 2020-05-04 17:12:51 +02:00
Nicolas Grekas
1ae3e043c5 Merge branch '5.0'
* 5.0: (26 commits)
  [Filesystem] Handle paths on different drives
  [WebProfiler] Do not add src-elem CSP directives if they do not exist
  [Yaml] fix parse error when unindented collections contain a comment
  Execute docker dependent tests with github actions
  Update exception.html.php
  [3.4][Inflector] Improve testSingularize() argument name
  [Inflector] Fix testPluralize() arguments names
  [PhpUnitBridge] fix PHP 5.3 compat again
  Skip validation when email is an empty object
  fix sr_Latn translation
  [Validator] fix lazy property usage.
  Fix annotation
  [Debug][ErrorHandler] cleanup phpunit.xml.dist files
  [Translation] Fix for translation:update command updating ICU messages
  [PhpUnitBridge] fix compat with PHP 5.3
  bumped Symfony version to 5.0.9
  updated VERSION for 5.0.8
  updated CHANGELOG for 5.0.8
  bumped Symfony version to 4.4.9
  updated VERSION for 4.4.8
  ...
2020-05-04 16:13:31 +02:00
Nicolas Grekas
ae226ee34b Merge branch '4.4' into 5.0
* 4.4: (23 commits)
  [Filesystem] Handle paths on different drives
  [WebProfiler] Do not add src-elem CSP directives if they do not exist
  [Yaml] fix parse error when unindented collections contain a comment
  Execute docker dependent tests with github actions
  Update exception.html.php
  [3.4][Inflector] Improve testSingularize() argument name
  [Inflector] Fix testPluralize() arguments names
  [PhpUnitBridge] fix PHP 5.3 compat again
  Skip validation when email is an empty object
  fix sr_Latn translation
  [Validator] fix lazy property usage.
  Fix annotation
  [Debug][ErrorHandler] cleanup phpunit.xml.dist files
  [Translation] Fix for translation:update command updating ICU messages
  [PhpUnitBridge] fix compat with PHP 5.3
  bumped Symfony version to 4.4.9
  updated VERSION for 4.4.8
  updated CHANGELOG for 4.4.8
  provide a useful message when extension types don't match
  [Cache] Fixed not supported Redis eviction policies
  ...
2020-05-04 16:05:24 +02:00
Nicolas Grekas
394946de47 Merge branch '3.4' into 4.4
* 3.4:
  [Filesystem] Handle paths on different drives
  [WebProfiler] Do not add src-elem CSP directives if they do not exist
  [Yaml] fix parse error when unindented collections contain a comment
  [3.4][Inflector] Improve testSingularize() argument name
  [PhpUnitBridge] fix PHP 5.3 compat again
  Skip validation when email is an empty object
  fix sr_Latn translation
  [Validator] fix lazy property usage.
  Fix annotation
  [PhpUnitBridge] fix compat with PHP 5.3
  [DX] Show the ParseException message in YAML file loaders
2020-05-04 16:02:18 +02:00
Fabien Potencier
64e5a9dee8 bug #36590 [Console] Default hidden question to 1 attempt for non-tty session (ostrolucky)
This PR was merged into the 4.4 branch.

Discussion
----------

[Console] Default hidden question to 1 attempt for non-tty session

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36565
| License       | MIT
| Doc PR        |

### Problem 1
`validateAttempts()` method repeats validation forever by default, until exception extending `RuntimeException` isn't thrown. This currently happens disregarding if user is in tty session where they can actually type input, or non-tty session. This presents a problem when user code throws custom exceptions for hidden questions -> loop doesn't stop. As far as I can tell this issue is in all Symfony versions, but it was uncovered only after we stopped marking interactive flag to false automatically ourselves. Actually, all 3 problems were already existing problems, just hidden until now.
### Problem 2
Infinite loop problem is related to hidden questions, but this one isn't. If validation fails, another attempt to read & validate happens. This means user will get two prompts: 2x same question with 2 different error messages. One error message coming from validator, second error message about inability to read input (because this loop repeats until this kind of error happens, so last output will always be this error). As an example, output in practice would look like following
```

 What do you want to do:
 >

 [ERROR] Action must not be empty.

 What do you want to do:
 >

  Aborted.

```

So even if loop stops, output is more than expected.

### Problem 3
This is purely cosmetic issue, but currently user gets `stty: stdin isn't a terminal` printed additionally when question helper tries to ask a hidden question without having tty. I have fixed this in same fashion as was already done for [getShell() method](ee7fc5544e/src/Symfony/Component/Console/Helper/QuestionHelper.php (L500)).

### More details
Well root of the first problem is that `\Symfony\Component\Console\Helper\QuestionHelper::getHiddenResponse` is inconsistent. In some cases it does throw `MissingInputException` (which extends `RuntimeException`), in others doesn't. This is because in others, `shell_exec` is used, which won't return `false` even in non-tty sessions. Initially I attempted to fix this and make them consistent by checking for empty result + `isTty` call, but during my testing I found that at least last, `bash -c` method returns `\n` as output both when passing empty input and when passing newline as input. This means we cannot differentiate with this technique when input is really empty, or at least I can't currently tell how, maybe someone does. I had also idea to use proc_open and check if `STDERR` cotains message about stdin not being a terminal, but I realized these functions might not be available. In future we should modernize this method to use less hacky techniques. Other solutions, eg. Inquirer.js or [hoa/console](https://github.com/hoaproject/Console/blob/master/Source/Readline/Readline.php) have much more elegant solutions. Anyway, since I encountered this issue and additionally this doesn't solve Problem 2, I stopped trying to fix this on this level.

### Alternative solution
Alternative solution to problem 1 and 3 would be to fallback to default in case of hidden questions when tty is missing. But this still doesn't solve problem 2 and I can't think about solution right now which would fix problem 2 separately. We also didn't really reach consensus if reading passwords via stdin is desired. I tried this in `Inquirer.js` and this library *does read password from stdin*

Commits
-------

ee7fc5544e [Console] Default hidden question to 1 attempt for non-tty session
2020-05-04 15:57:21 +02:00
Nicolas Grekas
bd952b9c47 bug #36497 [Filesystem] Handle paths on different drives (crishoj)
This PR was squashed before being merged into the 3.4 branch.

Discussion
----------

[Filesystem] Handle paths on different drives

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| License       | MIT

`makePathRelative` strips and ignores the drive letters given Windows paths on different drives, resulting in a relative path which does not resolve to the desired target.

This PR makes `makePathRelative` notice paths on different drives, and return the full (absolute) target path in case instead.

Commits
-------

00e727ae4e [Filesystem] Handle paths on different drives
2020-05-04 15:48:43 +02:00
Christian Rishøj
00e727ae4e [Filesystem] Handle paths on different drives 2020-05-04 15:48:34 +02:00
Thomas Calvet
3e80e461a9 [DependencyInjection] Add a mechanism to deprecate public services to private 2020-05-04 15:38:14 +02:00
Nicolas Grekas
cf0d086d14 bug #36678 [WebProfiler] Do not add src-elem CSP directives if they do not exist (ndench)
This PR was merged into the 3.4 branch.

Discussion
----------

[WebProfiler] Do not add src-elem CSP directives if they do not exist

| Q             | A
| ------------- | ---
| Branch?       | 3.4, 4.4, 5.0
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #36643
| License       | MIT
| Doc PR        | n/a

In the latest 3.4.*, 4.4.* and 5.0.* branches the `script-src-elem` and `style-src-elem` directives are added to the Content-Security-Policy header if they don't exist by copying the `default-src`. This causes browsers to ignore the `script-src` and `style-src` directives which likely contain scripts and styles the developer wanted to allow.

As mentioned in the fixed ticket, we shouldn't be adding these directives if they don't exist because the browser will automatically fallback to `script-src` and `style-src` which we have already added `unsafe-inlen` and the `nonce-*` to.

This will need to be merged into 3.4, 4.4 and 5.0, but I was unsure which branch I am meant to base it off to start with. I've put it on 4.4 but can move it to another if required.

Commits
-------

d9c47087c9 [WebProfiler] Do not add src-elem CSP directives if they do not exist
2020-05-04 15:33:45 +02:00
Nicolas Grekas
78a7f4682f bug #36501 [DX] Show the ParseException message in all YAML file loaders (fancyweb)
This PR was merged into the 3.4 branch.

Discussion
----------

[DX] Show the ParseException message in all YAML file loaders

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

This PR synchronizes the exception message in the Routing, Validator and Translation YAML file loaders with the DependencyInjection YAML file loader behavior. Adding the ParseException message is a big DX gain because it highlights the problem directly instead of having to scroll down 7 previous exceptions.

I'm targetting 3.4 because DX can be considered as a bug fix AFAIK.

Commits
-------

fc6cf3d3c6 [DX] Show the ParseException message in YAML file loaders
2020-05-04 15:29:28 +02:00
Nathan Dench
d9c47087c9 [WebProfiler] Do not add src-elem CSP directives if they do not exist 2020-05-04 15:18:19 +02:00
Wouter Diesveld
58bb2c52ac [Yaml] fix parse error when unindented collections contain a comment 2020-05-04 14:50:41 +02:00
Fabien Potencier
0a7fa8f35d minor #36647 Execute docker dependent tests with github actions (jakzal)
This PR was merged into the 4.4 branch.

Discussion
----------

Execute docker dependent tests with github actions

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | Fixes #36427
| License       | MIT
| Doc PR        | -

* redis, memcached, rabbitmq and vulcain dependent tests moved to the github action
* run on PHP 7.1 and 7.4 only
* use the `integration` group for all tests that depend on docker services
* do not exclude the `integration` group on Travis, but make sure tests that depend on docker services are skipped properly

[<img width="1222" alt="image" src="https://user-images.githubusercontent.com/190447/80806323-48339100-8bb2-11ea-95cd-5ce773c74ce6.png">](https://github.com/jakzal/symfony/runs/636461875?check_suite_focus=true)

Commits
-------

d710c1b654 Execute docker dependent tests with github actions
2020-05-04 14:48:54 +02:00
Jakub Zalas
d710c1b654
Execute docker dependent tests with github actions 2020-05-04 12:09:26 +01:00
Nicolas Grekas
1ac5f68810 [FrameworkBundle] use the router context by default for assets 2020-05-04 10:37:33 +02:00
Fabien Potencier
469d82d6e2 bug #36672 [Validator] Skip validation when email is an empty object (acrobat)
This PR was merged into the 3.4 branch.

Discussion
----------

[Validator] Skip validation when email is an empty object

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | <!-- prefix each issue number with "Fix #", if any -->
| License       | MIT
| Doc PR        | <!-- required for new features -->

When the value passed to the email validator is an empty object the validator is still called and will mark the value as invalid. The object should be skipped in this case, as it is also done in the `UrlValidator`

bfdbb244fe/src/Symfony/Component/Validator/Constraints/UrlValidator.php (L59-L62)

<!--
Replace this notice by a short README for your feature/bugfix. This will help people
understand your PR and can be used as a start for the documentation.

Additionally (see https://symfony.com/releases):
 - Always add tests and ensure they pass.
 - Never break backward compatibility (see https://symfony.com/bc).
 - Bug fixes must be submitted against the lowest maintained branch where they apply
   (lowest branches are regularly merged to upper ones so they get the fixes too.)
 - Features and deprecations must be submitted against branch master.
-->

Commits
-------

de5d68ef2a Skip validation when email is an empty object
2020-05-04 09:50:33 +02:00
Olatunbosun Egberinde
1c9162d2ad Update exception.html.php 2020-05-04 09:47:19 +02:00
Fabien Potencier
e9be7418a3 feature #36651 [FrameworkBundle] Allow configuring the default base URI with a DSN (nicolas-grekas)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[FrameworkBundle] Allow configuring the default base URI with a DSN

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Tickets       | Fixes #35121, replaces #35580, partially reverts #35281
| License       | MIT
| Doc PR        | -

Instead of defining 3-4 parameters, this PR enables using a single DSN to configure the default URL context (for commands mainly):
```
framework:
	router:
		base_uri: 'https://my.host:8443/base-path/'
```

When using parameters directly, one can now set the same absolute URI in the `router.request_context.base_url` parameter, this will provide the same benefit.

Commits
-------

250fa7e979 [FrameworkBundle] Allow configuring the default base URI with a DSN
2020-05-04 09:42:27 +02:00
Nicolas Grekas
250fa7e979 [FrameworkBundle] Allow configuring the default base URI with a DSN 2020-05-04 09:14:05 +02:00
Thomas Calvet
75405247be [3.4][Inflector] Improve testSingularize() argument name 2020-05-04 09:08:14 +02:00
Thomas Calvet
fb42f98315 [Inflector] Fix testPluralize() arguments names 2020-05-04 09:00:39 +02:00
Nicolas Grekas
065a8cee5f [PhpUnitBridge] fix PHP 5.3 compat again 2020-05-03 23:44:38 +02:00
Jeroen Thora
de5d68ef2a
Skip validation when email is an empty object 2020-05-03 21:36:20 +02:00
Fabien Potencier
09645a9103 feature #36600 [Security] Added LDAP support to Authenticator system (wouterj)
This PR was merged into the 5.1-dev branch.

Discussion
----------

[Security] Added LDAP support to Authenticator system

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Tickets       | -
| License       | MIT
| Doc PR        | -

The last missing authenticator in the new system 🎉

I have no experience with LDAP at all and I didn't succeed in setting up a server locally. So I can't test whether this works, but the unit test works (and also tested in a real app, while adding a `dd()` call in the listener).

---

I want to share with you the current state of Security LDAP, how this PR implements it and a possible other solution (which I think I would prefer most). Is there anyone who can share their opinions on this? (hopefully @weaverryan and @csarrazi can share their opinion, as they have most experience on this topic)

1. **Current Solution: An LDAP authentication provider + duplicated `SecurityFactory` classes**
   LDAP is done in one centralized authentication provider. This provider is configured by security factories for each core factory (e.g. `form_login` becomes `form_login_ldap`, `http_basic` becomes `http_basic_ldap`).
2. **Implementation in this PR: A listener is executed before the default `VerifyCredentialsListener`, to verify `PasswordCredentials`**
   This listener must be configured for each specific authenticator wanting to use LDAP. This is a technique similar to (1). It's a bit difficult to use this for your own authenticator (you need to configure a custom listener service) and still needs the duplicated factory classes
3. **Proposal: Introduce a `LdapCredentials` class and always register a listener**
   If an authentictor returns `LdapCredentials`, it'll be checked using the LDAP verification listener. This is the easiest for custom authenticators and would remove the duplicated factories, I can imagine `form_login` getting a new `ldap` sub option to configure the settings.

   The main disadvantage (I think) is that we would need to make `LdapCredentials` configure all options: ldap service, dnString, searchDn, searchPassword & queryString. Especially passing around the ldap service seems a bit weird. The main questions here are: Is it weird to pass all these things in the `LdapCredentials`? And, do we really need to support having multiple LDAP configuration sets for different authenticators? Or can we e.g. add a global `security.ldap` configuration, that registers the listener for all authenticators returning `LdapCredentials`?

Commits
-------

20962e604a [Security] Added LDAP support to Authenticator system
2020-05-03 19:24:55 +02:00
Michel Hunziker
ea79206470 [Messenger] Add option to stop the worker after a message failed 2020-05-03 19:22:38 +02:00