Commit Graph

4908 Commits

Author SHA1 Message Date
Nicolas Grekas
ca398df11f [DoctrineBridge] conflict with validator < 4.4 2019-11-06 16:07:32 +01:00
Nicolas Grekas
50633f2579 fix typo (bis) 2019-11-06 15:43:50 +01:00
Nicolas Grekas
9641215656 fix typo 2019-11-06 15:42:57 +01:00
Nicolas Grekas
4c401ebdd6 [HttpKernel] backport FC compat code 2019-11-06 15:42:08 +01:00
Nicolas Grekas
bd7da14243 minor #34261 [DoctrineBridge] fix min version of http-kernel (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[DoctrineBridge] fix min version of http-kernel

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

Required after #34257 and #34230

Commits
-------

69ba86ba66 [DoctrineBridge] fix min version of http-kernel
2019-11-06 15:29:25 +01:00
Nicolas Grekas
69ba86ba66 [DoctrineBridge] fix min version of http-kernel 2019-11-06 15:26:48 +01:00
Nicolas Grekas
98b457aa36 Merge branch '4.4'
* 4.4:
  conflict with FrameworkBundle < 4.4
  [DoctrineBridge] Reopen DoctrineDataCollector to extensibility
  [HttpClient] fix support for NTLM auth
2019-11-06 15:14:36 +01:00
Thomas Calvet
af021248bf [DoctrineBridge] Reopen DoctrineDataCollector to extensibility 2019-11-06 14:58:24 +01:00
Nicolas Grekas
4e703258a1 Merge branch '4.4'
* 4.4:
  [HttpClient] fix after merge from 4.3
  [HttpClient] expose only gzip when doing transparent compression
  [VarDumper] fix tests & displaying generators
  Fix WeekType tests
  add species to inflector and inflector tests
  Add handling for delayed message to redis transport
2019-11-06 13:04:01 +01:00
Maxime Steinhausser
b03b7f4ef5 [TwigBridge] Fix switch-custom changelog entry
As it doesn't really mention `switch-custom` is a css class.
2019-11-06 09:18:31 +01:00
Thomas Calvet
906b82eb97 Fix WeekType tests 2019-11-05 23:24:16 +01:00
Nicolas Grekas
1cc66db290 Merge branch '4.4'
* 4.4:
  [Messenger] use events consistently in worker
  Deprecate things that prevent \Throwable from bubbling down
2019-11-05 18:32:06 +01:00
Thomas Calvet
abef506e89 Deprecate things that prevent \Throwable from bubbling down 2019-11-05 18:23:20 +01:00
Nicolas Grekas
5e358e33c9 Merge branch '4.4'
* 4.4: (39 commits)
  [Console] Fix #33915, Detect dimensions using mode CON if vt100 is supported
  [PhpUnitBridge] Also search for composer.phar in git root folder
  [HttpKernel][DataCollectorInterface] Ease compatibility
  Add tests to ensure defaultLocale is properly passed to the URL generator
  [DependencyInjection] Fix broken references in tests
  [VarDumper] display the method we're in when dumping stack traces
  [HttpClient] Retry safe requests when then fail before the body arrives
  [Console] Rename some methods related to redraw frequency
  Avoid using of kernel after shutdown
  Simplify PHP CS Fixer configuration
  [PropertyInfo] Fixed type extraction for nullable collections of non-nullable elements
  [FrameworkBundle] [HttpKernel] fixed correct EOL and EOM month
  Fix CS
  [Serializer] Fix property name usage for denormalization
  Name test accordingly to the tested class
  Fix MockFileSessionStorageTest::sessionDir being used after it's unset
  [Security] Fix SwitchUserToken wrongly deauthenticated
  Supporting Bootstrap 4 custom switches
  Add new Form WeekType
  bumped Symfony version to 4.3.7
  ...
2019-11-05 18:15:52 +01:00
Nicolas Grekas
d056c17286 minor #34188 [PhpUnitBridge] Also search for composer.phar in git root folder (MaPePeR)
This PR was squashed before being merged into the 4.4 branch.

Discussion
----------

[PhpUnitBridge] Also search for composer.phar in git root folder

| Q             | A
| ------------- | ---
| Branch?       | 4.4 for features
| Bug fix?      | kindof
| New feature?  | addition to existing feature
| Deprecations? | no
| Tickets       | Related: https://github.com/symfony/symfony/issues/26637#issuecomment-390749681
| License       | MIT

When you don't have a system `composer` installation, but a `composer.phar` in the project folder, you cannot use the `simple-phpunit` script from a subfolder of the project with e.g. `../vendor/bin/simple-phpunit`.

This change also searches for the `composer.phar` in the current git root folder if it was not found at any other places to increase the likelihood of it being found.

Commits
-------

97fd204d16 [PhpUnitBridge] Also search for composer.phar in git root folder
2019-11-05 14:50:02 +01:00
MaPePeR
97fd204d16 [PhpUnitBridge] Also search for composer.phar in git root folder 2019-11-05 14:49:56 +01:00
Fabien Potencier
0c784d2879 feature #32061 Add new Form WeekType (dFayet)
This PR was merged into the 4.4 branch.

Discussion
----------

Add new Form WeekType

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

----
#### Update

After the first try, I've updated the field to have more options, and be more "straight".
The field acts like the `DateTimeType` or `TimeType`,  various fields type (pure text, html5 type, select boxes), data validation, ....

For that I took the choice to update the `DateTimeToStringTransformer` and `DateTimeToArrayTransformer` to make them work with weeks format.

I was not sure if it was better to update them or create new ones, WDYT?

Before addind tests and docs, it would be nice to have your first thoughts/comments 😊

Do you need/want a small test repo?

Commits
-------

c4a2f026e0 Add new Form WeekType
2019-11-03 12:59:10 +01:00
Fabien Potencier
ef66ad3890 feature #33954 Form theme: support Bootstrap 4 custom switches (romaricdrigon)
This PR was merged into the 4.4 branch.

Discussion
----------

Form theme: support Bootstrap 4 custom switches

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

Hello,

