Commit Graph

33087 Commits

Author SHA1 Message Date
Massimiliano Arione
b37c1a818f
fix typo in PR #31802 2019-06-03 11:50:31 +02:00
Massimiliano Arione
2b95fcaa6b update italian validator translation 2019-06-03 11:16:20 +02:00
Toni Peric
e83886c811
Add missing translations 2019-06-01 15:18:31 +02:00
Robin Chalas
e48d5d07e3 [DomCrawler] Fix type error with null Form::$currentUri 2019-05-31 01:40:59 +02:00
Nicolas Grekas
06c655251c Merge branch '3.4' into 4.2
* 3.4:
  Use willReturn() instead of will(returnValue()).
2019-05-30 18:06:08 +02:00
Alexander M. Turek
4fb67df612 Use willReturn() instead of will(returnValue()). 2019-05-30 17:47:52 +02:00
Nicolas Grekas
31f51ca9a5 Merge branch '3.4' into 4.2
* 3.4:
  [HttpFoundation] Do not set X-Accel-Redirect for paths outside of X-Accel-Mapping
  Use AsserEquals for floating-point values
2019-05-29 20:10:06 +02:00
Vilius Grigaliūnas
a662f61e08 [HttpFoundation] Do not set X-Accel-Redirect for paths outside of X-Accel-Mapping
Currently BinaryFileResponse, when configured with X-Accel-Redirect sendfile type,
will only substitute file paths specified in X-Accel-Mapping. But if the provided
file path does not have a defined prefix, then the resulting header will include
the absolute path. Nginx expects a valid URI, therefore this will result in an
issue that is very hard to detect and debug as it will not show up in error logs
and instead the request would just hang for some time and then be re-served
without query parameters(?).
2019-05-28 15:48:21 +03:00
Fabien Potencier
2d72ec1a10 bumped Symfony version to 4.2.10 2019-05-28 14:11:55 +02:00
Fabien Potencier
c4462f6695 updated VERSION for 4.2.9 2019-05-28 14:07:12 +02:00
mmokhi
0cef5f3ec9 Use AsserEquals for floating-point values
Use AssertEquals for these two specific case will do a better job,
since it'll convert both '0.1' and result of `getContent()` into PHP's
internal representation of floating-point and compares them and it should be fine.
Using `AssertSame` for this tests brings floating-point serialization
into consideration which of course will be php.ini specific.

In order not missing the type assertion point that `AssertSame` does,
we also perform `assertInternalType('string'...`

Sponsored-by: Platform.sh
2019-05-28 12:41:01 +02:00
Fabien Potencier
bb9a67df3b bumped Symfony version to 3.4.29 2019-05-28 11:38:37 +02:00
Fabien Potencier
af28e976df updated VERSION for 3.4.28 2019-05-28 11:24:42 +02:00
Nicolas Grekas
90167c36f8 fix tests 2019-05-28 11:19:25 +02:00
Nicolas Grekas
a7bfe26fcc fix tests 2019-05-28 11:07:12 +02:00
Nicolas Grekas
0b0f7bf807 fix tests 2019-05-28 10:32:53 +02:00
Nicolas Grekas
82a1ebf57e Merge branch '3.4' into 4.2
* 3.4:
  fix typo
2019-05-28 10:20:12 +02:00
Fabien Potencier
deb01eb349 minor #31642 FragmentListener - fix typo in annotation (henry2778)
This PR was merged into the 3.4 branch.

Discussion
----------

FragmentListener - fix typo in annotation

| 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        |

Just a small typo I've found in fragment listener :)

Commits
-------

b6ff836a49 fix typo
2019-05-27 21:37:51 +02:00
Andrii Popov
b6ff836a49 fix typo 2019-05-27 21:45:58 +03:00
Fabien Potencier
2314f81891 Merge branch '3.4' into 4.2
* 3.4:
  Fixes a small doc blocks syntax error
  Small grammar mistake in documentation
  [Workflow] Do not trigger extra guard
2019-05-27 07:57:45 +02:00
Fabien Potencier
c562e71d29 bug #31584 [Workflow] Do not trigger extra guards (lyrixx)
This PR was merged into the 3.4 branch.

Discussion
----------

[Workflow] Do not trigger extra guards

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

---

With this patch, guards are executed only on wanted transitions

**Note for merger**: This is already fixed (in a different manner) in 4.2, So this patch should not be included in 4.2, instead take: #31585 or discard changes of Workflow class but keep tests

Commits
-------

ad0619748e [Workflow] Do not trigger extra guard
2019-05-27 07:53:57 +02:00
Fabien Potencier
ac4429a6aa bug #31632 [Messenger] Use "real" memory usage to honor --memory-limit (chalasr)
This PR was merged into the 4.2 branch.

Discussion
----------

[Messenger] Use "real" memory usage to honor --memory-limit

| Q             | A
| ------------- | ---
| Branch?       | 4.2
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/29957
| License       | MIT
| Doc PR        | n/a

At least it's consistent with what other daemon-based libraries do:
https://github.com/php-enqueue/enqueue-dev/blob/master/pkg/enqueue/Consumption/Extension/LimitConsumerMemoryExtension.php#L58
https://github.com/M6Web/DaemonBundle/blob/master/src/M6Web/Bundle/DaemonBundle/Command/DaemonCommand.php#L493

Commits
-------

fbfe2dfa8a [Messenger] Use real memory usage for --memory-limit
2019-05-27 07:52:11 +02:00
Michael Käfer
34d4fa66e7 Fixes a small doc blocks syntax error 2019-05-27 07:50:24 +02:00
Michael Käfer
ec098d6c5d Small grammar mistake in documentation 2019-05-27 07:42:07 +02:00
Nicolas Grekas
81f6f3b6d2 Merge branch '3.4' into 4.2
* 3.4:
  [github] Implement the new security policy.
  [Finder] fix wrong method call casing
  Make tempfile path unique
  minor: fix phpdocs in the ldap component
  [Process] Fix infinite waiting for stopped process
  Use absolute URL for when the profiler's domain differs from the controller's domain which initialises the profiler.
  fix phpdoc
  [DI] fix using bindings with locators of service subscribers
