Skip to content

Conversation

@xabbuh
Copy link
Owner

@xabbuh xabbuh commented Sep 21, 2024

Q A
Branch? 7.2
Bug fix? no
New feature? no
Deprecations? no
Tickets
License MIT
Doc PR

wouterj and others added 27 commits September 19, 2024 15:29
…tion introduced in Symfony 7.2 (wouterj)

This PR was merged into the 6.4 branch.

Discussion
----------

[Runtime] Adapt test to support the `--silent` option introduced in Symfony 7.2

| Q             | A
| ------------- | ---
| Branch?       | 6.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Issues        | -
| License       | MIT

Prepare tests for symfony#53632

Commits
-------

bc5ae53 [Runtime] Adapt test to support the --silent option introduced in Symfony 7.2
…mfony/notifier 7.x (xabbuh)

This PR was merged into the 6.4 branch.

Discussion
----------

[Notifier] allow the Novu bridge to be used with symfony/notifier 7.x

| Q             | A
| ------------- | ---
| Branch?       | 6.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Issues        |
| License       | MIT

Commits
-------

72d8178 allow the Novu bridge to be used with symfony/notifier 7.x
This PR was merged into the 6.4 branch.

Discussion
----------

[Routing][Uid] [6.4] Mention RFC 9562

| Q             | A
| ------------- | ---
| Branch?       | 6.4
| Bug fix?      | no
| New feature?  | no
| Deprecations? | no
| Issues        | -
| License       | MIT

Follow-up to symfony#58238 on 6.4

Commits
-------

edf9916 [6.4][Routing][Uid] Mention RFC 9562
…tant (alexandre-daubois)

This PR was merged into the 7.2 branch.

Discussion
----------

[Routing] Add the `Requirement::UID_RFC9562` constant

| Q             | A
| ------------- | ---
| Branch?       | 7.2
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Issues        | -
| License       | MIT

Following https://github.com/symfony/symfony/pull/58329/files#r1768217660

Commits
-------

c1e1167 [Routing] Add the `Requirement::UID_RFC9562` constant
* 5.4:
  Bump Symfony version to 5.4.45
  Update VERSION for 5.4.44
  Update CONTRIBUTORS for 5.4.44
  Update CHANGELOG for 5.4.44
* 6.4:
  Bump Symfony version to 6.4.13
  Update VERSION for 6.4.12
  Update CHANGELOG for 6.4.12
  Bump Symfony version to 5.4.45
  Update VERSION for 5.4.44
  Update CONTRIBUTORS for 5.4.44
  Update CHANGELOG for 5.4.44
  allow the Novu bridge to be used with symfony/notifier 7.x
  [6.4][Routing][Uid] Mention RFC 9562
  [Runtime] Adapt test to support the --silent option introduced in Symfony 7.2
* 7.1:
  Bump Symfony version to 7.1.6
  Update VERSION for 7.1.5
  Update CHANGELOG for 7.1.5
  Bump Symfony version to 6.4.13
  Update VERSION for 6.4.12
  Update CHANGELOG for 6.4.12
  Bump Symfony version to 5.4.45
  Update VERSION for 5.4.44
  Update CONTRIBUTORS for 5.4.44
  Update CHANGELOG for 5.4.44
  allow the Novu bridge to be used with symfony/notifier 7.x
  [6.4][Routing][Uid] Mention RFC 9562
  [Runtime] Adapt test to support the --silent option introduced in Symfony 7.2
…output, including errors (wouterj)

This PR was merged into the 7.2 branch.

Discussion
----------

[Console] Add silent verbosity suppressing all output, including errors

| Q             | A
| ------------- | ---
| Branch?       | 7.2
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | yes
| Issues        | Fix symfony#52777
| License       | MIT

<details>
<summary>Original PR description</summary>

Alternative to symfony#53126

