Commit Graph

49034 Commits

Author SHA1 Message Date
Alexander M. Turek 7de11c0e44 Introduce SYMFONY_FEATURE_BRANCH variable in Travis config 2021-05-15 00:43:34 +02:00
Nyholm 90666777c7
minor #41097 [Security] Missing lt translations (rmikalkenas)
This PR was merged into the 4.4 branch.

Discussion
----------

[Security] Missing lt translations

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

For minute/minutes translation I decided to use "min." abbreviation, because in lithuanian language the plural translation might not always match the word case.
For example:
1 minute -> 1 minutė
2 minutes -> 2 minutės
...
10 minutes -> 10 minučių
...
21 minutes -> 21 minutė
22 minutes -> 22 minutės
...
30 minutes -> 30 minučių

and so on...

Commits
-------

f2dedd8a53 Missing security lt translations added
2021-05-13 12:10:00 +02:00
Nicolas Grekas 49dd6ef279 bug #41210 [Console] Fix Windows code page support (orkan)
This PR was merged into the 4.4 branch.

Discussion
----------

[Console] Fix Windows code page support

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #37385, Fix #35842, Fix #36324, Fix #37495, Fix #37278
| License       | MIT

Corrects mojibake problem on Windows where an OEM code page was applied to an input string and then messed with PHP.internal_encoding setting used by the script. This caused strings with different encodings to be displayed on the console output.

Commits
-------

41452785c6 [Console] Fix Windows code page support
2021-05-13 08:28:07 +02:00
Marek Zajac 41452785c6 [Console] Fix Windows code page support 2021-05-13 07:53:50 +02:00
Nicolas Grekas 616b2c9fdb minor #41183 [CI][Psalm] Install stable/released PHPUnit (Nyholm)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[CI][Psalm] Install stable/released PHPUnit

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

PHPUnit 10 is soon released. We dont need to install it before it is actually released.

Currently, PHPUnit is updating dependencies and we get psalm failing with things like:

<img width="918" alt="Screenshot 2021-05-12 at 08 28 29" src="https://user-images.githubusercontent.com/1275206/117930440-468cc500-b2fe-11eb-8028-579478c001cf.png">
<img width="972" alt="Screenshot 2021-05-12 at 08 33 54" src="https://user-images.githubusercontent.com/1275206/117930443-47bdf200-b2fe-11eb-8cb7-79255532e899.png">

Commits
-------

2345614316 [CI][Psalm] Install stable/released PHPUnit
2021-05-12 18:08:07 +02:00
Nyholm 2345614316 [CI][Psalm] Install stable/released PHPUnit 2021-05-12 18:07:54 +02:00
Fabien Potencier 22a9510dff Bump Symfony version to 4.4.24 2021-05-12 15:18:54 +02:00
Fabien Potencier bb7ec823d2
Merge pull request #41194 from fabpot/release-4.4.23
released v4.4.23
2021-05-12 15:15:51 +02:00
Fabien Potencier 5f8f60cdbc Update VERSION for 4.4.23 2021-05-12 15:13:32 +02:00
Fabien Potencier 91b37fdb8d Update CONTRIBUTORS for 4.4.23 2021-05-12 15:13:25 +02:00
Fabien Potencier 32932d00ff Update CHANGELOG for 4.4.23 2021-05-12 15:13:15 +02:00
Nicolas Grekas d5c0fbac85 Merge branch '3.4' into 4.4
* 3.4:
  [Security][Guard] Prevent user enumeration via response content
2021-05-12 14:42:28 +02:00
Nicolas Grekas 2a581d22cc security #cve-2021-21424 [Security][Guard] Prevent user enumeration (chalasr)
This PR was merged into the 3.4 branch.
2021-05-12 14:32:10 +02:00
Nyholm a0f8fc5c08
minor #41180 [Security] Add missing Finnish translations (mikkoaf)
This PR was merged into the 4.4 branch.

Discussion
----------

[Security] Add missing Finnish translations

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

Added some missing Finnish translations.

Commits
-------

c1cefc088d [Security] Add missing Finnish translations
2021-05-12 08:47:11 +02:00
Nyholm d36f5e31ee
[CI][Psalm] Install stable/released PHPUnit 2021-05-12 08:32:34 +02:00
Mikko Ala-Fossi c1cefc088d [Security] Add missing Finnish translations 2021-05-12 07:44:21 +03:00
Nicolas Grekas 9a53e6acc1 bug #41176 [DependencyInjection] fix dumping service-closure-arguments (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[DependencyInjection] fix dumping service-closure-arguments

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

