This PR was submitted for the master branch but it was merged into the 2.7 branch instead (closes#26338).
Discussion
----------
[Debug] Keep previous errors of Error instances
| Q | A
| ------------- | ---
| Branch? | 2.7 (I have tested against 4.0, but I guess it applies to all the older versions too)
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | ?
| Fixed tickets | --
| License | MIT
Passing on the previous exception gives developers better debugging information. In particular, if you throw an uncaught `new \Error("Something", 0, new \Exception("Inner exception"))` or sth. like that today, you will not see the "Inner exception" text (which may be more helpful than the outer error) in the HTTP debug response. Converting exceptions into errors this way is a common pattern when an exception raised in a sub-routine cannot reasonably occur for a specific caller situation, so there it becomes an `AssertionError` instead.
Commits
-------
b1b6093f3d Pass on previous exception in FatalThrowableError
This PR was merged into the 2.7 branch.
Discussion
----------
[Routing] Revert throwing 405 on missed slash/scheme redirections
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | ye
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
This partially reverts an unreleased behavior: throwing a 405 when a non-safe verb prevents a slash/scheme redirection.
While this was correct, we are removing it from master to remove some complexity from the implementation of dumped router.
Better not make anyone rely on such nitpicking details that have little to no use in practice.
Commits
-------
391b01393d [Routing] Revert throwing 405 on missed slash/scheme redirections
This PR was merged into the 2.7 branch.
Discussion
----------
Fix ArrayInput::toString() for InputArgument::IS_ARRAY args
| Q | A
| ------------- | ---
| Branch? | 2.7 up to 4.0
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #... <!-- #-prefixed issue number(s), if any -->
| License | MIT
| Doc PR | symfony/symfony-docs#... <!-- required for new features -->
Fix ArrayInput::toString() method to eliminate 'Array to string conversion' notice and get right string representation of InputArgument::IS_ARRAY argument. It need to be fixed in all branches up to master.
Commits
-------
f371fd8 Fix ArrayInput::toString() for InputArgument::IS_ARRAY args
This PR was merged into the 2.7 branch.
Discussion
----------
Another PR template tweak
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | no
| Fixed tickets | -
| License | MIT
| Doc PR | -
<!--
- 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.
- Replace this comment by a description of what your PR is solving.
-->
Commits
-------
c338d85514 Another PR template tweak
This PR was merged into the 2.8 branch.
Discussion
----------
[PropertyInfo] ReflectionExtractor: give a chance to other extractors if no properties
| Q | A
| ------------- | ---
| Branch? | 2.8
| Bug fix? | yes
| New feature? | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks? | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass? | yes
| Fixed tickets | #25803 <!-- #-prefixed issue number(s), if any -->
| License | MIT
| Doc PR | n/a
For instance when using `__call()`, see #25803.
<!--
- 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.
- Replace this comment by a description of what your PR is solving.
-->
Commits
-------
270147b04f [PropertyInfo] ReflectionExtractor: give a chance to other extractors if no properties
This PR was merged into the 2.7 branch.
Discussion
----------
[WebProfilerBundle] add a way to limit ajax request
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | yes
| New feature? | yes <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks? | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass? | yes
| Fixed tickets | #22688
| License | MIT
| Doc PR | symfony/symfony-docs#... <!--highly recommended for new features-->
I need to add the doc entry and the reproducer to test that everything is ok.
Commits
-------
9ff86d6181 [WebProfilerBundle] limit ajax request to 100 and remove the last one
* 2.7:
Clean calls to http_build_query()
[HttpFoundation] Fix missing "throw" in JsonResponse
Improve the documentation of
Suppress warning from sapi_windows_vt100_support on stream other than STDIO
removed extra-verbose comments
Fixes#26136: Avoid emitting warning in hasParameterOption()
Added a README entry to the PR template
[HttpFoundation] Add x-zip-compressed to MimeTypeExtensionGuesser.
[DI] Add null check for removeChild
This PR was squashed before being merged into the 2.7 branch (closes#26215).
Discussion
----------
Improve the documentation of `Filesystem::mirror()`
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? |no
| New feature? |no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks? |no
| Deprecations? |no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass? | ?
| Fixed tickets |
| License | MIT
| Doc PR |
I always end up reading the code of the method to understand what really happens with the default parameters. Hopefully this will clear things up for future me and others.
Replaces #26209 to target the 2.7 branch.
Commits
-------
0e4d26a568 Improve the documentation of
This PR was merged into the 2.7 branch.
Discussion
----------
[Console] Suppress warning from sapi_windows_vt100_support
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #26210
| License | MIT
Suppresses warning from `sapi_windows_vt100_support()` for non-STDIO streams, e. g. `php://memory`.
Commits
-------
43f9421 Suppress warning from sapi_windows_vt100_support on stream other than STDIO
This PR was merged into the 2.7 branch.
Discussion
----------
[HttpFoundation] Add x-zip-compressed to MimeTypeExtensionGuesser.
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | no
| New feature? | yes (kinda)
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | N/A
| License | MIT
| Doc PR | N/A
Zip files uploaded on Windows often have a mime type of `x-zip-compressed`. This patch adds support for this mime type to `MimeTypeExtensionGuesser`.
The mime type seems to be a valid mime type for zip files according to http://filext.com/file-extension/ZIP
Commits
-------
ba3e19ae21 [HttpFoundation] Add x-zip-compressed to MimeTypeExtensionGuesser.
This PR was squashed before being merged into the 2.7 branch (closes#26156).
Discussion
----------
Fixes#26136: Avoid emitting warning in hasParameterOption()
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #26136
| License | MIT
| Doc PR | n/a
When hasParameterOption / getParameterOption is passed invalid parameters, a warning may be emitted. While the root cause of the warning is an invalid parameter supplied by the caller, earlier versions of Symfony accepted these parameters, which were effectively ignored.
In the context of these methods, what I mean by "invalid parameter" is an empty string, which is the correct datatype, but is not ever a useful thing to provide to these methods. Since empty strings here did not cause a problem in previous versions, and since Symfony is used by all sorts of projects for all sorts of purposes, it seems best to continue to be flexible about the parameters accepted by Symfony APIs.
Commits
-------
b32fdf1ca3Fixes#26136: Avoid emitting warning in hasParameterOption()
This PR was merged into the 2.7 branch.
Discussion
----------
Added a README entry to the PR template
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | -
| Fixed tickets | -
| License | MIT
| Doc PR | -
Recently, in the [Diversity Initiative post]() @fabpot mentioned: "A major version of a project should be about improving all aspects of it: community, docs, and code in this order of importance." Also, Symfony advocates that [“an undocumented line is a line that does not exist”](https://symfony.com/six-good-reasons).
This order of importance is not yet followed. Most of the resources are spent on the code, instead of the docs. And with good reason: there's a way bigger contributor base to take care of in the code, compared to the docs.
During a doc meeting this evening, @symfony/team-symfony-docs has discussed this problem. We think it can be improved by two pragmatic changes in the Code repository:
* Focus on creating a Doc PR before a feature is merged. We used to do this, but it seems to not be the case anymore.
* Add a `README` section to the PR template, as done by this PR. This readme section should contain a readme focused entry of the feature introduced by the PR. This has multiple advantages, among which: it helps the PR author to focus on usage ([Readme driven development](http://tom.preston-werner.com/2010/08/23/readme-driven-development.html)); it can function as a great bootstrap for the doc team; it helps reviewers to understand the PR more easily.
Of course, I've just created this PR to start the discussion. I'm happy to change all wording in the PR template.
Commits
-------
bc1b652b17 Added a README entry to the PR template
Zip files uploaded on Windows often have a mime type of `x-zip-compressed`. This patch adds support for this mime type to `MimeTypeExtensionGuesser`.
The mime type seems to be a valid mime type for zip files according to http://filext.com/file-extension/ZIP