Commit Graph

47714 Commits

Author SHA1 Message Date
Thomas Calvet
bbd12fe27f [ErrorHandler][DebugClassLoader] Do not check Mockery mocks classes 2020-10-01 18:21:20 +02:00
Nicolas Grekas
abe0ecac91 bug #38368 [HttpClient] Fix using https with proxies (bohanyang)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[HttpClient] Fix using https with proxies

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

According to my test, when `request_fulluri` is set to true,
the host appears in the URL will be the Host header,
even if the Host header is set in the context http header.

Since HttpClient has its own DNS cache, the host inside the URL is usually an IP address.
So this can break many things.
```
{
  "args": {},
  "headers": {
    "Accept": "*/*",
    "Accept-Encoding": "gzip",
    "Host": "3.211.1.78",
    "User-Agent": "Symfony HttpClient/Native",
    "X-Amzn-Trace-Id": "Root=1-5f75a59e-62c8c81e4490e09c700d6180"
  },
  "origin": "xxx.xxx.xxx.xxx",
  "url": "https://3.211.1.78/get"
}
* Hostname was NOT found in DNS cache
* Added httpbin.org:0:3.211.1.78 to DNS cache
* Establish HTTP proxy tunnel to tcp://10.22.22.21:7777
> GET https://3.211.1.78/get HTTP/1.1
Accept: */*
Accept-Encoding: gzip
Host: httpbin.org
User-Agent: Symfony HttpClient/Native

< HTTP/1.1 200 OK
< Date: Thu, 01 Oct 2020 09:47:10 GMT
< Content-Type: application/json
< Content-Length: 300
< Connection: close
< Server: gunicorn/19.9.0
< Access-Control-Allow-Origin: *
< Access-Control-Allow-Credentials: true
<
```

I've also found this https://github.com/guzzle/guzzle/issues/791

We can also create an option to make it customizable.

Commits
-------

7e0cd4e621 [HttpClient] Fix using https with proxies
2020-10-01 18:05:35 +02:00
Bohan Yang
7e0cd4e621 [HttpClient] Fix using https with proxies 2020-10-01 18:05:21 +02:00
Nicolas Grekas
dadce4bec7 bug #38350 [TwigBundle] Only remove kernel exception listener if twig is used (dmolineus)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[TwigBundle] Only remove kernel exception listener if twig is used

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

In a setup using the template engine but not twig as the template engine no exceptions are logged. This is caused by the twig-bundle which removes the `exception_listener` service. For my understanding this should only happen if twig is used as template engine. This PR fixes the logic that only for the case where twig is enabled as template engine the http kernel exception listener is removed. Otherwise the twig exception listener got removed now.

Disclaimer: I'm not too deep into the details, so maybe I oversee something why it's implemented the way it is.

Commits
-------

7c34f6e866 [TwigBundle] Only remove kernel exception listener if twig is used
2020-10-01 15:17:56 +02:00
David Molineus
7c34f6e866 [TwigBundle] Only remove kernel exception listener if twig is used 2020-10-01 15:17:48 +02:00
Nicolas Grekas
8731a4fc0e bug #38358 [Messenger] Fix redis connection error message (alexander-schranz)
This PR was submitted for the 4.3 branch but it was merged into the 4.4 branch instead.

Discussion
----------

[Messenger] Fix redis connection error message

Use correct instance of redis to getLastError

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

The `$redis` is only set in the tests, the correct redis instance is available under `$this->connection`.

Reproduce: give a false `AUTH` to the redis:

Before:

> [Error]
>  Call to a member function getLastError() on null

Now:

>  [Symfony\Component\Messenger\Exception\InvalidArgumentException]
>  Redis connection failed: ERR Client sent AUTH, but no password is set

Commits
-------

f4e42ad3d4 Fix redis connection error message
2020-09-30 18:06:36 +02:00
Alexander Schranz
f4e42ad3d4 Fix redis connection error message
Use correct instance of redis to getLastError
2020-09-30 18:06:18 +02:00
Fabien Potencier
c4015edcfb bug #38343 Revert "bug #38063 [FrameworkBundle] generate preload.php in src/ to make opcache.preload predictable" (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