5.3 uses service closures a bit more, so that this is required to make the `lint:container` command work.

Commits
-------

1aa9a249fc [DependencyInjection] fix dumping service-closure-arguments
2021-05-11 17:59:00 +02:00
Nicolas Grekas 1aa9a249fc [DependencyInjection] fix dumping service-closure-arguments 2021-05-11 17:55:42 +02:00
Fabien Potencier 89c1be89f0 bug #41168 WDT: Only load "Sfjs" if it is not present already (weaverryan)
This PR was merged into the 4.4 branch.

Discussion
----------

WDT: Only load "Sfjs" if it is not present already

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

Hi!

Playing with Turbo, I noticed two small issues with the WDT:

1) When you click a link (which Turbo loads via AJAX), the new toolbar would correctly load, but its "AJAX tab" would be missing/empty. At first, that seems.. at least... "correct enough". After all, we *did* just load a new web debug toolbar. However, this can be avoided by simply *not* redefining the `Sfjs` variable: if it already exists, just use it. And this is the intention of that object, I believe: for it to be loaded *once*, and then reused over and over again via its `loadToolbar()` method.

2) Additionally, I was experimenting with some crazy prefetch + Turbo functionality. It works, but caused one minor issue with the web debug toolbar. The flow is this:

A) A prefetch request is made to pre-cache a URL in Turbo.
B) When that links is actually clicked, the cached version from (A) is used as the "Preview". It's HTML calls `Sfjs.loadToolbar()`.
C) At the same moment as (B), another AJAX request is made to the same URL from (A) to get the full, fresh page (in case it's out of date).
D) When (C) finishes, it will have its own `Sfjs.loadToolbar()` call.

The problem is that the AJAX request for the first web debug toolbar (from B) sometimes finishes *after* the AJAX call made by Turbo for (C). The result is that the first web debug toolbar tries to activate itself... but it's already gone from the page.

I realize this is a... kind of crazy scenario, but I think the fix is legit: if, for any reason, the web debug toolbar element is not on the page, we should not try to initialize it. It results in:

<img width="431" alt="Screen Shot 2021-05-10 at 3 49 06 PM" src="https://user-images.githubusercontent.com/121003/117716165-429a5f00-b1a7-11eb-9b99-bf08591d2ff4.png">

## To Test

JUST to be on the safe side, I prepared a symfony-demo app with Turbo installed, and using these changes. You can try it here - https://github.com/weaverryan/symfony-demo/tree/turbo - the README is updated to quickly get it running (no need to even run yarn, the JavaScript files are committed).

Thanks!

Commits
-------

47ef65f336 only load Sfjs if it is not present
2021-05-11 08:55:30 +02:00
Ryan Weaver 47ef65f336 only load Sfjs if it is not present
Plus, avoid loading the toolbar if it is no longer on the page
2021-05-10 15:50:57 -04:00
Nicolas Grekas 9c9e645e87 bug #41147 [Inflector][String] wrong plural form of words ending by "pectus" (makraz)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Inflector][String] wrong plural form of words ending by "pectus"

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

Commits
-------

0dc8893caa [Inflector][String] wrong plural form of words ending by "pectus"
2021-05-10 16:36:02 +02:00
Hamza Makraz 0dc8893caa [Inflector][String] wrong plural form of words ending by "pectus" 2021-05-10 16:35:56 +02:00
Nicolas Grekas 21bf85f802 minor #41157 [Console] Fixes for PHP 8.1 deprecations (jrmajor)
This PR was merged into the 4.4 branch.

Discussion
----------

[Console] Fixes for PHP 8.1 deprecations

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

Fixes passing `null` to non-nullable arguments.

Commits
-------

545f058367 [Console] Fixes for PHP 8.1 deprecations
2021-05-10 16:34:29 +02:00
Nicolas Grekas 132e09fb00 bug #41160 [HttpClient] Don't prepare the request in ScopingHttpClient (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[HttpClient] Don't prepare the request in ScopingHttpClient

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

Spotted while working on #41159 (needed by it.)

Commits
-------

