Commit Graph

2427 Commits

Author SHA1 Message Date
Nicolas Grekas
0f653d8c68 Merge branch '4.1'
* 4.1:
  [Finder] fixed root directory access for ftp/sftp wrapper
  [Console] Fix clearing sections containing questions
  [FrameworkBundle] dont suggest hidden services in debug:container and debug:autow commands
  [FWBundle] Throw if PropertyInfo is enabled, but the component isn't installed
  Remove redundant path check
2018-10-03 10:52:36 +02:00
Fabien Potencier
b1f462f3e9 bug #28638 [Console] Fix clearing sections containing questions (chalasr)
This PR was merged into the 4.1 branch.

Discussion
----------

[Console] Fix clearing sections containing questions

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

Given:
```php
$section = $output->section();
$question = "What's your name?";
$name = (new QuestionHelper())->ask($input, $section, new Question($question));
$section->clear();
$section->writeln("$question (<info>$name</info>)");
```

Before:
![](https://i.imgur.com/nJdKXAo.gif)

After:
![](https://i.imgur.com/WdMtKvV.gif)

Commits
-------

81ec57d7ce [Console] Fix clearing sections containing questions
2018-10-03 10:15:46 +02:00
Robin Chalas
81ec57d7ce [Console] Fix clearing sections containing questions 2018-10-03 09:17:02 +02:00
Nicolas Grekas
944b06d7fa Merge branch '4.1'
* 4.1:
  CS fix
  [Debug] fix compat with PHP 7.3
2018-10-02 18:38:08 +02:00
Nicolas Grekas
ed6d9b9d7a Merge branch '3.4' into 4.1
* 3.4:
  CS fix
  [Debug] fix compat with PHP 7.3
2018-10-02 18:36:10 +02:00
Nicolas Grekas
83a5d0c2da Merge branch '2.8' into 3.4
* 2.8:
  CS fix
  [Debug] fix compat with PHP 7.3
2018-10-02 18:33:53 +02:00
Nicolas Grekas
aea4a62e57 CS fix 2018-10-02 18:27:16 +02:00
Nicolas Grekas
a9c90ca77a Merge branch '4.1'
* 4.1: (21 commits)
  [php_cs] disable fopen_flags
  [DI] fix error in dumped container
  [CS] Remove unused variables passed to closures
  [DI] fix dumping setters before their inlined instances
  [CS] Remove empty comment
  [CS] Enforces null type hint on last position in phpDocs
  [CS] Use combined assignment operators when possible
  Fix a typo in error messages
  Don't return early as this bypasses the auto exit feature
  [Console] Add missing null to input values allowed types
  [PHPUnitBridge] Fix microtime() format
  bumped Symfony version to 4.1.6
  updated VERSION for 4.1.5
  updated CHANGELOG for 4.1.5
  bumped Symfony version to 3.4.17
  updated VERSION for 3.4.16
  updated CHANGELOG for 3.4.16
  bumped Symfony version to 2.8.47
  update CONTRIBUTORS for 2.8.46
  updated VERSION for 2.8.46
  ...
2018-10-02 14:43:31 +02:00
Nicolas Grekas
196086c513 Merge branch '3.4' into 4.1
* 3.4:
  [php_cs] disable fopen_flags
  [DI] fix error in dumped container
  [CS] Remove unused variables passed to closures
  [DI] fix dumping setters before their inlined instances
  [CS] Remove empty comment
  [CS] Enforces null type hint on last position in phpDocs
  [CS] Use combined assignment operators when possible
  Fix a typo in error messages
  Don't return early as this bypasses the auto exit feature
  [Console] Add missing null to input values allowed types
  [PHPUnitBridge] Fix microtime() format
  bumped Symfony version to 3.4.17
  updated VERSION for 3.4.16
  updated CHANGELOG for 3.4.16
  bumped Symfony version to 2.8.47
  update CONTRIBUTORS for 2.8.46
  updated VERSION for 2.8.46
  updated CHANGELOG for 2.8.46
2018-10-02 14:40:59 +02:00
Nicolas Grekas
25055be92e Merge branch '2.8' into 3.4
* 2.8:
  [php_cs] disable fopen_flags
  [CS] Remove unused variables passed to closures
  [CS] Remove empty comment
  [CS] Enforces null type hint on last position in phpDocs
  [CS] Use combined assignment operators when possible
  Fix a typo in error messages
  [Console] Add missing null to input values allowed types
  [PHPUnitBridge] Fix microtime() format
  bumped Symfony version to 2.8.47
  update CONTRIBUTORS for 2.8.46
  updated VERSION for 2.8.46
  updated CHANGELOG for 2.8.46
2018-10-02 14:28:39 +02:00
Nicolas Grekas
47f2aee4a5 minor #28675 [CS] Enforces null type hint on last position in phpDocs (carusogabriel)
This PR was merged into the 2.8 branch.

Discussion
----------

[CS] Enforces null type hint on last position in phpDocs

| Q             | A
| ------------- | ---
| Branch?       | 2.8
| 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 | -   <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | - <!-- required for new features -->

As a majority in our codebase, the `null` typehint usually comes in the last position in phpDocs.

Commits
-------

efbba25577 [CS] Enforces null type hint on last position in phpDocs
2018-10-02 14:08:28 +02:00
Nicolas Grekas
73d74c48e4 minor #28673 [CS] Use combined assignment operators when possible (carusogabriel)
This PR was merged into the 2.8 branch.

Discussion
----------

[CS] Use combined assignment operators when possible

| Q             | A
| ------------- | ---
| Branch?       | 2.8
| 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 | -   <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | - <!-- required for new features -->

Less opcodes for us 😄

Commits
-------

c561e99394 [CS] Use combined assignment operators when possible
2018-10-02 14:06:39 +02:00
Gabriel Caruso
48a70180da
[CS] Remove unused variables passed to closures 2018-10-02 08:25:20 -03:00
Gabriel Caruso
efbba25577
[CS] Enforces null type hint on last position in phpDocs 2018-10-02 00:12:00 -03:00
Gabriel Caruso
c561e99394
[CS] Use combined assignment operators when possible 2018-10-01 23:42:26 -03:00
Craig Duncan
b6c17dfb5e Don't return early as this bypasses the auto exit feature 2018-10-01 15:55:38 +01:00
Robin Chalas
f0bc2a64d7 [Console] Add missing null to input values allowed types 2018-09-30 12:25:15 +02:00
Fabien Potencier
deaf53c231 Merge branch '4.1'
* 4.1:
  [Console] simplified code
  removed useless phpdoc
  improve docblocks around group sequences
  [Cache] prevent getting older entries when the version key is evicted
  [WebProfilerBundle] added a note in the README
  [Yaml] Skip parser test with root user
  [Filesystem] Skip tests on readable file when run with root user
  [FWBundle] Fix an error in WebTestCase::createClient's PHPDoc
  [HttpFoundation][Security] forward locale and format to subrequests
  [Console] Send the right exit code to console.terminate listeners
  [HttpFoundation] fix hidding warnings from session handlers
  Caching missed templates on cache warmup
2018-09-30 05:40:00 +02:00
Fabien Potencier
46fff8b4d7 Merge branch '3.4' into 4.1
* 3.4:
  [Console] simplified code
  removed useless phpdoc
  improve docblocks around group sequences
  [Cache] prevent getting older entries when the version key is evicted
  [WebProfilerBundle] added a note in the README
  [Yaml] Skip parser test with root user
  [Filesystem] Skip tests on readable file when run with root user
  [FWBundle] Fix an error in WebTestCase::createClient's PHPDoc
  [HttpFoundation][Security] forward locale and format to subrequests
  [Console] Send the right exit code to console.terminate listeners
  [HttpFoundation] fix hidding warnings from session handlers
  Caching missed templates on cache warmup
2018-09-30 05:38:13 +02:00
Fabien Potencier
8805cfdf8d [Console] simplified code 2018-09-30 05:37:36 +02:00
Fabien Potencier
a69e7569e3 Merge branch '2.8' into 3.4
* 2.8:
  removed useless phpdoc
2018-09-30 05:34:39 +02:00
Fabien Potencier
42c5a91ddf removed useless phpdoc 2018-09-30 05:33:07 +02:00
Fabien Potencier
592bbf3470 Merge branch '2.8' into 3.4
* 2.8:
  improve docblocks around group sequences
  [WebProfilerBundle] added a note in the README
  [Filesystem] Skip tests on readable file when run with root user
  [FWBundle] Fix an error in WebTestCase::createClient's PHPDoc
  [HttpFoundation][Security] forward locale and format to subrequests
  [Console] Send the right exit code to console.terminate listeners
  Caching missed templates on cache warmup
2018-09-30 05:32:28 +02:00
Roland Franssen
c762735075 Favor LogicException for missing classes & functions 2018-09-24 09:37:12 +02:00
Chris de Kok
cec531707f [Console] Add support for error ouput in the CommandTester 2018-09-23 13:34:50 +02:00
Robin Chalas
54bd905cb0 bug #28545 [Console] Send the right exit code to console.terminate listeners (mpdude)
This PR was squashed before being merged into the 2.8 branch (closes #28545).

Discussion
----------

[Console] Send the right exit code to console.terminate listeners

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

When a Console command throws an exception without a status code, `Application::run()` takes care of setting the exit code to `1` when the exception does not provide a code itself.

This happens slightly too late, as `console.terminate` event listeners that are called from within `Application::doRunCommand()` are given the plain exeception code, before this conversion.

The result is that `console.*` event listeners that you might be using to log exit code e. g. for cron jobs will see a `0` code instead of the real value used to terminate the script.

***Todo:***

- [x] Make sure we've got tests covering this, i. e. do not mock out `doRunCommand()`.

Commits
-------

b90a3f1 [Console] Send the right exit code to console.terminate listeners
2018-09-23 12:04:26 +02:00
Matthias Pigulla
b90a3f12a1 [Console] Send the right exit code to console.terminate listeners 2018-09-23 12:04:15 +02:00
Nicolas Grekas
a26bd3673f Merge branch '4.1'
* 4.1:
  [Debug] Fix false-positive "MicroKernelTrait::loadRoutes()" method is considered internal"
  [Console] Fixed boxed table style with colspan
  parse numbers terminated with decimal separator
  fail reverse transforming invalid RFC 3339 dates
2018-09-22 22:55:36 +02:00
Nicolas Grekas
0e47775d62 Merge branch '3.4' into 4.1
* 3.4:
  [Debug] Fix false-positive "MicroKernelTrait::loadRoutes()" method is considered internal"
  [Console] Fixed boxed table style with colspan
  parse numbers terminated with decimal separator
  fail reverse transforming invalid RFC 3339 dates
2018-09-22 21:04:12 +02:00
Nicolas Grekas
3e47e9ca59 Merge branch '2.8' into 3.4
* 2.8:
  [Console] Fixed boxed table style with colspan
  parse numbers terminated with decimal separator
  fail reverse transforming invalid RFC 3339 dates
2018-09-22 20:49:52 +02:00
Roland Franssen
a67ff2a2d6 [Console] Fixed boxed table style with colspan 2018-09-21 21:58:02 +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
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
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
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
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
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
Fabien Potencier
1c759a1719 minor #28374 [Console] fixed PHPDoc for setArgument/setOption in InputInterface (liarco)
This PR was squashed before being merged into the 2.8 branch (closes #28374).

Discussion
----------

[Console] fixed PHPDoc for setArgument/setOption in InputInterface

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

Methods now accept a value of any type except objects not implementing __toString().

**Example use case:** when using array arguments/options I can't set them programmatically without getting errors about type mismatch (from the IDE). With this patch it now works as expected.

Commits
-------

61529f3cd7 [Console] fixed PHPDoc for setArgument/setOption in InputInterface
2018-09-10 10:11:29 +02:00
Marco Lipparini
61529f3cd7 [Console] fixed PHPDoc for setArgument/setOption in InputInterface 2018-09-10 10:11:22 +02:00
Fabien Potencier
e5bb5e24bd removed usage of backticks in exception messages 2018-09-10 09:26:34 +02:00
Robin Chalas
344b8cee42 Merge branch '4.1'
* 4.1:
  [Console] Fix SymfonyQuestionHelper::askQuestion() with choice value as default
2018-09-08 21:04:21 +02:00
Robin Chalas
492eb5fe24 Merge branch '3.4' into 4.1
* 3.4:
  [Console] Fix SymfonyQuestionHelper::askQuestion() with choice value as default
2018-09-08 21:04:07 +02:00