2019-05-26 22:47:34 +02:00
Robin Chalas
fbfe2dfa8a [Messenger] Use real memory usage for --memory-limit 2019-05-26 22:33:59 +02:00
Grégoire Pineau
ad0619748e [Workflow] Do not trigger extra guard
With this patch, guard are executed only on wanted transitions
2019-05-26 16:07:43 +02:00
Saif Eddin G
9b558fe185
[Finder] fix wrong method call casing 2019-05-24 13:25:55 +01:00
mmokhi
2a9816f0b6 Make tempfile path unique
The temp-file that the test currently creates is `/tmp/log`.
This may exist on many platforms already (including `platform.sh` app containers).
With the proposed patch way the collision will be less likely.

Sponsored-by: Platform.sh
2019-05-23 18:22:28 +02:00
Matthias Althaus
a1677c78a6 [Translation] Fixed issue with new vs old TranslatorInterface in TranslationDataCollector 2019-05-23 17:21:18 +02:00
Nicolas Grekas
93c2412652 [FrameworkBundle] improve cs 2019-05-22 20:38:35 +02:00
Amrouche Hamza
721915f8ec
minor: fix phpdocs in the ldap component 2019-05-22 18:32:44 +02:00
Nicolas Grekas
8a220d8225 bug #31349 [WebProfilerBundle] Use absolute URL for profiler links (Alumbrados)
This PR was merged into the 3.4 branch.

Discussion
----------

[WebProfilerBundle] Use absolute URL for profiler links

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

Generate absolute URL's so you can have a different (sub)domain for the profiler and the controller that uses it.

Also uses the link which the controller generated instead of always generating a new link in Twig. The changes shouldn't inpact normal behavior.

Commits
-------

13ee1fa2b7 Use absolute URL for when the profiler's domain differs from the controller's domain which initialises the profiler.
2019-05-22 16:37:24 +02:00
Nicolas Grekas
f93e252f6a bug #31541 [DI] fix using bindings with locators of service subscribers (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] fix using bindings with locators of service subscribers

| 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        | -

Spotted during the workshop in Sao Paulo, with @tsantos84, @andreia and others :)

Commits
-------

