Commit Graph

38591 Commits

Author SHA1 Message Date
Andras Debreczeni
af54189dfc [Ldap] Use shut up operator on connection errors at ldap_start_tls 2018-09-18 09:27:02 +02:00
Fabien Potencier
a9004b3208 minor #28483 [HttpFoundation] don't override StreamedResponse::setNotModified() (nicolas-grekas)
This PR was merged into the 2.8 branch.

Discussion
----------

[HttpFoundation] don't override StreamedResponse::setNotModified()

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

Alternative implementation to #27937, because `Response::setNotModified()` has been made final in 4.0 so we shouldn't override it.

Commits
-------

9ef7f7038d [HttpFoundation] don't override StreamedResponse::setNotModified()
2018-09-18 06:45:48 +02:00
Grégoire Paris
63671d1633
Implement startTest rather than startTestSuite
Passing a TestSuite instance to CoverageListenerTrait::testStart() will
have no effect.
2018-09-17 22:28:24 +02:00
Nicolas Grekas
440944f3c2 feature #28316 Trigger deprecation notices when inherited class calls parent method but misses adding new arguments (kevinjhappy)
This PR was merged into the 4.2-dev branch.

Discussion
----------

Trigger deprecation notices when inherited class calls parent method but misses adding new arguments

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

This Pull Request concern severals components, the purpose here is to notify in dev mode that in a case of inherit class, a function will have a new or severals arguments in Symfony 5.0, therefore not implement it is deprecated since Symfony 4.2

The function is made by these conditions :
1- ```(func_num_args() < $x)``` where [x] is the number of arguments we will have in Symfony 5.0
  this check allow to verify that the arguments are missing
2- ```(__CLASS__ !== \get_class($this))```
  this check allow to verify that the name of the class is different than the base class, therefore that we are in the child class
3- ```(__CLASS__ !== (new \ReflectionMethod($this, __FUNCTION__))->getDeclaringClass()->getName())```
  this check allow to verify that the class of the current function is different than the base class, therefore the function has been rewrote into the child class

Code exemple :
```
public function method(/* void $myNewArgument = null */)
{
	if ((func_num_args() < 1) && (__CLASS__ !== \get_class($this)) && (__CLASS__ !== (new \ReflectionMethod($this, __FUNCTION__))->getDeclaringClass()->getName())){
            @trigger_error(sprintf('The "%s()" method will have one `void $myNewArgument = null` argument in version 5.0 and higher.Not defining it is deprecated since Symfony 4.2.', __METHOD__ ), E_USER_DEPRECATED);
    }
    // do something
}
```

The unit test are made by creating a child Class using for the tested function ```return parent::function()``` and by calling this child class and catching the expected depreciation message

Commits
-------

f75fffa997 Trigger deprecation notices when inherited class calls parent method but misses adding new arguments
2018-09-17 20:15:16 +02:00
Nicolas Grekas
8d90df7ff7 bug #28372 [Form] Fix DateTimeType html5 input format (franzwilding, mcfedr)
This PR was merged into the 2.8 branch.

Discussion
----------

[Form] Fix DateTimeType html5 input format

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

Fix DateTimeType' HTML input format according to HTML specs. Currently `DateTimeType` produces html with format `yyyy-MM-dd'T'HH:mm:ssZ` but the HTML5 spec expects `yyyy-MM-dd'T'HH:mm:ss` (i.e. no `Z`). Chrome presents an empty date picker meaning edits or having a default date are broken.

Also the reverseTransform was expect to have a timezone attached, which it does not - and incorrectly marks it as being a UTC time in this case, instead of using the Transformers output TZ.

This is same as @franzwilding https://github.com/symfony/symfony/pull/27254 but with change to just straight use of `DateTime::format` and handling TZ in reverseTransform

Commits
-------