Revert "bug #38063 [FrameworkBundle] generate preload.php in src/ to make opcache.preload predictable"

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

As discussed in the linked issue, let's replace this with a recipe:
https://github.com/symfony/recipes/pull/825

TL;DR, these PRs replace `src/.preload.php` (generated) by `config/preload.php` (committed).

Commits
-------

662fcff40f Revert "bug #38063 [FrameworkBundle] generate preload.php in src/ to make opcache.preload predictable (nicolas-grekas)"
2020-09-30 07:26:25 +02:00
Nicolas Grekas
662fcff40f Revert "bug #38063 [FrameworkBundle] generate preload.php in src/ to make opcache.preload predictable (nicolas-grekas)"
This reverts commit d441d867cd, reversing
changes made to 043e7c34de.
2020-09-29 11:51:46 +02:00
Fabien Potencier
72ff4012a5 bug #38336 [PhpUnitBridge] Fixed class_alias() for PHPUnit\Framework\Error\Error (stevegrunwell)
This PR was merged into the 4.4 branch.

Discussion
----------

[PhpUnitBridge] Fixed class_alias() for PHPUnit\Framework\Error\Error

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

PHPUnit 6.x removed the PHPUnit_Framework_* classes in favor of PHP namespaces, but one error class did not map the same as the others: `PHPUnit_Framework_Error`.

Instead of mapping to `PHPUnit\Framework\Error` in the same way that `PHPUnit_Framework_Error_Warning` mapped to `PHPUnit\Framework\Error\Warning`, this base class was replaced with `PHPUnit\Framework\Error\Error`, so we cannot map it using simple string replacement like its descendants.

Commits
-------

8e607b58df [PhpUnitBridge] Fix class_alias() for PHPUnit\Framework\Error\Error
2020-09-29 08:53:53 +02:00
Steve Grunwell
8e607b58df [PhpUnitBridge] Fix class_alias() for PHPUnit\Framework\Error\Error
PHPUnit 6.x removed the PHPUnit_Framework_* classes in favor of PHP namespaces, but one error class did not map the same as the others: `PHPUnit_Framework_Error`.

Instead of mapping to `PHPUnit\Framework\Error` in the same way that `PHPUnit_Framework_Error_Warning` mapped to `PHPUnit\Framework\Error\Warning`, this base class was replaced with `PHPUnit\Framework\Error\Error`.
2020-09-28 16:03:26 -04:00
Nicolas Grekas
cbb0b1d54b Merge branch '3.4' into 4.4
* 3.4:
  [HttpFoundation] skip tests when the IANA server is throttling the list of status codes
  [DoctrineBridge] fix DBAL v3 compat
2020-09-27 16:14:06 +02:00
Nicolas Grekas
feaa9a6b2a [HttpFoundation] skip tests when the IANA server is throttling the list of status codes 2020-09-27 16:13:16 +02:00
Nicolas Grekas
4b1612b8dd [DoctrineBridge] fix DBAL v3 compat 2020-09-27 16:06:58 +02:00
Nicolas Grekas
7529d131cc Merge branch '3.4' into 4.4
* 3.4:
  [Filesystem] fix for PHP 8
2020-09-27 15:54:16 +02:00
Nicolas Grekas
a4324447f1 [Filesystem] fix for PHP 8 2020-09-27 15:07:29 +02:00
Nicolas Grekas
911e120fa4 Merge branch '3.4' into 4.4
* 3.4:
  [Cache] fix DBAL v3 compat
  Bump Symfony version to 3.4.46
  Update VERSION for 3.4.45
  Update CONTRIBUTORS for 3.4.45
  Update CHANGELOG for 3.4.45