7146b95303 [DI] fix using bindings with locators of service subscribers
2019-05-22 15:07:19 +02:00
Nicolas Grekas
b60872b1cf bug #31568 [Process] Fix infinite waiting for stopped process (mshavliuk)
This PR was squashed before being merged into the 3.4 branch (closes #31568).

Discussion
----------

[Process] Fix infinite waiting for stopped process

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

### Description
Add a regression test `Symfony\Component\Process\Tests\ProcessTest:testWaitStoppedDeadProcess` to reproduce the related bug #31548 . It consists of one file `ErrorProcessInitiator.php`, which executes as another process because otherwise if `Process::wait()` goes in an infinite loop (which is test checks) it will be impossible to handle it and stop test correctly.

The second commit contains bug fix, which is only `$this->checkTimeout();` call, that prevents infinite loop.

Commits
-------

6b9ee1e1c5 [Process] Fix infinite waiting for stopped process
2019-05-22 14:54:17 +02:00
mshavliuk
6b9ee1e1c5 [Process] Fix infinite waiting for stopped process 2019-05-22 14:54:11 +02:00
martijn
13ee1fa2b7 Use absolute URL for when the profiler's domain differs from the controller's domain which initialises the profiler. 2019-05-22 11:43:54 +02:00
Ondrej Exner
45a8f893ef
fix phpdoc 2019-05-22 09:57:24 +02:00
Nicolas Grekas
48258fc12e Merge branch '3.4' into 4.2
* 3.4:
  minor: add some test in the ldap component
  [Bridge\ProxyManager] isProxyCandidate() does not take into account interfaces
  [Routing][AnnotationClassLoader] fix utf-8 encoding in default route name
  fixed a phpdoc
  [Debug] Wrap call to require_once in a try/catch
  [PropertyInfo] Add missing documentation link in Readme
  Use the current working dir as default first arg in 'link' binary
  Respect parent class contract in ContainerAwareDoctrineEventManager
  [Validator] Add the missing translations for the Danish ("da") locale
  [Serializer] Fix denormalization of object with variadic constructor typed argument
  Allow set 'None' on samesite cookie flag
2019-05-20 18:15:26 +02:00
Nicolas Grekas
9e4d5ff47d minor #31552 [Ldap] add a test to getResources and binding (Simperfit)
This PR was merged into the 3.4 branch.

Discussion
----------

[Ldap] add a test to getResources and binding

| Q             | A
| ------------- | ---
| Branch?       | 3.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 | none   <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        |  <!-- 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 the master branch.
-->

We could add more unit tests, but this is a beginning.

Commits
-------

d08f195502 minor: add some test in the ldap component
2019-05-20 18:00:08 +02:00
Amrouche Hamza
d08f195502
minor: add some test in the ldap component 2019-05-20 14:59:43 +02:00
André R
e3739b1289 [Bridge\ProxyManager] isProxyCandidate() does not take into account interfaces
When using factories it's common best practice to use interface as class name, especially in cases
where you know impl can differ. Before this fix ProxyManager did not allow these to be lazy.

In our case this has lead several to hard to debug issues on classes we need to mark as lazyi
and often a need to add lazy on decorators if there are any or other workarounds.
As we have had this issue, and still have on both 2.8 and 3.4 this is opened against 2.8.
2019-05-20 13:02:42 +02:00
Nicolas Grekas
7146b95303 [DI] fix using bindings with locators of service subscribers 2019-05-19 11:11:39 -03:00
Fabien Potencier
365a390e6e bug #31335 [Doctrine] Respect parent class contract in ContainerAwareEventManager (Koc)
This PR was merged into the 3.4 branch.

Discussion
----------

[Doctrine] Respect parent class contract in ContainerAwareEventManager

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

According to method signature of [original EventManager](https://github.com/doctrine/event-manager/blob/master/lib/Doctrine/Common/EventManager.php#L50) `getListeners` method should return array of initialized objects but now it returns array of strings of listener service names.

Commits
-------

42d62721fd Respect parent class contract in ContainerAwareDoctrineEventManager
2019-05-18 18:38:29 +02:00
Fabien Potencier
53556290ed bug #31421 [Routing][AnnotationClassLoader] fix utf-8 encoding in default route name (przemyslaw-bogusz)
This PR was squashed before being merged into the 3.4 branch (closes #31421).

Discussion
----------

[Routing][AnnotationClassLoader] fix utf-8 encoding in default route name

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

If controller, or one of its methods, contain a unicode character and you run:
```
./bin/console debug:router
```
you get this:
![Zrzut ekranu 2019-05-8 o 14 00 48](https://user-images.githubusercontent.com/35422131/57374545-71863080-719b-11e9-999e-fe0a5051c089.png)

This PR fixes it into this:
![Zrzut ekranu 2019-05-8 o 14 00 59](https://user-images.githubusercontent.com/35422131/57374616-92e71c80-719b-11e9-9d13-5370213c22f7.png)

Commits
-------

7ab52d3c36 [Routing][AnnotationClassLoader] fix utf-8 encoding in default route name
2019-05-18 18:36:56 +02:00
Przemysław Bogusz
7ab52d3c36 [Routing][AnnotationClassLoader] fix utf-8 encoding in default route name 2019-05-18 18:36:47 +02:00
Fabien Potencier
c866efa615 fixed a phpdoc 2019-05-18 18:33:51 +02:00
Grégoire Pineau
afb6e1ec9e [Debug] Wrap call to require_once in a try/catch
If the included file contains an error, it hides the real error. This
makes debugging harder.

How to reproduce:

```
composer create-project symfony/skeleton symfony-3.4 3.4
cd symfony-3.4
composer req monolog
```

Add to `monolog.yaml`:
```yaml
        elasticsearch:
            type: "elasticsearch"
            elasticsearch:
                host: 'elasticsearch'
                port: '9200'
            index: 'ep_php_logs_dev'
            level: 'debug'
            tags: 'monolog.logger'
            channels: ['!event']
```

This will fail because the the \Elastica\Client class does not exist.
But this error will be hidden by the `ClassNotFoundFatalErrorHandler`
because it will try to load the `Symfony\Component\Kernel\Client` and
this class extends `Symfony\Component\BrowserKit\Client`. The last one
is a soft dependency...

---

Before
```
Fatal error: Uncaught Error: Class 'Symfony\Component\BrowserKit\Client' not found in /tmp/symfony-3.4/vendor/symfony/http-kernel/Client.php:31
```

After:
```
Fatal error: Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "Client" from namespace "Elastica".
Did you forget a "use" statement for another namespace? in /tmp/symfony-es/var/cache/dev/ContainerWXN4mS9/srcApp_KernelDevDebugContainer.php:303
```
2019-05-18 15:32:47 +02:00
Christian Flothmann
d836c63b91 prevent deprecation when filesize matches error code 2019-05-17 13:55:16 +02:00
Pablo Lozano
62894ed8b9 [PropertyInfo] Add missing documentation link in Readme 2019-05-16 16:10:36 +02:00
Konstantin Myakshin
42d62721fd Respect parent class contract in ContainerAwareDoctrineEventManager 2019-05-15 21:39:23 +03:00
gauss
710f8a6367 [Validator] Add the missing translations for the Danish ("da") locale 2019-05-14 17:13:30 +03:00
Nicolas Grekas
1620baf1b5 bug #31477 [PropertyAccess] Add missing property to PropertyAccessor (vudaltsov)
This PR was squashed before being merged into the 4.2 branch (closes #31477).

Discussion
----------

[PropertyAccess] Add missing property to PropertyAccessor

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

Commits
-------

b1d3736c40 [PropertyAccess] Add missing property to PropertyAccessor
2019-05-12 13:08:38 +02:00
Valentin
b1d3736c40 [PropertyAccess] Add missing property to PropertyAccessor 2019-05-12 13:08:31 +02:00
Nicolas Grekas
1ecc6a6c03 bug #31479 [Cache] fix saving unrelated keys in recursive callback calls (nicolas-grekas)
This PR was merged into the 4.2 branch.

Discussion
----------

[Cache] fix saving unrelated keys in recursive callback calls

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

Commits
-------

4443c2018c [Cache] fix saving unrelated keys in recursive callback calls
2019-05-12 12:40:49 +02:00
Nicolas Grekas
4443c2018c [Cache] fix saving unrelated keys in recursive callback calls 2019-05-11 20:09:18 +02:00
Nicolas Grekas
00552848f8 bug #31438 [Serializer] Fix denormalization of object with variadic constructor typed argument (ajgarlag)
This PR was squashed before being merged into the 3.4 branch (closes #31438).

Discussion
----------

[Serializer] Fix denormalization of object with variadic constructor typed argument

| Q             | A
| ------------- | ---
| Branch?       | 3.4 up to 4.2
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #31436
| License       | MIT

This PR adds a test to demonstrate the bug, and a fix to squash it.

Commits
-------

c8c3c56cc8 [Serializer] Fix denormalization of object with variadic constructor typed argument
2019-05-11 11:57:45 +02:00
Antonio J. García Lagar
c8c3c56cc8 [Serializer] Fix denormalization of object with variadic constructor typed argument 2019-05-11 11:57:38 +02:00
Nicolas Grekas
b9d3135b1f bug #31445 [Messenger] Making cache rebuild correctly when message subscribers change (weaverryan)
This PR was merged into the 4.2 branch.

Discussion
----------

[Messenger] Making cache rebuild correctly when message subscribers change

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

An edge-case that's identical to `EventSubscriberInterface`: when the return value of `getHandledMessages()` changes, the container needs to be rebuilt.

If you're wondering why these checks aren't in their own resource class, see #25984 - it's something we probably should do, but haven't done yet.

Commits
-------

d88446be07 Making cache rebuild correctly with MessageSubscriberInterface return values
2019-05-11 11:56:45 +02:00
Nicolas Grekas
3ae1e802ad bug #31442 [Validator] Fix finding translator parent definition in compiler pass (deguif)
This PR was merged into the 4.2 branch.

Discussion
----------

[Validator] Fix finding translator parent definition in compiler pass

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

Method `ChildDefintion::getParent()` returns a string, but here it is expected to return an object of class `Definition` in order to call `getClass` on it in the loop.

Commits
-------

d261bb5dd1 Fix finding parent definition
2019-05-11 11:53:29 +02:00
Marcos Gómez Vilches
8bac3d6fa3
Allow set 'None' on samesite cookie flag
Allow set samesite cookie flag to 'None' value
2019-05-10 21:58:31 +02:00
Fabien Potencier
74afcd6777 removed deprecated usage of some Twig features 2019-05-10 08:54:47 +02:00
Fabien Potencier
3fcec72a78 Merge branch '3.4' into 4.2
* 3.4:
  [Form] Restore default locale during tests
2019-05-10 07:37:49 +02:00
Jon Dufresne
11ed09813f Fix typo: depreciation -> deprecation 2019-05-10 07:33:12 +02:00
Roland Franssen
7fce86f1db [Form] Restore default locale during tests 2019-05-09 19:39:59 +02:00
Ryan Weaver
d88446be07 Making cache rebuild correctly with MessageSubscriberInterface return values 2019-05-09 12:56:19 -04:00
François-Xavier de Guillebon
d261bb5dd1
Fix finding parent definition 2019-05-09 15:04:55 +02:00
Nicolas Grekas
c083e20cf2 Merge branch '3.4' into 4.2
* 3.4:
  [DI] Removes number of elements information in debug mode
  Update PR template for 4.3
  [Intl] Add FallbackTrait for data generation
  [Console] Commands with an alias should not be recognized as ambiguous
  clarify the possible class/interface of the cache
2019-05-09 11:19:46 +02:00
Nicolas Grekas
77684e44dd bug #31207 [Routing] Fixed unexpected 404 NoConfigurationException (yceruto)
This PR was merged into the 4.2 branch.

Discussion
----------

[Routing] Fixed unexpected 404 NoConfigurationException

| Q             | A
| ------------- | ---
| Branch?       | 4.2
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #31199
| License       | MIT

This is the patch for 4.2+
We need a different patch for 3.4 that is more complex, I think.

Commits
-------

aa71a42a49 [Routing] Fixed unexpected 404 NoConfigurationException
2019-05-09 11:06:20 +02:00
Yonel Ceruto
aa71a42a49 [Routing] Fixed unexpected 404 NoConfigurationException 2019-05-09 11:03:29 +02:00
Nicolas Grekas
fb4d92877f bug #31261 [Console] Commands with an alias should not be recognized as ambiguous when using register (Simperfit)
This PR was merged into the 3.4 branch.

Discussion
----------

[Console] Commands with an alias should not be recognized as ambiguous when using register

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

I think when passing an alias, it should not be treated as a ambiguous command since it's configured to response to it.

I've [pushed a commit](2f5209a687) that reproduce the bug and with this patch it does work.

Commits
-------

ae7ee46465 [Console] Commands with an alias should not be recognized as ambiguous
2019-05-09 10:42:51 +02:00
Nicolas Grekas
284c21648a bug #31371 [DI] Removes number of elements information in debug mode (jschaedl)
This PR was squashed before being merged into the 3.4 branch (closes #31371).

Discussion
----------

[DI] Removes number of elements information in debug mode

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

With this services config:

```yaml
my_service:
    class: stdClass
    arguments: [!tagged my_tag]

my_tagged_service_1:
    class: stdClass
    tags: [my_tag]

my_tagged_service_2:
    class: stdClass
    tags: [my_tag]
```
Executing `./bin/console debug:container my_service --show-arguments --env=dev` resulted in

```bash
Information for Service "my_service"
====================================

 ---------------- -------------------------
  Option           Value
 ---------------- -------------------------
  Service ID       my_service
  Class            stdClass
  Tags             -
  Public           no
  Synthetic        no
  Lazy             no
  Shared           yes
  Abstract         no
  Autowired        yes
  Autoconfigured   yes
  Arguments        Iterator (0 element(s))
 ---------------- -------------------------
```
 With this fix the output changed to:

```bash
Information for Service "my_service"
====================================

 ---------------- ------------
  Option           Value
 ---------------- ------------
  Service ID       my_service
  Class            stdClass
  Tags             -
  Public           no
  Synthetic        no
  Lazy             no
  Shared           yes
  Abstract         no
  Autowired        yes
  Autoconfigured   yes
  Arguments        Tagged Iterator for "my_tag"
 ---------------- ------------
```

and with `./bin/console debug:container my_service --show-arguments --env=prod`

```bash
Information for Service "my_service_tagged_iterator"
====================================================

 ---------------- ---------------------------------------------
  Option           Value
 ---------------- ---------------------------------------------
  Service ID       my_service
  Class            stdClass
  Tags             -
  Public           no
  Synthetic        no
  Lazy             no
  Shared           yes
  Abstract         no
  Autowired        yes
  Autoconfigured   yes
  Arguments        Tagged Iterator for "my_tag" (2 element(s))
 ---------------- ---------------------------------------------
```

Commits
-------

0da4b83197 [DI] Removes number of elements information in debug mode
2019-05-09 10:36:03 +02:00
Jan Schädlich
0da4b83197 [DI] Removes number of elements information in debug mode 2019-05-09 10:35:56 +02:00
Nicolas Grekas
81b415767e bug #31418 [FrameworkBundle] clarify the possible class/interface of the cache (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] clarify the possible class/interface of the cache

| 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        |

When the fallback cache pool is returned (on PHP 5.6, HHVM, or when
Opcache is disabled), the configured service can be any implementation
of the CacheItemPoolInterface.

Commits
-------

40273745ce clarify the possible class/interface of the cache
2019-05-09 10:32:22 +02:00
Nicolas Grekas
9ce27da407 minor #31432 [Intl] Add FallbackTrait for data generation (ro0NL)
This PR was merged into the 3.4 branch.

Discussion
----------

[Intl] Add FallbackTrait for data generation

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no
| 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 -->

This is the last architectural change for the Intl data compilation. Promised.

It fixes de-duplicating a locale from its fallback locale. The problem is it uses a while-loop, comparing the locale to each fallback locale.

Given

- `root` (val=A)
  - `ur` (val=B)
    - `ur_IN` (val=A)

We have an edge case where a locale (ur_IN) override its fallback locale (ur), setting/restoring the value back to the root locale. This happens for the GMT format in the timezone bundle i know of ... in this case the `ur_IN` locale needs to write its own value.

The current approach is a while-loop comparing each fallback locale (ur, root) to the current locale (ur_IN). Eventually comparing `ur_IN <> root`, which causes a wrong diff, as such `ur_IN` falls back to `ur` providing the wrong value (val=B, where val=A is expected).

The new approach uses recursion so we only compare `ur <> ur_IN`, where `ur_IN` on itself is compared to `root`.

4.2) https://github.com/ro0NL/symfony/commit/e24d8e6
4.3) https://github.com/ro0NL/symfony/commit/31591d0

Commits
-------

36ddfd58b9 [Intl] Add FallbackTrait for data generation
2019-05-09 10:31:33 +02:00
Nicolas Grekas
7d51da36a7 [Contracts] Simplify implementation declarations 2019-05-09 09:39:53 +02:00
Fabien Potencier
3fc97ce1c5 Merge branch '3.4' into 4.2
* 3.4:
  refactored code
2019-05-08 22:08:34 +02:00
Fabien Potencier
b4364aa014 refactored code 2019-05-08 22:08:18 +02:00
Roland Franssen
36ddfd58b9 [Intl] Add FallbackTrait for data generation 2019-05-08 21:38:40 +02:00
Fabien Potencier
a3c3c4417c Merge branch '3.4' into 4.2
* 3.4:
  [Intl] Enable error handler during compile
2019-05-08 21:22:49 +02:00
Fabien Potencier
95e53ed7e0 fixed CS 2019-05-08 19:26:55 +02:00
Roland Franssen
914653d866 [Intl] Enable error handler during compile 2019-05-08 18:03:40 +02:00
Amrouche Hamza
ae7ee46465
[Console] Commands with an alias should not be recognized as ambiguous 2019-05-08 12:29:47 +02:00
Christian Flothmann
40273745ce clarify the possible class/interface of the cache
When the fallback cache pool is returned (on PHP 5.6, HHVM, or when
Opcache is disabled), the configured service can be any implementation
of the CacheItemPoolInterface.
2019-05-08 11:57:35 +02:00
Fabien Potencier
74cbe5af9f Merge branch '3.4' into 4.2
* 3.4:
  [Intl] Fix root fallback locale
  fixed CS
2019-05-08 08:50:14 +02:00
Roland Franssen
11ff24a665 [Intl] Fix root fallback locale 2019-05-07 23:35:39 +02:00
Fabien Potencier
6c6f76f217 fixed CS 2019-05-07 12:18:14 +02:00
Roland Franssen
c902c8aea0 recompile 2019-05-07 10:22:02 +02:00
Roland Franssen
a3164debf8 re-apply translator parents.json generation 2019-05-07 10:20:14 +02:00
Roland Franssen
294ae7a2b5 [Intl] Apply localeDisplayPattern and fix locale generation 2019-05-07 10:06:38 +02:00
Roland Franssen
a20a6ccac4 recompile 2019-05-07 09:01:27 +02:00
Roland Franssen
29e8aba14b [Intl] Apply localeDisplayPattern and fix locale generation 2019-05-07 08:59:08 +02:00
Fabien Potencier
4304fb8e05 Merge branch '3.4' into 4.2
* 3.4:
  [Intl] Cleanup
2019-05-07 07:54:54 +02:00
Fabien Potencier
16c460c6d6 minor #31366 [Intl] Cleanup (ro0NL)
This PR was merged into the 3.4 branch.

Discussion
----------

[Intl] Cleanup

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no
| 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 -->

cleanup of #31365 for 3.4 + some other stuff to keep in sync across branches

Commits
-------

70a941ec0c [Intl] Cleanup
2019-05-07 07:53:33 +02:00
Fabien Potencier
b9637c9209 Merge branch '3.4' into 4.2
* 3.4:
  [Console] Fix auto-complete for ChoiceQuestion (multi-select answers)
  Translated form, security, validators resources into Belarusian (be)
  [WebProfilerBundle] Don't filter submitted IP values
  bumped Symfony version to 3.4.28
  updated VERSION for 3.4.27
  update CONTRIBUTORS for 3.4.27
  updated CHANGELOG for 3.4.27
2019-05-06 13:28:52 +02:00
Fabien Potencier
60b505e88c bug #31377 [Console] Fix auto-complete for ChoiceQuestion (multi-select answers) (battye)
This PR was squashed before being merged into the 3.4 branch (closes #31377).

Discussion
----------

[Console] Fix auto-complete for ChoiceQuestion (multi-select answers)

| 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/issues/24072
| License       | MIT
| Doc PR        | -

Previously, a bug existed whereby for multi-select questions, the auto-complete would only work for the first answer supplied by the user. On all subsequent answers, the auto-complete would not appear.

Now it works as expected:

![screenshot](https://user-images.githubusercontent.com/2110222/57158657-8c147e80-6e16-11e9-94f7-a9bc95506545.png)

Commits
-------

59321fe031 [Console] Fix auto-complete for ChoiceQuestion (multi-select answers)
2019-05-06 11:25:23 +02:00
battye
59321fe031 [Console] Fix auto-complete for ChoiceQuestion (multi-select answers) 2019-05-06 11:25:16 +02:00
Nicolas Grekas
5453f3ea54 bug #31380 [WebProfilerBundle] Don't filter submitted IP values (javiereguiluz)
This PR was merged into the 3.4 branch.

Discussion
----------

[WebProfilerBundle] Don't filter submitted IP values

| Q             | A
| ------------- | ---
| Branch?       | 3.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 | #31378   <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | -

I don't think we need to filter the value submitted by users in this case.

Commits
-------

29bd2ad3f2 [WebProfilerBundle] Don't filter submitted IP values
2019-05-05 18:39:56 +02:00
Uladzimir Tsykun
3ae9de1ef3 Translated form, security, validators resources into Belarusian (be) 2019-05-05 18:11:06 +02:00
Javier Eguiluz
29bd2ad3f2 [WebProfilerBundle] Don't filter submitted IP values 2019-05-04 10:57:59 +02:00
Roland Franssen
70a941ec0c [Intl] Cleanup 2019-05-02 21:34:01 +02:00
Fabien Potencier
c9231e2d5a bumped Symfony version to 4.2.9 2019-05-01 15:33:38 +02:00
Fabien Potencier
33c23dadb2 updated VERSION for 4.2.8 2019-05-01 15:31:08 +02:00
Fabien Potencier
15e9eec225 bumped Symfony version to 3.4.28 2019-05-01 15:30:28 +02:00
Fabien Potencier
3d7ca2e596 updated VERSION for 3.4.27 2019-05-01 15:03:24 +02:00
Fabien Potencier
962b3ae504 Merge branch '3.4' into 4.2
* 3.4:
  [Translation] Fixes typo in comment
  Reword VarDumper description
2019-05-01 14:55:36 +02:00
Fabien Potencier
e2881d178d minor #31339 Reword VarDumper description (greg0ire)
This PR was merged into the 3.4 branch.

Discussion
----------

Reword VarDumper description

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| 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 | n/a
| License       | MIT
| Doc PR        | n/a

It is hard to understand what "Built on top" refers to, and even when
knowing, the sentence looks weird.
![Untitled](https://user-images.githubusercontent.com/657779/57011659-15ebfe00-6c03-11e9-9b85-5c00cfc15026.png)

The description of [the Github repository](https://github.com/symfony/var-dumper) has the same issue and should be changed.

Commits
-------

6024e16ea1 Reword VarDumper description
2019-05-01 14:54:26 +02:00
Jan Schädlich
e11985f001 [Translation] Fixes typo in comment 2019-05-01 13:10:09 +02:00
Grégoire Paris
6024e16ea1
Reword VarDumper description
It is hard to understand what "Built on top" refers to, and even when
knowing, the sentence looks weird.
2019-05-01 11:52:10 +02:00
Fabien Potencier
ecdfa80bf4 Merge branch '3.4' into 4.2
* 3.4:
  Revert "bug #30620 [FrameworkBundle][HttpFoundation] make session service resettable (dmaicher)"
  [Workflow] Fixed dumping when many transition with same name exist
  fix ConsoleFormatter - call to a member function format() on string
2019-05-01 10:36:31 +02:00
Fabien Potencier
904163788a bug #31338 Revert "bug #30620 [FrameworkBundle][HttpFoundation] make session service resettable (dmaicher)" (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

Revert "bug #30620 [FrameworkBundle][HttpFoundation] make session service resettable (dmaicher)"

| 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        | -

This reverts commit 029fb2e7e3, reversing
changes made to 9dad29d61c.

Reverts #30620
Replaces #31215

We don't need to solve this in 3.4
Making the session resettable should be done on master, by implementing `ResetInterface`.
On 3.4 apps, one should write a dedicated `SessionResetter` that would implement the reverted logic.

Commits
-------

4177331915 Revert "bug #30620 [FrameworkBundle][HttpFoundation] make session service resettable (dmaicher)"
2019-05-01 10:11:03 +02:00
Nicolas Grekas
4177331915 Revert "bug #30620 [FrameworkBundle][HttpFoundation] make session service resettable (dmaicher)"
This reverts commit 029fb2e7e3, reversing
changes made to 9dad29d61c.
2019-05-01 10:04:33 +02:00
Fabien Potencier
0c3c21ac8d minor #31304 Made debug:container and debug:autowiring ignore starting backslash in service id (ruudk)
This PR was merged into the 4.2 branch.

Discussion
----------

Made `debug:container` and `debug:autowiring` ignore starting backslash in service id

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

When you copy a reference to a class from PHPStorm it always start the FQCN with a backslash.

When you now try to search the container for this class using `bin/console debug:container "\My\Class"` it cannot find it.

This PR always removes the starting backslash before searching the container to avoid this issue.

Commits
-------

0945f27e81 Made `debug:container` and `debug:autowiring` ignore starting backslash in service id
2019-05-01 08:35:18 +02:00
Fabien Potencier
e0b5fb2aa3 bug #31326 fix ConsoleFormatter - call to a member function format() on string (keksa)
This PR was merged into the 3.4 branch.

Discussion
----------

fix ConsoleFormatter - call to a member function format() on string

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

The ConsoleFormatter crashes when there is not a DateTime object in `$record['datetime']`. As this parameter is not documented anywhere (i.e. `FormatterInterface` does not say it must be a DateTime object), I think the proper fix is to check if there is DateTimeInterface object and only call the `format` method then.

We use a custom LogProcessor (https://symfony.com/doc/current/logging/processors.html) to add some extra data and format the DateTime in the `$record['datetime']`. We need to format the DateTime in the processor, because we use `JsonFormatter` in prod environment and it does not support changing the date format. We use `ConsoleFormatter` only in dev environment and as the processor is called before the formatter, we get the crash.

There were no tests whatsoever for `ConsoleFormatter`, so I've added a basic one, that passes before and after, and another one that tests the crash (failed before, passed after).

There is a theoretical BC break, as someone could have sent an object with a `format` method to the formatter and it would have worked, but I'm not sure if it's considered BC break by Symfony, please let me know, if it is.

Commits
-------

648832823f fix ConsoleFormatter - call to a member function format() on string
2019-05-01 08:30:15 +02:00
Fabien Potencier
885d08c1f5 bug #31331 [Workflow] Fixed dumping when many transition with same name exist (lyrixx)
This PR was merged into the 3.4 branch.

Discussion
----------

[Workflow] Fixed dumping when many transition with same name exist

| 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        |

---

With this configuration:

```yaml
framework:
    workflows:
        foobar:
            type: workflow
            supports:
                - stdClass
            initial_place: a
            places:
                - a
                - b
                - c
                - cancelled
            transitions:
                -   name: a-b
                    from: a
                    to: b
                -   name: b-c
                    from: b
                    to: c
                -   name: cancel
                    from: a
                    to: cancelled
                -   name: cancel
                    from: b
                    to: cancelled
                -   name: cancel
                    from: c
                    to: cancelled
```

before:
![workflow-broken](https://user-images.githubusercontent.com/408368/56969037-a0315500-6b64-11e9-917e-4c45820938cc.png)

After:
![workflow-fixed](https://user-images.githubusercontent.com/408368/56969047-a4f60900-6b64-11e9-8f07-30e701a4978f.png)

Commits
-------

312a456e04 [Workflow] Fixed dumping when many transition with same name exist
2019-05-01 08:26:53 +02:00
Christian Flothmann
7c9dffe2e5 Merge branch '3.4' into 4.2
* 3.4:
  relax assertions in tests
  [Validator] Translate messages into Japanese
  Fix Thai translation in validators.th.xlf
  [FramworkBundle] mark any env vars found in the ide setting as used
2019-05-01 07:55:04 +02:00
Grégoire Pineau
312a456e04 [Workflow] Fixed dumping when many transition with same name exist 2019-04-30 17:32:30 +02:00
Christian Flothmann
730df0860c relax assertions in tests 2019-04-30 14:26:26 +02:00
Ondrej Exner
648832823f
fix ConsoleFormatter - call to a member function format() on string 2019-04-30 10:19:16 +02:00
Ruud Kamphuis
0945f27e81 Made debug:container and debug:autowiring ignore starting backslash in service id 2019-04-29 11:41:18 +02:00
Issei.M
e6e98363b0 [Validator] Translate messages into Japanese 2019-04-29 10:34:27 +02:00
Fabien Potencier
dc4fb76717 bug #31302 [FramworkBundle] mark any env vars found in the ide setting as used (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[FramworkBundle] mark any env vars found in the ide setting as used

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

Commits
-------

e461d36ec4 [FramworkBundle] mark any env vars found in the ide setting as used
2019-04-29 08:51:40 +02:00
MrNicodemuz
d4337fc8a2 Fix Thai translation in validators.th.xlf
The translated message is wrongly prefixed with a "T" character. The correct translation should read as "ค่านี้ถูกใช้งานไปแล้ว".
2019-04-29 08:19:29 +02:00
Nicolas Grekas
e461d36ec4 [FramworkBundle] mark any env vars found in the ide setting as used 2019-04-28 11:47:48 +02:00
Fabien Potencier
454574b0a3 Merge branch '3.4' into 4.2
* 3.4:
  [TwigBridge] Require twig ^1.40|^2.9
  [Serializer] Fix tests
  Use the apply tag instead of the filter tag
  Updated some translation files
  [Translator] Preserve default domain when extracting strings from php files
2019-04-28 08:09:27 +01:00
Fabien Potencier
c3f57d0015 minor #31296 [Serializer] Fix tests (chalasr)
This PR was merged into the 3.4 branch.

Discussion
----------

[Serializer] Fix tests

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

#30888 added some tests on master which fail when `property-info <3.4.13` is installed.
This bumps the constraint on 3.4 which will fix the low-deps build once merged up to master.

Commits
-------

d25f650005 [Serializer] Fix tests
2019-04-28 08:07:27 +01:00
Fabien Potencier
36c3af4d47 bug #31290 [TwigBundle] Use the apply tag instead of the filter tag (greg0ire)
This PR was merged into the 3.4 branch.

Discussion
----------

[TwigBundle] Use the apply tag instead of the filter tag

The filter has been deprecated in favor of the apply tag since Twig 2.9,
see https://twig.symfony.com/doc/2.x/tags/filter.html (apply does not
seem to have its own documentation page yet).

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

⚠ Note: don't merge until Twig 2.9 and 1.40 are released, or this will block symfony releases ⚠

Commits
-------

9c11b98d0a Use the apply tag instead of the filter tag
2019-04-28 08:00:42 +01:00
Robin Chalas
0e29e392f2 [TwigBridge] Require twig ^1.40|^2.9 2019-04-28 00:12:08 +02:00
Robin Chalas
d25f650005 [Serializer] Fix tests 2019-04-27 23:20:35 +02:00
Grégoire Paris
9c11b98d0a
Use the apply tag instead of the filter tag
The filter has been deprecated in favor of the apply tag since Twig 2.9,
see https://twig.symfony.com/doc/2.x/tags/filter.html (apply does not
seem to have its own documentation page yet).
2019-04-27 20:55:44 +02:00
Jordi Rejas
1d5aaf63f5 Updated some translation files 2019-04-27 17:49:24 +01:00
Fabien Potencier
148dca6931 bug #31275 [Translator] Preserve default domain when extracting strings from php files (Stadly)
This PR was squashed before being merged into the 3.4 branch (closes #31275).

Discussion
----------

[Translator] Preserve default domain when extracting strings from php files

| 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        |

Use default domain when extracting translation strings with `null` as domain.

Commits
-------

ca77d9a33e [Translator] Preserve default domain when extracting strings from php files
2019-04-27 17:22:08 +01:00
Stadly
ca77d9a33e [Translator] Preserve default domain when extracting strings from php files 2019-04-27 17:21:58 +01:00
Robin Chalas
7947b269ec Merge branch '3.4' into 4.2
* 3.4:
  [Form] Fix author tag + exception messages
  [TwigBridge] Fix deprecation on twig 2.9
  [Validator] Fixed imprecise translations
  [Validator] Add Dutch translations
  Intercept redirections only for HTML format
  Fix name and phpdoc of ContainerBuilder::removeBindings
  [Intl] Update the ICU data to 64.2
2019-04-27 13:48:17 +02:00
Nicolas Grekas
ada9aa0a07 bug #31240 Fix url matcher edge cases with trailing slash (arjenm)
This PR was squashed before being merged into the 4.2 branch (closes #31240).

Discussion
----------

Fix url matcher edge cases with trailing slash

| Q             | A
| ------------- | ---
| Branch?       | master / 4.2 (not sure whether this should've been against 4.2)
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no  (I think... if so, in obscure route configurations like the ones that broke in 4.2.7 ;) )
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #30721
| License       | MIT

As stated in #30721 the "redirecting" (compiled) UrlMatcher ignored host-requirements when doing a 'matched url except for trailing slash difference'-redirect.

With routes like this, you'd get 404's rather than 200's on the second routes.

```yaml
host1.withTrail:
  path: /foo/ # host2/foo would become host2/foo/ due to this partial path-match
  host: host1

host2.withoutTrail: # A request for host2/foo should match this route
  path: /foo # host2/foo/ does not match this path
  host: host2
```

This was caused by too eagerly testing whether a route could've worked with an additional trailing slash.

If it could be, that would result in an attempt to redirect _before_ testing the host.

The original url would get the additional slash and prior to actually redirecting, it'd be retested against the available routes. _That new url_ would actually match no routes, since now the host check for the first routes would actually be executed and fail the match for those routes. The adjusted path in the route does not match the second sets of routes...

This PR moves the trailing-slash check to after the host checks. I've added several tests with variants on these edge cases.

*Note:* This is a bug in 4.2 (and 4.3).
I fixed it against master. It appears 4.2's PhpMatcherTrait was renamed to CompiledUrlMatcherTrait in 4.3. But that made it loose its history.
So I'm not sure how to proceed from here. I can rebase it on 4.2 and do the change in PhpMatcherTrait, but that would probably fail to merge in master? I'm not nearly proficient enough in Symfony PR's to know how to solve all this ;)

@nicolas-grekas also asked for these or similar tests to be added to 3.4 as 'proof' those routes worked in that version as well. I have not (yet) done so.

The tests did work on the non-redirecting UrlMatcher without change (i.e. just running UrlMatcherTest), which implies - to me at least - the routes where properly defined and should not result in 404's simply because a RedirectableUrlMatcherInterface _can_ do redirects.

Actually, since I needed to change UrlMatcher as well, I'm not convinced these bugs where totally absent in 3.4. They didn't occur with the compiled version, since the host check was the very first if-statement in that humongous if-tree it generated.

PS, the branch name is a bit dramatic ;)

Commits
-------

4fcfa9d85c Fix url matcher edge cases with trailing slash
2019-04-27 11:38:08 +02:00
Arjen van der Meijden
4fcfa9d85c Fix url matcher edge cases with trailing slash 2019-04-27 11:38:00 +02:00
Nicolas Grekas
a975d2ba84 minor #31281 [TwigBridge] Fix deprecation on twig 2.9 (chalasr)
This PR was merged into the 3.4 branch.

Discussion
----------

[TwigBridge] Fix deprecation on twig 2.9

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

should make travis green

Commits
-------

ac8256ba9c [TwigBridge] Fix deprecation on twig 2.9
2019-04-27 10:50:03 +02:00
Nicolas Grekas
eaba717956 minor #31173 Fix name and phpdoc of ContainerBuilder::removeBindings (teohhanhui)
This PR was merged into the 3.4 branch.

Discussion
----------

Fix name and phpdoc of ContainerBuilder::removeBindings

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/29944#discussion_r276718323
| License       | MIT
| Doc PR        | N/A

<!--
Write a short README entry for your feature/bugfix here (replace this comment block.)
This will help people understand your PR and can be used as a start of the Doc PR.
Additionally:
 - Bug fixes must be submitted against the lowest 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 the master branch.
-->

Commits
-------

c93194d1db Fix name and phpdoc of ContainerBuilder::removeBindings
2019-04-27 10:44:00 +02:00
Roland Franssen
796f2fff9b [Form] Fix author tag + exception messages 2019-04-27 09:59:15 +02:00
Robin Chalas
ac8256ba9c [TwigBridge] Fix deprecation on twig 2.9 2019-04-27 00:25:38 +02:00
Nicolas Grekas
5d8f5fc5bc minor #31243 [Security] Cleanup "Digest nonce has expired." translation (ro0NL)
This PR was merged into the 4.2 branch.

Discussion
----------

[Security] Cleanup "Digest nonce has expired." translation

| Q             | A
| ------------- | ---
| Branch?       | 4.2
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no
| 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 -->

Running `php src/Symfony/Component/Translation/Resources/bin/translation-status.php` i see:

```
| Locale: nn      | Translated: 16/15
| Locale: tl      | Translated: 16/15
```

Here's the cleanup.

(ref #24336)

Commits
-------

e95445d830 [Security] Cleanup "Digest nonce has expired." translation
2019-04-26 09:45:25 +02:00
thib92
3022a3675b Fix left-associative ternary deprecation warnings for PHP 7.4 2019-04-26 09:24:05 +02:00
Toni Peric
6b50b43fdc [Validator] Fixed imprecise translations 2019-04-26 09:14:41 +02:00
Roland Franssen
76a3373248 [Validator] Add Dutch translations 2019-04-25 15:34:30 +02:00
Roland Franssen
e95445d830 [Security] Cleanup "Digest nonce has expired." translation 2019-04-25 13:21:20 +02:00
Bill Hance
b71d589071 Added FormInterface to @return Form::getClickedButton docblock 2019-04-24 13:13:32 -07:00
Fabien Potencier
571647f7bf bug #31201 [Form] resolve class name parameters (xabbuh)
This PR was merged into the 4.2 branch.

Discussion
----------

[Form] resolve class name parameters

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

Commits
-------

5235be4aa3 resolve class name parameters
2019-04-24 09:23:24 +02:00
Javier Eguiluz
418678823b Intercept redirections only for HTML format 2019-04-23 17:04:28 +02:00
Nicolas Grekas
1d55f800e4 [PhpUnitBridge] fix reading phpunit.xml on bootstrap 2019-04-23 16:37:24 +02:00
Christian Flothmann
5235be4aa3 resolve class name parameters 2019-04-23 07:54:40 +02:00