At the moment, Symfony form theme supports [custom checkboxes](https://getbootstrap.com/docs/4.3/components/forms/#checkboxes) through an extra class in `label_attr`.
Bootstrap4 introduced also [custom switches](https://getbootstrap.com/docs/4.3/components/forms/#switches), which has exactly the same HTML markup, but use a different class. This PR slightly modify `bootstrap_4_layout` to handle it.

![image](https://user-images.githubusercontent.com/919405/66651725-0eaa3100-ec34-11e9-8b68-94324730ac80.png)

Some reasons why I think supporting those have its place in Symfony:
 - those are getting common in UI right now, it is a common use case
 - it is complementary to normal checkboxes, and works the same way: required attribute, validation error, and so on are supported immediately
 - implementing it yourself in your form theme is actually tricky, because of the way checkbox are handled (ie., `form_label` called inside `form_widget` with a `{ widget: parent() }`). You have to overwrite the whole fragment, otherwise you get an infinite recursion.

Finally, some screenshots and code examples.

Custom checkbox (as at the moment):
![image](https://user-images.githubusercontent.com/919405/66652982-41a1f400-ec37-11e9-813f-4b39087e89e7.png)
```php
    ->add('test', CheckboxType::class, [
        'label_attr' => [
            'class' => 'checkbox-custom',
        ],
    ])
```
Custom switch (proposed):
![image](https://user-images.githubusercontent.com/919405/66652902-1919fa00-ec37-11e9-98f3-9340b01b2335.png)
```php
    ->add('test', CheckboxType::class, [
        'label_attr' => [
            'class' => 'switch-custom',
        ],
    ])
```

Commits
-------

99f59e262f Supporting Bootstrap 4 custom switches
2019-11-03 12:57:04 +01:00
Romaric Drigon
99f59e262f Supporting Bootstrap 4 custom switches 2019-11-01 16:05:06 +01:00
dFayet
c4a2f026e0 Add new Form WeekType 2019-11-01 15:48:13 +01:00
Tobias Schultze
0ea2855cdf Merge branch '4.4' 2019-11-01 13:49:41 +01:00
Ryan Weaver
e7b98880aa Adding DoctrineClearEntityManagerWorkerSubscriber to reset entity manager in worker 2019-10-31 13:26:56 -04:00
Tobias Schultze
cf10c02765 minor #34155 Revert SyncTransport simplification and fix properly (weaverryan)
This PR was squashed before being merged into the 4.4 branch (closes #34155).

Discussion
----------

Revert SyncTransport simplification and fix properly

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #34115 (and also related to #34066)
| License       | MIT
| Doc PR        | Not needed

In #34069, I made `SyncTransport` simpler by removing that transport class and making the whole things a config trick. I felt GREAT about that solution... until i realized two big problems:

1) It kills using env vars for `sync://` because we read the config values at build time - #34115 - that could probably be fixed by adding a factory, but then there is also the next problem

2) If someone routed a message to `[async, sync]` (weird, but allowed), my #34069 config solution basically maps this internally to `[async]`, which actually causes the message to *not* be handled immediately. Basically, my solution only worked if you route a message ONLY to one sync transport, but fails if you route to multiple transports.

So... this fixes things in a less-cool, but sensible way:

A) The first commit reverts #34069 exactly
B) The second commit solves the issue that we need to know if a message is being handled in a "worker" context or not, so middleware can decide if they should reset things before/after handling things. Previously we were using `ReceivedStamp` to know this. But because `SyncTransport` also "receives" the message and adds this stamp, it's not enough. To fix this, I added a new `ConsumedByWorkerStamp` that clearly means: "This message is being handled by a worker" (and so, you might want to "reset" some things before/after handling).

Thanks!

Commits
-------

01a9fefe77 Adding ConsumedByWorkerStamp as way to mark a message in a "worker context"
38f19a960c Revert "[Messenger] Removing "sync" transport and replacing it with much nicer config trick"
2019-10-31 15:10:54 +01:00
Nicolas Grekas
94beae00b1 Merge branch '4.3' into 4.4
* 4.3:
  [4.3] Remove unused local variables
2019-10-30 14:23:44 +01:00
Thomas Calvet
58161b8eec [4.3] Remove unused local variables 2019-10-30 13:58:49 +01:00
Fabien Potencier
5dc29c402f Merge branch '4.4'
* 4.4:
  [HttpFoundation][FrameworkBundle] allow configuring the session handler with a DSN
  [Validator] Add AutoMapping constraint to enable or disable auto-validation
  [DI] Fix "!tagged" related upgrade/changelog notes
2019-10-30 11:44:38 +01:00
Kévin Dunglas
f6519ce88b [Validator] Add AutoMapping constraint to enable or disable auto-validation 2019-10-30 08:50:22 +01:00
Nicolas Grekas
89901e6345 Merge branch '4.4'
* 4.4:
  Re-allow to use "tagged" in service definitions
  [HttpFoundation] Allow to not pass a parameter to Request::isMethodSafe()
  Add missing lock connection string in FrameworkExtension
  [DomCrawler] normalizeWhitespace should be true by default
  [DoctrineBridge] Auto-validation must work if no regex are passed
  Allows URL DSN in Lock and Cache
2019-10-29 15:23:29 +01:00
Kévin Dunglas
42be5f8132
Merge branch '4.3' into 4.4
* 4.3:
  [DoctrineBridge] Auto-validation must work if no regex are passed
2019-10-29 11:04:46 +01:00
Kévin Dunglas
5ed7d6c759
[DoctrineBridge] Auto-validation must work if no regex are passed 2019-10-29 11:03:05 +01:00
Nicolas Grekas
5a855408e1 Merge branch '4.4'
* 4.4:
  [OptionsResolve] Revert change in tests for a not-merged change in code
  [HttpClient] fix handling of 3xx with no Location header - ignore Content-Length when no body is expected
  [Workflow] Made the configuration more robust for the 'property' key
  [Security/Core] make NativePasswordEncoder use sodium to validate passwords when possible
  [FrameworkBundle] make SodiumVault report bad decryption key accurately
  cs fix
  [Security] Allow to set a fixed algorithm
  [Security/Core] make encodedLength computation more generic
  [Security/Core] add fast path when encoded password cannot match anything
  #30432 fix an error message
  fix paths to detect code owners
  [HttpClient] ignore the body of responses to HEAD requests
  [Validator] Ensure numeric subpaths do not cause errors on PHP 7.4
  [SecurityBundle] Fix wrong assertion
  Remove unused local variables in tests
  [Yaml][Parser] Remove the getLastLineNumberBeforeDeprecation() internal unused method
  Make sure to collect child forms created on *_SET_DATA events
  [WebProfilerBundle] Improve display in Email panel for dark theme
  do not render errors for checkboxes twice
2019-10-28 22:51:41 +01:00
Nicolas Grekas
05f7f4e147 Merge branch '4.3' into 4.4
* 4.3:
  [OptionsResolve] Revert change in tests for a not-merged change in code
  [HttpClient] fix handling of 3xx with no Location header - ignore Content-Length when no body is expected
  [Workflow] Made the configuration more robust for the 'property' key
  [Security/Core] make NativePasswordEncoder use sodium to validate passwords when possible
  #30432 fix an error message
  fix paths to detect code owners
  [HttpClient] ignore the body of responses to HEAD requests
  [Validator] Ensure numeric subpaths do not cause errors on PHP 7.4
  [SecurityBundle] Fix wrong assertion
  Remove unused local variables in tests
  [Yaml][Parser] Remove the getLastLineNumberBeforeDeprecation() internal unused method
  Make sure to collect child forms created on *_SET_DATA events
  [WebProfilerBundle] Improve display in Email panel for dark theme
  do not render errors for checkboxes twice
2019-10-28 21:30:34 +01:00
Ryan Weaver
01a9fefe77 Adding ConsumedByWorkerStamp as way to mark a message in a "worker context" 2019-10-28 13:18:09 -04:00
Nicolas Grekas
6d5c91bb47 Merge branch '3.4' into 4.3
* 3.4:
  #30432 fix an error message
  fix paths to detect code owners
  [Validator] Ensure numeric subpaths do not cause errors on PHP 7.4
  Remove unused local variables in tests
  Make sure to collect child forms created on *_SET_DATA events
  do not render errors for checkboxes twice
2019-10-28 18:07:32 +01:00
Thomas Calvet
c07cee8f61 Remove unused local variables in tests 2019-10-24 17:33:53 +02:00
Nicolas Grekas
76776943cd Merge branch '4.4'
* 4.4:
  [Debug] remove return types that break FC badly
  [Mailer][MailchimpBridge] Don't send address names if empty string
  [ExpressionLanguage][Lexer] Exponential format for number
  [Mailer] Fix SES Message Id retrieval
  Add .gitignore to .gitattributes
2019-10-22 19:21:12 +02:00
Fabien Potencier
f00390ffd7 minor #33963 Add .gitignore to .gitattributes (reedy)
This PR was merged into the 4.4 branch.

Discussion
----------

Add .gitignore to .gitattributes

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

Commits
-------

246c5fdf43 Add .gitignore to .gitattributes
2019-10-22 17:44:54 +02:00
Nicolas Grekas
34f5655089 Merge branch '4.4'
* 4.4:
  [ErrorRenderer] FlattenException cannot be final
  Fixing issue where worker-only middleware were run in all contexts
  [Messenger] Removing "sync" transport and replacing it with much nicer config trick
  Use port 465 for SES SMTP transport
  [DI] made the `%env(base64:...)%` processor able to decode base64url
  [VarDumper] improve displaying cut closures
  Set ReturnType of LockFactory to LockInterface
  [EventDispatcher] handle lazy-callable invokable
2019-10-22 17:27:40 +02:00
Ryan Weaver
290a72917b Fixing issue where worker-only middleware were run in all contexts 2019-10-22 10:54:25 -04:00
Fabien Potencier
14dda4160e Merge branch '4.4'
* 4.4:
  [HttpKernel] fix wrong removal of the just generated container dir
  bug #34024 [Routing] fix route loading with wildcard, but dir or file is empty (gseidel)
  [Routing] fix route loading with wildcard, but dir or file is empty
  bump Form component compatibility versions
  execute all compatible tests across versions
  [Mailer][MailchimpBridge] Fix NamedAddress obsolete paths
2019-10-20 14:38:27 +02:00
Christian Flothmann
d91b87f483 bump Form component compatibility versions 2019-10-19 10:26:53 +02:00
Christian Flothmann
ff904f3ac0 Merge branch '4.3' into 4.4
* 4.3:
  execute all compatible tests across versions
2019-10-19 10:25:26 +02:00
Christian Flothmann
18cc561754 execute all compatible tests across versions 2019-10-19 10:14:32 +02:00
Nicolas Grekas
99098f8662 Merge branch '4.4'
* 4.4:
  [DI] add `LazyString` for lazy computation of string values injected into services
  [Dotenv] allow LF in single-quoted strings
  Replace STDIN by php://stdin
  [Yaml] Throw exception for tagged invalid inline elements
  [Mailer] Fix Mandrill Transport API payload with named addresses
  [HttpClient] improve StreamWrapper
2019-10-18 16:28:29 +02:00
Christian Flothmann
9eddea97d8 do not render errors for checkboxes twice 2019-10-18 10:33:13 +02:00
Nicolas Grekas
365d02be77 Replace STDIN by php://stdin 2019-10-17 14:23:42 +02:00
Nicolas Grekas
d5184284a5 Merge branch '4.4'
* 4.4:
  extend legacy exception for backwards compatibility
  [HttpClient] workaround curl_multi_select() issue
  [CI] fix building local packages
  Add show-deprecations option to lint:twig command
  [HttpClient] try using php-http/discovery when nyholm/psr7 is not installed
  [FrameworkBundle] Improve the sorting of tagged services
  [HttpClient] add HttpClient::createForBaseUri()
  Increase limits for flakey appveyor tests
2019-10-15 15:30:26 +02:00
Yonel Ceruto
a676c7e4f7 Add show-deprecations option to lint:twig command 2019-10-14 08:41:58 -04:00
Reedy
246c5fdf43 Add .gitignore to .gitattributes 2019-10-12 01:35:04 +01:00
Nicolas Grekas
4e5c6ba0d3 Merge branch '4.4'
* 4.4:
  [travis] Fix build-packages script
  Add types to constructors and private/final/internal methods (Batch III)
  [HttpClient] Async HTTPlug client
  [Messenger] Allow to configure the db index on Redis transport
  [HttpClient] bugfix exploding values of headers
  [VarDumper] Made all casters final
  [VarDumper] Added a support for casting Ramsey/Uuid
  Remove useless testCanCheckIfTerminalIsInteractive test case
  [Validator] Add the missing translations for the Thai (\"th\") locale
  [Routing] gracefully handle docref_root ini setting
  [Validator] Fix ValidValidator group cascading usage
2019-10-07 14:45:39 +02:00
Nicolas Grekas
62216ea677 minor #33770 Add types to constructors and private/final/internal methods (Batch III) (derrabus)
This PR was squashed before being merged into the 4.4 branch (closes #33770).

Discussion
----------

Add types to constructors and private/final/internal methods (Batch III)

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

Followup to #33709, this time with:
* Validator
* VarDumper
* Workflow
* Yaml
* all bridges
* all bundles

That should be the final batch. 😃

Commits
-------

6493902287 Add types to constructors and private/final/internal methods (Batch III)
2019-10-07 13:33:36 +02:00
Alexander M. Turek
6493902287 Add types to constructors and private/final/internal methods (Batch III) 2019-10-07 13:33:25 +02:00
Nicolas Grekas
8375c6be4b feature #33687 Notifier Component (fabpot)
This PR was merged into the 5.0-dev branch.

Discussion
----------

Notifier Component

| Q             | A
| ------------- | ---
| Branch?       | 5.0
| Bug fix?      | no
| New feature?  | yes <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       |
| License       | MIT
| Doc PR        | not yet

Initial PR for the Notifier component. Tests missing for now.

Commits
-------

7f97a3f11f [Notifier] added the component
2019-10-05 13:34:45 +02:00
Fabien Potencier
7f97a3f11f [Notifier] added the component 2019-10-05 12:48:03 +02:00
Nicolas Grekas
3ee9dbd17b Merge branch '4.4'
* 4.4: (24 commits)
  [Console] Command::execute() should always return int - deprecate returning null
  [FrameworkBundle] Fix wrong returned status code in ConfigDebugCommand
  [AnnotationCacheWarmer] add RedirectController to annotation cache
  [WebProfilerBundle] Try to display the most useful panel by default
  Add note about deprecating the XmlEncoder::TYPE_CASE_ATTRIBUTES constant in the upgrade guide
  fix merge
  [DI] add tests loading calls with returns-clone
  [DI] dont mandate a class on inline services with a factory
  Fixed Redis Sentinel usage when only one Sentinel specified
  [EventDispatcher] Added tests for aliased events.
  Sync Twig templateExists behaviors
  Fix the :only-of-type pseudo class selector
  Deprecate the XmlEncoder::TYPE_CASE_ATTRIBUTES constant
  [Mailer] Tweak some code
  [Serializer] Add CsvEncoder tests for PHP 7.4
  Copy phpunit.xsd to a predictable path
  [WebserverBundle] Remove duplicated deprecation message
  remove duplicated test
  [Security/Http] fix parsing X509 emailAddress
  [FrameworkBundle] conflict with VarDumper < 4.4
  ...
2019-10-02 17:00:37 +02:00
Jan Schädlich
98c4f6a06c [Console] Command::execute() should always return int - deprecate returning null
- added deprecation message for non-int return value in Command::execute()
- fixed all core commands to return proper int values
- added proper return type-hint to Command::execute() method in all core Commands
2019-10-02 16:44:58 +02:00
Nicolas Grekas
d4f3b685df Merge branch '4.3' into 4.4
* 4.3:
  Sync Twig templateExists behaviors
  Fix the :only-of-type pseudo class selector
  [Serializer] Add CsvEncoder tests for PHP 7.4
  Copy phpunit.xsd to a predictable path
  [Security/Http] fix parsing X509 emailAddress
  [Serializer] fix denormalization of string-arrays with only one element #33731
  [Cache] fix known tag versions ttl check
2019-10-02 10:48:21 +02:00
Nicolas Grekas
b628210df7 Merge branch '3.4' into 4.3
* 3.4:
  Sync Twig templateExists behaviors
  Fix the :only-of-type pseudo class selector
  [Serializer] Add CsvEncoder tests for PHP 7.4
  Copy phpunit.xsd to a predictable path
  [Security/Http] fix parsing X509 emailAddress
  [Serializer] fix denormalization of string-arrays with only one element #33731
  [Cache] fix known tag versions ttl check
2019-10-02 10:36:26 +02:00
Thomas Calvet
d7682fee6c Sync Twig templateExists behaviors 2019-10-01 17:13:36 +02:00
Julien Falque
233dcb4b75
Copy phpunit.xsd to a predictable path 2019-09-30 22:33:19 +02:00
Nicolas Grekas
8f1c4f1f86 Merge branch '4.4'
* 4.4: (28 commits)
  [FrameworkBundle] Fix framework bundle lock configuration not working as expected
  [Validator] Add the missing translations for the Azerbaijani locale
  [HttpClient] workaround bad Content-Length sent by old libcurl
  [Cache] dont override native Memcached options
  Fix CS
  Fix exceptions (PDOException) error code type
  [ErrorHandler] fix return-type patching logic
  [Messenger] Added support for `from_transport` attribute on `messenger.message_handler` tag
  [ErrorHandler] don't throw deprecations for return-types by default
  ensure legacy event dispatcher compatibility
  ensure legacy event dispatcher compatibility
  Fix return type of Process::restart().
  [Cache] fail gracefully when locking is not supported
  [HttpKernel] compress files generated by the profiler
  tweak deprecation messages and changelog
  fix version in @deprecated annotation
  Use VarCloner data instead of legacy array for query params
  [Security] use LegacyEventDispatcherProxy
  [HttpClient] fix undefined index access
  [HttpClient] fix race condition when reading response with informational status
  ...
2019-09-27 00:15:24 +02:00
Fabien Potencier
7f43dc446b minor #33661 [DoctrineBridge] Use VarCloner data instead of legacy array for query params (ostrolucky)
This PR was merged into the 4.4 branch.

Discussion
----------

[DoctrineBridge] Use VarCloner data instead of legacy array for query params

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

When I implemented Symfony 4.0 support in DoctrineBundle, I have run into issue that DoctrineBridge does not return VarCloner instance here, so I had to introduce [conversion inside DoctrineBundle](af8ac792c9/DataCollector/DoctrineDataCollector.php (L135-L141)).

We need this because `WebProfilerBundle\Twig\WebProfilerExtension::dumpData()` requires this instance since Symfony 4.0. Not returning this instance here was oversight during work on Symfony 4.0. I did not contribute this sooner, because we can't remove code in DoctrineBundle until we drop Symfony 3.4 support anyways. But not doing this in Symfony 4.4 would mean having to keep transformation code not just during 3.4 LTS lifetime, but 4.4 LTS lifetime too.

Commits
-------

81c6df511d Use VarCloner data instead of legacy array for query params
2019-09-26 22:20:31 +02:00
Gabriel Ostrolucký
81c6df511d
Use VarCloner data instead of legacy array for query params 2019-09-24 23:50:47 +02:00
Nicolas Grekas
2d877b1804 Merge branch '4.4'
* 4.4:
  [Security/Http] fix typo in deprecation message
  [Security] Deprecate isGranted()/decide() on more than one attribute
  Fixed a minor typo in the UPGRADE to 5.0 guide
  Various tweaks 3.4
  Various tweaks 4.3
  [Security] Make stateful firewalls turn responses private only when needed
  [PhpUnit] Fix usleep mock return value
  Revert \"feature #33507 [WebProfiler] Deprecated intercept_redirects in 4.4 (dorumd)\"
  [TwigBundle] typo
  [TwigBundle] fix test case
  [Lock] use Predis\ClientInterface instead of Predis\Client
  Allow Twig 3
  Minor tweaks
  Fix version typo in deprecation notice
  [Form][SubmitType] Add "validate" option
  hint to the --parse-tags when parsing tags fails
  Make legacy "wrong" RFC2047 encoding apply only to one header
2019-09-24 18:05:28 +02:00
Nicolas Grekas
51a2cb6e3c Merge branch '4.3' into 4.4
* 4.3:
  [Security/Http] fix typo in deprecation message
  Various tweaks 3.4
  Various tweaks 4.3
  [PhpUnit] Fix usleep mock return value
  [Lock] use Predis\ClientInterface instead of Predis\Client
  Fix version typo in deprecation notice
  Make legacy "wrong" RFC2047 encoding apply only to one header
2019-09-24 17:57:39 +02:00
Nicolas Grekas
7031e83a8f Merge branch '3.4' into 4.3
* 3.4:
  Various tweaks 3.4
  [PhpUnit] Fix usleep mock return value
  [Lock] use Predis\ClientInterface instead of Predis\Client
2019-09-24 17:54:14 +02:00
Fabien Potencier
8198d93c5b [PhpUnit] Fix usleep mock return value 2019-09-23 21:21:37 +02:00
Nicolas Grekas
09f4eb5cd8 Allow Twig 3 2019-09-23 16:04:59 +02:00
Nicolas Grekas
80841851a7 Merge branch '4.4'
* 4.4:
  [Twig] Remove deprecated tag usage
2019-09-23 12:19:26 +02:00
Fabien Potencier
be5cd6903f bug #33662 [Twig] Remove deprecated tag usage (fabpot)
This PR was merged into the 4.4 branch.

Discussion
----------

[Twig] Remove deprecated tag usage

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

Commits
-------

cd74cb32ef [Twig] Remove deprecated tag usage
2019-09-23 11:08:11 +02:00
Fabien Potencier
cd74cb32ef [Twig] Remove deprecated tag usage 2019-09-22 21:45:18 +02:00
Nicolas Grekas
3f911bb20e Merge branch '4.4'
* 4.4:
  [PhpUnitBridge] more fixes for PHP 5.5
2019-09-19 19:42:14 +02:00
Nicolas Grekas
dee76144e5 Merge branch '4.3' into 4.4
* 4.3:
  [PhpUnitBridge] more fixes for PHP 5.5
2019-09-19 19:42:09 +02:00
Nicolas Grekas
3a520f2813 [PhpUnitBridge] more fixes for PHP 5.5 2019-09-19 19:42:00 +02:00
Nicolas Grekas
a447c4cf09 Merge branch '4.4'
* 4.4:
  [PhpUnitBridge] fix undefined variables
2019-09-19 19:32:00 +02:00
Nicolas Grekas
de346f1fe3 Merge branch '4.3' into 4.4
* 4.3:
  [PhpUnitBridge] fix undefined variables
2019-09-19 19:31:55 +02:00
Nicolas Grekas
5274edaa86 [PhpUnitBridge] fix undefined variables 2019-09-19 19:31:51 +02:00
Nicolas Grekas
47f1934899 Merge branch '4.4'
* 4.4:
  [Process] fix typo in tests
2019-09-19 19:12:13 +02:00
Nicolas Grekas
86ffecb556 Merge branch '4.3' into 4.4
* 4.3:
  [Process] fix typo in tests
2019-09-19 19:12:09 +02:00
Nicolas Grekas
a23c3ef42a Merge branch '3.4' into 4.3
* 3.4:
  [Process] fix typo in tests
2019-09-19 19:12:04 +02:00
Nicolas Grekas
5e8f047a62 Merge branch '4.4'
* 4.4:
  [PhpUnitBridge] bump cache id
2019-09-19 18:15:10 +02:00
Nicolas Grekas
bc24be6ab4 Merge branch '4.3' into 4.4
* 4.3:
  [PhpUnitBridge] bump cache id
2019-09-19 18:15:04 +02:00
Nicolas Grekas
bd7b44a08c Merge branch '3.4' into 4.3
* 3.4:
  [PhpUnitBridge] bump cache id
2019-09-19 18:14:31 +02:00
Nicolas Grekas
76d4ef83e9 [PhpUnitBridge] bump cache id 2019-09-19 18:13:23 +02:00
Nicolas Grekas
4442a3f2ac Merge branch '4.4'
* 4.4:
  Re-enable previously failing PHP 7.4 test cases
  [PhpUnitBridge] fix uninitialized variable
  [ErrorRenderer] fix Cannot use object of type ErrorException as array exception #33631
  [Twig] Add missing check
  Revert "bug #33618 fix tests depending on other components' tests (xabbuh)"
  install from source to include components tests
  Fix undefined constant and other minor issues
  [Twig] Add NotificationEmail
  ensure compatibility with type resolver 0.5
  Call AssertEquals with proper parameters
  [DependencyInjection] Allow binding iterable and tagged services
  [Twig] Fix Twig config extra keys
  fix tests depending on other components' tests
  Fix lint commands frozen on empty stdin
2019-09-19 18:03:37 +02:00
Nicolas Grekas
4c69a26d82 Merge branch '4.3' into 4.4
* 4.3:
  Re-enable previously failing PHP 7.4 test cases
  [PhpUnitBridge] fix uninitialized variable
  Revert "bug #33618 fix tests depending on other components' tests (xabbuh)"
  install from source to include components tests
2019-09-19 17:56:27 +02:00
Nicolas Grekas
627833b5e6 Merge branch '3.4' into 4.3
* 3.4:
  Re-enable previously failing PHP 7.4 test cases
  Revert "bug #33618 fix tests depending on other components' tests (xabbuh)"
  install from source to include components tests
2019-09-19 17:51:53 +02:00
Nicolas Grekas
9e4e191535 Re-enable previously failing PHP 7.4 test cases 2019-09-19 17:32:51 +02:00
Nicolas Grekas
2f6dc5eed1 [PhpUnitBridge] fix uninitialized variable 2019-09-19 16:48:53 +02:00
Fabien Potencier
5b5b7de660 [Twig] Add missing check 2019-09-19 14:48:09 +02:00
Christian Flothmann
5aa4328b08 Revert "bug #33618 fix tests depending on other components' tests (xabbuh)"
This reverts commit 47fb0900fb, reversing
changes made to 6fad4f1215.
2019-09-19 09:17:54 +02:00
Yonel Ceruto
e9e004ea07 Fix undefined constant and other minor issues 2019-09-18 14:21:39 -04:00
Christian Flothmann
9d882e8ce2 Merge branch '3.4' into 4.3
* 3.4:
  ensure compatibility with type resolver 0.5
  Call AssertEquals with proper parameters
  [Twig] Fix Twig config extra keys
  fix tests depending on other components' tests
2019-09-18 18:13:55 +02:00
Fabien Potencier
6230465838 feature #33605 [Twig] Add NotificationEmail (fabpot)
This PR was merged into the 4.4 branch.

Discussion
----------

[Twig] Add NotificationEmail

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

This PR is an extract of the new Notifier component. It's a default template to send standardized emails with the Mailer component, which can be used independently of the Notifier component.

Such emails look like the following:

<img width="618" alt="image" src="https://user-images.githubusercontent.com/47313/65018883-694cb780-d92a-11e9-940a-875ea68f9e5d.png">

More info on SpeakerDeck (be warned that names have change since my presentation): https://speakerdeck.com/fabpot/symfony-notifier?slide=7

It requires Twig 1.12 which should be released later this week.

Usage example:

```php
$email = (new NotificationEmail())
    ->from('fabien@example.com')
    ->to('fabien@example.org')
    ->subject('My first notification email via Symfony')
    ->markdown(<<<EOF
There is a **problem** on your website, you should investigate it right now.
Or just wait, the problem might solves itself automatically, we never know.
EOF
    )
    ->action('More info?', 'https://example.com/')
    ->importance('high')
    //->exception(new \LogicException('That does not work at all...'))
;
```

Instead of `markdown()`, you can also use `content()` for simple emails.

Note that you can use Inky tags in the content:

```php
$email = (new NotificationEmail())
    ->from('fabien@example.com')
    ->to('fabien@example.org')
    ->subject('My first notification email via Symfony')
    ->markdown(<<<EOF
There is a **problem** on your website, you should investigate it right now.
Or just wait, the problem might solves itself automatically, we never know.

Some Title
==========

<center>
    <button href="https://example.com/">Go?</button>
</center>

EOF
);
```

There is also the concept of a theme. By default, it uses the `default` theme,  which is an alias for the `zurb_2` theme.

You can use `setTheme()` to override the theme for a given instance, or override the themes globally via the following config in `twig.yaml`:

```yaml
twig:
    paths:
        templates/email: email
```

Then, create `templates/email/default/notification/body.html.twig` and `templates/email/default/notification/body.txt.twig`. Extends the existing template via `{% extends "@!email/default/notification/body.html.twig" %}` (note  the `!`).

Commits
-------

f6c6cf7dc9 [Twig] Add NotificationEmail
2019-09-18 17:30:43 +02:00
Fabien Potencier
f6c6cf7dc9 [Twig] Add NotificationEmail 2019-09-18 17:08:12 +02:00
Fabien Potencier
47fb0900fb bug #33618 fix tests depending on other components' tests (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

fix tests depending on other components' tests

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

Commits
-------

cd2f3a6056 fix tests depending on other components' tests
2019-09-18 16:58:24 +02:00
Nicolas Grekas
41a450b727 minor #33523 Fix lint commands frozen on empty stdin (chalasr)
This PR was merged into the 4.4 branch.

Discussion
----------

Fix lint commands frozen on empty stdin

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

Running e.g. `lint:yaml -` with no piped content makes the command hangs currently, this makes it fail instead. Also fixes the command help which we forgot to update

Commits
-------

b60e0c1454 Fix lint commands frozen on empty stdin
2019-09-18 14:09:11 +02:00
Christian Flothmann
cd2f3a6056 fix tests depending on other components' tests 2019-09-17 17:53:02 +02:00
Fabien Potencier
5d5881a9b4 Merge branch '4.4'
* 4.4:
  [Twig] Remove dead code
  Minor updates in the new Welcome page
  Add gitignore file for Symfony 4.3
  Add gitignore file for Symfony 3.4
  [Inflector] Add .gitignore file
  [Messenger] Fix exception message of failed message is dropped on retry
  Add default value for Accept header
  [HttpClient] Add .gitignore file
  [Finder] Adjust regex to correctly match comments in gitignore contents
  [Security] Removed unused argument in Test
  [Console] Get dimensions from stty on windows if possible
  [Inflector] add support 'see' to 'ee' for singularize 'fees' to 'fee'
2019-09-17 13:12:43 +02:00
Fabien Potencier
3c78fde548 Merge branch '4.3' into 4.4
* 4.3:
  [Twig] Remove dead code
  Add gitignore file for Symfony 4.3
  Add gitignore file for Symfony 3.4
  [Inflector] Add .gitignore file
  [Messenger] Fix exception message of failed message is dropped on retry
  Add default value for Accept header
  [HttpClient] Add .gitignore file
  [Finder] Adjust regex to correctly match comments in gitignore contents
  [Security] Removed unused argument in Test
  [Console] Get dimensions from stty on windows if possible
  [Inflector] add support 'see' to 'ee' for singularize 'fees' to 'fee'
2019-09-17 13:12:18 +02:00
Fabien Potencier
9072ba8b58 Merge branch '3.4' into 4.3
* 3.4:
  [Twig] Remove dead code
  Add gitignore file for Symfony 3.4
  [Inflector] Add .gitignore file
  [Security] Removed unused argument in Test
  [Console] Get dimensions from stty on windows if possible
  [Inflector] add support 'see' to 'ee' for singularize 'fees' to 'fee'
2019-09-17 13:12:06 +02:00
Fabien Potencier
786d136b5e [Twig] Remove dead code 2019-09-17 12:59:55 +02:00
Fabien Potencier
21d9320be2 Merge branch '4.4'
* 4.4:
  Adding .gitattributes to remove Tests directory from "dist"
  [Messenger] Don't deep merge routing.senders config option
2019-09-16 10:16:50 +02:00
Nyholm
ac7dc24bcb Adding .gitattributes to remove Tests directory from "dist" 2019-09-16 10:12:51 +02:00
Robin Chalas
b60e0c1454 Fix lint commands frozen on empty stdin 2019-09-12 20:34:14 +01:00
Christian Flothmann
b89b71fb26 getMetadataDriverClass() is abstract now 2019-09-11 16:07:29 +02:00
Nicolas Grekas
70963e390b Merge branch '4.4'
* 4.4:
  Update GitHub PR template
  [DI] fix related to preloading
  [HttpKernel] fix compat with legacy DebugClassLoader
  [WebProfilerBundle] Assign automatic colors to custom Stopwatch categories
  [DI] use dirname() when possible
  Simplify usage of dirname()
  Remove Google references when not needed
  Simplify usage of dirname()
  don't dump a scalar tag value on its own line
  Remove Google references when not needed
  [DI] fix Preloader
  [HttpClient] fix calling the buffer-enabling callback
  [HttpClient] fix php notice on push
  do not perform string operations on null
  Require exact match when reading from stdin with a dash
2019-09-10 19:00:13 +02:00
Fabien Potencier
c709d43878 Merge branch '4.3' into 4.4
* 4.3:
  Remove Google references when not needed
  Simplify usage of dirname()
  Remove Google references when not needed
2019-09-10 13:27:29 +02:00
Fabien Potencier
6f459b9419 Merge branch '3.4' into 4.3
* 3.4:
  Remove Google references when not needed
2019-09-10 13:25:17 +02:00
Fabien Potencier
c4d44eb089 Simplify usage of dirname() 2019-09-10 13:22:25 +02:00
Fabien Potencier
9665d7633d Remove Google references when not needed 2019-09-10 12:13:59 +02:00
Nicolas Grekas
3d14b79dad Require exact match when reading from stdin with a dash 2019-09-09 08:40:31 +02:00
Yonel Ceruto
1994ffe61a remove legacy code from STDIN commands 2019-09-08 22:38:25 -04:00
Nicolas Grekas
6b6562cf13 Merge branch '4.4'
* 4.4: (21 commits)
  [appveyor] exclude tty group
  [HttpFoundation] Add types to private/final/internal methods and constructors.
  Add types to private/final/internal methods and constructors.
  SCA: minor code tweaks
  Tweak output
  [FrameworkBundle] Added --sort option for TranslationUpdateCommand
  [HttpClient] fallbackto CURLMOPT_MAXCONNECTS when CURLMOPT_MAX_HOST_CONNECTIONS is not available
  [DI] generate preload.php file for PHP 7.4 in cache folder
  Allow version 2 of the contracts package.
  [Serializer] Allow multi-dimenstion object array in AbstractObjectNormalizer
  fixed typo
  [HttpKernel] Fix Apache mod_expires Session Cache-Control issue
  deprecated not passing dash symbol (-) to STDIN commands
  [VarDumper] display ellipsed FQCN for nested classes
  [VarDumper] Display fully qualified title
  [Mailer] Change the syntax for DSNs using failover or roundrobin
  Removed workaround introduced in 4.3
  [Console] Added support for definition list
  [OptionsResolver] Display full nested options hierarchy in exceptions
  New welcome page
  ...
2019-09-08 22:44:36 +02:00
Nicolas Grekas
81ac674b61 Merge branch '4.3' into 4.4
* 4.3:
  SCA: minor code tweaks
  [HttpClient] fallbackto CURLMOPT_MAXCONNECTS when CURLMOPT_MAX_HOST_CONNECTIONS is not available
  fixed typo
  [HttpKernel] Fix Apache mod_expires Session Cache-Control issue
  Fix getFileLinkFormat() to avoid returning the wrong URL in Profiler
2019-09-08 22:40:04 +02:00
Nicolas Grekas
5a06f94c08 Merge branch '3.4' into 4.3
* 3.4:
  SCA: minor code tweaks
  [HttpKernel] Fix Apache mod_expires Session Cache-Control issue
  Fix getFileLinkFormat() to avoid returning the wrong URL in Profiler
2019-09-08 22:39:53 +02:00
Vladimir Reznichenko
32ea449679 SCA: minor code tweaks 2019-09-08 19:26:24 +02:00
Alexander M. Turek
a1ee32039b Allow version 2 of the contracts package. 2019-09-08 12:38:38 +02:00
Yonel Ceruto
586f299ebd deprecated not passing dash symbol (-) to STDIN commands 2019-09-07 09:00:46 -04:00
Nicolas Grekas
bfdf79e25d Merge branch '4.4'
* 4.4:
  [MonologBridge] Bump min version for monolog ^1.25 and drop dead code
  [Bridge/Twig] use tty group on testLintDefaultPaths
  fix tests mocking final events
2019-09-06 18:03:39 +02:00
Nicolas Grekas
9d472c715f minor #33482 fix tests mocking final events (Tobion)
This PR was merged into the 4.4 branch.

Discussion
----------

fix tests mocking final events

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

Fix tests in 4.4 extracted from #33297

Commits
-------

637461fd51 fix tests mocking final events
2019-09-06 17:55:53 +02:00
Nicolas Grekas
654b8037f1 minor #33492 [MonologBridge] Bump min version for monolog ^1.25 and drop dead code (lyrixx)
This PR was merged into the 4.4 branch.

Discussion
----------

[MonologBridge] Bump min version for monolog ^1.25 and drop dead code

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

Commits
-------

1e19c65b67 [MonologBridge] Bump min version for monolog ^1.25 and drop dead code
2019-09-06 17:53:25 +02:00
Nicolas Grekas
108a799512 minor #33490 [Bridge/Twig] use tty group on testLintDefaultPaths (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[Bridge/Twig] use tty group on testLintDefaultPaths

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

Note that I still think we should deprecate reading from STDIN when not explicitly asked for, as explained in https://github.com/symfony/symfony/pull/33446#issuecomment-528276646

Commits
-------

3c59bb5c93 [Bridge/Twig] use tty group on testLintDefaultPaths
2019-09-06 17:52:51 +02:00
Nicolas Grekas
c327510cf0 Merge branch '4.4'
* 4.4:
  [Debug] disable new DebugClassLoader when testing the legacy one
  - updated AbstractToken to compare Roles - Updated isEqualTo method to match roles as default User implements EquatableInterface - added test case - bumped symfony/security-core to 4.4
  typos bis
  typos
  Fix more bad tests
  Fix test fixtures with deprecated method signatures.
  Fix 4.3 tests forward compat
  [Messenger] fix empty amqp body returned as false
  [Mailer] Added messenger to dev dependencies.
  [Validator] Update "suggest" section in composer.json.
  Fix routing cache broken when using generator_class
2019-09-06 16:26:53 +02:00
Grégoire Pineau
1e19c65b67 [MonologBridge] Bump min version for monolog ^1.25 and drop dead code 2019-09-06 16:22:32 +02:00
Nicolas Grekas
25a683bbeb [Debug] disable new DebugClassLoader when testing the legacy one 2019-09-06 16:02:48 +02:00
Nicolas Grekas
3c59bb5c93 [Bridge/Twig] use tty group on testLintDefaultPaths 2019-09-06 13:06:38 +02:00
Nicolas Grekas
28d331bb58 Merge branch '4.3' into 4.4
* 4.3:
  Fix more bad tests
  Fix test fixtures with deprecated method signatures.
  Fix 4.3 tests forward compat
  [Messenger] fix empty amqp body returned as false
  Fix routing cache broken when using generator_class
2019-09-06 12:03:11 +02:00
Nicolas Grekas
cc3e3d54ea Fix more bad tests 2019-09-06 11:34:03 +02:00
Tobias Schultze
637461fd51 fix tests mocking final events 2019-09-05 22:36:38 +02:00
Nicolas Grekas
2ec3e47001 Merge branch '4.4'
* 4.4:
  [HttpClient] Fix a bug preventing Server Pushes to be handled properly
  [HttpClient] fix support for 103 Early Hints and other informational status codes
  fix typo
  [DI] fix failure
  [Validator] Add ConstraintValidator::formatValue() tests
  [HttpClient] improve handling of HTTP/2 PUSH
  Fix #33427
  lint all templates from configured Twig paths if no argument was provided
  Nullable message id?
  [Validator] Only handle numeric values in DivisibleBy
  [Validator] Sync string to date behavior and throw a better exception
  Check phpunit configuration for listeners
  registering basic exception handler for late failures
  [DI] fix support for "!tagged_locator foo"
  [Mailer] Add a more precise exception
  [ErrorHandler][Bridge/PhpUnit] display deprecations for not-autoloaded classes
2019-09-03 23:48:54 +02:00
Nicolas Grekas
b0abc10617 Merge branch '4.3' into 4.4
* 4.3:
  [HttpClient] Fix a bug preventing Server Pushes to be handled properly
  [HttpClient] fix support for 103 Early Hints and other informational status codes
  [DI] fix failure
  [Validator] Add ConstraintValidator::formatValue() tests
  [HttpClient] improve handling of HTTP/2 PUSH
  Fix #33427
  [Validator] Only handle numeric values in DivisibleBy
  [Validator] Sync string to date behavior and throw a better exception
  Check phpunit configuration for listeners
  [DI] fix support for "!tagged_locator foo"
2019-09-03 23:44:11 +02:00
Nicolas Grekas
200281db40 Merge branch '3.4' into 4.3
* 3.4:
  [Validator] Add ConstraintValidator::formatValue() tests
  [Validator] Sync string to date behavior and throw a better exception
  Check phpunit configuration for listeners
2019-09-03 23:37:38 +02:00
Nicolas Grekas
a1a914ee54 bug #33430 [ErrorHandler][Bridge/PhpUnit] display deprecations for not-autoloaded classes (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[ErrorHandler][Bridge/PhpUnit] display deprecations for not-autoloaded classes

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

Commits
-------

2ba3cc0aba [ErrorHandler][Bridge/PhpUnit] display deprecations for not-autoloaded classes
2019-09-03 21:50:39 +02:00
Yonel Ceruto
baddf1d9de lint all templates from configured Twig paths if no argument was provided 2019-09-03 10:49:48 -04:00
Yonel Ceruto
55eac639c5 Nullable message id? 2019-09-03 08:18:35 -04:00
Nicolas Grekas
726999d015 bug #32903 [PHPUnit Bridge] Avoid registering listener twice (alexpott)
This PR was merged into the 3.4 branch.

Discussion
----------

[PHPUnit Bridge] Avoid registering listener twice

The listener can be registered via configuration by the user. In that
case, we do not want to add it again to the list of listeners.
Closes #31649

| 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

Commits
-------

b190536205 Check phpunit configuration for listeners
2019-09-02 22:05:28 +02:00
Alex Pott
b190536205
Check phpunit configuration for listeners
The bridge listener can be registered via configuration by the user. In that
case, we do not want to add it again to the list of listeners.
Closes #31649
2019-09-02 22:02:06 +02:00
Nicolas Grekas
d714b1c533 Merge branch '4.4'
* 4.4:
  [Bridge/PhpUnit] fix looking for composer
  cs fix
  [Mailer] fixed Mailgun support when a response is not JSON as expected
  [4.3] Cleanup tests
  Cleanup tests
  [Finder] Prevent unintentional file locks in Windows
  [FrameworkBundle] Fix about command not showing .env vars
  [DomCrawler] Fix FileFormField PHPDoc
  [Mailer] Remove the default dispatcher in AbstractTransport
  Fix #33395 PHP 5.3 compatibility
2019-09-02 20:41:34 +02:00
Nicolas Grekas
cf507a6728 Merge branch '4.3' into 4.4
* 4.3:
  [Bridge/PhpUnit] fix looking for composer
  cs fix
2019-09-02 20:34:52 +02:00
Nicolas Grekas
7c5d220f1a Merge branch '3.4' into 4.3
* 3.4:
  [Bridge/PhpUnit] fix looking for composer
2019-09-02 20:34:38 +02:00
Nicolas Grekas
62020ab91f [Bridge/PhpUnit] fix looking for composer 2019-09-02 20:32:45 +02:00
Nicolas Grekas
2ba3cc0aba [ErrorHandler][Bridge/PhpUnit] display deprecations for not-autoloaded classes 2019-09-02 17:01:21 +02:00
Nicolas Grekas
727aa7ed9e Merge branch '4.3' into 4.4
* 4.3:
  [4.3] Cleanup tests
  Cleanup tests
  [Finder] Prevent unintentional file locks in Windows
  [FrameworkBundle] Fix about command not showing .env vars
  [DomCrawler] Fix FileFormField PHPDoc
  [Mailer] Remove the default dispatcher in AbstractTransport
  Fix #33395 PHP 5.3 compatibility
2019-09-02 16:51:55 +02:00
Nicolas Grekas
d423b0f473 Merge branch '3.4' into 4.3
* 3.4:
  Cleanup tests
  [Finder] Prevent unintentional file locks in Windows
  [DomCrawler] Fix FileFormField PHPDoc
  Fix #33395 PHP 5.3 compatibility
2019-09-02 16:41:27 +02:00
Kyle
dede158e8a
Fix #33395 PHP 5.3 compatibility 2019-08-30 15:50:48 +02:00
Nicolas Grekas
45f650ebda Merge branch '4.4'
* 4.4:
  [Routing] fix static route reordering when a previous dynamic route conflicts
  conflict with HttpKernel 5
  Return null as Expire header if it was set to null
  bug #33370 Fix import statement typo in NullCache (adrienbrault)
  [ProxyManager] remove ProxiedMethodReturnExpression polyfill
  fix dumping not inlined scalar tag values
  Fix import statement typo in NullCache
  [DoctrineBridge] Allow configuring class names through methods instead of class parameters
2019-08-30 14:51:40 +02:00
Nicolas Grekas
22ed6247fa Merge branch '4.3' into 4.4
* 4.3:
  [Routing] fix static route reordering when a previous dynamic route conflicts
  Return null as Expire header if it was set to null
  bug #33370 Fix import statement typo in NullCache (adrienbrault)
  [ProxyManager] remove ProxiedMethodReturnExpression polyfill
  fix dumping not inlined scalar tag values
2019-08-30 14:49:06 +02:00
Nicolas Grekas
247815d21c Merge branch '3.4' into 4.3
* 3.4:
  Return null as Expire header if it was set to null
  [ProxyManager] remove ProxiedMethodReturnExpression polyfill
  fix dumping not inlined scalar tag values
2019-08-30 14:41:22 +02:00
Nicolas Grekas
792f93018a [ProxyManager] remove ProxiedMethodReturnExpression polyfill 2019-08-29 16:54:55 +02:00
Fabien Potencier
545d38a037 feature #33319 Allow configuring class names through methods instead of class parameters in Doctrine extensions (alcaeus)
This PR was merged into the 4.4 branch.

Discussion
----------

Allow configuring class names through methods instead of class parameters in Doctrine extensions

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | yes
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

While removing class parameters for DoctrineBundle 2.0 (see https://github.com/doctrine/DoctrineBundle/issues/630), I noticed that the DoctrineExtension still requires them. This PR adds a new method that keeps legacy behaviour, but will dropped in Symfony 5. Extending classes (mainly DoctrineBundle and DoctrineMongoDBBundle) must implement this method themselves to return the appropriate class names instead of declaring them as class parameters in their service configuration. I'll create a separate for the master branch to make this method abstract in 5.0.

The cache driver class names are not being replaced in this PR, as we're dropping support for `doctrine/cache` in DoctrineBundle 2.0. A separate PR will be created to handle those deprecations and to clean up the code.

Commits
-------

b53d8ccfc1 [DoctrineBridge] Allow configuring class names through methods instead of class parameters
2019-08-27 09:59:14 +02:00
Andreas Braun
b53d8ccfc1
[DoctrineBridge] Allow configuring class names through methods instead of class parameters 2019-08-27 09:49:29 +02:00
Fabien Potencier
c6142c6c5a Merge branch 'pull/33285'
* pull/33285:
  remove deprecated global resource dir and kernel.root_dir
2019-08-27 08:54:46 +02:00
Nicolas Grekas
23fac65a3c Merge branch '4.4'
* 4.4:
  Add return-types with help from DebugClassLoader in the CI
  do not mock removed getPublicDir() method
  [Bridge/Doctrine] fix review
  [ErrorHandler] make DebugClassLoader able to add return type declarations
2019-08-26 15:40:31 +02:00
Nicolas Grekas
a6e75fd84d Merge branch '4.3' into 4.4
* 4.3:
  [Bridge/Doctrine] fix review
2019-08-26 13:29:32 +02:00
Nicolas Grekas
861b483d83 Merge branch '3.4' into 4.3
* 3.4:
  [Bridge/Doctrine] fix review
2019-08-26 13:29:20 +02:00
Nicolas Grekas
0a00af2b77 [Bridge/Doctrine] fix review 2019-08-26 13:01:58 +02:00
Nicolas Grekas
b38a717d78 Merge branch '4.4'
* 4.4: (28 commits)
  fix merge
  [SecurityBundle] fix return type declarations
  [BrowserKit] fix return type declarations
  [PropertyInfo] fix return type declarations
  [Bridge/Doctrine] fix return type declarations
  [Form] fix return type declarations
  [Console] fix return type declarations
  [Intl] fix return type declarations
  [Templating] fix return type declarations
  [DomCrawler] fix return type declarations
  [Validator] fix return type declarations
  [Process] fix return type declarations
  [Workflow] fix return type declarations
  [Cache] fix return type declarations
  [Serializer] fix return type declarations
  [Translation] fix return type declarations
  [DI] fix return type declarations
  [Config] fix return type declarations
  [HttpKernel] Fix return type declarations
  [Security] Fix return type declarations
  ...
2019-08-26 11:05:36 +02:00
Nicolas Grekas
089097046b Merge branch '4.3' into 4.4
* 4.3: (23 commits)
  fix merge
  [SecurityBundle] fix return type declarations
  [BrowserKit] fix return type declarations
  [PropertyInfo] fix return type declarations
  [Bridge/Doctrine] fix return type declarations
  [Form] fix return type declarations
  [Console] fix return type declarations
  [Intl] fix return type declarations
  [Templating] fix return type declarations
  [DomCrawler] fix return type declarations
  [Validator] fix return type declarations
  [Process] fix return type declarations
  [Workflow] fix return type declarations
  [Cache] fix return type declarations
  [Serializer] fix return type declarations
  [Translation] fix return type declarations
  [DI] fix return type declarations
  [Config] fix return type declarations
  [HttpKernel] Fix return type declarations
  [Security] Fix return type declarations
  ...
2019-08-26 11:00:56 +02:00
Nicolas Grekas
74b2802197 Merge branch '3.4' into 4.3
* 3.4: (21 commits)
  [SecurityBundle] fix return type declarations
  [BrowserKit] fix return type declarations
  [PropertyInfo] fix return type declarations
  [Bridge/Doctrine] fix return type declarations
  [Form] fix return type declarations
  [Console] fix return type declarations
  [Intl] fix return type declarations
  [Templating] fix return type declarations
  [DomCrawler] fix return type declarations
  [Validator] fix return type declarations
  [Process] fix return type declarations
  [Workflow] fix return type declarations
  [Cache] fix return type declarations
  [Serializer] fix return type declarations
  [Translation] fix return type declarations
  [DI] fix return type declarations
  [Config] fix return type declarations
  [HttpKernel] Fix return type declarations
  [Security] Fix return type declarations
  [Routing] Fix return type declarations
  ...
2019-08-26 10:26:39 +02:00
Nicolas Grekas
5f3b4b616b [Bridge/Doctrine] fix return type declarations 2019-08-26 09:52:58 +02:00
Alexander M. Turek
70feaa407e [Translation] fix return type declarations 2019-08-26 09:52:58 +02:00
Fabien Potencier
0cc705bf7d [TwigBridge] Throw an exception when one uses email as a context variable in a TemplatedEmail 2019-08-25 09:13:08 +02:00
Roland Franssen
9cbd0e8809
[PhpUnitBridge] Bump SYMFONY_PHPUNIT_VERSION 2019-08-24 11:13:20 +02:00
Nicolas Grekas
9ce1f02501 Merge branch '4.4'
* 4.4:
  Add more return types after fixing a typo in my script
2019-08-23 14:18:57 +02:00
Nicolas Grekas
65d942010c Add more return types after fixing a typo in my script 2019-08-23 14:16:45 +02:00
Nicolas Grekas
d400aeb4f5 Merge branch '4.4'
* 4.4:
  Add return types to internal & magic methods when possible
  fixed CSC
  Add Address::fromString
  [DomCrawler] Added Crawler::matches(), ::closest(), ::outerHtml()
2019-08-22 15:39:30 +02:00
Nicolas Grekas
962dcfeed0 Add return types to internal & magic methods when possible 2019-08-22 15:18:41 +02:00
Nicolas Grekas
a84a7f0206 Merge branch '4.4'
* 4.4:
  fix deps=low
  [VarExporter] fix support for PHP 7.4
  Use PHP 7.4 on deps=low
2019-08-22 10:40:55 +02:00
Nicolas Grekas
1981f06c88 Merge branch '4.3' into 4.4
* 4.3:
  fix deps=low
  [VarExporter] fix support for PHP 7.4
  Use PHP 7.4 on deps=low
2019-08-22 10:37:03 +02:00
Nicolas Grekas
0a25ccab8e fix deps=low 2019-08-22 10:16:11 +02:00
Nicolas Grekas
3979caf6ab Merge branch '3.4' into 4.3
* 3.4:
  Use PHP 7.4 on deps=low
2019-08-22 09:51:06 +02:00
Nicolas Grekas
21b87024f0 Use PHP 7.4 on deps=low 2019-08-22 08:53:14 +02:00
Tobias Schultze
9ffa2e3a67 remove deprecated global resource dir and kernel.root_dir 2019-08-21 18:47:38 +02:00
Nicolas Grekas
b2ccf617c8 fix tests 2019-08-21 17:56:53 +02:00
Nicolas Grekas
f83ebd49b6 minor #33154 Parameter type leftovers (derrabus)
This PR was merged into the 5.0-dev branch.

Discussion
----------

Parameter type leftovers

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

Commits
-------

34eda04866 Added more parameter type declarations.
2019-08-21 17:54:28 +02:00
Nicolas Grekas
b390ed7d88 Merge branch '4.4'
* 4.4:
  Fixed tests on the Security and Form components
  Add return types to tests and final|internal|private methods
2019-08-21 17:37:45 +02:00
Alexander M. Turek
c39fd9c973 Fixed tests on the Security and Form components 2019-08-21 17:17:31 +02:00
Alexander M. Turek
34eda04866 Added more parameter type declarations. 2019-08-21 17:16:25 +02:00
Nicolas Grekas
fc186bb78f Add return types to tests and final|internal|private methods 2019-08-21 17:14:41 +02:00
Alexander M. Turek
44ed90ccae Finalized all @final classes. 2019-08-21 15:47:44 +02:00
Alexander M. Turek
f30edcab65 Support for Twig 3. 2019-08-21 14:55:51 +02:00
Fabien Potencier
36a011a0ee Merge branch '4.4'
* 4.4:
  Removed calls to Twig\Environment::loadTemplate().
  [Intl] make polyfill classes abstract, fix edge case
  [Mime] Trim and remove line breaks from NamedAddress name arg
  deprecate support for null locales
  [TwigBridge] Mark all classes extending twig as @final
  [Mime] Remove NamedAddress
  [Messenger] remove patch release BC layer of durable and expiring delay
2019-08-21 14:05:09 +02:00
Alexander M. Turek
ea9e375b0b Removed calls to Twig\Environment::loadTemplate(). 2019-08-21 13:24:25 +02:00
Fabien Potencier
451daa0b06 feature #33269 [TwigBridge] Mark all classes extending twig as @final (fabpot)
This PR was merged into the 4.4 branch.

Discussion
----------

[TwigBridge] Mark all classes extending twig as @final

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | yes-ish
| 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 | refs #33039
| License       | MIT
| Doc PR        | n/a

Classes defining extensions/nodes/node visitors/token parsers should not be changed. They should be final.

That would also help with Twig 3.0 which introduces type hints (including return types).

Commits
-------

d657459a5f [TwigBridge] Mark all classes extending twig as @final
2019-08-21 10:34:41 +02:00
Fabien Potencier
d657459a5f [TwigBridge] Mark all classes extending twig as @final 2019-08-21 09:28:19 +02:00
Fabien Potencier
eb7d74e6c5 [Mime] Remove NamedAddress 2019-08-21 09:13:01 +02:00
Nicolas Grekas
6f303b4fed [5.0] Add return types on internal|final|private methods 2019-08-20 23:44:01 +02:00
Nicolas Grekas
0fa6ef1826 Merge branch '4.4'
* 4.4:
  [4.4] Add return types on internal|final|private methods (bis)
  [Ldap] Add missing LdapUser::setPassword()
  Add types to roting and DI configuration traits.
2019-08-20 23:41:37 +02:00
Nicolas Grekas
23faee406f [4.4] Add return types on internal|final|private methods (bis) 2019-08-20 23:22:06 +02:00
Nicolas Grekas
4036357150 Merge branch '4.4'
* 4.4:
  some backports from master
  Add return types to internal|final|private methods
  [HttpFoundation] Precalculate session expiry timestamp
2019-08-20 18:53:57 +02:00
Nicolas Grekas
32116184d7 Add return types to internal|final|private methods 2019-08-20 17:32:53 +02:00
Nicolas Grekas
4bffa04271 fix test 2019-08-20 16:56:01 +02:00
Nicolas Grekas
322da9df6c Merge branch '4.4'
* 4.4:
  cs fix
  Fix inconsistent return points.
  [Config] Add handling for ignored keys in ArrayNode::mergeValues.
  Fix inconsistent return points.
  [Security/Core] UserInterface::getPassword() can return null
  cs fix
  cs fix
  Fix missing exporter in PHPUnit constraint poylfill
  added `Process::getLastOutputTime()` method
  [Router] Fix TraceableUrlMatcher behaviour with trailing slash
  [HttpKernel] Remove outdated docblock comment
  Fix handling for session parameters
  Revert "bug #33092 [DependencyInjection] Improve an exception message (fabpot)"
2019-08-20 16:46:00 +02:00
Nicolas Grekas
225bf41e3b Merge branch '4.3' into 4.4
* 4.3:
  cs fix
  Fix inconsistent return points.
  [Config] Add handling for ignored keys in ArrayNode::mergeValues.
  Fix inconsistent return points.
  [Security/Core] UserInterface::getPassword() can return null
  [Router] Fix TraceableUrlMatcher behaviour with trailing slash
  Revert "bug #33092 [DependencyInjection] Improve an exception message (fabpot)"
2019-08-20 16:44:19 +02:00
Nicolas Grekas
5ec6ff378b cs fix 2019-08-20 16:41:44 +02:00
Alexander M. Turek
c26c53596e Fix inconsistent return points. 2019-08-20 16:27:59 +02:00
Nicolas Grekas
aefbc93a07 Merge branch '3.4' into 4.3
* 3.4:
  Fix inconsistent return points.
  [Security/Core] UserInterface::getPassword() can return null
  [Router] Fix TraceableUrlMatcher behaviour with trailing slash
2019-08-20 16:07:54 +02:00
Nicolas Grekas
8069b58299 minor #33252 Fix inconsistent return points (derrabus)
This PR was merged into the 3.4 branch.

Discussion
----------

Fix inconsistent return points

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #17201 in preparation for #33228
| License       | MIT
| Doc PR        | N/A

Inconsistent return points in methods prevent adding return types. I thought, I'll give it a try and fix them. After this PR, PhpStorm's inspection still finds 39 issues, but as far as I can tell, they're either false positives or fixture code.

Commits
-------

f5b6ee9de1 Fix inconsistent return points.
2019-08-20 15:34:30 +02:00
Alexander M. Turek
f5b6ee9de1 Fix inconsistent return points. 2019-08-20 15:31:17 +02:00
Nicolas Grekas
a2ef397ea3 Merge branch '4.3' into 4.4
* 4.3:
  cs fix
  cs fix
  [HttpKernel] Remove outdated docblock comment
  Fix handling for session parameters
2019-08-20 14:49:24 +02:00
Nicolas Grekas
2c1f349602 Merge branch '3.4' into 4.3
* 3.4:
  cs fix
  [HttpKernel] Remove outdated docblock comment
2019-08-20 14:49:02 +02:00
Nicolas Grekas
55a484dc20 cs fix 2019-08-20 14:35:37 +02:00
Andreas Braun
b78c5cb1a6
Fix missing exporter in PHPUnit constraint poylfill 2019-08-20 12:03:00 +02:00
Nicolas Grekas
c12e9f9d9d Merge branch '4.4'
* 4.4:
  [Monolog] Fixed ElasticsearchLogstashHandler with monolog 2+
  [DI] add return-types to generated containers
  Typo - Fix bad classnames in Exceptions docblocks
  [Ldap] Make LdapUser implement EquatableInterface
2019-08-19 22:01:34 +02:00
Grégoire Pineau
1f4ca61408 [Monolog] Fixed ElasticsearchLogstashHandler with monolog 2+ 2019-08-19 17:50:03 +02:00
Fabien Potencier
6fd929ea31 Merge branch '4.4'
* 4.4:
  [Mailer] simplified the way TLS/SSL/StartTls work
  [VarDumper] Add test dump image
  Allow exchange type headers binding
  Add types to private and final methods.
  [Messenger] InMemoryTransport handle acknowledged and rejected messages
  [Intl] Validate region preferred alpha code mapping
  Added ErrorHandler::call() method utility to turns any PHP warnings into `\ErrorException`
  [Intl] Full alpha3 language support
  [Monolog] Added ElasticsearchLogstashHandler
2019-08-19 12:49:00 +02:00
Fabien Potencier
bc79cfe003 feature #32360 [Monolog] Added ElasticsearchLogstashHandler (lyrixx)
This PR was merged into the 4.4 branch.

Discussion
----------

[Monolog] Added ElasticsearchLogstashHandler

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

This PR was initially [submitted on Monolog](https://github.com/Seldaek/monolog/pull/1334).
It has been refused , but Jordi suggested to add it to the symfony bridge. So here we go :)

---

ATM, there are few options to push log to Elastic Stack in order to play with them:

* install logstash and use a Gelf handler. It works but you have to install logstash and configure it. Not an easy task. More over, it need an extra PHP package
* use the ES handler: It does not play well with context and extra: Kibana is not able to filter on nested object. And this handler is tightly coupled to the ElasticaFormatter formater. More over, it need an extra PHP package
* use something to parse file logs. This is really a bad idea since it involves a parsing... More over a daemon is needed to do that (file beat / logstash / you name it)

This is why I'm introducing a new Handler.

* There is not need to install anything (expect ES, of course)
* It play very well with Kibana, as it uses the Logstash format
* It requires symfony/http-client, but in a modern PHP application (SF 4.3) this dependency is already present
* It slow down a bit the application since it trigger an HTTP request for each logs. But symfony/http-client is non-blocking. If you want to use it in production, I recommend to wrap this handler in a buffer handler or a cross-finger handle to have only one HTTP call.

---

Some performance consideration en a prod env with a buffer handler + this one

* with push to ES: https://blackfire.io/profiles/f94ccf35-9f9d-4df1-bfc5-7fa75a535628/graph
* with push to ES commented: https://blackfire.io/profiles/6b66bc18-6b90-4341-963f-797f7a7a689c/graph

As you can see, as requests are made synchronously, there is no penalty on `AppKernel::Handler()` 😍! But the PHP worker has more work to do, and it's busy much more time (about X2)

I explained everything in the PHP Doc Block

---

This is what you can expect **out of the box**
![image](https://user-images.githubusercontent.com/408368/59916122-9b7b7580-941e-11e9-9a22-f56bc1d1a288.png)

Commits
-------

1587e9a4e2 [Monolog] Added ElasticsearchLogstashHandler
2019-08-18 21:27:18 +02:00
Alexander M. Turek
1b880677d4 Add types to private and final methods. 2019-08-18 11:59:28 +02:00
Nicolas Grekas
966491a794 minor #33176 [DoctrineBridge] conflict with Validator < 5.0 (xabbuh)
This PR was merged into the 5.0-dev branch.

Discussion
----------

[DoctrineBridge] conflict with Validator < 5.0

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/32264#discussion_r298790779
| License       | MIT
| Doc PR        |

Commits
-------

f8517cff5b conflict with Validator < 5.0
2019-08-16 08:26:04 +02:00
Nicolas Grekas
de5b2a9667 Merge branch '4.4'
* 4.4:
  [ProxyManagerBridge] remove false positive test case
2019-08-15 11:20:52 +02:00
Nicolas Grekas
604a69fee7 Merge branch '4.3' into 4.4
* 4.3:
  [ProxyManagerBridge] remove false positive test case
2019-08-15 11:20:30 +02:00
Nicolas Grekas
97148313fe Merge branch '3.4' into 4.3
* 3.4:
  [ProxyManagerBridge] remove false positive test case
2019-08-15 11:18:47 +02:00
Nicolas Grekas
628271db2f [ProxyManagerBridge] remove false positive test case 2019-08-15 11:17:58 +02:00
Nicolas Grekas
4828ff4829 Merge branch '4.4'
* 4.4:
  [ProxyManager] fix closure binding
  [VarDumper] fix annotations
  trigger a deprecation not a notice
  [Console] fixed a PHP notice when there is no function
  [Mailer] fixed missing property assignment
2019-08-15 10:53:52 +02:00
Nicolas Grekas
3fa8ad0859 Merge branch '4.3' into 4.4
* 4.3:
  [ProxyManager] fix closure binding
  [VarDumper] fix annotations
  [Console] fixed a PHP notice when there is no function
2019-08-15 10:52:52 +02:00
Nicolas Grekas
8aff3ad611 Merge branch '3.4' into 4.3
* 3.4:
  [ProxyManager] fix closure binding
  [VarDumper] fix annotations
  [Console] fixed a PHP notice when there is no function
2019-08-15 10:50:12 +02:00
Nicolas Grekas
31f920850a [ProxyManager] fix closure binding 2019-08-15 10:42:18 +02:00
Christian Flothmann
f8517cff5b conflict with Validator < 5.0 2019-08-15 09:40:51 +02:00
Nicolas Grekas
f08cf09785 Merge branch '4.4'
* 4.4:
  Import return annotations from vendors
  [ErrorHandler] Handle return types in DebugClassLoader
  cs fix
2019-08-14 15:44:59 +02:00
Nicolas Grekas
aa338c8b42 Import return annotations from vendors 2019-08-14 15:27:41 +02:00
Nicolas Grekas
42cad9b76e Merge branch '4.4'
* 4.4:
  Remove superfluous phpdoc tags
2019-08-14 14:45:29 +02:00
Nicolas Grekas
507223dc73 Merge branch '4.3' into 4.4
* 4.3:
  Remove superfluous phpdoc tags
2019-08-14 14:37:46 +02:00
Nicolas Grekas
b3467e641c Merge branch '3.4' into 4.3
* 3.4:
  Remove superfluous phpdoc tags
2019-08-14 14:26:46 +02:00
Philippe Segatori
608e23c09a Remove superfluous phpdoc tags 2019-08-14 13:59:53 +02:00
Nicolas Grekas
203060a9a3 Merge branch '4.4'
* 4.4:
  cs fix
  Partially Revert "Remove trailing space in all markdown files"
  [Intl] Explicit check
  Fix getMaxFilesize() returning zero
  Remove unused import
  [DI] fix docblocks in Container*
  Fixed markdown file
  [HttpFoundation] Fix deprecation message in ::isMethodSafe()
  [TwigBridge] Replaced plain doc block copies with inheritdoc.
  [DomCrawler] Fixed CHANGELOG markup
  [Intl] Cleanup unused language aliases entry
2019-08-14 13:06:01 +02:00
Nicolas Grekas
0bdf10a886 Merge branch '4.3' into 4.4
* 4.3:
  cs fix
  Partially Revert "Remove trailing space in all markdown files"
  [Intl] Explicit check
  Fix getMaxFilesize() returning zero
  [DI] fix docblocks in Container*
  Fixed markdown file
  [TwigBridge] Replaced plain doc block copies with inheritdoc.
  [DomCrawler] Fixed CHANGELOG markup
  [Intl] Cleanup unused language aliases entry
2019-08-14 13:04:46 +02:00
Nicolas Grekas
cda8a67df8 Merge branch '3.4' into 4.3
* 3.4:
  cs fix
  Partially Revert "Remove trailing space in all markdown files"
  [Intl] Explicit check
  Fix getMaxFilesize() returning zero
  [DI] fix docblocks in Container*
  Fixed markdown file
  [TwigBridge] Replaced plain doc block copies with inheritdoc.
  [Intl] Cleanup unused language aliases entry
2019-08-14 13:02:36 +02:00
Grégoire Pineau
1587e9a4e2 [Monolog] Added ElasticsearchLogstashHandler 2019-08-14 12:08:23 +02:00
Alexander M. Turek
e50d3bcf31 [TwigBridge] Replaced plain doc block copies with inheritdoc. 2019-08-13 17:56:37 +02:00
Nicolas Grekas
b64fdb7c0a Merge branch '4.4'
* 4.4:
  [HttpKernel][FrameworkBundle] Add alternative convention for bundle directories
  [DI] deprecate support for non-object services
  [Translation] XliffLintCommand: allow .xliff file extension
  [Serializer] Encode empty objects as objects, not arrays
2019-08-13 15:43:55 +02:00
Nicolas Grekas
32e0a25200 feature #32845 [HttpKernel][FrameworkBundle] Add alternative convention for bundle directories (yceruto)
This PR was squashed before being merged into the 4.4 branch (closes #32845).

Discussion
----------

[HttpKernel][FrameworkBundle] Add alternative convention for bundle directories

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

We already know that bundles must be compatible with many Symfony's versions, so it is very likely that current bundles won't be able to use this feature soon, unless they create symbolic links to support both structures.

The point is that this is already happening, so in the future when our bundles stop to support <=4.3 then you'll be sure to change the current directory structure.

We have recently added the `getPublicDir()` method in https://github.com/symfony/symfony/pull/31975, here I'm removing it in favor of hardcoding a new convention.

I've added some functional tests in which I've changed everything to this structure:
```
-- ModernBundle
   |-- config/
   |-- public/
   |-- src/
       |-- ModernBundle.php
   |-- templates/
   |-- translations/
```
WDYT?

Commits
-------

6996e1cbe2 [HttpKernel][FrameworkBundle] Add alternative convention for bundle directories
2019-08-13 15:29:11 +02:00
Yonel Ceruto
6996e1cbe2 [HttpKernel][FrameworkBundle] Add alternative convention for bundle directories 2019-08-13 15:29:02 +02:00
Nicolas Grekas
3aca99ded7 Merge branch '4.4'
* 4.4:
  cs fix
  Fix return statements
  [TwigBridge] add missing dep
  Add type declarations to private DefaultChoiceListFactory methods
  Add false type to ChoiceListFactoryInterface::createView $label argument
  Update UPGRADE guide of 4.3 for EventDispatcher
  [SecurityBundle] display the correct class name on the deprecated notice
2019-08-13 08:58:13 +02:00
Nicolas Grekas
3ec91065f7 Merge branch '4.3' into 4.4
* 4.3:
  cs fix
  Fix return statements
  [TwigBridge] add missing dep
  Add false type to ChoiceListFactoryInterface::createView $label argument
  Update UPGRADE guide of 4.3 for EventDispatcher
  [SecurityBundle] display the correct class name on the deprecated notice
2019-08-13 08:48:26 +02:00
Nicolas Grekas
7d0795d0b8 Merge branch '3.4' into 4.3
* 3.4:
  Fix return statements
  [TwigBridge] add missing dep
  Add false type to ChoiceListFactoryInterface::createView $label argument
2019-08-13 08:39:03 +02:00
Nicolas Grekas
e6b52cc48a minor #33130 Fix return statements (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

Fix return statements

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

Discovered while working on #30323
This will sync the code from 3.4 up to master, where adding return types will require these.

Commits
-------

2bc05c83b4 Fix return statements
2019-08-13 08:33:19 +02:00
Nicolas Grekas
2bc05c83b4 Fix return statements 2019-08-13 08:33:05 +02:00
Nicolas Grekas
e72ae347a7 [TwigBridge] add missing dep 2019-08-13 08:30:45 +02:00
Nicolas Grekas
2a6cd1578d Merge branch '4.4'
* 4.4:
  [WebLink] implement PSR-13 directly
2019-08-12 17:29:44 +02:00
Nicolas Grekas
b570ee1103 [WebLink] implement PSR-13 directly 2019-08-12 15:51:36 +02:00
Nicolas Grekas
e37f672c2b Merge branch '4.3' into 4.4
* 4.3:
  Bump minimal requirements
2019-08-10 23:16:51 +02:00
Jérémy Derussé
c874d3b778 Bump minimal requirements 2019-08-10 23:01:55 +02:00
Nicolas Grekas
eb13c92fb9 Merge branch '4.4'
* 4.4:
  cleanups
  Disable PHPUnit result cache on the CI
  [Security] Cleanup "Digest nonce has expired." translation
  [Translation] Highlight invalid translation status
  Added translations in validator for Serbian Cyrillic
  Added translations in validator for Serbian Latin
  [EventDispatcher] wrong Request class
  [DependencyInjection] improved exception message
2019-08-10 22:52:43 +02:00
Nicolas Grekas
50167b9509 Merge branch '4.3' into 4.4
* 4.3:
  cleanups
  Disable PHPUnit result cache on the CI
  [Security] Cleanup "Digest nonce has expired." translation
  [Translation] Highlight invalid translation status
  Added translations in validator for Serbian Cyrillic
  Added translations in validator for Serbian Latin
  [EventDispatcher] wrong Request class
  [DependencyInjection] improved exception message
2019-08-10 22:49:34 +02:00
Nicolas Grekas
9d9f5582b2 Merge branch '3.4' into 4.3
* 3.4:
  cleanups
  Disable PHPUnit result cache on the CI
  [Translation] Highlight invalid translation status
2019-08-10 22:47:15 +02:00
Nicolas Grekas
7fb7f59385 cleanups 2019-08-10 22:41:30 +02:00
Nicolas Grekas
912d7db7dd Disable PHPUnit result cache on the CI 2019-08-10 20:59:22 +02:00
Nicolas Grekas
07cf927237 Merge branch '3.4' into 4.3
* 3.4:
  Bump minimal requirements
  Use PHPUnit 8.3 on Travis when possible
2019-08-09 14:37:48 +02:00
Jérémy Derussé
41d94c3226
Bump minimal requirements 2019-08-09 13:59:47 +02:00
Nicolas Grekas
64e96e0af8 Merge branch '4.4'
* 4.4:
  Fix typo
  Fix unitialized variable in DeprecationErrorHandler
  fix Danish translations
  Support ISO 3166-1 Alpha-3 country codes
  Added the missing translations for the Slovak 'sk' locale.
  Add deprecation for method signature
  Add compatibility trait for PHPUnit constraint classes
  [HttpFoundation] Clear invalid session cookie
  Fix tst patern to handle callstack with/without return typehint
  Fix negative DateInterval
  [Validator] Allow objects implementing __toString() to be used as violation messages
  [FrameworkBundle][Routing] Private service route loaders
  [DoctrineBridge] Allow invokable event listeners
2019-08-09 13:53:04 +02:00
Nicolas Grekas
1964016d07 Merge branch '4.3' into 4.4
* 4.3:
  Fix typo
  Fix unitialized variable in DeprecationErrorHandler
  fix Danish translations
  Added the missing translations for the Slovak 'sk' locale.
  [HttpFoundation] Clear invalid session cookie
  Fix tst patern to handle callstack with/without return typehint
  Fix negative DateInterval
2019-08-09 13:48:22 +02:00
Nicolas Grekas
ece1532f27 Merge branch '3.4' into 4.3
* 3.4:
  Fix typo
  Fix unitialized variable in DeprecationErrorHandler
  fix Danish translations
  Added the missing translations for the Slovak 'sk' locale.
  Fix negative DateInterval
2019-08-09 13:45:54 +02:00
Nicolas Grekas
d851a794fc Fix typo 2019-08-09 13:44:41 +02:00
Jérémy Derussé
310e5c7549
Fix unitialized variable in DeprecationErrorHandler 2019-08-09 11:49:26 +02:00
Andreas Braun
908c8c1f15
Add compatibility trait for PHPUnit constraint classes 2019-08-09 09:31:28 +02:00
Fabien Potencier
865e4d7fdf feature #32486 [DoctrineBridge] Invokable event listeners (fancyweb)
This PR was merged into the 4.4 branch.

Discussion
----------

[DoctrineBridge] Invokable event listeners

| Q             | A
| ------------- | ---
| Branch?       | 4.4
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/11992

Invokable Doctrine entity listeners will likely be supported in the next version of the DoctrineBundle (cf https://github.com/doctrine/DoctrineBundle/pull/989).

I think it would also be great to support it for Doctrine event listeners.

Commits
-------

47e872a826 [DoctrineBridge] Allow invokable event listeners
2019-08-09 08:38:52 +02:00
Nicolas Grekas
b11129fb47 Merge branch '4.4'
* 4.4:
  Improve some URLs
  cleanup remaining param  and internal Intl FulLTransformer
  [HttpClient] fix data loss when streaming as a PHP resource
  Fix test compatibility with 4.x components
  [Cache] cs fix
2019-08-08 17:17:03 +02:00
Nicolas Grekas
bf73bd4942 Merge branch '4.3' into 4.4
* 4.3:
  Improve some URLs
  Fix test compatibility with 4.x components
  [Cache] cs fix
2019-08-08 17:13:31 +02:00
Nicolas Grekas
fdf6fc349c Merge branch '3.4' into 4.3
* 3.4:
  Improve some URLs
  Fix test compatibility with 4.x components
  [Cache] cs fix
2019-08-08 17:11:33 +02:00
Nicolas Grekas
e4bb3a24c3 minor #32800 Improve some URLs (Arman-Hosseini)
This PR was squashed before being merged into the 3.4 branch (closes #32800).

Discussion
----------

Improve some URLs

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

<!--
Replace this notice by a short README for your feature/bugfix. This will help people
understand your PR and can be used as a start for the documentation.

Additionally (see https://symfony.com/roadmap):
 - Bug fixes must be submitted against the lowest maintained branch where they apply
   (lowest branches are regularly merged to upper ones so they get the fixes too).
 - Features and deprecations must be submitted against branch 4.4.
 - Legacy code removals go to the master branch.
-->

Commits
-------

fab17a4487 Improve some URLs
2019-08-08 17:01:55 +02:00
Arman Hosseini
fab17a4487 Improve some URLs 2019-08-08 17:01:12 +02:00
Jérémy Derussé
bb3cb64e64
Fix test compatibility with 4.x components 2019-08-08 15:49:16 +02:00
Nicolas Grekas
28ae698af3 Merge branch '4.4'
* 4.4:
  Fix compatibility with PHPUnit 8
  Disable phpunit typehint patch on 4.3 branch
  Fix deprecation on 4.3
2019-08-08 14:08:24 +02:00
Nicolas Grekas
32389f8b7f Merge branch '4.3' into 4.4
* 4.3:
  Disable phpunit typehint patch on 4.3 branch
  Fix deprecation on 4.3
2019-08-08 14:07:40 +02:00
Nicolas Grekas
f773217622 minor #33000 Fix deprecations on 4.3 (jderusse)
This PR was merged into the 4.3 branch.

Discussion
----------

Fix deprecations on 4.3

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

Fix deprecations in branch 4.3
note: remaining deprecation `assertStringContainsString` will be fixed in #32977

* [ ] fix tests in branch 3.4 in #32981

Commits
-------

8fd16a6bee Fix deprecation on 4.3
2019-08-08 14:05:37 +02:00
Nicolas Grekas
0dc584e3ab Merge branch '4.4'
* 4.4:
  Remove unneeded phpdocs
2019-08-08 11:49:33 +02:00
Fabien Potencier
692a6e7495 Remove unneeded phpdocs 2019-08-08 11:37:48 +02:00
Jérémy Derussé
a5af6c4cd7
Disable phpunit typehint patch on 4.3 branch 2019-08-08 11:29:19 +02:00
Nicolas Grekas
284020d633 Merge branch '4.4'
* 4.4:
  [Debug] Improve UPGRADE files
  remove wrongly added legacy group from test
  consistently throw NotSupportException
  [HttpKernel] Clarify error handler restoring process again
  [HttpClient] Remove CURLOPT_CONNECTTIMEOUT_MS curl opt
  add missing conflict rule
  [Intl] fix nullable phpdocs and useless method visibility of internal class
  remove some more useless phpdocs
  Resilience against file_get_contents() race conditions.
  Turned return type annotations of private methods into php return types.
2019-08-08 11:20:29 +02:00
Robin Chalas
2326b80d1a [Debug] Drop compatibility layers 2019-08-08 10:01:09 +02:00
Jérémy Derussé
8fd16a6bee
Fix deprecation on 4.3 2019-08-08 00:24:12 +02:00
Alexander M. Turek
f54ca001fe Turned return type annotations of private methods into php return types. 2019-08-07 16:19:54 +02:00
Nicolas Grekas
c6409da7ef Merge branch '4.4'
* 4.4:
  fix merge
  Fix inconsistent return points.
  pass translation parameters to the trans filter
  [Mime] fixed wrong mimetype
  [ProxyManagerBridge] Polyfill for unmaintained version
  [HttpClient] Declare `$active` first to prevent weird issue
  Remove deprecated assertContains
  [HttpClient] fix tests
  SCA: dropped unused mocks, duplicate import and a function alias usage
  Added correct plural for box -> boxes
  [Config] fix test
  Fix remaining tests
  fix getName() when transport is null
  [Console] Check for ErrorHandler classes
  Improve fa (persian) translation
2019-08-07 14:07:17 +02:00
Nicolas Grekas
a0c2aa8302 Merge branch '4.3' into 4.4
* 4.3:
  Fix inconsistent return points.
  pass translation parameters to the trans filter
  [Mime] fixed wrong mimetype
  [ProxyManagerBridge] Polyfill for unmaintained version
  [HttpClient] Declare `$active` first to prevent weird issue
  Remove deprecated assertContains
  [HttpClient] fix tests
  SCA: dropped unused mocks, duplicate import and a function alias usage
  Added correct plural for box -> boxes
  [Config] fix test
  Fix remaining tests
  Improve fa (persian) translation
2019-08-07 14:00:28 +02:00
Nicolas Grekas
b406466221 bug #33010 [TwigBridge] pass translation parameters to the trans filter (xabbuh)
This PR was merged into the 4.3 branch.

Discussion
----------

[TwigBridge] pass translation parameters to the trans filter

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

This was reported by @voltel on the Symfony Slack.

Commits
-------

daac024057 pass translation parameters to the trans filter
2019-08-07 13:55:57 +02:00
Nicolas Grekas
381c995d30 Merge branch '3.4' into 4.3
* 3.4:
  Fix inconsistent return points.
  Fix remaining tests
2019-08-07 13:52:19 +02:00
Alexander M. Turek
1a83f9beed Fix inconsistent return points. 2019-08-07 13:38:48 +02:00
Christian Flothmann
daac024057 pass translation parameters to the trans filter 2019-08-07 13:18:23 +02:00
Nicolas Grekas
3cd7726d0d Merge branch '3.4' into 4.3
* 3.4:
  [ProxyManagerBridge] Polyfill for unmaintained version
  SCA: dropped unused mocks, duplicate import and a function alias usage
  [Config] fix test
  Improve fa (persian) translation
2019-08-07 10:30:22 +02:00
Jérémy Derussé
33f722d86e [ProxyManagerBridge] Polyfill for unmaintained version 2019-08-07 10:25:59 +02:00
Mario Blažek
43acda6cf4 Remove deprecated assertContains 2019-08-07 10:22:11 +02:00
Nicolas Grekas
663144702c Merge branch '4.4'
* 4.4:
  bump phpunit-bridge cache-id
  removed unneeded phpdocs
  Use assertStringContainsString when needed
  Use assert assertContainsEquals when needed
  Use assertEqualsWithDelta when required
2019-08-06 09:16:59 +02:00
Nicolas Grekas
94a0719bfc minor #32974 "An instance of X" phpdocs removal (fabpot)
This PR was merged into the 4.4 branch.

Discussion
----------

"An instance of X" phpdocs removal

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

That's #32973 on 4.4 :P

Commits
-------

7a44ed6544 removed unneeded phpdocs
2019-08-06 09:13:58 +02:00
Nicolas Grekas
34e86761f4 Merge branch '4.3' into 4.4
* 4.3:
  bump phpunit-bridge cache-id
  Use assertStringContainsString when needed
  Use assert assertContainsEquals when needed
  Use assertEqualsWithDelta when required
2019-08-06 09:11:23 +02:00
Nicolas Grekas
5f96c0dee4 Merge branch '3.4' into 4.3
* 3.4:
  bump phpunit-bridge cache-id
  Use assertStringContainsString when needed
  Use assert assertContainsEquals when needed
  Use assertEqualsWithDelta when required
2019-08-06 09:11:09 +02:00
Nicolas Grekas
08573a1830 minor #32971 Use assertStringContainsString when needed (jderusse)
This PR was merged into the 3.4 branch.

Discussion
----------

Use assertStringContainsString when needed

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

This PR replaces deprecated assertContains to comparre string by the dedicated method `assertStringContainsString`

Commits
-------

058ef39bae Use assertStringContainsString when needed
2019-08-06 08:51:27 +02:00
Nicolas Grekas
5a6f0019e2 bump phpunit-bridge cache-id 2019-08-06 08:42:17 +02:00
Nicolas Grekas
b3c9b59222 Merge branch '4.4'
* 4.4:
  Fix name of logical classes
  [Mailer] made the message logger permanent
2019-08-06 08:39:29 +02:00
Fabien Potencier
7a44ed6544 removed unneeded phpdocs 2019-08-06 08:19:29 +02:00
Jérémy Derussé
058ef39bae
Use assertStringContainsString when needed 2019-08-06 08:15:37 +02:00
Jérémy Derussé
e2c847fbbb
Fix name of logical classes 2019-08-06 01:58:57 +02:00
Nicolas Grekas
eca1f0370b Merge branch '4.4'
* 4.4:
  [Form] Fix inconsistencies
  Use Phpunit FQDN in tests comments
2019-08-05 16:25:27 +02:00
Nicolas Grekas
38143c604f Merge branch '4.3' into 4.4
* 4.3:
  [Form] Fix inconsistencies
  Use Phpunit FQDN in tests comments
2019-08-05 16:24:36 +02:00
Nicolas Grekas
ccb3a4c2d5 Merge branch '3.4' into 4.3
* 3.4:
  [Form] Fix inconsistencies
  Use Phpunit FQDN in tests comments
2019-08-05 16:23:38 +02:00
Nicolas Grekas
f4ca628fb3 Merge branch '4.4'
* 4.4:
  Minor fixes
  [Mailer] fixed dispatcher not available in Mailer
  [HttpClient] Minor fixes
  Use namespaced Phpunit classes
  Add polyfill for PhpUnit namespace
  [Messenger] Fixed ConsumeMessagesCommand configuration
  [Form] remove leftover int child phpdoc
  Support DateTimeInterface in IntlDateFormatter::format
  [PhpUnitBridge] fixed PHPUnit 8.3 compatibility: method handleError was renamed to __invoke
  [Yaml] Removed unused $nullAsTilde property
  [Security] add support for opportunistic password migrations
  [Lock] Legacy test should implement legacy interface
  fixed phpdocs
  Use PHPunit assertion
  [Intl] Order alpha2 to alpha3 mapping + phpdoc fixes
2019-08-05 16:12:50 +02:00
Jérémy Derussé
92bd9ec4b7
Use Phpunit FQDN in tests comments 2019-08-05 16:11:35 +02:00
Nicolas Grekas
5ef437b5f4 Merge branch '4.3' into 4.4
* 4.3:
  Minor fixes
  [HttpClient] Minor fixes
  Use namespaced Phpunit classes
  [Messenger] Fixed ConsumeMessagesCommand configuration
  [Form] remove leftover int child phpdoc
  Support DateTimeInterface in IntlDateFormatter::format
  [PhpUnitBridge] fixed PHPUnit 8.3 compatibility: method handleError was renamed to __invoke
  fixed phpdocs
  Use PHPunit assertion
  [Intl] Order alpha2 to alpha3 mapping + phpdoc fixes
2019-08-05 16:07:36 +02:00
Nicolas Grekas
d4df6cfd8d Merge branch '3.4' into 4.3
* 3.4:
  Minor fixes
  Use namespaced Phpunit classes
  [Form] remove leftover int child phpdoc
  Support DateTimeInterface in IntlDateFormatter::format
  [PhpUnitBridge] fixed PHPUnit 8.3 compatibility: method handleError was renamed to __invoke
  Use PHPunit assertion
2019-08-05 15:52:12 +02:00
Nicolas Grekas
0c95aad721 feature #32940 [PhpUnitBridge] Add polyfill for PhpUnit namespace (jderusse)
This PR was merged into the 4.4 branch.

Discussion
----------

[PhpUnitBridge] Add polyfill for PhpUnit namespace

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

This PR provides PhpUnit >= 6 Namespaces class.

This will simplify tests that have to be compatible with multiple version of PHPUnit

```diff
- if (class_exists('PHPUnit_Foo')) {
-   PHPUnit_Foo::bar():
- } else {
-   \PHPUnit\Foo::bar();
- }
+ \PHPUnit\Foo::bar();
```

WIP  => waiting for #32941 to be green

Commits
-------

b7520f738d Add polyfill for PhpUnit namespace
2019-08-05 15:08:36 +02:00
Jérémy Derussé
b7520f738d
Add polyfill for PhpUnit namespace 2019-08-05 15:03:15 +02:00
Thomas Calvet
47e872a826 [DoctrineBridge] Allow invokable event listeners 2019-08-05 14:08:18 +02:00
karser
0c9539fdb4 [PhpUnitBridge] fixed PHPUnit 8.3 compatibility: method handleError was renamed to __invoke 2019-08-05 12:06:06 +02:00
Nicolas Grekas
2cfc5c7dd6 [Security] add support for opportunistic password migrations 2019-08-05 10:47:47 +02:00
Christian Flothmann
2d594d513b Merge branch '4.4'
* 4.4:
  fix case
  [Messenger] Removed named parameters and replaced with `?` placeholders for sqlsrv compatibility
  [FrameworkBundle] Detect indirect env vars in routing
  [Form] type cannot be a FormTypeInterface anymore
  [HttpClient] use "idle" instead of "inactivity" when telling about the timeout option
  Create mailBody with only attachments part present
  Remove calls to deprecated function assertAttributeX
  [PhpUnitBridge] make the bridge act as a polyfill for newest PHPUnit features
  [Intl] Order alpha2 to alpha3 mapping
  [Routing] added a warning about the getRouteCollection() method
  Allow sutFqcnResolver to return array
  [Messenger] Fix incompatibility with FrameworkBundle <4.3.1
  Created alias to FlattenException to avoid BC break
  [Ldap] Add security LdapUser and provider
  [HttpFoundation] Revert getClientIp @return docblock
2019-08-05 09:40:44 +02:00
Fabien Potencier
94f588a706 Merge branch '4.3' into 4.4
* 4.3:
  [FrameworkBundle] Detect indirect env vars in routing
  Remove calls to deprecated function assertAttributeX
  [Intl] Order alpha2 to alpha3 mapping
  [Routing] added a warning about the getRouteCollection() method
  Allow sutFqcnResolver to return array
  [HttpFoundation] Revert getClientIp @return docblock
2019-08-05 07:50:38 +02:00
Fabien Potencier
16a4620d1f Merge branch '3.4' into 4.3
* 3.4:
  [FrameworkBundle] Detect indirect env vars in routing
  Remove calls to deprecated function assertAttributeX
  [Intl] Order alpha2 to alpha3 mapping
  [Routing] added a warning about the getRouteCollection() method
  Allow sutFqcnResolver to return array
  [HttpFoundation] Revert getClientIp @return docblock
2019-08-05 07:50:27 +02:00
Fabien Potencier
b74ccda2cb feature #32922 [PhpUnitBridge] make the bridge act as a polyfill for newest PHPUnit features (nicolas-grekas)
This PR was merged into the 4.4 branch.

Discussion
----------

[PhpUnitBridge] make the bridge act as a polyfill for newest PHPUnit features

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

It's been quite a tunnel these days with @jderusse but here we are: the phpunit-bridge is now a fully working polyfill for newest PHPUnit features. All related PRs have been merged as "minor" but they are now ready for prime time, hence this PR that I'd like to be merged as "feature", to make it part of the changelog of Symfony 4.4.

As of version 4.4, the `simple-phpunit` script will run an augmented version of PHPUnit, that will provide the newest assertions of PHPUnit 8 even if you happen to be running PHPUnit 4.8+ (because you still need to test on PHP 5.5, as Symfony does.)

The bridge currently provides polyfills for the methods that are needed to make our tests pass on PHP 7.4 with no deprecations:
- #32878 #32907 `assertString(Not)ContainsString(IgnoringCase)`, `assertEqualsWithDelta` and `assert(Not)ContainsEquals`
- #32875 `expectException*`, which replace `@expectedException*` annotations
- #32846 `assertIs*`, which replace `assertInternalType`
- #32865 `create(Partial)Mock`
- #32931 `assert(File|Directory)(Not)(Exists|IsReadable|IsWritable)`

More polyfills might be added if you need them. PRs welcome as usual.

As of #32882, when the `SYMFONY_PHPUNIT_REMOVE_RETURN_TYPEHINT` is set to `1`, `simple-phpunit` will also [patch](884669b83b/src/Symfony/Bridge/PhpUnit/bin/simple-phpunit.php (L149)) the source of PHPUnit 8 to remove the `void` return-type on `setUp*`/`tearDown*`. This is required when the same codebase must be tested against PHP 5.5 up to 7.4+ (as does our branch 3.4). For codebases that don't want or can't run their tests with `simple-phpunit` but want to run their PHP 5.5 tests with PHPUnit 8, the bridge provides a new `SetUpTearDownTrait` that allows a [smooth transition](c59a4d2dec/src/CachePoolTest.php (L21)) to it.

Along the path, we also created a new tool for our CI: it's now possible to submit a new polyfill on the current feature-branch (4.4 these days) and test it with a PR on another branch. See #32887 for the patch.

All these new features have been added to achieve PHP 7.4 support on branch 3.4. There are still many deprecations that need to be fixed, all tracked in #32844. It should be a pretty nice list of "good first issues". Thank you @luispabon, @tweichart, @Alexander1000 BTW.

A big specific thank you to @jderusse for the help!

Let's rock PHP 7.4, can't wait for your PRs, see you on #32844 :)

Commits
-------

271211b1f6 [PhpUnitBridge] make the bridge act as a polyfill for newest PHPUnit features
2019-08-05 07:28:35 +02:00
Nicolas Grekas
9d9e8dc6f8 Merge branch '4.4'
* 4.4:
  Polyfill assertion method on Filesystem
  [Mailer] added message events logger
  fix typo
2019-08-04 20:57:22 +02:00
Jérémy Derussé
6d625749ca
Polyfill assertion method on Filesystem 2019-08-04 20:53:51 +02:00
Nicolas Grekas
926246ba72 bug #32902 [PhpUnitBridge] Allow sutFqcnResolver to return array (VincentLanglet)
This PR was merged into the 3.4 branch.

Discussion
----------

[PhpUnitBridge] Allow sutFqcnResolver to return array

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

Phpunit handle multiple covers annotation:
```
/**
 * @covers ClassOne
 * @covers ClassTwo
 */
```

The coverage solver was only allowed to return `ClassOne` or `ClassTwo` since it was transformed to `[ClassName]`. Returning `[ClassOne, ClassTwo]` was transform to [[ClassOne, ClassTwo]]` which was creating an error with phpunit. This PR fixed this case.

Commits
-------

1451c0b915  Allow sutFqcnResolver to return array
2019-08-04 17:24:16 +02:00
Nicolas Grekas
271211b1f6 [PhpUnitBridge] make the bridge act as a polyfill for newest PHPUnit features 2019-08-04 11:09:22 +02:00
Nicolas Grekas
d336b115a1 Merge branch '4.4'
* 4.4:
  [PhpUnitBridge] fix internal annotation
  [Mime] added AbstractPart::asDebugString()
  [Mailer] added a name to the transport
  [Mailer] added missing entry in the CHANGELOG
  [FrameworkBundle] add config translator cache_dir
  [Yaml] Add flag to dump NULL as ~
2019-08-04 09:03:54 +02:00
Nicolas Grekas
f19b0abe0d [PhpUnitBridge] fix internal annotation 2019-08-04 08:59:43 +02:00
Nicolas Grekas
2c0e0cae4c Merge branch '4.4'
* 4.4:
  Remove use of ForwardCompatTrait
  Remove deprecated methods assertArraySubset
2019-08-04 00:02:11 +02:00
Nicolas Grekas
d588be203a Merge branch '4.3' into 4.4
* 4.3:
  Remove use of ForwardCompatTrait
  Remove deprecated methods assertArraySubset
2019-08-03 23:59:26 +02:00
Nicolas Grekas
64e3a327bc Merge branch '3.4' into 4.3
* 3.4:
  Remove use of ForwardCompatTrait
  Remove deprecated methods assertArraySubset
2019-08-03 23:50:52 +02:00
Jérémy Derussé
ac6242f36b
Remove use of ForwardCompatTrait 2019-08-03 23:15:25 +02:00
Nicolas Grekas
63fd05f68b Merge branch '4.4'
* 4.4:
  Inject ForwardCompatibiliy in TestCase
2019-08-03 22:43:04 +02:00
Jérémy Derussé
016bd8dd91
Inject ForwardCompatibiliy in TestCase 2019-08-03 22:14:29 +02:00
Nicolas Grekas
9ca573b3e5 Merge branch '4.4'
* 4.4:
  [PhpUnitBridge] add more assert*() polyfills
  [PhpUnitBridge] added polyfill for assertStringContainsString*()
  [PhpUnitBridge] cleanup implementation of expectException*()
2019-08-03 17:35:15 +02:00
Nicolas Grekas
54ddfd2ef0 [PhpUnitBridge] add more assert*() polyfills 2019-08-03 17:32:30 +02:00
Tobias Weichart
1602441b22 [PhpUnitBridge] added polyfill for assertStringContainsString*() 2019-08-03 16:58:01 +02:00
Nicolas Grekas
d56bc3bc18 [PhpUnitBridge] cleanup implementation of expectException*() 2019-08-03 16:33:35 +02:00
Nicolas Grekas
2041f829f9 Merge branch '4.4'
* 4.4:
  [Bridge/PhpUnit] cleanup fix
  [PhpUnitBridge] Add polyfill for methods assertNan, assertFinite and assertInfinite
  [Mailer] fixed wrong error message when connection closes unexpectedly
  [Mailer] added debug info to TransportExceptionInterface
  [Mailer] fixed error that is masked by another error
  [Mailer] fixed the order of authenticators
2019-08-03 15:36:36 +02:00
Nicolas Grekas
0868b3554b [Bridge/PhpUnit] cleanup fix 2019-08-03 15:35:38 +02:00
Nicolas Grekas
b3cf2d40c0 minor #32886 [PhpUnitBridge] Add polyfill for methods assertNan, assertFinite and assertInfinite (jderusse)
This PR was merged into the 4.4 branch.

Discussion
----------

[PhpUnitBridge] Add polyfill for methods assertNan, assertFinite and assertInfinite

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

Provide pollyfile for methods `assertFinite`, `assertInfinite` and `assertNan`

Commits
-------

3450c1705e [PhpUnitBridge] Add polyfill for methods assertNan, assertFinite and assertInfinite
2019-08-03 15:23:42 +02:00
Jérémy Derussé
3450c1705e [PhpUnitBridge] Add polyfill for methods assertNan, assertFinite and assertInfinite 2019-08-03 15:20:18 +02:00
Vincent Langlet
1451c0b915
Allow sutFqcnResolver to return array 2019-08-03 14:01:57 +02:00
Nicolas Grekas
db414a081d Merge branch '4.4'
* 4.4:
  Polyfill the method createPartialMock
2019-08-03 08:59:17 +02:00
Jérémy Derussé
a68c16d844
Polyfill the method createPartialMock 2019-08-02 23:50:44 +02:00
Nicolas Grekas
8f1d9d2c5d Merge branch '3.4' into 4.3
* 3.4:
  Run the phpunit-bridge from a PR
2019-08-02 17:55:06 +02:00
Nicolas Grekas
7bdd8ff872 Run the phpunit-bridge from a PR 2019-08-02 17:46:19 +02:00
Nicolas Grekas
d1ef28e7db Merge branch '4.4'
* 4.4:
  Fix tests
  Fix deprecated phpunit annotation
2019-08-02 15:12:48 +02:00
Nicolas Grekas
daa4e4020f Merge branch '4.3' into 4.4
* 4.3:
  Fix tests
  Fix deprecated phpunit annotation
2019-08-02 14:28:34 +02:00
Nicolas Grekas
1b56d7f04d Merge branch '3.4' into 4.3
* 3.4:
  Fix tests
  Fix deprecated phpunit annotation
2019-08-02 14:15:04 +02:00
Nicolas Grekas
69092dca65 Merge branch '4.4'
* 4.4:
  add parameter type declarations to private methods
2019-08-02 09:32:28 +02:00
Tobias Schultze
1facaad976 minor #32859 [TwigBridge] add parameter type declarations to private methods (xabbuh)
This PR was merged into the 4.4 branch.

Discussion
----------

[TwigBridge] add parameter type declarations to private methods

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

Commits
-------

5de019801c add parameter type declarations to private methods
2019-08-02 05:06:38 +02:00
Jérémy Derussé
a22a9c453f
Fix tests 2019-08-02 01:40:18 +02:00
Konstantin Myakshin
ad1dd6cee4 [DoctrineBridge] Removed RegistryInterface (closes #32394) 2019-08-02 02:00:51 +03:00
Jérémy Derussé
3a626e8778
Fix deprecated phpunit annotation 2019-08-02 00:48:42 +02:00
Nicolas Grekas
fe11c99f19 Merge branch '4.4'
* 4.4:
  cs fix
  Replace calls to setExpectedException by Pollyfill
2019-08-01 23:17:12 +02:00
Nicolas Grekas
57725de070 Merge branch '4.3' into 4.4
* 4.3:
  cs fix
  Replace calls to setExpectedException by Pollyfill
2019-08-01 23:16:36 +02:00
Nicolas Grekas
e6e68e83cc Merge branch '3.4' into 4.3
* 3.4:
  cs fix
  Replace calls to setExpectedException by Pollyfill
2019-08-01 23:16:14 +02:00
Nicolas Grekas
725187ff77 cs fix 2019-08-01 23:06:09 +02:00
Nicolas Grekas
6d499132c0 minor #32872 Replace calls to setExpectedException by Pollyfill (jderusse)
This PR was merged into the 3.4 branch.

Discussion
----------

Replace calls to setExpectedException by Pollyfill

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | need #32869 to be merged
| Fixed tickets | #32844
| License       | MIT
| Doc PR        | NA

PhpUnit method `setExceptionException` has been deprecated seens 5.7. This PR replace theme by `exceptException` provide by the pollyfill.

Commits
-------

41c02d7ead Replace calls to setExpectedException by Pollyfill
2019-08-01 23:04:58 +02:00
Jérémy Derussé
41c02d7ead
Replace calls to setExpectedException by Pollyfill 2019-08-01 22:42:50 +02:00
Nicolas Grekas
c7bade2eaf minor #32869 [PhpUnitBridge] Add polyfill for expectException* methods (jderusse)
This PR was merged into the 5.0-dev branch.

Discussion
----------

[PhpUnitBridge] Add polyfill for expectException* methods

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

this PR provides a polyfill for methods `setException`, `setExceptionMessage`, `setExceptionMessageRegExp` and `setExceptionCode`

Commits
-------

c7a8ce56dc [Bridge/PhpUnit] Add polyfill for expectException*
2019-08-01 21:58:47 +02:00
Jérémy Derussé
c7a8ce56dc [Bridge/PhpUnit] Add polyfill for expectException* 2019-08-01 21:56:43 +02:00
Nicolas Grekas
3d52d5a8f1 Merge branch '4.4'
* 4.4:
  [Bridge/Twig] fix slow dep resolution on deps=low
  [ErrorRenderer] Add DebugCommand for easy debugging and testing
  [DoctrineBridge] Deprecated RegistryInterface
2019-08-01 21:35:40 +02:00
Nicolas Grekas
181ef137e2 Merge branch '4.3' into 4.4
* 4.3:
  [Bridge/Twig] fix slow dep resolution on deps=low
2019-08-01 21:34:55 +02:00
Nicolas Grekas
f53b42b70b [Bridge/Twig] fix slow dep resolution on deps=low 2019-08-01 21:33:05 +02:00
Tobias Schultze
bb74384236 feature #32817 [DoctrineBridge] Deprecate RegistryInterface (Koc)
This PR was merged into the 4.4 branch.

Discussion
----------

[DoctrineBridge] Deprecate RegistryInterface

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

Commits
-------

151415b876 [DoctrineBridge] Deprecated RegistryInterface
2019-08-01 20:52:08 +02:00
Konstantin Myakshin
151415b876 [DoctrineBridge] Deprecated RegistryInterface 2019-08-01 20:18:10 +03:00
Nicolas Grekas
20adf46a2c [Twig/Bridge] fix perf issue on composer update with deps=low 2019-08-01 17:18:42 +02:00
Nicolas Grekas
93d206d164 Merge branch '4.4'
* 4.4:
  Fix symfony/phpunit-bridge not up to date in phpunit 4.8 test suite
  Sync "not implementing the method" deprecations messages
  Twig's namespaces can be null
2019-08-01 16:37:17 +02:00
Nicolas Grekas
f6b73e1845 Merge branch '4.3' into 4.4
* 4.3:
  Fix symfony/phpunit-bridge not up to date in phpunit 4.8 test suite
  Sync "not implementing the method" deprecations messages
2019-08-01 16:34:08 +02:00
Nicolas Grekas
c3c233c130 Merge branch '3.4' into 4.3
* 3.4:
  Fix symfony/phpunit-bridge not up to date in phpunit 4.8 test suite
2019-08-01 16:31:46 +02:00
Jérémy Derussé
a0f68aa554
Fix symfony/phpunit-bridge not up to date in phpunit 4.8 test suite 2019-08-01 16:28:16 +02:00
Nicolas Grekas
625fb52912 Merge branch '4.4'
* 4.4:
  [Yaml] fix test for PHP 7.4
  Add polyfill for TestCase::createMock()
  Skip tests that fatal-error on PHP 7.4 because of missing parent classes
2019-08-01 14:54:36 +02:00
Nicolas Grekas
76cbdbff05 Merge branch '4.3' into 4.4
* 4.3:
  [Yaml] fix test for PHP 7.4
  Add polyfill for TestCase::createMock()
  Skip tests that fatal-error on PHP 7.4 because of missing parent classes
2019-08-01 14:54:25 +02:00
Nicolas Grekas
9bfc12a577 Merge branch '3.4' into 4.3
* 3.4:
  [Yaml] fix test for PHP 7.4
  Add polyfill for TestCase::createMock()
  Skip tests that fatal-error on PHP 7.4 because of missing parent classes
2019-08-01 14:54:17 +02:00
Nicolas Grekas
abcd45a587 Add polyfill for TestCase::createMock() 2019-08-01 14:47:19 +02:00
Nicolas Grekas
41e931d772 Merge branch '4.4'
* 4.4:
  Fix assertInternalType deprecation in phpunit 9
  Fix assertInternalType deprecation in phpunit 9
  Ensure signatures for setUp|tearDown|setUpAfterClass|tearDownAfterClass methods in tests are compatible with phpunit 8.2
2019-08-01 13:53:34 +02:00
Nicolas Grekas
122a7cffb1 Merge branch '4.3' into 4.4
* 4.3:
  Fix assertInternalType deprecation in phpunit 9
  Ensure signatures for setUp|tearDown|setUpAfterClass|tearDownAfterClass methods in tests are compatible with phpunit 8.2
2019-08-01 13:51:38 +02:00
Luis Pabon
97bcb5da50 Ensure signatures for setUp|tearDown|setUpAfterClass|tearDownAfterClass methods in tests are compatible with phpunit 8.2 2019-08-01 13:15:50 +02:00
Christian Flothmann
5de019801c add parameter type declarations to private methods 2019-08-01 12:55:44 +02:00
Nicolas Grekas
14b21c7361 Merge branch '4.4'
* 4.4:
  fix tests
  Sync UPGRADE-5.0.md
  revert added type declarations
2019-08-01 12:15:53 +02:00
Nicolas Grekas
71ba5b0bd0 minor #32849 [TwigBridge] revert added type declarations (xabbuh)
This PR was merged into the 4.4 branch.

Discussion
----------

[TwigBridge] revert added type declarations

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

Even after the merge the `deps="low"` job still times out. Let's revert and debug the root cause first.

Commits
-------

d18d646113 revert added type declarations
2019-08-01 11:54:09 +02:00
Nicolas Grekas
a41e93ec96 Merge branch '4.4'
* 4.4:
  Fix assertInternalType deprecation in phpunit 9
  Micro-typo fix
  add parameter type declarations to private methods
2019-08-01 11:33:55 +02:00
Nicolas Grekas
7f62b7b8f9 Merge branch '4.3' into 4.4
* 4.3:
  Fix assertInternalType deprecation in phpunit 9
  Micro-typo fix
2019-08-01 11:21:25 +02:00
Nicolas Grekas
9babf9fdfb Merge branch '3.4' into 4.3
* 3.4:
  Fix assertInternalType deprecation in phpunit 9
  Micro-typo fix
2019-08-01 11:21:10 +02:00
Christian Flothmann
d18d646113 revert added type declarations 2019-08-01 10:07:34 +02:00
Fabien Potencier
f830226271 minor #32786 add parameter type declarations to private methods (xabbuh)
This PR was merged into the 4.4 branch.

Discussion
----------

add parameter type declarations to private methods

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

Commits
-------

1b2aaa4a06 add parameter type declarations to private methods
2019-08-01 09:48:49 +02:00
Jérémy Derussé
4c8442462a
Fix assertInternalType deprecation in phpunit 9 2019-08-01 09:40:28 +02:00
Nicolas Grekas
5f29340a8e Merge branch '4.4'
* 4.4:
  [Cache] fix cs
  Make tests support phpunit 8
  Allow Travis CI to build on PHP 7.4
  [DI] Allow dumping the container in one file instead of many files
2019-08-01 00:36:24 +02:00
Nicolas Grekas
13f7616afb Merge branch '4.3' into 4.4
* 4.3:
  [Cache] fix cs
  Make tests support phpunit 8
  Allow Travis CI to build on PHP 7.4
2019-08-01 00:33:28 +02:00
Nicolas Grekas
bce1d5bcd0 Merge branch '3.4' into 4.3
* 3.4:
  [Cache] fix cs
  Make tests support phpunit 8
2019-08-01 00:32:32 +02:00
Nicolas Grekas
8ac41983d4 [Bridge/PhpUnit] rename ForwardCompatTrait to ForwardCompatTestTrait 2019-07-31 23:57:34 +02:00
Nicolas Grekas
81af97f398 Make tests support phpunit 8 2019-07-31 23:55:24 +02:00
Nicolas Grekas
2671359bac [Bridge/PhpUnit] rename SetUpTearDownTrait to ForwardCompatTrait 2019-07-31 23:28:46 +02:00
Nicolas Grekas
e11e4a54fe [Bridge/PhpUnit] add SetUpTearDownTrait 2019-07-31 21:28:04 +02:00
Christian Flothmann
1b2aaa4a06 add parameter type declarations to private methods 2019-07-31 20:51:46 +02:00
Nicolas Grekas
7b4311791c Merge branch '4.4'
* 4.4:
  Fix travis script
  [Contracts] Fix branch alias
  minor fix for wrong case
  [HttpFoundation] Fix `getMaxFilesize`
  [Cache] fix warning on PHP 7.4
  [Console] fix warning on PHP 7.4
  let BlockingStoreInterface extend PersistingStoreInterface
  Don't add value of (default/static) objects to the signature
  fix(yml): fix comment in milti line value
  Make sure trace_level is always defined
  Ensure $request->hasSession() is always checked before calling getSession()
  Fix bindings and tagged_locator
  Recompile container when translations directory changes
2019-07-31 14:45:18 +02:00
Nicolas Grekas
5824ab8cdd bug #32703 Ensure $request->hasSession() is always checked before calling getSession() (Arman-Hosseini)
This PR was merged into the 4.4 branch.

Discussion
----------

Ensure $request->hasSession() is always checked before calling getSession()

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

Commits
-------

7b2c326719 Ensure $request->hasSession() is always checked before calling getSession()
2019-07-30 16:34:19 +02:00
Arman Hosseini
7b2c326719 Ensure $request->hasSession() is always checked before calling getSession() 2019-07-28 18:57:16 +02:00
Christian Flothmann
b9fa515e77 add parameter type declarations where possible 2019-07-28 09:06:15 +02:00
Fabien Potencier
a12edecf77 Merge branch '4.3' into 4.4
* 4.3:
  add parameter type declarations to private methods
  add missing changelog entry
  clarify error handler restoring process
  [VarDumper] cs fix
  [DI] fix perf issue with lazy autowire error messages
  Fix pluralizing "season"
2019-07-27 08:43:05 +02:00
Fabien Potencier
3e8eaebe23 Merge branch '4.2' into 4.3
* 4.2:
  add parameter type declarations to private methods
  add missing changelog entry
  clarify error handler restoring process
  [VarDumper] cs fix
2019-07-27 08:42:46 +02:00
Christian Flothmann
8157db4522 add parameter type declarations to private methods 2019-07-27 08:08:43 +02:00
Christian Flothmann
26634645d3 add parameter type declarations where possible 2019-07-27 07:59:27 +02:00
Christian Flothmann
9edb23d7e2 Merge branch '4.4'
* 4.4:
  relax some assertions to make tests forward compatible
  skip updated ChoiceType tests on older versions
  fix typo
  make tests forward compatible with DI 4.4
  fix test
  fix expected exception message regex
  Fix multiSelect ChoiceQuestion when answers have spaces
2019-07-24 23:22:41 +02:00
Christian Flothmann
327fb95828 Merge branch '4.2' into 4.3
* 4.2:
  relax some assertions to make tests forward compatible
  fix typo
2019-07-24 21:57:32 +02:00
Christian Flothmann
6085bf10c4 Merge branch '3.4' into 4.2
* 3.4:
  relax some assertions to make tests forward compatible
  fix typo
2019-07-24 21:56:58 +02:00
Christian Flothmann
c0eed67aa8 relax some assertions to make tests forward compatible 2019-07-24 21:39:07 +02:00
Christian Flothmann
3304e57233 skip updated ChoiceType tests on older versions 2019-07-24 20:32:36 +02:00
Nicolas Grekas
b3eb9720de Merge branch '4.4'
* 4.4:
  [Form][Validator] Generate accept attribute with file constraint and mime types option
  [Security/Core] align defaults for sodium with PHP 7.4
  fix inline handling when dumping tagged values
  [HttpClient] fix canceling responses in a streaming loop
  [Messenger] Flatten collection of stamps collected by the traceable middleware
  [Messenger][Profiler] Remove cutting caster to dump full objects
  [WebProfilerBundle] mark all classes as internal
  Decoupling TwigBundle and using the new ErrorRenderer mechanism
  [HttpClient] rewind streams created from strings
  [PropertyAccess] Fix PropertyAccessorCollectionTest
  [HttpClient] rewind stream when using Psr18Client
  Typo in web profiler
  [4.3] Remove dead test fixtures
  [Routing] Fix CHANGELOG
  relax some date parser patterns
  adapt tests
  [Form] Repeat preferred choices in the main list
  Avoid getting right to left style
2019-07-24 16:52:25 +02:00
Christian Flothmann
475c7a469a adapt tests 2019-07-22 22:38:49 +02:00
Nicolas Grekas
4f351f87c1 Merge branch '4.4'
* 4.4:
  [Lock] feature: lock split interface fix post-merge review
  Mute deprecations triggered from phpunit
2019-07-18 16:19:19 +02:00
Nicolas Grekas
1d3db3dd8b Merge branch '4.3' into 4.4
* 4.3:
  Mute deprecations triggered from phpunit
2019-07-18 16:18:40 +02:00
Grégoire Paris
a4ab13d567
Mute deprecations triggered from phpunit 2019-07-18 15:23:37 +02:00
Nicolas Grekas
36c306d0ed Merge branch '4.4'
* 4.4: (30 commits)
  fix merge
  fix merge
  [HttpClient] fix debug output added to stderr at shutdown
  fix cs
  [Mailer] fixed logic
  fixed missing license
  Add a new ErrorHandler component (mirror of the Debug component)
  Use mocks before replacing the error handler
  [Config] Do not use absolute path when computing the vendor freshness
  [Process] Path resolution for FCGI configuration
  Bump minimum version of symfony/phpunit-bridge
  Container*::getServiceIds() should return an array of string
  [Config][ReflectionClassResource] Use ternary instead of null coaelscing operator
  [Validator] Add missing Russian and Ukrainian translations
  [Translation] Use HTTPS and fix a url
  [Config] Fix for signatures of typed properties
  [Validator] Add missing Hungarian translations
  [Validator] Add Lithuanian translation for Range validator
  Add HTTPS to a URL
  sync translation files
  ...
2019-07-18 12:46:32 +02:00
Yonel Ceruto
b1b6e80a3d Add a new ErrorHandler component (mirror of the Debug component) 2019-07-18 09:54:35 +02:00
Nicolas Grekas
4631e9cd6c Merge branch '4.4'
* 4.4: (53 commits)
  Fix Twig 1.x compatibility
  Deprecating templateExists method
  [Translator] Improve farsi(persian) translations for Form
  [Validator] Fix Changelog for #31511
  [Lock][Console] bump lock requirement in console
  [Lock] minor: add missing alias for PersistenStoreInterface
  Improve fa translations
  Dynamic bundle assets
  [Lock] rename and deprecate Factory into LockFactory
  [Debug] Restoring back the state of the Debug component (1st step)
  Spell "triggering" properly
  [Lock] Fix tests
  Added tests to cover the possibility of having scalars as services.
  fixed CS
  [Lock] Split \"StoreInterface\" into multiple interfaces with less responsability
  [VarDumper] Let browsers trigger their own search on double CMD/CTRL + F hit
  [Validator] Allow to use property paths to get limits in range constraint
  Fix missing deprecations
  fixed tests on old PHP versions
  [FrameworkBundle] Inform the user when save_path will be ignored
  ...
2019-07-11 07:40:26 +02:00
Nicolas Grekas
2e5a8c80c6 Merge branch '4.3' into 4.4
* 4.3: (26 commits)
  Fix Twig 1.x compatibility
  [Translator] Improve farsi(persian) translations for Form
  Improve fa translations
  Spell "triggering" properly
  Added tests to cover the possibility of having scalars as services.
  fixed tests on old PHP versions
  [FrameworkBundle] Inform the user when save_path will be ignored
  fixed CS
  [SecurityBundle] Fix profiler dump for non-invokable security listeners
  fixed CS
  [Messenger] Doctrine Transport: Support setting auto_setup from DSN
  [Translator] Load plurals from po files properly
  [Serializer]: AbstractObjectNormalizer ignores the property types of discriminated classes
  [EventDispatcher] Add tag kernel.rest on 'debug.event_dispatcher' service
  [Console] Update to inherit and add licence
  Add missing test for workflow dump description
  [Intl] Remove --dev from intl compile autoloader
  [Messenger] fix publishing headers set on AmqpStamp
  Remove call to deprecated method
  [Intl] Init compile tmp volume
  ...
2019-07-10 20:47:17 +02:00
Fabien Potencier
906b3ca89a removed support for Twig 1.x 2019-07-09 13:27:30 +02:00
Grégoire Paris
cad5f9a106
Spell "triggering" properly
As a side effect, the property name matches the one in the declaration,
which was correct.
2019-07-08 19:17:40 +02:00
Fabien Potencier
40d04ec37b feature #27905 [MonologBridge] Monolog 2 compatibility (derrabus)
This PR was merged into the 5.0-dev branch.

Discussion
----------

[MonologBridge] Monolog 2 compatibility

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

See #27857 for the discussion.

This PR adds return types to methods that need to have one in Monolog 2.

Notes:
* The PR will break userland handlers that extend handlers from Monolog Bridge.
* I was unable to come up with a php 7.1 compatible version of `SwiftMailerHandler` that works with Monolog 1 and Monolog 2 because a method we're overriding now has a `string` type-hint on a parameter that wasn't there before. I've „solved“ this with a version switch, but I feel dirty doing this. 🙈  If you have a better solution, please enlighten me.

Commits
-------

ca1cfec6a9 Monolog 2 compatibility.
2019-07-08 12:12:06 +02:00
Alexander M. Turek
211b718e28 Added type-hints to LazyProxy classes and interfaces. 2019-07-06 21:02:11 +02:00
Nicolas Grekas
22437d41bd Merge branch '4.4'
* 4.4:
  [PhpUnitBridge] fix running simple-phpunit on Windows
  fixed UPGRADE
  fixed phpdocs
  fixed phpdocs
  [ErrorCatcher] Fixed some escaping in XML errors
  [Messenger] fix broken key normalization
  [FrameworkBundle] Allow creating chained cache pools by providing several adapters
  [FrameworkBundle] Use default_locale as default value for translator.fallbacks
2019-07-05 08:37:37 +02:00
Nicolas Grekas
09e3cef7a0 Merge branch '4.3' into 4.4
* 4.3:
  [PhpUnitBridge] fix running simple-phpunit on Windows
  fixed phpdocs
  [Messenger] fix broken key normalization
2019-07-05 08:35:10 +02:00
Nicolas Grekas
b78816d647 Merge branch '4.2' into 4.3
* 4.2:
  [PhpUnitBridge] fix running simple-phpunit on Windows
  fixed phpdocs
2019-07-05 08:35:01 +02:00
Nicolas Grekas
44e82520ee Merge branch '3.4' into 4.2
* 3.4:
  [PhpUnitBridge] fix running simple-phpunit on Windows
  fixed phpdocs
2019-07-05 08:33:37 +02:00
Nicolas Grekas
d9833ace32 [PhpUnitBridge] fix running simple-phpunit on Windows 2019-07-05 08:33:19 +02:00
Fabien Potencier
f065c416cf feature #32373 [Validator] Change Length::$allowEmptyString default to false & make it optional (ogizanagi)
This PR was merged into the 5.0-dev branch.

Discussion
----------

[Validator] Change Length::$allowEmptyString default to false & make it optional

| Q             | A
| ------------- | ---
| Branch?       | master <!-- see below -->
| Bug fix?      | no
| New feature?  | yes <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | yes     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | should pass after #32372    <!-- please add some, will be required by reviewers -->
| Fixed tickets | #31528   <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | ~TODO: change default value and mention it's optional~ Done. Thx @javiereguiluz

Commits
-------

26b804e82d [Validator] Change Length::$allowEmptyString default to false & make it optional
2019-07-05 06:31:41 +02:00
Nicolas Grekas
8369270059 Merge branch '4.4'
* 4.4:
  bump phpunit-bridge cache ids
2019-07-04 19:07:53 +02:00
Nicolas Grekas
2f6c7c507f Merge branch '4.3' into 4.4
* 4.3:
  bump phpunit-bridge cache ids
2019-07-04 19:07:39 +02:00
Nicolas Grekas
511fc93640 Merge branch '4.2' into 4.3
* 4.2:
  bump phpunit-bridge cache ids
2019-07-04 19:07:21 +02:00
Nicolas Grekas
e30800df2c Merge branch '3.4' into 4.2
* 3.4:
  bump phpunit-bridge cache ids
2019-07-04 19:06:45 +02:00
Nicolas Grekas
ea34d6dcf5 bump phpunit-bridge cache ids 2019-07-04 19:06:26 +02:00
Nicolas Grekas
242eecc5df Merge branch '4.4'
* 4.4:
  [Bridge/PhpUnit] fix running composer to install phpunit
  [ErrorCatcher] Pretty print JSON formatted errors
2019-07-04 18:11:08 +02:00
Nicolas Grekas
910db453f3 Merge branch '4.3' into 4.4
* 4.3:
  [Bridge/PhpUnit] fix running composer to install phpunit
2019-07-04 18:10:48 +02:00
Nicolas Grekas
1e6231b41d Merge branch '4.2' into 4.3
* 4.2:
  [Bridge/PhpUnit] fix running composer to install phpunit
2019-07-04 18:10:28 +02:00
Nicolas Grekas
e0850631fc Merge branch '3.4' into 4.2
* 3.4:
  [Bridge/PhpUnit] fix running composer to install phpunit
2019-07-04 18:09:15 +02:00
Nicolas Grekas
af850146a4 [Bridge/PhpUnit] fix running composer to install phpunit 2019-07-04 18:09:01 +02:00
Maxime Steinhausser
26b804e82d [Validator] Change Length::$allowEmptyString default to false & make it optional 2019-07-04 17:43:30 +02:00
Nicolas Grekas
155cfb273f Merge branch '4.4'
* 4.4: (33 commits)
  [DI] fix processing of regular parameter bags by MergeExtensionConfigurationPass
  [FrameworkBundle] reset cache pools between requests
  [HttpFoundation] Accept must take the lead for Request::getPreferredFormat()
  [FrameworkBundle] Allow to use the BrowserKit assertions with Panther and API Platform's test client
  Use ConnectionRegistry instead of RegistryInterface.
  Fixes windows error
  Improving the request/response format autodetection
  [Messager] Simplified MessageBus::__construct()
  [WIP][Mailer] Overwrite envelope sender and recipients from config
  [Messenger] Added more test for MessageBus
  [Mime] Updated some PHPDoc contents
  [PropertyAccess] Adds entries to CHANGELOG and UPGRADE
  fixed typo
  [FrameworkBundle] Simplified some code in the DI configuration
  [Filesystem] added missing deprecations to UPGRADE-4.3.md
  [Filesystem] depreacte calling isAbsolutePath with a null
  Fix authentication for redis transport
  only decorate when an event dispatcher was passed
  [Messenger] Added support for auto trimming of redis streams
  [FrmaeworkBundle] More simplifications in the DI configuration
  ...
2019-07-04 15:54:52 +02:00
Fabien Potencier
6128276760 minor #32351 [Security] Added type-hints to auth providers, tokens and voters (derrabus)
This PR was merged into the 5.0-dev branch.

Discussion
----------

[Security] Added type-hints to auth providers, tokens and voters

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

This PR adds type declarations to authentication providers, tokens and voters.

Commits
-------

8c46b95ec2 [Security] Added type-hints to auth providers, tokens and voters.
2019-07-04 09:59:27 +02:00
Alexander M. Turek
62abb7084c [Security] Added type-hints to user providers. 2019-07-04 01:27:08 +02:00
Alexander M. Turek
8c46b95ec2 [Security] Added type-hints to auth providers, tokens and voters. 2019-07-04 01:03:14 +02:00
Fabien Potencier
b79a1bf229 Merge branch '4.3' into 4.4
* 4.3:
  Fixes windows error
  [Messenger] Added more test for MessageBus
  fixed typo
  [Filesystem] added missing deprecations to UPGRADE-4.3.md
  Fix authentication for redis transport
  only decorate when an event dispatcher was passed
  [FrmaeworkBundle] More simplifications in the DI configuration
  Fixing validation for messenger transports retry_strategy service key
  Removed unused field.
  Remove @internal annotations for the serilize methods
  [Lock] Stores must implement `putOffExpiration`
  Annotated correct return type for getInEdges()/getOutEdges().
  deprecate the framework.templating option
2019-07-03 19:15:45 +02:00
Fabien Potencier
98c36025cd Merge branch '4.2' into 4.3
* 4.2:
  Fixes windows error
  Removed unused field.
  [Lock] Stores must implement `putOffExpiration`
  Annotated correct return type for getInEdges()/getOutEdges().
2019-07-03 19:15:34 +02:00
Fabien Potencier
02a25fe518 Merge branch '3.4' into 4.2
* 3.4:
  Fixes windows error
  Annotated correct return type for getInEdges()/getOutEdges().
2019-07-03 19:14:02 +02:00
misterx
1f8927a9a6 Fixes windows error 2019-07-03 19:13:23 +02:00
Fabien Potencier
4e32643bdf feature #31528 [Validator] Add a Length::$allowEmptyString option to reject empty strings (ogizanagi)
This PR was merged into the 4.4 branch.

Discussion
----------

[Validator] Add a Length::$allowEmptyString option to reject empty strings

| Q             | A
| ------------- | ---
| Branch?       | 4.4 <!-- see below -->
| Bug fix?      | no
| New feature?  | yes <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | yes <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | N/A   <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | Todo (change the warning on top of https://symfony.com/doc/current/reference/constraints/Length.html)

which defaults to `true` in 4.4 but will trigger a deprecation if not set explicitly
in order to make the default `false` in 5.0.

While it could be solved now thanks to #29641 by using both `@Length(min=1)` & `@NotBlank(allowNull=true)` constraints,
as expressed in https://github.com/symfony/symfony/issues/27876#issuecomment-403307783 and following comments, the `@Length(min=1)` behavior doesn't match our expectations when reading it: it feels logical to invalidate empty strings, but it actually doesn't.
Hence the proposal of making the behavior of rejecting empty strings the default in 5.0.

In my opinion, the flag could even be removed later.

Commits
-------

e113e7f812 [Validator] Add a Length::$allowEmptyString option to reject empty strings
2019-07-03 15:15:57 +02:00
Tobias Schultze
05410342f5 Merge branch '4.4' 2019-07-02 16:48:44 +02:00
Alexander M. Turek
ca1cfec6a9 Monolog 2 compatibility. 2019-07-01 11:46:50 +02:00
Maxime Steinhausser
e113e7f812 [Validator] Add a Length::$allowEmptyString option to reject empty strings
which defaults to `true` in 4.4 but will trigger a deprecation if not set explicitly
in order to make the default `false` in 5.0.
2019-07-01 09:11:48 +02:00
Fabien Potencier
191cb52902 removed @experimental annotations 2019-06-29 18:43:50 +02:00
Christian Flothmann
df3a5cbd11 add parameter type hints to the Validator component 2019-06-28 18:24:33 +02:00
Nicolas Grekas
7f7c142a3b Merge branch '4.4'
* 4.4:
  [Mailer] fixed tests on Windows
  [PhpUnitBridge] fix tests
  [Mailer] fixed error message when connecting to a stream raises an error before connect()
  [Mailer] fixed timeout type hint
  improve error messages in the event dispatcher
  [Security/Core] work around sodium_compat issue
  bumped Symfony version to 4.3.3
  updated VERSION for 4.3.2
  updated CHANGELOG for 4.3.2
  bumped Symfony version to 4.2.11
  updated VERSION for 4.2.10
  updated CHANGELOG for 4.2.10
  bumped Symfony version to 3.4.30
  updated VERSION for 3.4.29
  update CONTRIBUTORS for 3.4.29
  updated CHANGELOG for 3.4.29
  Fixed type annotation.
2019-06-27 18:53:23 +02:00
Fabien Potencier
4d8c473fd3 Merge branch '4.3' into 4.4
* 4.3:
  [Mailer] fixed tests on Windows
  [PhpUnitBridge] fix tests
  [Mailer] fixed error message when connecting to a stream raises an error before connect()
  [Mailer] fixed timeout type hint
  improve error messages in the event dispatcher
  [Security/Core] work around sodium_compat issue
  bumped Symfony version to 4.3.3
  updated VERSION for 4.3.2
  updated CHANGELOG for 4.3.2
  bumped Symfony version to 4.2.11
  updated VERSION for 4.2.10
  updated CHANGELOG for 4.2.10
  bumped Symfony version to 3.4.30
  updated VERSION for 3.4.29
  update CONTRIBUTORS for 3.4.29
  updated CHANGELOG for 3.4.29
  Fixed type annotation.
2019-06-27 18:48:03 +02:00
Nicolas Grekas
9b69dc651a [PhpUnitBridge] fix tests 2019-06-27 18:09:32 +02:00
Nicolas Grekas
01c096022c Merge branch '4.4'
* 4.4:
  Reject phpunit-bridge v5 for now
  Revert "Revert "bug #31730 [PhpUnitBridge] More accurate grouping (greg0ire)""
2019-06-26 14:22:13 +02:00
Nicolas Grekas
80e28a0acd Merge branch '4.3' into 4.4
* 4.3:
  Reject phpunit-bridge v5 for now
  Revert "Revert "bug #31730 [PhpUnitBridge] More accurate grouping (greg0ire)""
2019-06-26 14:22:07 +02:00
Nicolas Grekas
5797e7b2f2 Revert "Revert "bug #31730 [PhpUnitBridge] More accurate grouping (greg0ire)""
This reverts commit 4814fd3a4e.
2019-06-26 14:14:14 +02:00
Nicolas Grekas
28cbffcc9f Merge branch '4.4'
* 4.4:
  Revert "bug #31730 [PhpUnitBridge] More accurate grouping (greg0ire)"
2019-06-26 14:06:05 +02:00
Nicolas Grekas
204e87a4c8 Merge branch '4.3' into 4.4
* 4.3:
  Revert "bug #31730 [PhpUnitBridge] More accurate grouping (greg0ire)"
2019-06-26 14:06:01 +02:00
Nicolas Grekas
4814fd3a4e Revert "bug #31730 [PhpUnitBridge] More accurate grouping (greg0ire)"
This reverts commit 64b68d4922, reversing
changes made to 3cd795fdde.
2019-06-26 14:05:53 +02:00
Nicolas Grekas
d5b01afd13 Merge branch '4.4'
* 4.4:
  [PhpUnitBridge] Fix tests
2019-06-26 13:29:16 +02:00
Nicolas Grekas
f0a66754b8 Merge branch '4.3' into 4.4
* 4.3:
  [PhpUnitBridge] Fix tests
2019-06-26 13:29:11 +02:00
Nicolas Grekas
bca4761f37 [PhpUnitBridge] Fix tests 2019-06-26 13:29:01 +02:00
Nicolas Grekas
0c90809ebd Merge branch '4.4'
* 4.4:
  Bump phpunit-bridge
2019-06-26 12:04:44 +02:00
Nicolas Grekas
5f60bc9536 Merge branch '4.3' into 4.4
* 4.3:
  Bump phpunit-bridge
2019-06-26 12:04:36 +02:00
Nicolas Grekas
ac3ae812d3 Merge branch '4.2' into 4.3
* 4.2:
  Bump phpunit-bridge
2019-06-26 12:04:29 +02:00
Nicolas Grekas
37118bdcd6 Merge branch '3.4' into 4.2
* 3.4:
  Bump phpunit-bridge
2019-06-26 12:03:39 +02:00
Nicolas Grekas
85ac1a6dd5 Bump phpunit-bridge 2019-06-26 12:03:25 +02:00
Nicolas Grekas
f8ccc8105c Merge branch '4.4'
* 4.4: (43 commits)
  [PhpunitBridge] Read environment variable from superglobals
  [Bridge/PhpUnit] Fix PHP5.5 compat
  [PhpUnitBridge] More accurate grouping
  fixed CS
  [Form] remove comment about to-be-removed method as it is used in master by ButtonBuilder
  Extract unrecoverable exception to interface
  [FrameworkBundle] Fix calling Client::getProfile() before sending a request
  Fix type error
  [Security/Core] require libsodium >= 1.0.14
  [Workflow] re-add workflow.definition tag to workflow services
  [Security/Core] Don't use ParagonIE_Sodium_Compat
  revert #30525 due to performance penalty
  collect called listeners information only once
  [Lock] fix missing inherit docs in RedisStore
  [Messenger] fix retrying handlers using DoctrineTransactionMiddleware
  [Mailgun Mailer] fixed issue when using html body
  [Messenger] make all stamps final and mark stamp not meant to be sent
  [HttpClient] fix timing measurements with NativeHttpClient
  add return type declaration
  use proper return types in ErrorHandler and ArgumentResolver
  ...
2019-06-26 11:36:22 +02:00
Nicolas Grekas
55c0b02587 Merge branch '4.3' into 4.4
* 4.3: (34 commits)
  [PhpunitBridge] Read environment variable from superglobals
  [Bridge/PhpUnit] Fix PHP5.5 compat
  [PhpUnitBridge] More accurate grouping
  fixed CS
  Extract unrecoverable exception to interface
  [FrameworkBundle] Fix calling Client::getProfile() before sending a request
  Fix type error
  [Security/Core] require libsodium >= 1.0.14
  [Workflow] re-add workflow.definition tag to workflow services
  [Security/Core] Don't use ParagonIE_Sodium_Compat
  revert #30525 due to performance penalty
  collect called listeners information only once
  [Lock] fix missing inherit docs in RedisStore
  [Messenger] fix retrying handlers using DoctrineTransactionMiddleware
  [Mailgun Mailer] fixed issue when using html body
  [HttpClient] fix timing measurements with NativeHttpClient
  [HttpClient] fix dealing with 1xx informational responses
  add test to avoid regressions
  fix mirroring directory into parent directory
  fix typos
  ...
2019-06-26 11:30:56 +02:00
Nicolas Grekas
2dedf38b55 Merge branch '4.2' into 4.3
* 4.2:
  [Lock] fix missing inherit docs in RedisStore
  fix accessing session bags
  Add missing rendering of form help block.
2019-06-26 11:25:00 +02:00
Nicolas Grekas
4e915bd5a2 bug #31954 [PhpunitBridge] Read environment variable from superglobals (greg0ire)
This PR was merged into the 4.3 branch.

Discussion
----------

[PhpunitBridge] Read environment variable from superglobals

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

The Dotenv component has recently been switched to using superglobals
instead of putenv(). Let us support both and give priority to
superglobals.

Commits
-------

88cfcb536d [PhpunitBridge] Read environment variable from superglobals
2019-06-26 11:24:08 +02:00
Grégoire Paris
88cfcb536d [PhpunitBridge] Read environment variable from superglobals
The Dotenv component has recently been switched to using superglobals
instead of putenv(). Let us support both and give priority to
superglobals.

Closes #31857
2019-06-26 11:18:05 +02:00
Nicolas Grekas
0c9b3c08b7 [Bridge/PhpUnit] Fix PHP5.5 compat 2019-06-26 10:33:58 +02:00
Fabien Potencier
64b68d4922 bug #31730 [PhpUnitBridge] More accurate grouping (greg0ire)
This PR was squashed before being merged into the 4.3 branch (closes #31730).

Discussion
----------

[PhpUnitBridge] More accurate grouping

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

Sometimes, you cannot easily know if code was written by a vendor or
directly in the application, for instance if the code comes from a file
in the cache. In that case, it is better not to classify the deprecation
as direct or indirect.

@jmsche please test this on your application when you can, I think you might be having that issue.

Commits
-------

d9f0ba386a [PhpUnitBridge] More accurate grouping
2019-06-26 10:11:14 +02:00
Grégoire Paris
d9f0ba386a [PhpUnitBridge] More accurate grouping 2019-06-26 10:11:05 +02:00
Fabien Potencier
6437c5a0fe bug #31972 Add missing rendering of form help block. (alexsegura)
This PR was merged into the 4.2 branch.

Discussion
----------

Add missing rendering of form help block.

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

<!--
Replace this notice by a short README for your feature/bugfix. This will help people
understand your PR and can be used as a start for the documentation.

Additionally (see https://symfony.com/roadmap):
 - Bug fixes must be submitted against the lowest maintained branch where they apply
   (lowest branches are regularly merged to upper ones so they get the fixes too).
 - Features and deprecations must be submitted against branch 4.4.
 - Legacy code removals go to the master branch.
-->

When using `bootstrap_3_layout.html.twig` form theme, the help blocks are not rendered.

```twig
{% form_theme form 'bootstrap_3_layout.html.twig' %}

{{ form_start(form) }}
  {{ form_row(form.some_field) }} {# <-- no help text is rendered #}
{{ form_end(form) }}
```

Commits
-------

ff5517e554 Add missing rendering of form help block.
2019-06-26 09:37:26 +02:00
Fabien Potencier
32fd8e0409 Merge branch '4.2' into 4.3
* 4.2:
  [FrameworkBundle] Fix calling Client::getProfile() before sending a request
  Fix type error
  [Security/Core] Don't use ParagonIE_Sodium_Compat
  collect called listeners information only once
  add test to avoid regressions
  fix typos
  Turkish translation added to Form Component
2019-06-26 08:50:02 +02:00
Fabien Potencier
f0acaff850 Merge branch '3.4' into 4.2
* 3.4:
  [FrameworkBundle] Fix calling Client::getProfile() before sending a request
  Fix type error
  [Security/Core] Don't use ParagonIE_Sodium_Compat
  collect called listeners information only once
  add test to avoid regressions
  fix typos
  Turkish translation added to Form Component
2019-06-26 08:46:55 +02:00
Yonel Ceruto
7b99fb45bb Removed legacy code and cleanup 2019-06-25 20:29:20 +02:00
Tomas
7b8ee3ece8 Fix type error 2019-06-25 17:06:32 +03:00
Tobias Schultze
66c2e8483a [Messenger] fix retrying handlers using DoctrineTransactionMiddleware 2019-06-24 15:34:54 +01:00
Tobias Schultze
18793b7ca7 feature #31996 [5.0] Add return types in final classes (dFayet)
This PR was merged into the 5.0-dev branch.

Discussion
----------

[5.0] Add return types in final classes

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes/no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | no
| Fixed tickets | #31981
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

This is the first step for the issue #31981

I have some questions:

-  ~I have not added type for methods with `@inheritdoc` annotation, should I?~
- ~Don't we want to type also functions without `@return` annotation? (still in `final` classes)~
- ~If yes is the answer of the previous one, do we also want the `void` return type?~
- ~I have also added the return type in the `DependencyInjection` PhpDumper, but is it also wanted? (if yes, I will clean a bit the code changed)~
- ~Should we update the documentation's code samples when they display `final` classes?~

Todo:
- [x] Adjust the PR, following the answers of the questions
- [x] Add return type also when there is no `@return`, or with `@inheritdoc`
- [x] [src/Symfony/Component/Debug/ErrorHandler.php#L383](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Debug/ErrorHandler.php#L383) `@return` annotation is not correct according to the return, investigate and adjust if needed
- [x] [src/Symfony/Component/HttpKernel/ControllerMetadata/ArgumentMetadataFactory.php#L50](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/HttpKernel/ControllerMetadata/ArgumentMetadataFactory.php#L50) `@return` annotation is not correct according to the return, investigate and adjust if needed
- [x] Do a PR on documentation to add return type on code snippets with final classes => unneeded as they were already typed

Commits
-------

ca5ae1989e Replace @return annotation by return type in final classes
2019-06-23 23:15:46 +01:00
dFayet
ca5ae1989e Replace @return annotation by return type in final classes 2019-06-23 00:57:33 +02:00
Nicolas Grekas
ac7d168ffa Merge branch '4.4'
* 4.4:
  [PhpUnitBridge] Bump PHPUnit 7+8
  Prepare for PHP 7.4 preload
  prevent double deprecation message
  [Validator] Deprecate unused arg in ExpressionValidator
  [Config] Introduce find method in ArrayNodeDefinition to ease configuration tree manipulation
  [DomCrawler][Feature][DX] Add Form::getName() method
  [VarDumper] caster for HttpClient's response dumps all info
2019-06-17 13:53:04 +02:00
Roland Franssen
5491d5347c [PhpUnitBridge] Bump PHPUnit 7+8 2019-06-16 13:16:20 +02:00
Nicolas Grekas
0bb0335ab6 Merge branch '4.4'
* 4.4:
  [Security] minor improvement
  fix merge
2019-06-13 16:09:44 +02:00
Nicolas Grekas
7a1e6f732e Merge branch '4.3' into 4.4
* 4.3:
  fix merge
2019-06-13 16:07:54 +02:00
Nicolas Grekas
648aa67eca fix merge 2019-06-13 16:07:09 +02:00
Fabien Potencier
c449e6368c Merge branch '4.4'
* 4.4:
  fixed CS
  fixed CS
  fixed CS
  fixed CS
  Do not log or call the proxy function when the locale is the same
  Added missing required dependencies on psr/cache and psr/container in symfony/cache-contracts and symfony/service-contracts respectively.
  [HttpClient] fix closing debug stream prematurely
  [Mailer] made code more robust
  Restore compatibility with php 5.5
  fixed sender/recipients in SMTP Envelope
  collect called listeners information only once
  [HttpClient] add HttplugClient for compat with libs that need httplug v1 or v2
  [HttpKernel] Remove TestEventDispatcher.
2019-06-13 13:15:36 +02:00
Fabien Potencier
8787bbc94a Merge branch '4.3' into 4.4
* 4.3:
  fixed CS
  fixed CS
  fixed CS
  Do not log or call the proxy function when the locale is the same
  Added missing required dependencies on psr/cache and psr/container in symfony/cache-contracts and symfony/service-contracts respectively.
  [HttpClient] fix closing debug stream prematurely
  [Mailer] made code more robust
  Restore compatibility with php 5.5
  fixed sender/recipients in SMTP Envelope
  collect called listeners information only once
  [HttpKernel] Remove TestEventDispatcher.
2019-06-13 13:05:05 +02:00
Fabien Potencier
9526988eca fixed CS 2019-06-13 13:03:18 +02:00
Fabien Potencier
84bc7aba91 Merge branch '4.2' into 4.3
* 4.2:
  fixed CS
  fixed CS
  [HttpKernel] Remove TestEventDispatcher.
2019-06-13 13:01:17 +02:00
Fabien Potencier
37fa45bbd1 fixed CS 2019-06-13 12:57:15 +02:00
Fabien Potencier
0f958aabfa Merge branch '3.4' into 4.2
* 3.4:
  fixed CS
  [HttpKernel] Remove TestEventDispatcher.
2019-06-13 12:50:42 +02:00
Fabien Potencier
106b348d3d fixed CS 2019-06-13 12:34:15 +02:00
Grégoire Paris
496c118c3a
Restore compatibility with php 5.5
The ARRAY_FILTER_USE_KEY constant was introduced in php 5.6, let us
avoid it for now.
See https://www.php.net/manual/en/function.array-filter.php#refsect1-function.array-filter-changelog
2019-06-11 23:50:05 +02:00
Nicolas Grekas
03bfce6a40 Merge branch '4.4'
* 4.4:
  add back possibility to use form themes without translations
  [HttpClient] fix Psr18Client handling of non-200 response codes
  [HttpClient] make Psr18Client implement relevant PSR-17 factories
  [WebProfilerBundle] fix FC with HttpFoundation v5
  [OptionsResolver] fix adding $triggerDeprecation to Options::offsetGet()
  [Form] test case is not legacy
  Fix reporting unsilenced deprecations from insulated tests
  Changed EventDispatcherInterface dependency from Component to Contracts
  fix handling nested embeddables
  [WebProfilerBundle] Select default theme based on user preferences
  [FrameworkBundle] Allow dots in translation domains
  Added FormInterface to @return Form::getClickedButton docblock
2019-06-11 17:48:37 +02:00
Nicolas Grekas
e54b62c1e2 Merge branch '4.3' into 4.4
* 4.3:
  add back possibility to use form themes without translations
  [HttpClient] fix Psr18Client handling of non-200 response codes
  [WebProfilerBundle] fix FC with HttpFoundation v5
  [OptionsResolver] fix adding $triggerDeprecation to Options::offsetGet()
  [Form] test case is not legacy
  Fix reporting unsilenced deprecations from insulated tests
  fix handling nested embeddables
  Added FormInterface to @return Form::getClickedButton docblock
2019-06-11 17:42:17 +02:00
Nicolas Grekas
bde8204da3 Merge branch '4.2' into 4.3
* 4.2:
  [WebProfilerBundle] fix FC with HttpFoundation v5
  [OptionsResolver] fix adding $triggerDeprecation to Options::offsetGet()
  [Form] test case is not legacy
  Fix reporting unsilenced deprecations from insulated tests
  Added FormInterface to @return Form::getClickedButton docblock
2019-06-11 17:41:59 +02:00
Nicolas Grekas
b856ab5aa2 Merge branch '3.4' into 4.2
* 3.4:
  [WebProfilerBundle] fix FC with HttpFoundation v5
  [Form] test case is not legacy
  Fix reporting unsilenced deprecations from insulated tests
  Added FormInterface to @return Form::getClickedButton docblock
2019-06-11 17:21:32 +02:00
Christian Flothmann
87c1d19e72 add back possibility to use form themes without translations 2019-06-11 11:05:48 +02:00
Alexandre Segura
ff5517e554 Add missing rendering of form help block. 2019-06-10 10:21:04 +02:00
Nicolas Grekas
39622488bb Remove deprecated code paths that trigger a runtime notice 2019-06-09 16:44:48 +02:00
Nicolas Grekas
48093f4a13 Fix reporting unsilenced deprecations from insulated tests 2019-06-09 16:27:26 +02:00
Christian Flothmann
37efa4bb8c fix handling nested embeddables 2019-06-08 11:24:26 +02:00
Nicolas Grekas
be5f641308 Fix annotations 2019-06-08 08:23:28 +02:00
Amrouche Hamza
48073ddcf9
[HttpKernel] remove all deprecated event and replace their use 2019-06-07 22:41:09 +02:00
Nicolas Grekas
1a0bfbcbcb [Translation] remove deprecated code paths 2019-06-07 17:01:52 +02:00
Nicolas Grekas
f930ed2374 Merge branch '4.4'
* 4.4:
  [HttpKernel] fix link to source generation
  [Doctrine Bridge] Check field type before adding Length constraint
  [FrameworkBundle] fix BC-breaking property in WebTestAssertionsTrait
  [Cache] Pass  arg to get callback everywhere
  Fix DoctrineBridge upgrade 5.0
  [FramworkBundle][HttpKernel] fix KernelBrowser BC layer
  Add a missing quote in getValue() DocBlock
  [Messenger] Add runtime check for ext redis version
  [HttpFoundation] Fixed case-sensitive handling of cache-control header in RedirectResponse constructor.
  minor: ChoiceType callable deprecation after/before seems wrong
2019-06-06 12:05:45 +02:00
Nicolas Grekas
3c8d4c2842 Merge branch '4.3' into 4.4
* 4.3:
  [HttpKernel] fix link to source generation
  [Doctrine Bridge] Check field type before adding Length constraint
  [FrameworkBundle] fix BC-breaking property in WebTestAssertionsTrait
  [Cache] Pass  arg to get callback everywhere
  Fix DoctrineBridge upgrade 5.0
  [FramworkBundle][HttpKernel] fix KernelBrowser BC layer
  Add a missing quote in getValue() DocBlock
  [Messenger] Add runtime check for ext redis version
  [HttpFoundation] Fixed case-sensitive handling of cache-control header in RedirectResponse constructor.
  minor: ChoiceType callable deprecation after/before seems wrong
2019-06-06 12:05:19 +02:00