e21a1a4df1 Added relevent links for parsing to the phpdoc
4f06f1524d Add stricter checking for valid date time string
253d0a683b [Form] Fix DateTimeType html5 input format
2018-09-17 20:11:48 +02:00
Nicolas Grekas
48038fdeba bug #28456 [Cache][Contracts] We must save the item or the trait does not have any effect (Nyholm)
This PR was squashed before being merged into the 4.2-dev branch (closes #28456).

Discussion
----------

[Cache][Contracts] We must save the item or the trait does not have any effect

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

Using the trait must result in that items gets saved.

We could use `saveDeferred` instead, it might be a performance improvement but you also may have side-effects. Say you are using two cache pool objects for the same storage.

Example use of the trait:

```php
use Psr\Cache\CacheItemInterface;
use Psr\Cache\CacheItemPoolInterface;
use Symfony\Contracts\Cache\CacheInterface;
use Symfony\Contracts\Cache\GetForCacheItemPoolTrait;

class AcmeCache implements CacheInterface
{
    use GetForCacheItemPoolTrait;
    private $cache;

    public function __construct(CacheItemPoolInterface $cache)
    {
        $this->cache = $cache;
    }

    public function getItem(string $key): CacheItemInterface
    {
       return $this->cache->getItem($key);
    }

    public function save(CacheItemInterface $item): bool
    {
       return $this->cache->save($item);
    }
}

```

Commits
-------

06cd8dca8f [Cache][Contracts] We must save the item or the trait does not have any effect
2018-09-17 20:09:45 +02:00
Nyholm
06cd8dca8f [Cache][Contracts] We must save the item or the trait does not have any effect 2018-09-17 20:09:31 +02:00
Nicolas Grekas
4957fa0c83 minor #28458 [OptionsResolver] remove dead code and useless else (ronfroy)
This PR was submitted for the master branch but it was squashed and merged into the 3.4 branch instead (closes #28458).

Discussion
----------

[OptionsResolver] remove dead code and useless else

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

<!--
remove dead method and useless else
-->

Commits
-------

0c1484b849 [OptionsResolver] remove dead code and useless else
2018-09-17 19:29:41 +02:00
Rudy Onfroy
0c1484b849 [OptionsResolver] remove dead code and useless else 2018-09-17 19:29:18 +02:00
Nicolas Grekas
2fb11fce28 [PhpUnitBridge] enable DebugClassLoader by default 2018-09-16 21:51:20 +02:00
Nicolas Grekas
9ef7f7038d [HttpFoundation] don't override StreamedResponse::setNotModified() 2018-09-16 21:50:20 +02:00
Nicolas Grekas
57c76a405b bug #28444 [VarDumper] fix dumping signature of callables (nicolas-grekas)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[VarDumper] fix dumping signature of callables

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

Adds missing visual hint when returning by reference + makes exclude-verbose mode display only the signature.

E.g. using psysh, before:
![image](https://user-images.githubusercontent.com/243674/45360788-ebe0bf80-b5d0-11e8-8e43-62f954e926af.png)

after:
![image](https://user-images.githubusercontent.com/243674/45360760-d9668600-b5d0-11e8-820a-98cc174ba2ca.png)

(`dump -a` shows the details as usual.)

Commits
-------

16f2bd58d9 [VarDumper] fix dumping signature of callables
2018-09-16 21:17:45 +02:00
Robin Chalas
68c869ba8e Merge branch '4.1'
* 4.1:
  [FrameworkBundle] Don't register MessengerDataCollector if messenger is not enabled
  [Validator] Add Japanese translations
  [Console] Fix input values allowed types
2018-09-16 13:51:03 +02:00
Robin Chalas
3f1951af45 Merge branch '3.4' into 4.1
* 3.4:
  [Validator] Add Japanese translations
  [Console] Fix input values allowed types
2018-09-16 13:50:43 +02:00
Robin Chalas
5d75f14d7b Merge branch '2.8' into 3.4
* 2.8:
  [Validator] Add Japanese translations
  [Console] Fix input values allowed types
2018-09-16 13:50:16 +02:00
Robin Chalas
76f9bdc471 minor #28474 [FrameworkBundle] Don't register MessengerDataCollector if messenger is not enabled (chalasr)
This PR was merged into the 4.1 branch.

Discussion
----------

[FrameworkBundle] Don't register MessengerDataCollector if messenger is not enabled

| Q             | A
| ------------- | ---
| Branch?       | 4.1
| Bug fix?      | no (not yet released)
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

Will fix `deps=high` SecurityBundle's build once merged up to master which is broken since #28418

Commits
-------

e64ceb5 [FrameworkBundle] Don't register MessengerDataCollector if messenger is not enabled
2018-09-16 13:48:01 +02:00
Fred Cox
e21a1a4df1 Added relevent links for parsing to the phpdoc 2018-09-15 14:33:50 +03:00
Fred Cox
4f06f1524d Add stricter checking for valid date time string 2018-09-15 14:25:16 +03:00
Robin Chalas
e64ceb5c13 [FrameworkBundle] Don't register MessengerDataCollector if messenger is not enabled 2018-09-15 12:55:03 +02:00
Robin Chalas
5b0801998d Merge branch '4.1'
* 4.1:
  [Console] Fix typo in tests
  [Console] Correct Command::initialize() and InputInterface::bind() phpdoc regarding thrown exceptions
  [Console] fixed corrupt error output for unknown multibyte short option
  [Console] fixed PHPDoc for setArgument/setOption in InputInterface
  Register the messenger data collector only when the profiler is enabled
  [Intl] Blacklist Eurozone and United Nations in Region Data Generator
2018-09-15 12:26:24 +02:00
Robin Chalas
ddde83cdd9 Merge branch '3.4' into 4.1
* 3.4:
  [Console] Fix typo in tests
  [Console] Correct Command::initialize() and InputInterface::bind() phpdoc regarding thrown exceptions
  [Console] fixed corrupt error output for unknown multibyte short option
  [Console] fixed PHPDoc for setArgument/setOption in InputInterface
  [Intl] Blacklist Eurozone and United Nations in Region Data Generator
2018-09-15 11:59:43 +02:00
Robin Chalas
d4cddac14d Merge branch '2.8' into 3.4
* 2.8:
  [Console] Correct Command::initialize() and InputInterface::bind() phpdoc regarding thrown exceptions
  [Console] fixed corrupt error output for unknown multibyte short option
  [Console] fixed PHPDoc for setArgument/setOption in InputInterface
  [Intl] Blacklist Eurozone and United Nations in Region Data Generator
2018-09-15 11:59:15 +02:00
Fabien Potencier
e40bb0fa5f minor #28472 [Validator] Add Japanese translations (issei-m)
This PR was submitted for the master branch but it was merged into the 2.8 branch instead (closes #28472).

Discussion
----------

[Validator] Add Japanese translations

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

<!--
Write a short README entry for your feature/bugfix here (replace this comment block.)
This will help people understand your PR and can be used as a start of the Doc PR.
Additionally:
 - Bug fixes must be submitted against the lowest branch where they apply
   (lowest branches are regularly merged to upper ones so they get the fixes too).
 - Features and deprecations must be submitted against the master branch.
-->

Commits
-------

7d78e3672b [Validator] Add Japanese translations
2018-09-15 07:41:57 +02:00
Issei.M
7d78e3672b [Validator] Add Japanese translations 2018-09-15 07:41:47 +02:00
Matthias Pigulla
d6f5d6bccd
Fix symfony/console (optional) dependency for MonologBridge
Since 278c26f589, `ConsoleHandler` tries to pass a verbosity level into `Output::write()`. 

In order to make this work, the change 749fba54f9 is required which was first released in 2.8.0.

When using MonologBridge ^3.3 with a lower version of symfony/console than 2.8, an `InvalidArgumentException` with the message `Unknown output type given` will be thrown.

Not sure how to add a test for this... 🤷‍♂️ :
2018-09-14 18:15:55 +02:00
Christian Flothmann
c4a6c9fa00 fix not displaying labels when value is false 2018-09-14 15:32:30 +02:00
Christian Flothmann
ee4ce43e91 fail reverse transforming invalid RFC 3339 dates 2018-09-14 13:46:25 +02:00
Christian Flothmann
5318e2eb15 forward the invalid_message option in date types 2018-09-14 09:49:37 +02:00
Fabien Potencier
d5a366faa1 minor #28448 [Console] Fix input values allowed types (chalasr)
This PR was merged into the 2.8 branch.

Discussion
----------

[Console] Fix input values allowed types

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

Continuation of #28374

Commits
-------

0c16cd9fae [Console] Fix input values allowed types
2018-09-12 07:05:17 +02:00
Fabien Potencier
8ab7077225 minor #28451 [Messenger] Throw an exception when the serializer component is not loaded (sroze)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[Messenger] Throw an exception when the serializer component is not loaded

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

This adds a sensible exception when trying to build the class without the Symfony Serializer component.

Commits
-------

c4415cfd67 Throw an exception when the serializer component is not loaded
2018-09-12 06:58:19 +02:00
Samuel ROZE
c4415cfd67 Throw an exception when the serializer component is not loaded 2018-09-12 00:01:16 +02:00
Robin Chalas
839dc2693a feature #28373 [Console] Support max column width in Table (ro0NL)
This PR was squashed before being merged into the 4.2-dev branch (closes #28373).

Discussion
----------

[Console] Support max column width in Table

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | #22156, #27832
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/issues/10300

Continuation of #22225 to better preserve spaces (which preserves background colors), using `wordwrap` it caused some issues.

Also the wrapping was plain wrong by not taking the current line length into account.

While at it, it comes with `Table` integration :)

Given

```php
$table = new Table($output);
$table->setColumnMaxWidth(0, 2);
$table->setRow(0, ['pre <error>foo bar baz</error> post']);
$table->render();

$table = new Table($output);
$table->setColumnMaxWidth(0, 3);
$table->setRow(0, ['pre <error>foo bar baz</error> post']);
$table->render();

$table = new Table($output);
$table->setColumnMaxWidth(0, 4);
$table->setRow(0, ['pre <error>foo bar baz</error> post']);
$table->render();
```

![image](https://user-images.githubusercontent.com/1047696/45101516-f19b5880-b12b-11e8-825f-6a1d84f68f47.png)

Commits
-------

175f68f [Console] Support max column width in Table
2018-09-11 19:20:18 +02:00
Roland Franssen
175f68fe51 [Console] Support max column width in Table 2018-09-11 19:20:06 +02:00
Robin Chalas
b4bbc254b5 minor #28450 [Console] Fix typo in tests (ro0NL)
This PR was merged into the 3.4 branch.

Discussion
----------

[Console] Fix typo in tests

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

Spotted in #28373

cc @chalasr

Commits
-------

01e491e [Console] Fix typo in tests
2018-09-11 19:18:51 +02:00
Roland Franssen
01e491ec86
[Console] Fix typo in tests 2018-09-11 19:16:23 +02:00
Robin Chalas
0c16cd9fae [Console] Fix input values allowed types 2018-09-11 18:38:57 +02:00
Nicolas Grekas
16f2bd58d9 [VarDumper] fix dumping signature of callables 2018-09-11 14:57:52 +02:00
Nicolas Grekas
eb71aaf630 minor #28436 Remove all usages of call_user_func_array() (nicolas-grekas)
This PR was merged into the 4.2-dev branch.

Discussion
----------

Remove all usages of call_user_func_array()

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

Because it's cleaner :) (and it saves creating one extra dummy array)

Commits
-------

b2718d7666 Remove all usages of call_user_func_array()
2018-09-11 13:53:05 +02:00
Pavel Batanov
761415fc1b Add verbose ext-ldap error if present for easier debugging 2018-09-11 14:24:42 +03:00
Nicolas Grekas
2879baf3bd bug #28437 [VarExporter] fix more edge cases (nicolas-grekas)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[VarExporter] fix more edge cases

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

As found while preparing #28417

Commits
-------

443bd119b1 [VarExporter] fix more edge cases
2018-09-11 10:47:39 +02:00
Nicolas Grekas
443bd119b1 [VarExporter] fix more edge cases 2018-09-11 10:35:53 +02:00
Nicolas Grekas
b2718d7666 Remove all usages of call_user_func_array() 2018-09-11 09:53:26 +02:00
Robin Chalas
86a5d92ce7 minor #28409 [Console] Document what is validated before and after Command::initialize() (chalasr)
This PR was merged into the 2.8 branch.

Discussion
----------

[Console] Document what is validated before and after Command::initialize()

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

Commits
-------

b1aff99 [Console] Correct Command::initialize() and InputInterface::bind() phpdoc regarding thrown exceptions
2018-09-10 19:22:51 +02:00
Nicolas Grekas
444e7b9886 bug #28396 [Intl] Blacklist Eurozone and United Nations in Region Data Generator (gregurco)
This PR was merged into the 2.8 branch.

Discussion
----------

[Intl] Blacklist Eurozone and United Nations in Region Data Generator

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

Commits
-------

e2e4049721 [Intl] Blacklist Eurozone and United Nations in Region Data Generator
2018-09-10 18:51:10 +02:00
Samuel ROZE
a3e6e8300c bug #28418 [FrameworkBundle] Register the messenger data collector only when the profiler is enabled (pierredup)
This PR was merged into the 4.1 branch.

Discussion
----------

[FrameworkBundle] Register the messenger data collector only when the profiler is enabled

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

The data collector for the messenger is currently unconditionally registered, which causes increased memory usage even in production. Instead, it should only be registered along with the rest of the data collectors only when the profiler is enabled

Commits
-------

bd3a66bc59 Register the messenger data collector only when the profiler is enabled
2018-09-10 12:40:37 +02:00
Nicolas Grekas
deae538245 feature #28422 [VarExporter] throw component-specific exceptions (nicolas-grekas)
This PR was merged into the 4.2-dev branch.

Discussion
----------

[VarExporter] throw component-specific exceptions

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

This makes "serializing/unserializing" with the component diverge a bit from native serialize/unserialize (wich can throw plain "Exception" instances), but I think we should still do it.

Commits
-------

2c444927bc [VarExporter] throw component-specific exceptions
2018-09-10 11:27:28 +02:00
Robin Chalas
b1aff9993c [Console] Correct Command::initialize() and InputInterface::bind() phpdoc regarding thrown exceptions 2018-09-10 11:03:26 +02:00
Robin Chalas
0417d6caad bug #28393 [Console] fixed corrupt error output for unknown multibyte short option (downace)
This PR was squashed before being merged into the 2.8 branch (closes #28393).

Discussion
----------

[Console] fixed corrupt error output for unknown multibyte short option

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

[Console] Fixed #28320 by using mb_substr instead of index access
<!--
Write a short README entry for your feature/bugfix here (replace this comment block.)
This will help people understand your PR and can be used as a start of the Doc PR.
Additionally:
 - Bug fixes must be submitted against the lowest branch where they apply
   (lowest branches are regularly merged to upper ones so they get the fixes too).
 - Features and deprecations must be submitted against the master branch.
-->

Commits
-------

0f86156 [Console] fixed corrupt error output for unknown multibyte short option
2018-09-10 10:47:57 +02:00
downace
0f861568aa [Console] fixed corrupt error output for unknown multibyte short option 2018-09-10 10:47:50 +02:00
Nicolas Grekas
2c444927bc [VarExporter] throw component-specific exceptions 2018-09-10 10:23:43 +02:00