a53db83823 [HttpClient] Don't prepare the request in ScopingHttpClient
2021-05-10 16:33:49 +02:00
Nicolas Grekas a53db83823 [HttpClient] Don't prepare the request in ScopingHttpClient 2021-05-10 16:26:32 +02:00
Jeremiasz Major 545f058367
[Console] Fixes for PHP 8.1 deprecations 2021-05-10 14:53:15 +02:00
Fabien Potencier be480d8f97 bug #40763 Fix/Rewrite .gitignore regex builder (mvorisek)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

Fix/Rewrite .gitignore regex builder

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

This PR fixes `.gitignore` with exclude wildcard ignore rules like `!a/*/b` were failing with `preg_match(): Compilation failed: lookbehind assertion is not fixed length at offset` PHP error.

Functionality/performance was verified against large `.gitignore` files:
- https://github.com/PrestaShop/PrestaShop/blob/1.7.7.3/.gitignore
- https://github.com/dotnet/installer/blob/v5.0.202/.gitignore
- https://github.com/dotnet/runtime/blob/v5.0.5/.gitignore

This PR also improves the testing cases.

Commits
-------

83f9fd3adf Fix/Rewrite .gitignore regex builder
2021-05-09 11:13:17 +02:00
Michael Voříšek 83f9fd3adf Fix/Rewrite .gitignore regex builder 2021-05-09 11:13:09 +02:00
Rokas Mikalkėnas f2dedd8a53 Missing security lt translations added 2021-05-08 12:04:37 +03:00
Nicolas Grekas 0e738ef170 bug #40917 [Config][DependencyInjection] Uniformize trailing slash handling (dunglas)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Config][DependencyInjection] Uniformize trailing slash handling

| 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       | n/a
| License       | MIT
| Doc PR        | n/a

Currently, the handling of trailing slashes in file loaders exclusion rules is inconsistent, which can create hard to debug issues.

Example:

```yaml
services:
    App\:
        resource: '../src/'
        exclude:
            # This works
            - '../src/FooBar/DependencyInjection/'
            - '../src/FooBar/DependencyInjection'
            - '../src/FooBar/DependencyInjection/*'
            - '../src/*/DependencyInjection'
            - '../src/*/DependencyInjection/*'

            # This doesn't work
            - '../src/*/DependencyInjection/'
```

This PR fixes this subtle issue.

Commits
-------

dc50aa3b55 [Config][DependencyInjection] Uniformize trailing slash handling
2021-05-07 15:37:58 +02:00
Kévin Dunglas dc50aa3b55 [Config][DependencyInjection] Uniformize trailing slash handling 2021-05-07 15:37:51 +02:00
Nicolas Grekas fab61ee9df bug #40699 [PropertyInfo] Make ReflectionExtractor correctly extract nullability (shiftby)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[PropertyInfo] Make ReflectionExtractor correctly extract nullability

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

When the property had a default value ReflectionExtractor was always returning isNullable: false. After PHP 7.4 we can get isNullable from the typehint.

Commits
-------

d5fce4c779 [PropertyInfo] Make ReflectionExtractor correctly extract nullability
2021-05-07 15:22:49 +02:00
Maxim Dovydenok d5fce4c779 [PropertyInfo] Make ReflectionExtractor correctly extract nullability 2021-05-07 15:22:44 +02:00
Nicolas Grekas ba3834647f bug #40874 [PropertyInfo] fix attribute namespace with recursive traits (soullivaneuh)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[PropertyInfo] fix attribute namespace with recursive traits

| 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       | Fix #36997 <!-- 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 -->

The targeted issue is closed because considered as solved by https://github.com/symfony/symfony/pull/40175.