2020-09-27 14:40:39 +02:00
Nicolas Grekas
3d1ed2e90d [Cache] fix DBAL v3 compat 2020-09-27 14:33:10 +02:00
Fabien Potencier
08e27e9f03 Bump Symfony version to 4.4.15 2020-09-27 06:29:46 +02:00
Fabien Potencier
c589c9a604
Merge pull request #38312 from fabpot/release-4.4.14
released v4.4.14
2020-09-27 06:26:00 +02:00
Fabien Potencier
9e8f2e7db6 Update VERSION for 4.4.14 2020-09-27 06:25:44 +02:00
Fabien Potencier
5e81cb7c7b Update CHANGELOG for 4.4.14 2020-09-27 06:25:32 +02:00
Fabien Potencier
9a774ede48 Bump Symfony version to 3.4.46 2020-09-27 06:03:03 +02:00
Fabien Potencier
acaf962168
Merge pull request #38311 from fabpot/release-3.4.45
released v3.4.45
2020-09-27 05:47:15 +02:00
Fabien Potencier
bc38373380 Update VERSION for 3.4.45 2020-09-27 05:46:58 +02:00
Fabien Potencier
0022465b97 Update CONTRIBUTORS for 3.4.45 2020-09-27 05:46:54 +02:00
Fabien Potencier
17ceb6e73e Update CHANGELOG for 3.4.45 2020-09-27 05:46:13 +02:00
Fabien Potencier
55a450d827 Merge branch '3.4' into 4.4
* 3.4:
  update missing translations arabic
  [Yaml] simplify the test
  fix test by letting mock throw the actual expected exception
2020-09-27 05:36:23 +02:00
Nicolas Grekas
6bb0ef4f52 minor #38299 [ErrorHandler] Return false directly and remove unused variable (fancyweb)
This PR was merged into the 4.4 branch.

Discussion
----------

[ErrorHandler] Return false directly and remove unused variable

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

To return true, $type and $log both need to be true. But to enter the condition, one of them has to be false.

I also spotted an unused variable below so I removed it.

Commits
-------

3933957d1a [ErrorHandler] Return false directly and remove unused variable
2020-09-25 11:42:25 +02:00
Thomas Calvet
3933957d1a [ErrorHandler] Return false directly and remove unused variable 2020-09-25 10:51:35 +02:00
Fabien Potencier
f71d8cfabb minor #38294 [OptionsResolver] Assert that the error type is valid in deprecations test (fancyweb)
This PR was merged into the 4.4 branch.

Discussion
----------

[OptionsResolver] Assert that the error type is valid in deprecations test

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

A change in the code could cause a warning for example and still produce the expected number of errors and the expected last error. Checking the type of the error is a little bit better. The best would be to check all the expected deprecations one by one, maybe later? 😄

Commits
-------

926d18f2f9 [OptionsResolver] Assert that the error type is valid in deprecations test
2020-09-25 08:00:01 +02:00
Thomas Calvet
926d18f2f9 [OptionsResolver] Assert that the error type is valid in deprecations test 2020-09-24 18:40:22 +02:00
Nicolas Grekas
caab0f1b4f bug #38248 [HttpClient] Allow bearer token with colon (stephanvierkant)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[HttpClient] Allow bearer token with colon

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

The JetBrains Hub (YouTrack API) creates tokens with a `perm:` prefix. This doesn't work right now, because HttpClient doesn't allow a colon in the bearer token.

As far as I can see, there is no reason to disallow the use of the semicolon in the bearer token, so this PR fixes it.

Example of a token: `perm:c3RlcGhhbg==.NTUtMw==.NiZw16agafhsQAShTvclhb78hyJh2H`

Commits
-------

82ed1ec20a [HttpClient] Allow bearer token with colon
2020-09-24 15:25:52 +02:00
Stephan Vierkant
82ed1ec20a [HttpClient] Allow bearer token with colon 2020-09-24 15:25:24 +02:00
Fabien Potencier
9e7e2a87c9 bug #37837 [Form] Fix custom formats deprecation with HTML5 widgets (fancyweb)
This PR was merged into the 4.4 branch.

Discussion
----------

[Form] Fix custom formats deprecation with HTML5 widgets

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

1. The options resolver only show the deprecations for user defined (overidden) options.
2. The default value of the `html5` option is enough to pass the logical condition of the callback.

That means that only setting the `format` option (like in the reproducer) does not trigger the deprecation while it should. I think we need a feature in the options resolver component to handle those kind of cases 🤷‍♂️

Meanwhile, we can fix the issue by "deprecating" all the concerned options of the logical condition of the callback.

Commits
-------

