Commit Graph

53609 Commits

Author SHA1 Message Date
Nicolas Grekas
858dca485d feature #40214 [FrameworkBundle] allow container/routing configurators to vary by env (nicolas-grekas)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[FrameworkBundle] allow container/routing configurators to vary by env

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

Inspired by https://github.com/symfony/webpack-encore/pull/900 and by a chat on Slack with @weaverryan

This aims at allowing conditional configuration, which would allow merging config files in one.

Using the PHP-DSL:
```php
$container
    ->when(env: 'prod')
    ->services()
        ->set(Foo::class)
    //...
```

In Yaml:
```yaml
framework:
    secret: '%env(APP_SECRET)%'

when@dev:
    services:
        App\FooForDev: ~

when@test:
    framework:
        test: true
        session:
            storage_factory_id: session.storage.mock_file
```

In XML (omitting namespaces):
```xml
<when env="test">
	<framework test="true">
		<!-- ... -->
	</framework>
</when>

```

A similar syntax is also provided for routes, with support for annotations:
`@Route(env="prod")` defines a route that is enabled only on the "prod" env.

Commits
-------

108375b068 [FrameworkBundle] allow container/routing configurators to vary by env
2021-02-22 09:45:48 +01:00
Alexander M. Turek
bf30fa45ee Merge branch '5.2' into 5.x
* 5.2:
  [Form] Ignoring invalid forms from delete_empty behavior in CollectionType
  Add Symfony Armenian Translations
  cs fix
  Add different header notations to tests
2021-02-22 07:55:17 +01:00
Alexander M. Turek
8cec0b6391 Merge branch '4.4' into 5.2
* 4.4:
  [Form] Ignoring invalid forms from delete_empty behavior in CollectionType
  Add Symfony Armenian Translations
  cs fix
  Add different header notations to tests
2021-02-22 07:48:33 +01:00
Fabien Potencier
8054d1d04c bug #40258 [Form] Ignoring invalid forms from delete_empty behavior in CollectionType (yceruto)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Form] Ignoring invalid forms from delete_empty behavior in CollectionType

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

As expained on linked issue, empty forms cannot be removed if they are invalid upon submitting (e.g. transformation failures). Thus, form errors can be displayed properly to the end user.

Commits
-------

e4911554e3 [Form] Ignoring invalid forms from delete_empty behavior in CollectionType
2021-02-21 18:50:09 +01:00
Yonel Ceruto
e4911554e3 [Form] Ignoring invalid forms from delete_empty behavior in CollectionType 2021-02-21 18:50:02 +01:00
Fabien Potencier
bda90dfd2f minor #40223 Add Symfony Armenian Translations (ErikSaunier)
This PR was merged into the 4.4 branch.

Discussion
----------

Add Symfony Armenian Translations

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

Added missing armenian translations for Form components

Commits
-------

d1c3e21eff Add Symfony Armenian Translations
2021-02-21 18:47:22 +01:00
Nicolas Grekas
e15ac7ad97 minor #40253 [BrowserKit] Add different header notations to tests (malteschlueter)
This PR was merged into the 4.4 branch.

Discussion
----------

[BrowserKit] Add different header notations to tests

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

In the past there was a issue #29736 that the header wasn't processed correctly. To reproduce and prevent this behaviour i extended the tests for this. At the end everything is fine, also in 5.x branch. See bf03d6889d.

Commits
-------

251ce8f924 Add different header notations to tests
2021-02-20 18:06:12 +01:00
Nicolas Grekas
5cfe73d954 feature #40257 [Intl] Add Currencies::getCashFractionDigits() and Currencies::getCashRoundingIncrement() (nicolas-grekas)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[Intl] Add `Currencies::getCashFractionDigits()` and `Currencies::getCashRoundingIncrement()`

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

Commits
-------