However, the fix is not enough and is not working with recursive trait inclusion. (see https://github.com/symfony/symfony/issues/36997#issuecomment-822572640).

This pull request is completing the first fix of `@xabbuh`, trying to follow the same coding style. 😉

Commits
-------

bbadfb34cc [PropertyInfo] fix attribute namespace with recursive traits
2021-05-07 15:17:33 +02:00
Sullivan SENECHAL bbadfb34cc [PropertyInfo] fix attribute namespace with recursive traits 2021-05-07 15:17:28 +02:00
Nicolas Grekas ae38bda5c2 bug #41099 [Cache] Check if phpredis version is compatible with stream parameter (nicolassing)
This PR was merged into the 4.4 branch.

Discussion
----------

[Cache] Check if phpredis version is compatible with stream parameter

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

If you use phpredis <5.3.0, you can't connect to Redis since symfony/cache 5.2.7

Fixes #41110

Commits
-------

841d85a7ce Check redis extension version
2021-05-07 14:34:03 +02:00
Nicolas Assing 841d85a7ce Check redis extension version 2021-05-07 14:33:52 +02:00
Nicolas Grekas c276f0dfd6 minor #40931 [Translation] [CI] Set default locale for IdentityTranslatorTest (Nyholm)
This PR was merged into the 4.4 branch.

Discussion
----------

[Translation] [CI] Set default locale for IdentityTranslatorTest

| Q             | A
| ------------- | ---
| Branch?       | 5.x
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix
| License       | MIT
| Doc PR        |

This will fix a few CI issues. Not sure if this is the correct fix.

Commits
-------

92a61b1cf6 [Translation] Set default locale for IdentityTranslatorTest
2021-05-07 14:15:21 +02:00
Nicolas Grekas e0fe8c1bca minor #41108 [Security] Update Russian translations (a1812)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Security] Update Russian translations

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

Translate to Russian

Commits
-------

965c6e4a2d [Security] Update Russian translations
2021-05-07 14:07:35 +02:00
Roman Martinuk 965c6e4a2d [Security] Update Russian translations 2021-05-07 14:07:27 +02:00
Nicolas Grekas e51e651c4a bug #41072 [VarExporter] Add support of PHP enumerations (alexandre-daubois)
This PR was merged into the 4.4 branch.

Discussion
----------

[VarExporter] Add support of PHP enumerations

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

Commits
-------

4b0f2997a5 [VarExporter] Add support of PHP enumerations
2021-05-06 21:18:04 +02:00
Alexandre Daubois 4b0f2997a5 [VarExporter] Add support of PHP enumerations 2021-05-06 21:16:33 +02:00
Fabien Potencier 72b6001f83 minor #41122 [Security] Added missing Japanese translations (kshida)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Security] Added missing Japanese translations

| Q             | A
| ------------- | ---
| Branch?       | 4.4<!-- see below -->
| Bug fix?      | no
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #41052 <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| 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/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 5.x.
 - Changelog entry should follow https://symfony.com/doc/current/contributing/code/conventions.html#writing-a-changelog-entry
-->
Added id19 and id20.
The indentation for id17 and id18 was incorrect, so I fixed it.
I hope it helps you :)

Commits
-------

26cd193085 [Security] Added missing Japanese translations
2021-05-06 18:44:07 +02:00
kshida 26cd193085 [Security] Added missing Japanese translations 2021-05-06 18:44:00 +02:00
Fabien Potencier beca689412 minor #41117 [Security] Add missing Italian translations (ramundomario)
This PR was merged into the 4.4 branch.

Discussion
----------

[Security] Add missing Italian translations

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

Commits
-------

4dc5c82fa4 [Security] Add missing Italian translations #41051
2021-05-06 13:04:48 +02:00
Fabien Potencier 4c7a54ac08 minor #41079 [Security] Added missing Polish translations (ShiroRyokoshi)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Security] Added missing Polish translations

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

The translations added were based off the english ones.
This is my first PR ever, I hope I didn't do any mistakes.

Commits
-------

774a1d35da [Security] Added missing Polish translations
2021-05-06 13:02:55 +02:00
Shiro 774a1d35da [Security] Added missing Polish translations 2021-05-06 13:02:50 +02:00
Mario Ramundo 4dc5c82fa4 [Security] Add missing Italian translations #41051 2021-05-05 22:22:20 +02:00
Alexander M. Turek 093b15c476 minor #41109 [HttpFoundation] Request::getProtocolVersion may return null (Jean85)
This PR was merged into the 4.4 branch.

Discussion
----------

[HttpFoundation] Request::getProtocolVersion may return null

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

This is just a minor PHPDoc fix, but we stumbled on it in https://github.com/getsentry/sentry-symfony/pull/495, and static analysis complains about our fix.

Basically, `SERVER_PROTOCOL` may not be set, even if it shouldn't be missing according to [RFC 3875 (GCI spec)](https://tools.ietf.org/html/rfc3875#section-4.1.16). In our case, the user reported the issue because the request was issued interally by a pod health check inside Kubernetes.

Commits
-------

99aadb31ff getProtocolVersion may return null
2021-05-05 18:50:48 +02:00
Nyholm f9deae095b
minor #41092 [Security] Missing translations pt_BR (rezehnde)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Security] Missing translations pt_BR

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

Commits
-------

8c61c2273f [Security] Missing translations pt_BR
2021-05-05 10:05:55 +02:00