In Symfony 2.8, we decided to still show exceptions/errors when running a command with `--quiet` or `SHELL_VERBOSITY=-1` (symfony#15680).

Since that time, we've introduced the ConsoleLogger and 12-factor app logic. In todays landscape, it's more common to run commands that only output computer-readable text (e.g. JSON), which is ingested and displayed by services like Datadog and Kibana.
Our decision from 2.8 breaks this, as the JSON is interrupted by human-readable exception output that users can't disable. At the same time, this information is duplicated as errors are always logged (and thus shown as JSON).

I think we should revert the 2.8 decision, rather than adding a new "extremely quiet" verbosity mode. As far as I'm aware, this is also more consistent with normal unix commands which also don't output anything when passing `--quiet`.
I don't think this warrants as a BC break, as the errors are human readable and we don't promise BC on human readable console output (afaik, we don't promise BC on any console output, but I think we should be careful when changing e.g. the JSON logging).

</details>

This updated PR adds a new `--silent` verbosity mode that suppresses all output, including exceptions caught by the Application.

I went back and forth between simply passing `NullOutput` to the command in silent mode or not ignoring everything written to silent mode in `Output`. In the end, I've decided for the last to avoid bug reports from people silently expecting a `ConsoleOutputInterface` in their commands (e.g. for sections) without properly guarding it.

The new `isSilent()` methods can be used by commands to e.g. write important messages to the logger instead of command output when running in silent mode.

Commits
-------

57fe0bd [Console] Add silent verbosity mode suppressing all output, including errors
@xabbuh xabbuh closed this Sep 23, 2024
@xabbuh xabbuh deleted the pr-58249 branch September 23, 2024 06:21
xabbuh pushed a commit that referenced this pull request Nov 13, 2025
…eout must be positive` (Jeroeny)

This PR was merged into the 6.4 branch.

Discussion
----------

[HttpClient] Fix `Warning: curl_multi_select(): timeout must be positive`

| Q             | A
| ------------- | ---
| Branch?       | 6.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| License       | MIT

Full error text: `ErrorException: Warning: curl_multi_select(): timeout must be between 0 and 2147484`

Somehow this timeout is a negative float in some cases. I haven't been able to reproduce it manually. Here's an example:

<img width="979" height="920" alt="image" src="https://github.com/user-attachments/assets/57e44026-cb1a-412c-acb2-b94ec13de48e" />

```
ErrorException: Warning: curl_multi_select(): timeout must be between 0 and 2147484
#0 /vendor/symfony/http-client/Response/CurlResponse.php(342): Symfony\Component\HttpClient\Response\CurlResponse::select
#1 /vendor/symfony/http-client/Response/TransportResponseTrait.php(298): Symfony\Component\HttpClient\Response\CurlResponse::stream
#2 /vendor/symfony/http-client/Response/CommonResponseTrait.php(148): Symfony\Component\HttpClient\Response\CurlResponse::initialize
#3 /vendor/symfony/http-client/Response/TransportResponseTrait.php(130): Symfony\Component\HttpClient\Response\CurlResponse::doDestruct
#4 /vendor/symfony/http-client/Response/CurlResponse.php(242): Symfony\Component\HttpClient\Response\CurlResponse::__destruct
#5 /vendor/sentry/sentry/src/Client.php(177): Sentry\Client::captureEvent
#6 /vendor/sentry/sentry/src/State/Hub.php(155): Sentry\State\Hub::captureEvent
#7 /vendor/sentry/sentry/src/Tracing/Transaction.php(188): Sentry\Tracing\Transaction::finish
#8 /vendor/..redacted(): ...::shutdownHandler
#9 [internal](0)
```

Not sure if this is the place to enforce the `>=0` float or in https://github.com/symfony/symfony/blob/7.4/src/Symfony/Component/HttpClient/Response/CurlResponse.php#L363

Commits
-------

17eec0c Fix Warning: curl_multi_select(): timeout must be positive
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants