Commit Graph

34705 Commits

Author SHA1 Message Date
Maxime Steinhausser
e4c4d2dce8 [Validator] Add ExpressionValidator typehint & remove deprecation 2019-06-21 10:29:21 +02:00
Christian Flothmann
74387cf21f fix translation domain 2019-06-20 22:29:36 +02:00
Christian Flothmann
ea5b1f4d67 tag the FileType service as a form type 2019-06-20 12:19:18 +02:00
Christian Flothmann
f23a7f60cf don't validate IP addresses from env var placeholders 2019-06-20 12:11:09 +02:00
Nicolas Grekas
f76e77d58f Add autowiring for HTTPlug 2019-06-20 09:09:07 +02:00
Fabien Potencier
16ff6ee3b8 Merge branch '4.4'
* 4.4:
  Revert "minor #32054 Prepare for PHP 7.4 preload (nicolas-grekas)"
2019-06-20 08:46:26 +02:00
Fabien Potencier
6fcd319d78 minor #32044 [Validator] Fix GroupSequenceProvider annotation (enumag)
This PR was squashed before being merged into the 3.4 branch (closes #32044).

Discussion
----------

[Validator] Fix GroupSequenceProvider annotation

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

The possibility was added in https://github.com/symfony/symfony/pull/19982, just forgot to fix this annotation back then.

Commits
-------

bf6d2532de [Validator] Fix GroupSequenceProvider annotation
2019-06-20 08:43:36 +02:00
Jáchym Toušek
bf6d2532de [Validator] Fix GroupSequenceProvider annotation 2019-06-20 08:43:29 +02:00
Nicolas Grekas
8a1813a095 Revert "minor #32054 Prepare for PHP 7.4 preload (nicolas-grekas)"
This reverts commit a0aa94114a, reversing
changes made to 8496003634.
2019-06-20 08:42:33 +02:00
Tobias Schultze
c1c3b54a0f [Messenger] fix delay exchange recreation after disconnect 2019-06-20 03:38:05 +01:00
Robin Chalas
8ad74a859d minor #32001 [Security] Fix AuthenticationException::getToken typehint (norkunas)
This PR was merged into the 3.4 branch.

Discussion
----------

[Security] Fix AuthenticationException::getToken typehint

| Q             | A
| ------------- | ---
| Branch?       | 3.4 <!-- see below -->
| Bug fix?      | no
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | #...   <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

The token may be not set when throwing AuthenticationException.

<!--
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/roadmap):
 - 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 4.4.
 - Legacy code removals go to the master branch.
-->

Commits
-------

a9705a0143 Fix AuthenticationException::getToken typehint
2019-06-19 19:38:48 +02:00
Nicolas Grekas
409ccd18ec Merge branch '4.4'
* 4.4:
  [FrameworkBundle] minor: fix typo in SessionTest
  [Debug] workaround BC break in PHP 7.3
  [CACHE] Correct required file added in #32054
  remove bc break code
2019-06-19 17:29:48 +02:00
Nicolas Grekas
d31b71677d Merge branch '4.3' into 4.4
* 4.3:
  [FrameworkBundle] minor: fix typo in SessionTest
  [Debug] workaround BC break in PHP 7.3
2019-06-19 17:27:23 +02:00
Nicolas Grekas
2fa52989db Merge branch '4.2' into 4.3
* 4.2:
  [FrameworkBundle] minor: fix typo in SessionTest
  [Debug] workaround BC break in PHP 7.3
2019-06-19 17:27:09 +02:00
Nicolas Grekas
b2eeaea00c Merge branch '3.4' into 4.2
* 3.4:
  [FrameworkBundle] minor: fix typo in SessionTest
  [Debug] workaround BC break in PHP 7.3
2019-06-19 17:26:44 +02:00
Fabien Potencier
df210194e0 minor #32100 Update ajax security cheat sheet link (steef)
This PR was merged into the 3.4 branch.

Discussion
----------

Update ajax security cheat sheet link

| Q             | A
| ------------- | ---
| Branch?       | 3.4 <!-- see below -->
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| License       | MIT

# Description
After looking in the `JsonResponse` class I found an old OWASP [link](https://www.owasp.org/index.php/AJAX_Security_Cheat_Sheet#Always_return_JSON_with_an_Object_on_the_outside). As the cheat sheet series project is moved to GitHub the link can be updated to the [following](https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/AJAX_Security_Cheat_Sheet.md).

## Screenshot
<img width="552" alt="Screenshot 2019-06-19 at 16 52 19" src="https://user-images.githubusercontent.com/34915382/59776184-a7e2bf80-92b2-11e9-8d23-802acfddfb1d.png">

Commits
-------

32d02d6141 Update ajax security cheat sheet link
2019-06-19 17:25:42 +02:00
Stefano Degenkamp
32d02d6141
Update ajax security cheat sheet link
As the cheat sheet series project has been moved to github.
2019-06-19 17:21:12 +02:00
Fabien Potencier
eb4026b3f4 bug #32090 [Debug] workaround BC break in PHP 7.3 (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[Debug] workaround BC break in PHP 7.3

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony-standard/issues/1138 https://github.com/symfony/website-skeleton/issues/231
| License       | MIT
| Doc PR        | -

A new warning has been added in PHP 7.3 that is breaking BC with Symfony, since we turn warnings into exceptions.
This PR turns the new warning into a deprecation, so that we will be able to remove the added "if" in 5.0.

I noticed a few other similar BC breaks in 7.1 and 7.2, but *unless someone reports that they block them*, I don't think we need to care.
- 7.1 A non well formed numeric value encountered E_NOTICE
- 7.1 A non-numeric value encountered E_WARNING
- 7.2 count() now raises a warning when an invalid parameter is passed.

See https://github.com/php/php-src/blob/PHP-7.1/UPGRADING + same in upper branches.

Commits
-------

d8d43e6195 [Debug] workaround BC break in PHP 7.3
2019-06-19 12:21:41 +02:00
Amrouche Hamza
494281465d [FrameworkBundle] minor: fix typo in SessionTest 2019-06-19 10:53:48 +02:00
Lctrs
6ac2316993 [Validator] Use LogicException for missing Property Access Component in comparison constraints 2019-06-19 10:51:43 +02:00
Nicolas Grekas
d8d43e6195 [Debug] workaround BC break in PHP 7.3 2019-06-18 23:26:03 +02:00
Nicolas Grekas
dc55cf826a [HttpClient] fixing passing debug info to progress callback 2019-06-18 14:13:04 +02:00
Anderson Müller
d04a3b3ff9
[CACHE] Correct required file added in #32054 2019-06-18 13:39:39 +02:00
Fabien Potencier
411ad9752a feature #31764 [FrameworkBundle] add attribute stamps (walidboughdiri)
This PR was merged into the 4.4 branch.

Discussion
----------

[FrameworkBundle] add attribute stamps

| Q             | A
| ------------- | ---
| Branch?       | 4.4 <!-- see below -->
| Bug fix?      | no
| New feature?  | yes<!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | n/a   <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | n/a <!-- required for new features -->

<!--
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/roadmap):
 - 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 4.4.
 - Legacy code removals go to the master branch.
-->

Commits
-------

8a09579d35 remove bc break code
2019-06-18 06:47:21 +02:00
walidboughdiri
8a09579d35 remove bc break code 2019-06-18 02:21:11 +02:00
Nicolas Grekas
6f21ccf323 Merge branch '4.4'
* 4.4:
  Fix PDO prune not called
  Fix Expiring lock in PDO and ZooKeeper
  Add BC layer for updated constructor types
  [Lock] fix bad merge
2019-06-17 21:45:49 +02:00
Nicolas Grekas
561ad17d16 minor #32074 Add BC layer for updated constructor types (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

Add BC layer for updated constructor types

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

Reverts some CS changes done in #32066 + replaces its BC breaks by a BC layer.
Our CI is too good, it bites us hard when we break our own rules :)

Commits
-------

c34fcd91d1 Add BC layer for updated constructor types
2019-06-17 21:43:44 +02:00
Nicolas Grekas
67f99ce226 Merge branch '4.3' into 4.4
* 4.3:
  Fix PDO prune not called
  Fix Expiring lock in PDO and ZooKeeper
  [Lock] fix bad merge
2019-06-17 21:43:06 +02:00
Nicolas Grekas
5af1e9e1a5 minor #32075 [Lock] Fix expired lock not cleaned in ZooKeeper (jderusse)
This PR was merged into the 4.3 branch.

Discussion
----------

[Lock] Fix expired lock not cleaned in ZooKeeper

| Q             | A
| ------------- | ---
| Branch?       | 4.3
| Bug fix?      | yes
| New feature?  | ,p
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #31426
| License       | MIT
| Doc PR        | NA

Following #32071 for 4.3 branch

context:
When a lock is acquired BUT not as fast as expected, a LockExpiredException is thrown.
Issue is, that the lock is not removed which avoid other process to acquire that lock.

This PR clean state of store when a LockExpiredException is triggered in PDO and ZooKeepeer.

Commits
-------

4f808ef4f4 Fix Expiring lock in PDO and ZooKeeper
2019-06-17 21:42:39 +02:00
Nicolas Grekas
15652e3373 Merge branch '4.2' into 4.3
* 4.2:
  Fix PDO prune not called
2019-06-17 21:41:54 +02:00
Jérémy Derussé
fc2dc14924
Fix PDO prune not called 2019-06-17 21:38:43 +02:00
Jérémy Derussé
4f808ef4f4
Fix Expiring lock in PDO and ZooKeeper 2019-06-17 21:08:41 +02:00
Nicolas Grekas
c34fcd91d1 Add BC layer for updated constructor types 2019-06-17 20:49:26 +02:00
Nicolas Grekas
1337dbff81 Merge branch '4.2' into 4.3
* 4.2:
  [Lock] fix bad merge
2019-06-17 20:45:40 +02:00
Nicolas Grekas
432c21f83c [Lock] fix bad merge 2019-06-17 20:45:27 +02:00
Nicolas Grekas
fa29a56683 Merge branch '4.4'
* 4.4:
  [Cache] replace getNsSeparator by NS_SEPARATOR on AbstractTrait
  [Cache] fix versioning with SimpleCacheAdapter
  [Messenger] fix AMQP delay queue to be per exchange
  Fix expired lock not cleaned
  Fine tune constructor types
  [HttpClient] throw DecodingExceptionInterface when toArray() fails because of content-type error
  [HttpFoundation] Fix SA/phpdoc JsonResponse
  [DI] Show the right class autowired when providing a non-existing class in constructor
  SimpleCacheAdapter fails to cache any item if a namespace is used
  validate composite constraints in all groups
  [Serializer] Handle true and false appropriately in CSV encoder
  [Messenger] improve logs
  [Messenger] fix delay delivery for non-fanout exchanges
  Parameterize Mailgun's region
  Fix binary operation `+`, `-` or `*` on string
  [VarDumper] fix dumping objects that implement __debugInfo()
  [HttpClient] Don't use CurlHttpClient on Windows when curl.cainfo is not set
  Add statement to fileLink to ignore href code when no fileLink.
  [Routing] fix absolute url generation when scheme is not known
2019-06-17 19:43:54 +02:00
Nicolas Grekas
651de173df Merge branch '4.3' into 4.4
* 4.3:
  [Cache] replace getNsSeparator by NS_SEPARATOR on AbstractTrait
  [Cache] fix versioning with SimpleCacheAdapter
  [Messenger] fix AMQP delay queue to be per exchange
  Fix expired lock not cleaned
  [HttpClient] throw DecodingExceptionInterface when toArray() fails because of content-type error
  [HttpFoundation] Fix SA/phpdoc JsonResponse
  [DI] Show the right class autowired when providing a non-existing class in constructor
  SimpleCacheAdapter fails to cache any item if a namespace is used
  validate composite constraints in all groups
  [Serializer] Handle true and false appropriately in CSV encoder
  [Messenger] improve logs
  [Messenger] fix delay delivery for non-fanout exchanges
  Parameterize Mailgun's region
  Fix binary operation `+`, `-` or `*` on string
  [VarDumper] fix dumping objects that implement __debugInfo()
  [HttpClient] Don't use CurlHttpClient on Windows when curl.cainfo is not set
  Add statement to fileLink to ignore href code when no fileLink.
  [Routing] fix absolute url generation when scheme is not known
2019-06-17 19:38:10 +02:00
Nicolas Grekas
953ac3e77f Merge branch '4.2' into 4.3
* 4.2:
  [Cache] replace getNsSeparator by NS_SEPARATOR on AbstractTrait
  [Cache] fix versioning with SimpleCacheAdapter
  Fix expired lock not cleaned
  [HttpFoundation] Fix SA/phpdoc JsonResponse
  SimpleCacheAdapter fails to cache any item if a namespace is used
  validate composite constraints in all groups
  [Serializer] Handle true and false appropriately in CSV encoder
  Fix binary operation `+`, `-` or `*` on string
  [VarDumper] fix dumping objects that implement __debugInfo()
  [Routing] fix absolute url generation when scheme is not known
2019-06-17 19:37:00 +02:00
Nicolas Grekas
6b61439fb9 Merge branch '3.4' into 4.2
* 3.4:
  [Cache] replace getNsSeparator by NS_SEPARATOR on AbstractTrait
  [Cache] fix versioning with SimpleCacheAdapter
2019-06-17 19:31:01 +02:00
Nicolas Grekas
2bf5da51da [Cache] replace getNsSeparator by NS_SEPARATOR on AbstractTrait 2019-06-17 19:26:15 +02:00
Nicolas Grekas
02a6f248b5 [Cache] fix versioning with SimpleCacheAdapter 2019-06-17 19:18:24 +02:00
Nicolas Grekas
06c17cdaa9 Merge branch '3.4' into 4.2
* 3.4:
  Fix expired lock not cleaned
  [HttpFoundation] Fix SA/phpdoc JsonResponse
  SimpleCacheAdapter fails to cache any item if a namespace is used
  validate composite constraints in all groups
  [Serializer] Handle true and false appropriately in CSV encoder
  Fix binary operation `+`, `-` or `*` on string
  [VarDumper] fix dumping objects that implement __debugInfo()
  [Routing] fix absolute url generation when scheme is not known
2019-06-17 19:15:38 +02:00
Fabien Potencier
12b852f7ab bug #32052 [Messenger] fix AMQP delay queue to be per exchange (Tobion)
This PR was squashed before being merged into the 4.3 branch (closes #32052).

Discussion
----------

[Messenger] fix AMQP delay queue to be per exchange

| Q             | A
| ------------- | ---
| Branch?       | 4.3
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | #32050
| License       | MIT
| Doc PR        |

this makes the delay/retry work when having several exchanges or renaming your exchange.

also the delay setup did not declare the target exchange. so if you only do delayed messages for a connection, auto-setup forgot to actually create the target exchange.

Commits
-------

5bc3364167 [Messenger] fix AMQP delay queue to be per exchange
2019-06-17 18:44:05 +02:00
Tobias Schultze
5bc3364167 [Messenger] fix AMQP delay queue to be per exchange 2019-06-17 18:43:56 +02:00
Fabien Potencier
6ee3efac79 minor #32066 Fine tune constructor types (Tobion)
This PR was merged into the 4.4 branch.

Discussion
----------

Fine tune constructor types

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets |
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

Fine tunes some constructor types that have been added in #24722

Form names as integer was only a workaround as forms names are used as array keys which get transformed to int. So it was added as a workaround in https://github.com/symfony/symfony/pull/6355#discussion_r2422205
With typehints added in #24722 those were mostly auto-cast anyway, e.g. in FormBuilder. There are only a few integer form names remaining documented, in the main entry points of the Form component (`\Symfony\Component\Form\FormInterface::add`). Internally it's always a string now. So I could remove some int docs which also fixes #30032 what @xabbuh tried to do.

Some of these changes we're just not done before because of broken tests. It's mainly a missing explicit mock for `TranslationInterface::trans` which returned null. If we had return types hints in interfaces, this wouldn't happen.

Commits
-------

507794a575 Fine tune constructor types
2019-06-17 18:40:55 +02:00
Fabien Potencier
99c44a3836 bug #32065 [HttpClient] throw DecodingExceptionInterface when toArray() fails because of content-type error (nicolas-grekas)
This PR was merged into the 4.3 branch.

Discussion
----------

[HttpClient] throw DecodingExceptionInterface when toArray() fails because of content-type error

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

As spotted in the linked issue, we are missing this type of exception. It's a bug at the contracts level.

Commits
-------

3f167417fb [HttpClient] throw DecodingExceptionInterface when toArray() fails because of content-type error
2019-06-17 18:35:34 +02:00
Jérémy Derussé
9f960f34e7
Fix expired lock not cleaned 2019-06-17 16:13:35 +02:00
Nicolas Grekas
ac7d168ffa Merge branch '4.4'
* 4.4:
  [PhpUnitBridge] Bump PHPUnit 7+8
  Prepare for PHP 7.4 preload
  prevent double deprecation message
  [Validator] Deprecate unused arg in ExpressionValidator
  [Config] Introduce find method in ArrayNodeDefinition to ease configuration tree manipulation
  [DomCrawler][Feature][DX] Add Form::getName() method
  [VarDumper] caster for HttpClient's response dumps all info
2019-06-17 13:53:04 +02:00
Nicolas Grekas
a0aa94114a minor #32054 Prepare for PHP 7.4 preload (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

Prepare for PHP 7.4 preload

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

PHP 7.4 preloading is not compatible with declaring the same class twice in if/else blocks.
Let's split the ones we have in several files.

Commits
-------

7cf3fb4a21 Prepare for PHP 7.4 preload
2019-06-17 13:50:38 +02:00
Tobias Schultze
507794a575 Fine tune constructor types 2019-06-17 02:42:58 +01:00
Nicolas Grekas
3f167417fb [HttpClient] throw DecodingExceptionInterface when toArray() fails because of content-type error 2019-06-16 20:17:37 +02:00
Roland Franssen
270f10cc81 [HttpFoundation] Fix SA/phpdoc JsonResponse 2019-06-16 13:18:06 +02:00
Roland Franssen
5491d5347c [PhpUnitBridge] Bump PHPUnit 7+8 2019-06-16 13:16:20 +02:00
Fabien Potencier
db1543514e bug #32040 [DI] Show the right class autowired when providing a non-existing class (Simperfit)
This PR was merged into the 4.3 branch.

Discussion
----------

[DI] Show the right class autowired when providing a non-existing class

| Q             | A
| ------------- | ---
| Branch?        4.3
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | #31997   <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        |none <!-- required for new features -->

<!--
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/roadmap):
 - 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 4.4.
 - Legacy code removals go to the master branch.
-->

This gets the last current id before the error and pass it to the callback in order to get the right error message.

Commits
-------

fbda90af6e [DI] Show the right class autowired when providing a non-existing class in constructor
2019-06-16 13:15:10 +02:00
Amrouche Hamza
fbda90af6e
[DI] Show the right class autowired when providing a non-existing class in constructor 2019-06-15 06:08:07 +02:00
Nicolas Grekas
7cf3fb4a21 Prepare for PHP 7.4 preload 2019-06-15 00:30:02 +02:00
Tobias Schultze
0034dee641 [Messenger] make retry logic work without SentStamp 2019-06-14 23:41:22 +02:00
Tobias Schultze
a9bcdcc936 bug #32035 [Messenger] fix delay delivery for non-fanout exchanges (Tobion)
This PR was merged into the 4.3 branch.

Discussion
----------

[Messenger] fix delay delivery for non-fanout exchanges

| Q             | A
| ------------- | ---
| Branch?       | 4.3
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets |
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

Fixes two bugs and outdated phpdoc:
1. When your exchange is not of type fanout, but direct for example, then delivery of delayed (retrying) messages does not work. This is because the delay logics adds a routing key to message. It was fixed if you have a custom routing key in #31355. But if you have no routing key, it still changed the routing key which means the message will not be delivery from your direct exchange to your queue anymore after being in the delay exchange. For fanout, which is the default, it does not matter because the routing key is ignored.
2. also fix dsn parsing of plain `amqp://` which is a valid URI that parse_url cannot handle when you want to pass all parameters as options

Commits
-------

0f15306d61 [Messenger] fix delay delivery for non-fanout exchanges
2019-06-14 19:11:46 +02:00
Christian Flothmann
ecded5ed03 prevent double deprecation message 2019-06-14 16:37:07 +02:00
Fabien Potencier
cfbb5b50b1 bug #32025 SimpleCacheAdapter fails to cache any item if a namespace is used (moufmouf)
This PR was squashed before being merged into the 3.4 branch (closes #32025).

Discussion
----------

SimpleCacheAdapter fails to cache any item if a namespace is used

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

This is a backport of #32019

The SimpleCacheAdapter extends AdapterTestCase.
When adding a namespace, the AdapterTestCase adds ":" after the namespace:

https://github.com/symfony/symfony/blob/v4.3.1/src/Symfony/Component/Cache/Adapter/AbstractAdapter.php#L37

The namespace is prepended to the cache key.
But in PSR-16, the ":" is a forbidden character.

As a result, the cache key is invalid and cache is not persisted. If you use Psr16Adapter + a namespace, the cache simply does not work.

As per @nicolas-grekas advices, a NS_SEPARATOR const is added to change the namespace separator for the `SimpleCacheAdapter` to "_" (that is compatible with PSR-16).

The first commit of this PR starts with an additional test and no fix (to showcase the problem).

Commits
-------

ffd3469ddf SimpleCacheAdapter fails to cache any item if a namespace is used
2019-06-14 13:16:09 +02:00
David Négrier
ffd3469ddf SimpleCacheAdapter fails to cache any item if a namespace is used 2019-06-14 13:16:02 +02:00
Maxime Steinhausser
0c0978cd47 [Validator] Deprecate unused arg in ExpressionValidator 2019-06-14 10:40:37 +02:00
Fabien Potencier
6b50c89d76 bug #32022 [HttpClient] Don't use CurlHttpClient on Windows when curl.cainfo is not set (nicolas-grekas)
This PR was merged into the 4.3 branch.

Discussion
----------

[HttpClient] Don't use CurlHttpClient on Windows when curl.cainfo is not set

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

On Windows, curl has no cabundle configured by default.

Commits
-------

a2960a3318 [HttpClient] Don't use CurlHttpClient on Windows when curl.cainfo is not set
2019-06-14 10:02:21 +02:00
Fabien Potencier
50c62d7704 feature #31287 [Config] Introduce find method in ArrayNodeDefinition to ease configuration tree manipulation (jschaedl)
This PR was squashed before being merged into the 4.4 branch (closes #31287).

Discussion
----------

[Config] Introduce find method in ArrayNodeDefinition to ease configuration tree manipulation

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | #27534   <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | tbd.

### Description

This PR introduces a new `find(string $nodePath)`method in the `ArrayNodeDefinition` class, which helps you finding the right node to prepend configuration to ease configuration tree manipulation.

### How to use it
```php
class Configuration implements ConfigurationInterface
{
    public function getConfigTreeBuilder()
    {
        ...

        $rootNode
            ->children()
                ->arrayNode('social_media_channels')
                    ->children()
                        ->booleanNode('enable')->end()
                        ->arrayNode('twitter')->end()
                        ->arrayNode('facebook')->end()
                        ->arrayNode('instagram')->end()
                    ->end()
                ->end()
            ->end()
        ;

        $this->changeSocialMediaChannelConfiguration($rootNode->find('social_media_channels.enable'));
        $this->addTwitterConfiguration($rootNode->find('social_media_channels.twitter'));
        $this->addFacebookConfiguration($rootNode->find('social_media_channels.facebook'));
        $this->addInstagramConfiguration($rootNode->find('social_media_channels.instagram'));

        return $treeBuilder;
    }

    private function changeSocialMediaChannelConfiguration(NodeDefinition $node)
    {
        $node
            ->defaultTrue()
        ;
    }

    private function addTwitterConfiguration(NodeDefinition $node)
    {
        $node
            ->children()
                ->integerNode('client_id')->end()
                ->scalarNode('client_secret')->end()
            ->end()
        ;
    }

    private function addFacebookConfiguration(NodeDefinition $node)
    {
        $node
            ->children()
                ->integerNode('client_id')->end()
                ->scalarNode('client_secret')->end()
            ->end()
        ;
    }

    private function addInstagramConfiguration(NodeDefinition $node)
    {
        $node
            ->children()
                ->integerNode('client_id')->end()
                ->scalarNode('client_secret')->end()
            ->end()
        ;
    }
}

```

Commits
-------

e3b248aee0 [Config] Introduce find method in ArrayNodeDefinition to ease configuration tree manipulation
2019-06-14 09:59:19 +02:00
Jan Schädlich
e3b248aee0 [Config] Introduce find method in ArrayNodeDefinition to ease configuration tree manipulation 2019-06-14 09:59:12 +02:00
Christian Flothmann
94ded00216 validate composite constraints in all groups 2019-06-14 09:34:46 +02:00
Fabien Potencier
b8978bd9ff bug #32007 [Serializer] Handle true and false appropriately in CSV encoder (battye)
This PR was squashed before being merged into the 3.4 branch (closes #32007).

Discussion
----------

[Serializer] Handle true and false appropriately in CSV encoder

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

Previously, if `true` was passed in as a value to the CSV encoder then `fputcsv()` would correctly treat it as 1. However, if `false` was passed in, it would be treated as a blank value. `null` would also be treated as a blank value.

This fix makes it consistent so that true and false will map to 1 and 0, while null maps to an empty string.

Commits
-------

89cba00c68 [Serializer] Handle true and false appropriately in CSV encoder
2019-06-14 07:50:06 +02:00
battye
89cba00c68 [Serializer] Handle true and false appropriately in CSV encoder 2019-06-14 07:49:57 +02:00
Fabien Potencier
f06a35b974 feature #31959 [DomCrawler][Feature][DX] Add Form::getName() method (JustBlackBird)
This PR was squashed before being merged into the 4.4 branch (closes #31959).

Discussion
----------

[DomCrawler][Feature][DX] Add Form::getName() method

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | None
| License       | MIT
| Doc PR        | symfony/symfony-docs#11705

The PR adds `Symfony\Component\DomCrawler\Form::getName` method.

The method is actually a syntax sugar but can improve DX when dealing with tests. For example, in the snippet

```php
$client = static::createClient();
$crawler = $client->request('GET', '/post/hello-world');
$form = $crawler->selectButton('submit')->form();

$form['my_form[name]'] = 'Fabien';
$form['my_form[subject]'] = 'Symfony rocks!';
```
the prefix in field name (`my_form`) is form name, which is generated by Symfony automatically. The method, added in the PR helps to get that name in a most obvious way.

Commits
-------

ff53cb462a [DomCrawler][Feature][DX] Add Form::getName() method
2019-06-14 07:15:47 +02:00
Dmitry Simushev
ff53cb462a [DomCrawler][Feature][DX] Add Form::getName() method 2019-06-14 07:15:39 +02:00
Fabien Potencier
e02da2ab35 bug #32036 [Messenger] improve logs (Tobion)
This PR was merged into the 4.3 branch.

Discussion
----------

[Messenger] improve logs

| Q             | A
| ------------- | ---
| Branch?       | 4.3
| Bug fix?      | no
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets |
| License       | MIT
| Doc PR        |

The logs are currently very confusing and duplicated:

- When handled sync the uncaught error it logged and displayed by the console / http error handler anyway. Currently it the warning is duplicated and useless:

```
14:26:11 WARNING   [messenger] An exception occurred while handling message "{class}": OUCH, THAT HURTS! GO TO MOM!
14:26:11 ERROR     [console] Error thrown while running command "{class}". Message: "OUCH, THAT HURTS! GO TO MOM!"

In HandleMessageMiddleware.php line 82:

  [Symfony\Component\Messenger\Exception\HandlerFailedException]
  OUCH, THAT HURTS! GO TO MOM!
```

- When handling async is was even confusing because the actual error was logged as warning and the retry (which is a good thing) was the error.

```
13:48:15 WARNING   [messenger] An exception occurred while handling message "{class}": OUCH, THAT HURTS! GO TO MOM!
13:48:15 ERROR     [messenger] Retrying {class} - retry #1.
```

Now it's must clearer and adds even context like the delay:

```
16:20:11 ERROR     [messenger] Error thrown while handling message {class}. Dispatching for retry #3 using 4000 ms delay. Error: "OUCH, THAT HURTS! GO TO MOM!"
...
16:20:15 CRITICAL  [messenger] Error thrown while handling message {class}. Removing from transport after 3 retries. Error: "OUCH, THAT HURTS! GO TO MOM!"
```

Commits
-------

2ac7027b71 [Messenger] improve logs
2019-06-14 07:10:33 +02:00
Tobias Schultze
2ac7027b71 [Messenger] improve logs 2019-06-14 05:35:37 +02:00
Tobias Schultze
0f15306d61 [Messenger] fix delay delivery for non-fanout exchanges
also fix dsn parsing of plain amqp:// uri
2019-06-14 02:31:20 +02:00
Jérémy Derussé
7439c8de55
Parameterize Mailgun's region 2019-06-13 19:53:12 +02:00
Fabien Potencier
bd9d0a4793 bug #32000 [Routing] fix absolute url generation when scheme is not known (Tobion)
This PR was merged into the 3.4 branch.

Discussion
----------

[Routing] fix absolute url generation when scheme is not known

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | #25491
| License       | MIT
| Doc PR        |

This fixes two edge cases in the url generator:
1. when the context scheme is not known (empty) generating an absolute url would return an invalid url starting with `://host/path`. #25491 handled the case when the host is unknown which makes sense. but the way it was done, created this new problem.
2. non-http(s) urls do not require a host. e.g. typical `file:///path` urls. url generator is fixed to be in line with rfc3986

Commits
-------

8e04222976 [Routing] fix absolute url generation when scheme is not known
2019-06-13 18:44:13 +02:00
Fabien Potencier
9865988ac2 bug #32012 Add statement to fileLink to ignore href code when no fileLink. (bmxmale)
This PR was merged into the 4.3 branch.

Discussion
----------

Add statement to fileLink to ignore href code when no fileLink.

| Q             | A
| ------------- | ---
| Branch?       | 4.3 <!-- see below -->
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? |no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | #...   <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

<!--
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/roadmap):
 - 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 4.4.
 - Legacy code removals go to the master branch.
-->
This fix add statement to `\Symfony\Bundle\FrameworkBundle\Console\Descriptor\TextDescriptor::formatControllerLink` to fix display bug.

**Before**

![image](https://user-images.githubusercontent.com/23213308/59355771-ed8a1000-8d27-11e9-998f-fa2fc34edd62.png)

**After**

![image](https://user-images.githubusercontent.com/23213308/59355785-f2e75a80-8d27-11e9-953b-7523e0c9ad35.png)

Commits
-------

b9eab42823 Add statement to fileLink to ignore href code when no fileLink.
2019-06-13 18:41:02 +02:00
Fabien Potencier
bad18dc4ac feature #32026 [VarDumper] caster for HttpClient's response dumps all info (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[VarDumper] caster for HttpClient's response dumps all info

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

No need to dump the internal structure for responses IMHO, here is a caster that dumps the info instead:

![image](https://user-images.githubusercontent.com/243674/59434490-efb5a280-8deb-11e9-8714-5f1ccbc208b1.png)

Commits
-------

2b268379f5 [VarDumper] caster for HttpClient's response dumps all info
2019-06-13 18:38:05 +02:00
Nicolas Grekas
2b268379f5 [VarDumper] caster for HttpClient's response dumps all info 2019-06-13 18:29:46 +02:00
Fabien Potencier
faf7b305f9 bug #32024 [VarDumper] fix dumping objects that implement __debugInfo() (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[VarDumper] fix dumping objects that implement __debugInfo()

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

Right now it fails if the return value is not an array + it doesn't dump the original details from the object's internals.

Commits
-------

a9d0038ec0 [VarDumper] fix dumping objects that implement __debugInfo()
2019-06-13 18:26:35 +02:00
Stefano Degenkamp
d445465ef4 Fix binary operation +, - or * on string
By type casting to integer.
2019-06-13 17:39:17 +02:00
Nicolas Grekas
fdc2c9cbb9 Allow doctrine-bundle ^2 2019-06-13 16:30:45 +02:00
Nicolas Grekas
23d8fc761b fix merge 2019-06-13 16:28:46 +02:00
Nicolas Grekas
1acb50e0a4 [Security] minor clean 2019-06-13 16:10:13 +02:00
Nicolas Grekas
0bb0335ab6 Merge branch '4.4'
* 4.4:
  [Security] minor improvement
  fix merge
2019-06-13 16:09:44 +02:00
Nicolas Grekas
567cb27a1d [Security] minor improvement 2019-06-13 16:09:13 +02:00
Nicolas Grekas
7a1e6f732e Merge branch '4.3' into 4.4
* 4.3:
  fix merge
2019-06-13 16:07:54 +02:00
Nicolas Grekas
648aa67eca fix merge 2019-06-13 16:07:09 +02:00
Tobias Nyholm
91f1680b3f
[Messenger] Remove DispatchAfterCurrentBusStamp when message is put on internal queue 2019-06-13 15:04:56 +02:00
Nicolas Grekas
a9d0038ec0 [VarDumper] fix dumping objects that implement __debugInfo() 2019-06-13 14:39:23 +02:00
Nicolas Grekas
a2960a3318 [HttpClient] Don't use CurlHttpClient on Windows when curl.cainfo is not set 2019-06-13 14:16:31 +02:00
Fabien Potencier
fb9808a9e4 fixed CS 2019-06-13 13:20:38 +02:00
Fabien Potencier
b29c567600 fixed typo 2019-06-13 13:19:11 +02:00
Fabien Potencier
c449e6368c Merge branch '4.4'
* 4.4:
  fixed CS
  fixed CS
  fixed CS
  fixed CS
  Do not log or call the proxy function when the locale is the same
  Added missing required dependencies on psr/cache and psr/container in symfony/cache-contracts and symfony/service-contracts respectively.
  [HttpClient] fix closing debug stream prematurely
  [Mailer] made code more robust
  Restore compatibility with php 5.5
  fixed sender/recipients in SMTP Envelope
  collect called listeners information only once
  [HttpClient] add HttplugClient for compat with libs that need httplug v1 or v2
  [HttpKernel] Remove TestEventDispatcher.
2019-06-13 13:15:36 +02:00
Fabien Potencier
fa38497957 fixed CS 2019-06-13 13:06:22 +02:00
Fabien Potencier
8787bbc94a Merge branch '4.3' into 4.4
* 4.3:
  fixed CS
  fixed CS
  fixed CS
  Do not log or call the proxy function when the locale is the same
  Added missing required dependencies on psr/cache and psr/container in symfony/cache-contracts and symfony/service-contracts respectively.
  [HttpClient] fix closing debug stream prematurely
  [Mailer] made code more robust
  Restore compatibility with php 5.5
  fixed sender/recipients in SMTP Envelope
  collect called listeners information only once
  [HttpKernel] Remove TestEventDispatcher.
2019-06-13 13:05:05 +02:00
Fabien Potencier
9526988eca fixed CS 2019-06-13 13:03:18 +02:00
Fabien Potencier
84bc7aba91 Merge branch '4.2' into 4.3
* 4.2:
  fixed CS
  fixed CS
  [HttpKernel] Remove TestEventDispatcher.
2019-06-13 13:01:17 +02:00
Fabien Potencier
37fa45bbd1 fixed CS 2019-06-13 12:57:15 +02:00
Fabien Potencier
0f958aabfa Merge branch '3.4' into 4.2
* 3.4:
  fixed CS
  [HttpKernel] Remove TestEventDispatcher.
2019-06-13 12:50:42 +02:00
Fabien Potencier
106b348d3d fixed CS 2019-06-13 12:34:15 +02:00
Fabien Potencier
dab7a554ae bug #32014 Do not log or call the proxy function when the locale is the same (gmponos)
This PR was squashed before being merged into the 4.3 branch (closes #32014).

Discussion
----------

Do not log or call the proxy function when the locale is the same

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

I was the one creating the PR for logging the change of the locale but ATM I am filled with logs of translator about switching the locale from "en" to "en".. Not sure why.

Commits
-------

31bdfb372c Do not log or call the proxy function when the locale is the same
2019-06-13 11:55:06 +02:00
Mponos George
31bdfb372c Do not log or call the proxy function when the locale is the same 2019-06-13 11:54:55 +02:00
Fabien Potencier
e63577500c bug #32011 [HttpClient] fix closing debug stream prematurely (nicolas-grekas)
This PR was merged into the 4.3 branch.

Discussion
----------

[HttpClient] fix closing debug stream prematurely

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

@ElGecko76 can you please confirm this fixes the issue for you?
I'm not able to reproduce so I can't myself. Thanks.

Commits
-------

21857a1edb [HttpClient] fix closing debug stream prematurely
2019-06-13 11:48:41 +02:00
Michael Bessolov
9cbeb63613
Added missing required dependencies on psr/cache and psr/container
in symfony/cache-contracts and symfony/service-contracts respectively.
2019-06-12 23:16:15 -07:00
Fabien Potencier
1c1d6d9edf bug #31992 Fix sender/recipients in SMTP Envelope (fabpot)
This PR was merged into the 4.3 branch.

Discussion
----------

Fix sender/recipients in SMTP Envelope

| Q             | A
| ------------- | ---
| Branch?       | 4.3
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | #31986
| License       | MIT
| Doc PR        | n/a

<!--
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/roadmap):
 - 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 4.4.
 - Legacy code removals go to the master branch.
-->

Commits
-------

7a2f9bf134 fixed sender/recipients in SMTP Envelope
2019-06-12 18:30:49 +02:00
Fabien Potencier
41ff9d31d4 minor #32002 [Mailer] made code more robust (fabpot)
This PR was merged into the 4.3 branch.

Discussion
----------

[Mailer] made code more robust

| Q             | A
| ------------- | ---
| Branch?       | 4.3
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

<!--
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/roadmap):
 - 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 4.4.
 - Legacy code removals go to the master branch.
-->

Commits
-------

8bdc6596ef [Mailer] made code more robust
2019-06-12 16:08:31 +02:00
Nicolas Grekas
21857a1edb [HttpClient] fix closing debug stream prematurely 2019-06-12 15:33:27 +02:00
Mateusz Lerczak
b9eab42823
Add statement to fileLink to ignore href code when no fileLink. 2019-06-12 12:36:09 +02:00
Fabien Potencier
8bdc6596ef [Mailer] made code more robust 2019-06-12 06:54:21 +02:00
Tomas
a9705a0143 Fix AuthenticationException::getToken typehint 2019-06-12 07:10:29 +03:00
Tobias Schultze
8e04222976 [Routing] fix absolute url generation when scheme is not known 2019-06-12 03:24:15 +02:00
Grégoire Paris
496c118c3a
Restore compatibility with php 5.5
The ARRAY_FILTER_USE_KEY constant was introduced in php 5.6, let us
avoid it for now.
See https://www.php.net/manual/en/function.array-filter.php#refsect1-function.array-filter-changelog
2019-06-11 23:50:05 +02:00
Fabien Potencier
7a2f9bf134 fixed sender/recipients in SMTP Envelope 2019-06-11 21:40:57 +02:00
Christian Flothmann
284262a219 collect called listeners information only once 2019-06-11 20:36:39 +02:00
Nicolas Grekas
28674b1e30 [HttpClient] add HttplugClient for compat with libs that need httplug v1 or v2 2019-06-11 17:49:07 +02:00
Nicolas Grekas
03bfce6a40 Merge branch '4.4'
* 4.4:
  add back possibility to use form themes without translations
  [HttpClient] fix Psr18Client handling of non-200 response codes
  [HttpClient] make Psr18Client implement relevant PSR-17 factories
  [WebProfilerBundle] fix FC with HttpFoundation v5
  [OptionsResolver] fix adding $triggerDeprecation to Options::offsetGet()
  [Form] test case is not legacy
  Fix reporting unsilenced deprecations from insulated tests
  Changed EventDispatcherInterface dependency from Component to Contracts
  fix handling nested embeddables
  [WebProfilerBundle] Select default theme based on user preferences
  [FrameworkBundle] Allow dots in translation domains
  Added FormInterface to @return Form::getClickedButton docblock
2019-06-11 17:48:37 +02:00
Nicolas Grekas
e54b62c1e2 Merge branch '4.3' into 4.4
* 4.3:
  add back possibility to use form themes without translations
  [HttpClient] fix Psr18Client handling of non-200 response codes
  [WebProfilerBundle] fix FC with HttpFoundation v5
  [OptionsResolver] fix adding $triggerDeprecation to Options::offsetGet()
  [Form] test case is not legacy
  Fix reporting unsilenced deprecations from insulated tests
  fix handling nested embeddables
  Added FormInterface to @return Form::getClickedButton docblock
2019-06-11 17:42:17 +02:00
Nicolas Grekas
bde8204da3 Merge branch '4.2' into 4.3
* 4.2:
  [WebProfilerBundle] fix FC with HttpFoundation v5
  [OptionsResolver] fix adding $triggerDeprecation to Options::offsetGet()
  [Form] test case is not legacy
  Fix reporting unsilenced deprecations from insulated tests
  Added FormInterface to @return Form::getClickedButton docblock
2019-06-11 17:41:59 +02:00
Nicolas Grekas
b856ab5aa2 Merge branch '3.4' into 4.2
* 3.4:
  [WebProfilerBundle] fix FC with HttpFoundation v5
  [Form] test case is not legacy
  Fix reporting unsilenced deprecations from insulated tests
  Added FormInterface to @return Form::getClickedButton docblock
2019-06-11 17:21:32 +02:00
Alexander M. Turek
3eba36c088 [Mailer] Catch missing scheme in DSN. 2019-06-11 14:30:26 +02:00
Fabien Potencier
8bdd25b7fc bug #31988 [TwigBridge] add back possibility to use form themes without translations (xabbuh)
This PR was merged into the 4.3 branch.

Discussion
----------

[TwigBridge] add back possibility to use form themes without translations

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

Commits
-------

87c1d19e72 add back possibility to use form themes without translations
2019-06-11 13:40:09 +02:00
Alexander M. Turek
48be09f37e [HttpKernel] Remove TestEventDispatcher. 2019-06-11 12:48:01 +02:00
Fabien Potencier
dc7f6f79e8 feature #31956 [Mailer] Changed EventDispatcherInterface dependency from Component to Contracts (Koc)
This PR was merged into the 4.4 branch.

Discussion
----------

[Mailer] Changed EventDispatcherInterface dependency from Component to Contracts

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | yes
| Deprecations? | no
| Tests pass?   | almost yes, see https://github.com/symfony/symfony/pull/31956#issuecomment-500194573
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Follow up of https://github.com/symfony/symfony/pull/31946#discussion_r291795454 . I hope this kind of changes are allowed for experimental components.

BTW, @nicolas-grekas , why Psr14 interface is optional for Contract's `EventDispatcherInterface https://github.com/symfony/symfony/blob/4.4/src/Symfony/Contracts/EventDispatcher/EventDispatcherInterface.php#L16 ?

Commits
-------

bdb6217b15 Changed EventDispatcherInterface dependency from Component to Contracts
2019-06-11 12:40:22 +02:00
Fabien Potencier
2f4f8c05d7 bug #31982 [HttpClient] fix Psr18Client handling of non-200 response codes (nicolas-grekas)
This PR was merged into the 4.3 branch.

Discussion
----------

[HttpClient] fix Psr18Client handling of non-200 response codes

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

Commits
-------

4a7989456b [HttpClient] fix Psr18Client handling of non-200 response codes
2019-06-11 12:37:06 +02:00
Fabien Potencier
71731c6342 feature #31980 [HttpClient] make Psr18Client implement relevant PSR-17 factories (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[HttpClient] make Psr18Client implement relevant PSR-17 factories

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

This should help use the component with libs that consume only PSR-18.

Commits
-------

1c0baf689d [HttpClient] make Psr18Client implement relevant PSR-17 factories
2019-06-11 12:35:03 +02:00
Christian Flothmann
87c1d19e72 add back possibility to use form themes without translations 2019-06-11 11:05:48 +02:00
Fabien Potencier
cc1fc5bc81 feature #31919 [WebProfilerBundle] Select default theme based on user preferences (javiereguiluz)
This PR was merged into the 4.4 branch.

Discussion
----------

[WebProfilerBundle] Select default theme based on user preferences

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | -
| License       | MIT
| Doc PR        | (not needed)

This is the same we recently added to symfony.com website. It works on latest versions of Firefox and Safari only (Chrome will add support soon).

Commits
-------

0fc0a348b8 [WebProfilerBundle] Select default theme based on user preferences
2019-06-11 10:38:12 +02:00
Christian Flothmann
776ab628f6 minor #31963 [Form] test case is not legacy (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[Form] test case is not legacy

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

At least it's green.
/cc @xabbuh @HeahDude

Commits
-------

9ad324ba29 [Form] test case is not legacy
2019-06-11 09:20:04 +02:00
Fabien Potencier
c33f69c5d9 feature #31451 [FrameworkBundle] Allow dots in translation domains (jschaedl)
This PR was merged into the 4.4 branch.

Discussion
----------

[FrameworkBundle] Allow dots in translation domains

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | #31400  <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | tbd. <!-- required for new features -->

### Description

With this fix it is now possible to have `.` in translation domains like `app.security.en.yaml`.

### Todo

- [x] add a test case

Commits
-------

4b593b08d1 [FrameworkBundle] Allow dots in translation domains
2019-06-11 08:42:31 +02:00
Alexander M. Turek
2bc94721b1 [EventDispatcher] Add type-hints to EventDispatcherInterface. 2019-06-10 23:08:37 +02:00
Nicolas Grekas
4a7989456b [HttpClient] fix Psr18Client handling of non-200 response codes 2019-06-10 19:33:33 +02:00
Nicolas Grekas
1c0baf689d [HttpClient] make Psr18Client implement relevant PSR-17 factories 2019-06-10 18:43:03 +02:00
Alexandre Segura
ff5517e554 Add missing rendering of form help block. 2019-06-10 10:21:04 +02:00
Timo Bakx
3aec2acce5 [Messenger] Doctrine Connection find and findAll now correctly decode headers 2019-06-09 22:48:04 +02:00
Jan Schädlich
997818406a [DI] removed tagged 2019-06-09 21:05:58 +02:00
Nicolas Grekas
1872a5af39 [WebProfilerBundle] fix FC with HttpFoundation v5 2019-06-09 18:36:33 +02:00
Nicolas Grekas
adc7e6ab7c [OptionsResolver] fix adding $triggerDeprecation to Options::offsetGet() 2019-06-09 18:15:03 +02:00
Nicolas Grekas
e7ce055e13 Merge branch '4.4'
* 4.4:
  [DI] deprecates tag !tagged in favor of !tagged_iterator
  [FrameworkBundle] remove dead code
2019-06-09 18:08:04 +02:00
Nicolas Grekas
7f39f36379 feature #31321 [DI] deprecates tag !tagged in favor of !tagged_iterator (jschaedl)
This PR was squashed before being merged into the 4.4 branch (closes #31321).

Discussion
----------

[DI] deprecates tag !tagged in favor of !tagged_iterator

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

### Todo

- [x] fix tests

Commits
-------

ab8fb1868f [DI] deprecates tag !tagged in favor of !tagged_iterator
2019-06-09 18:06:29 +02:00
Jan Schädlich
ab8fb1868f [DI] deprecates tag !tagged in favor of !tagged_iterator 2019-06-09 18:06:22 +02:00
Nicolas Grekas
39622488bb Remove deprecated code paths that trigger a runtime notice 2019-06-09 16:44:48 +02:00
Nicolas Grekas
9ad324ba29 [Form] test case is not legacy 2019-06-09 16:44:28 +02:00
Nicolas Grekas
48093f4a13 Fix reporting unsilenced deprecations from insulated tests 2019-06-09 16:27:26 +02:00
Konstantin Myakshin
bdb6217b15 Changed EventDispatcherInterface dependency from Component to Contracts 2019-06-09 11:03:37 +03:00
Amrouche Hamza
48351d53e0 [HttpKernel] remove all deprecated code from http kernel 2019-06-08 16:24:48 +02:00
Nicolas Grekas
cdaa4d69e9 [FrameworkBundle] remove dead code 2019-06-08 16:18:47 +02:00
Nicolas Grekas
ceb40c14be minor #31951 [DI] remove deprecated code paths (nicolas-grekas)
This PR was merged into the 5.0-dev branch.

Discussion
----------

[DI] remove deprecated code paths

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

@ro0NL there is still one legacy test in ValidateEnvPlaceholdersPassTest, I'll let you remove it if you don't mind, please :)

Commits
-------

3ff69f09f1 [DI] remove deprecated code paths
2019-06-08 15:32:03 +02:00
Nicolas Grekas
3ff69f09f1 [DI] remove deprecated code paths 2019-06-08 13:09:13 +02:00
Roland Franssen
ec27d7486d [Config] Removed env var support with cannotBeEmpty() 2019-06-08 13:07:59 +02:00
Nicolas Grekas
8e84328d60 Merge branch '4.4'
* 4.4:
  [TwigBundle] fix FC with DI v5
  [FrameworkBundle] fix FC with DI v5
  [Config] decouple tests from DI
2019-06-08 12:50:12 +02:00