dab91f78e1 [Intl] Add `Currencies::getCashFractionDigits()` and `Currencies::getCashRoundingIncrement()`
2021-02-19 20:02:01 +01:00
Wouter de Jong
b8f5b7ab3b [#39326] Fix PHP 7.2 heredoc syntax 2021-02-19 19:16:31 +01:00
Erik Saunier
d1c3e21eff Add Symfony Armenian Translations 2021-02-19 18:17:03 +01:00
Wouter de Jong
70ef5b364c feature #39326 [Security] Added debug:firewall command (TimoBakx)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[Security] Added debug:firewall command

| Q             | A
| ------------- | ---
| Branch?       | 5.x
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Tickets       | Fix #39321
| License       | MIT
| Doc PR        | symfony/symfony-docs#14982
| Tags | #SymfonyHackday

### Subtasks
- [x] Add list view (for use without arguments)
- [x] Add more information to list view
- [x] Add detail view (for use with `firewall` argument)
- [x] Add more information to detail view table
- [x] Add authenticators list
- [x] Add event listeners & events (copy from `debug:event-listener`)
- [x] Add `--include-listeners` option (default: false)
- [x] Add helptext
- [x] Add documentation

### Moved outside of current scope
- Add allowed badges

### Usage (and example output) for a list
`bin/console debug:firewall`

```
Firewalls
=========

 The following firewalls are defined:
 --------
  Name
 --------
  dev
  public
  main
 --------

 // To view details of a specific firewall, re-run this command with a firewall name. (e.g. debug:firewall
 // main)
```

### Usage (and example output) for details
`bin/console debug:firewall main`

```
Firewall "main"
===============

 ----------------------- ---------------------------------------------------
  Option                  Value
 ----------------------- ---------------------------------------------------
  Name                    main
  Context                 main
  Lazy                    Yes
  Stateless               No
  User Checker            security.user_checker
  Provider                security.user.provider.concrete.app_user_provider
  Entry Point             App\Security\LoginFormAuthenticator
  Access Denied URL
  Access Denied Handler
 ----------------------- ---------------------------------------------------

User switching
--------------

 ----------- ---------------------------------------------------
  Option      Value
 ----------- ---------------------------------------------------
  Parameter   test
  Provider    security.user.provider.concrete.app_user_provider
  User Role   ROLE_SWITCH_POSSIBLE
 ----------- ---------------------------------------------------

Event listeners for firewall "main"
===================================

"Symfony\Component\Security\Http\Event\LoginSuccessEvent" event
---------------------------------------------------------------

 ------- -------------------------------------------------------------------------------------------- ----------
  Order   Callable                                                                                     Priority
 ------- -------------------------------------------------------------------------------------------- ----------
  #1      Symfony\Component\Security\Http\EventListener\UserCheckerListener::postCheckCredentials()    256
  #2      Symfony\Component\Security\Http\EventListener\SessionStrategyListener::onSuccessfulLogin()   0
  #3      Symfony\Component\Security\Http\EventListener\RememberMeListener::onSuccessfulLogin()        0
  #4      App\Security\UpdateLastLogin::__invoke()                                                     0
  #5      Symfony\Component\Security\Http\EventListener\PasswordMigratingListener::onLoginSuccess()    0
 ------- -------------------------------------------------------------------------------------------- ----------

"Symfony\Component\Security\Http\Event\LogoutEvent" event
---------------------------------------------------------

 ------- ------------------------------------------------------------------------------------------- ----------
  Order   Callable                                                                                    Priority
 ------- ------------------------------------------------------------------------------------------- ----------
  #1      Symfony\Component\Security\Http\EventListener\DefaultLogoutListener::onLogout()             64
  #2      Symfony\Component\Security\Http\EventListener\SessionLogoutListener::onLogout()             0
  #3      Symfony\Component\Security\Http\EventListener\RememberMeLogoutListener::onLogout()          0
  #4      Symfony\Component\Security\Http\EventListener\CsrfTokenClearingLogoutListener::onLogout()   0
 ------- ------------------------------------------------------------------------------------------- ----------

"Symfony\Component\Security\Http\Event\CheckPassportEvent" event
----------------------------------------------------------------

 ------- ------------------------------------------------------------------------------------------ ----------
  Order   Callable                                                                                   Priority
 ------- ------------------------------------------------------------------------------------------ ----------
  #1      Symfony\Component\Security\Http\EventListener\LoginThrottlingListener::checkPassport()     2080
  #2      Symfony\Component\Security\Http\EventListener\UserProviderListener::checkPassport()        2048
  #3      Symfony\Component\Security\Http\EventListener\UserProviderListener::checkPassport()        1024
  #4      Symfony\Component\Security\Http\EventListener\CsrfProtectionListener::checkPassport()      512
  #5      Symfony\Component\Security\Http\EventListener\UserCheckerListener::preCheckCredentials()   256
  #6      App\Security\DisallowBannedUsers::__invoke()                                               0
  #7      Symfony\Component\Security\Http\EventListener\CheckCredentialsListener::checkPassport()    0
 ------- ------------------------------------------------------------------------------------------ ----------

"Symfony\Component\Security\Http\Event\LoginFailureEvent" event
---------------------------------------------------------------

 ------- ----------------------------------------------------------------------------------- ----------
  Order   Callable                                                                            Priority
 ------- ----------------------------------------------------------------------------------- ----------
  #1      Symfony\Component\Security\Http\EventListener\RememberMeListener::onFailedLogin()   0
 ------- ----------------------------------------------------------------------------------- ----------

Authenticators for firewall "main"
==================================

 // @TODO: List authenticator information

```

Commits
-------

a9dea1db56 [Security] Added debug:firewall command
2021-02-19 18:14:39 +01:00
Timo Bakx
a9dea1db56
[Security] Added debug:firewall command 2021-02-19 18:09:29 +01:00
Nicolas Grekas
dab91f78e1 [Intl] Add Currencies::getCashFractionDigits() and Currencies::getCashRoundingIncrement() 2021-02-19 16:39:40 +01:00
Nicolas Grekas
1329689ace cs fix 2021-02-19 10:48:50 +01:00
Nicolas Grekas
108375b068 [FrameworkBundle] allow container/routing configurators to vary by env 2021-02-19 08:25:52 +01:00
Robin Chalas
dc2635c654 feature #40234 [Console] Add ConsoleCommand attribute for declaring commands on PHP 8 (nicolas-grekas)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[Console] Add `ConsoleCommand` attribute for declaring commands on PHP 8

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

Builds on #39851

On PHP8, this PR will allow using an attribute instead of the public static properties for the name and the description.

```php

#[ConsoleCommand(
	name: 'app:my-command',
	description: '🌈',
	hidden: true,
	aliases: ['🌈'],
)]
class MyCommand extends Command
{
}
```

Commits
-------

0cbc9cc672 [Console] Add `ConsoleCommand` attribute for declaring commands on PHP 8
2021-02-19 01:04:43 +01:00
Nicolas Grekas
e58b91cf16 Merge branch '5.2' into 5.x
* 5.2:
  [VarDumper] relax test case
2021-02-19 00:11:25 +01:00
Nicolas Grekas
978a9b8204 [VarDumper] relax test case 2021-02-19 00:11:19 +01:00
Nicolas Grekas
21bc5bf137 Merge branch '5.2' into 5.x
* 5.2:
  [VarDumper] relax test case
2021-02-19 00:03:08 +01:00
Nicolas Grekas
acf4c3370c [VarDumper] relax test case 2021-02-19 00:03:02 +01:00
Nicolas Grekas
d146b0c953 Merge branch '5.2' into 5.x
* 5.2:
  [VarDumper] relax test case
2021-02-19 00:02:00 +01:00
Nicolas Grekas
279e71f5f3 [VarDumper] relax test case 2021-02-19 00:01:52 +01:00
Nicolas Grekas
8040f14f04 Merge branch '5.2' into 5.x
* 5.2:
  Stop using deprecated ArrayCache from Doctrine
  [EventDispatcher] fix registering subscribers twice on edge-case
  [Intl] fix Locale::getFallback() throwing exception on long $locale
2021-02-18 23:42:52 +01:00
Nicolas Grekas
11912f8c69 Merge branch '4.4' into 5.2
* 4.4:
  Stop using deprecated ArrayCache from Doctrine
  [Intl] fix Locale::getFallback() throwing exception on long $locale
2021-02-18 23:42:36 +01:00
Nicolas Grekas
a7f12dab24 minor #40250 Stop using deprecated ArrayCache from Doctrine (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

Stop using deprecated ArrayCache from Doctrine

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

Follows https://github.com/doctrine/cache/pull/355

Commits
-------

15f021f825 Stop using deprecated ArrayCache from Doctrine
2021-02-18 23:32:40 +01:00
Nicolas Grekas
15f021f825 Stop using deprecated ArrayCache from Doctrine 2021-02-18 23:27:55 +01:00
Nicolas Grekas
2f4cd77e04 bug #40246 [EventDispatcher] fix registering subscribers twice on edge-case (nicolas-grekas)
This PR was merged into the 5.2 branch.

Discussion
----------

[EventDispatcher] fix registering subscribers twice on edge-case

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

Introduced on 5.1 in #36243

Commits
-------

ad60072998 [EventDispatcher] fix registering subscribers twice on edge-case
2021-02-18 21:49:41 +01:00
Nicolas Grekas
ad60072998 [EventDispatcher] fix registering subscribers twice on edge-case 2021-02-18 18:12:37 +01:00
Nicolas Grekas
8aaa1520f4 bug #40243 [EventDispatcher] add missing "dispatcher" property on #[EventListener] (nicolas-grekas)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[EventDispatcher] add missing "dispatcher" property on #[EventListener]

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

Commits
-------

4718fc2b1d [EventDispatcher] add missing "dispatcher" property on #[EventListener]
2021-02-18 17:57:04 +01:00
Nicolas Grekas
be3f6b974b minor #40245 [PropertyInfo] fix direct deprecation (nicolas-grekas)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[PropertyInfo] fix direct deprecation

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

Commits
-------

7966517976 [PropertyInfo] fix direct deprecation
2021-02-18 17:50:25 +01:00
Nicolas Grekas
7966517976 [PropertyInfo] fix direct deprecation 2021-02-18 17:47:29 +01:00
Nicolas Grekas
4718fc2b1d [EventDispatcher] add missing "dispatcher" property on #[EventListener] 2021-02-18 17:19:14 +01:00
Nicolas Grekas
0cbc9cc672 [Console] Add ConsoleCommand attribute for declaring commands on PHP 8 2021-02-18 12:02:40 +01:00
Malte Schlüter
251ce8f924 Add different header notations to tests 2021-02-18 11:52:56 +01:00
Nicolas Grekas
22c2f1af65 feature #39897 [DependencyInjection] Autoconfigurable attributes (derrabus)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[DependencyInjection] Autoconfigurable attributes

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

Alternative to #39776. Please have a look at that PR as well to see the full discussion.

With this PR, I propose to introduce a way to autoconfigure services by using PHP Attributes. The feature is enabled on all autoconfigured service definitions. The heart of this feature is a new way to register autoconfiguration rules:

```php
$container->registerAttributeForAutoconfiguration(
    MyAttribute::class,
    static function (ChildDefinition $definition, MyAttribute $attribute, \ReflectionClass $reflector): void {
        $definition->addTag('my_tag', ['some_property' => $attribute->someProperty]);
    }
);
```

An example for such an attribute is shipped with this PR with the `EventListener` attribute. This piece of code is a fully functional autoconfigurable event listener:

```php
use Symfony\Component\EventDispatcher\Attribute\EventListener;
use Symfony\Component\HttpKernel\Event\RequestEvent;

#[EventListener]
class MyListener
{
    public function __invoke(RequestEvent $event): void
    {
        // …
    }
}
```

What makes attributes interesting for this kind of configuration is that they can transport meta information that can be evaluated during autoconfiguration. For instance, if we wanted to change the priority of the listener, we can just pass it to the attribute.

```php
#[EventListener(priority: 42)]
```

The attribute itself is a dumb data container and is unaware of the DI component.

This PR provides applications and bundles with the necessary tools to build own attributes and autoconfiguration rules.

Commits
-------

2ab3caf080 [DependencyInjection] Autoconfigurable attributes
2021-02-18 10:17:18 +01:00
Alexander M. Turek
2ab3caf080 [DependencyInjection] Autoconfigurable attributes 2021-02-17 20:42:09 +01:00
Nicolas Grekas
9765b5ab86 bug #40162 [Intl] fix Locale::getFallback() throwing exception on long $locale (AmirHo3ein13)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[Intl] fix Locale::getFallback() throwing exception on long $locale

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

`Locale::getFallback()` throws an exception when the `$locale` length is greater than `INTL_MAX_LOCALE_LEN` so I added a condition to check if locale_parse return null, the `Locale::getFallback()` don't call `\count` function and just return null instead.

Commits
-------

a89ced8eac [Intl] fix Locale::getFallback() throwing exception on long $locale
2021-02-17 16:45:36 +01:00
bahram
a89ced8eac [Intl] fix Locale::getFallback() throwing exception on long $locale 2021-02-17 16:45:29 +01:00
Christian Flothmann
f50e6afd7d Merge branch '5.2' into 5.x
* 5.2:
  install compatible versions of mongodb/mongodb only
  fix taking error message from the correct violation
  fix resolving parent/self/static type annotations
  [Console] fix QuestionHelper::getHiddenResponse() not working with space in project directory name
  [WebLink] Escape double quotes in attributes values
  [String] Check if function exists before declaring it
2021-02-17 16:27:35 +01:00
Christian Flothmann
e3b0c8868c Merge branch '4.4' into 5.2
* 4.4:
  install compatible versions of mongodb/mongodb only
  fix resolving parent/self/static type annotations
  [Console] fix QuestionHelper::getHiddenResponse() not working with space in project directory name
  [WebLink] Escape double quotes in attributes values
2021-02-17 16:24:54 +01:00
Nyholm
1a5aec14d7
minor #40222 install compatible versions of mongodb/mongodb only (xabbuh)
This PR was merged into the 4.4 branch.

Discussion
----------

install compatible versions of mongodb/mongodb only

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

Commits
-------

3a231c2030 install compatible versions of mongodb/mongodb only
2021-02-17 16:05:42 +01:00
Christian Flothmann
3a231c2030 install compatible versions of mongodb/mongodb only 2021-02-17 15:20:29 +01:00
Christian Flothmann
b148f8935b bug #40211 [Validator] fix taking error message from the correct violation (xabbuh)
This PR was merged into the 5.2 branch.

Discussion
----------

[Validator] fix taking error message from the correct violation

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

Commits
-------

32cd77aecc fix taking error message from the correct violation
2021-02-17 12:42:45 +01:00
Wouter de Jong
6ae59a9a17 minor #40217 [Security] Fix some broken BC layers (chalasr)
This PR was merged into the 5.3-dev branch.

Discussion
----------

[Security] Fix some broken BC layers

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

Commits
-------

79de1da6ca [Security] Fix some broken BC layers
2021-02-16 22:57:46 +01:00
Robin Chalas
79de1da6ca [Security] Fix some broken BC layers 2021-02-16 20:02:45 +01:00
Christian Flothmann
32cd77aecc fix taking error message from the correct violation 2021-02-16 14:22:25 +01:00
Nicolas Grekas
c1c20860e5 bug #40208 [PropertyInfo] fix resolving self to name of the analyzed class (xabbuh)
This PR was merged into the 4.4 branch.

Discussion
----------

[PropertyInfo] fix resolving self to name of the analyzed class

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

Commits
-------

e9f2ece991 fix resolving parent/self/static type annotations
2021-02-16 13:45:38 +01:00
Christian Flothmann
e9f2ece991 fix resolving parent/self/static type annotations 2021-02-16 13:45:26 +01:00
Fabien Potencier
f8ce7d0803 bug #40209 [WebLink] Escape double quotes in attributes values (fancyweb)
This PR was merged into the 4.4 branch.

Discussion
----------

[WebLink] Escape double quotes in attributes values

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

If the attribute value contains a double quote, the serialized value is invalid: `</foo>; rel="alternate"; title="foo " bar"`. Ideally we would use `addcslashes` but we can't because users that already pass escaped values would then be impacted.

Commits
-------

7946be2b95 [WebLink] Escape double quotes in attributes values
2021-02-16 13:01:27 +01:00
Robin Chalas
9230f69106 bug #40192 [Console] fix QuestionHelper::getHiddenResponse() not working with space in project directory name (Yendric)
This PR was submitted for the 5.2 branch but it was squashed and merged into the 4.4 branch instead.

Discussion
----------

[Console] fix QuestionHelper::getHiddenResponse() not working with space in project directory name

| Q             | A
| ------------- | ---
| Branch?       | 5.2
| 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 #40190 <!-- 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 #40190 to allow spaces in project directory name.

Commits
-------

0e421004eb [Console] fix QuestionHelper::getHiddenResponse() not working with space in project directory name
2021-02-16 12:16:11 +01:00