d28182f99b [Form] Fix custom formats deprecation with HTML5 widgets
2020-09-24 12:57:15 +02:00
Thomas Calvet
d28182f99b [Form] Fix custom formats deprecation with HTML5 widgets 2020-09-24 11:52:40 +02:00
Fabien Potencier
8611b0b32f bug #38285 [Contracts][Translation] Optional Intl dependency (ro0NL)
This PR was merged into the 4.4 branch.

Discussion
----------

[Contracts][Translation] Optional Intl dependency

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #... <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->
same as #38283, and should help streamlining #38230

Commits
-------

d65d39da14 [Contracts][Translation] Optional Intl dependency
2020-09-24 11:41:33 +02:00
Fabien Potencier
d9bcb64fc0 bug #38283 [Translator] Optional Intl dependency (ro0NL)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Translator] Optional Intl dependency

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #38279
| 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/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.
-->

i decided to cast $locale at construct, given its property is documented to be string

Commits
-------

a2eb263457 [Translator] Optional Intl dependency
2020-09-24 11:40:07 +02:00
Roland Franssen
a2eb263457 [Translator] Optional Intl dependency 2020-09-24 11:40:01 +02:00
Robin Chalas
02be26a39c bug #38271 [ErrorHandler] Escape JSON encoded log context (ro0NL)
This PR was merged into the 4.4 branch.

Discussion
----------

[ErrorHandler] Escape JSON encoded log context

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | eno <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #... <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

Fixes https://github.com/symfony/symfony/issues/35569#issuecomment-581317792
Fixes https://github.com/symfony/symfony/issues/35569#issuecomment-696767559

The initial issue remains though (the webprofiler showing the logs tab in the exception panel), i'll try to give it another look sometime, but this is a quick win nevertheless.

cc @yceruto

Commits
-------

5572a68ed7 [ErrorHandler] Escape JSON encoded log context
2020-09-24 11:16:22 +02:00
Christian Flothmann
966dc5814a bug #38284 [Cache][Lock][Messenger] fix compatibility with Doctrine DBAL 3 (xabbuh)
This PR was merged into the 4.4 branch.

Discussion
----------

[Cache][Lock][Messenger] fix compatibility with Doctrine DBAL 3

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

Commits
-------

a03885168e fix compatibility with Doctrine DBAL 3
2020-09-24 09:08:24 +02:00
Christian Flothmann
a03885168e fix compatibility with Doctrine DBAL 3 2020-09-24 08:54:33 +02:00
Roland Franssen
d65d39da14
[Contracts][Translation] Optional Intl dependency 2020-09-23 21:16:49 +02:00
Roland Franssen
5572a68ed7
[ErrorHandler] Escape JSON encoded log context 2020-09-22 18:24:16 +02:00
Fabien Potencier
5f94d345e0 minor #38266 update missing translations arabic (zairigimad)
This PR was submitted for the master branch but it was merged into the 3.4 branch instead.

Discussion
----------

update missing translations arabic

| Q             | A
| ------------- | ---
| Branch?       | master for features / 3.4, 4.4 or 5.1 for bug fixes <!-- see below -->
| Bug fix?      | yes/no
| New feature?  | yes/no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | yes/no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #... <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| 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/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
-------

76a47b38e2 update missing translations arabic
2020-09-22 10:57:06 +02:00
Zairig Imad
76a47b38e2 update missing translations arabic 2020-09-22 10:56:57 +02:00
Christian Flothmann
7043487f74 minor #38235 [Yaml] simplify the test (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[Yaml] simplify the test

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | https://github.com/symfony/symfony/pull/38228#discussion_r491045753
| License       | MIT
| Doc PR        |

Commits
-------

bb64fc9c3b [Yaml] simplify the test
2020-09-18 18:15:03 +02:00
Christian Flothmann
bb64fc9c3b [Yaml] simplify the test 2020-09-18 17:58:55 +02:00
Christian Flothmann
7fa12576ef minor #38234 [Intl] fix test by letting mock throw the actual expected exception (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[Intl] fix test by letting mock throw the actual expected exception

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

This fixes a mistake I made when rewriting the tests in #37808.

Commits
-------

f6f162dcdd fix test by letting mock throw the actual expected exception
2020-09-18 16:09:04 +02:00
Christian Flothmann
50f37f0ccc fix merge 2020-09-18 16:07:46 +02:00