This PR was merged into the 2.1 branch.
Discussion
----------
[Console] fix status and exit code
Fix https://github.com/symfony/symfony/pull/8183#discussion_r4525267
and
http://www.php.net/manual/en/function.exit.php
> Exit statuses should be in the range 0 to 254, the exit status 255 is reserved by PHP and shall not be used. The status 0 is used to terminate the program successfully.
Commits
-------
6b9180a [Console] ensure exit code between 0-254
445b2e3 [Console] fix status code when Exception::getCode returns something like 0.1
This PR was submitted for the 2.2 branch but it was merged into the 2.1 branch instead (closes#8183).
Discussion
----------
Fixed exit code for exceptions with error code 0
Covers https://github.com/symfony/symfony/issues/8180
Commits
-------
48e77f8 Fixed exit code for exceptions with error code 0
This PR was merged into the 2.1 branch.
Discussion
----------
Fix several instances of doubled words
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
One correction to an exception; the rest in docblocks.
Commits
-------
52fed7b Fix several instances of doubled words
This PR was squashed before being merged into the 2.1 branch (closes
Discussion
----------
[Finder] Fix iteration fails with non-rewindable streams
<table>
<tr>
<th>Q</th><th>A</th>
</tr>
<tr>
<td>Bug fix?</td><td>yes</td>
</tr>
<tr>
<td>New feature?</td><td>no</td>
</tr>
<tr>
<td>BC breaks?</td><td>no</td>
</tr>
<tr>
<td>Deprecations?</td><td>no</td>
</tr>
<tr>
<td>Tests pass?</td><td>yes</td>
</tr>
<tr>
<td>Fixed tickets</td><td>#3585, #7834</td>
</tr>
<tr>
<td>License?</td><td>MIT</td>
</tr>
</table>
- [x] Add a good detection of non seekable stream
- [x] Add some unit tests
But the iteration under ftp stream still not work properly. Edit: need
tests for that.
Commits
-------
169c0b9 [Finder] Fix iteration fails with non-rewindable streams
This PR was squashed before being merged into the 2.1 branch (closes#8127).
Discussion
----------
[Finder] Fix unexpected duplicate sub path related AppendIterator issue
Bug fix: yes
New feature: no
BC breaks: no
Deprecations: no
Tests pass: yes
Fixes: https://github.com/symfony/symfony/pull/4993#issuecomment-8515845
Todo: -
License of the code: MIT
> @dg: I am afraid it is not working, see this example http://davidgrudl.com/tmp/appenditerator-finder.zip.
Commits
-------
45b68e0 [Finder] Fix unexpected duplicate sub path related AppendIterator issue
This PR was submitted for the master branch but it was merged into the 2.1 branch instead (closes#8117).
Discussion
----------
[Security] Added type of return value in VoterInterface.
| Q | A
| ------------- | ---
| Fixed tickets | none
| License | MIT
Simple addition of the return type for the `supportsClass` method, as per the `supportsAttribute` method doc in the interface.
Commits
-------
c176d1e [Security] Added type of return value in VoterInterface.
This PR was submitted for the 2.0 branch but it was merged into the 2.1 branch instead (closes#8098).
Discussion
----------
[HttpKernel] Fixed two bugs in HttpCache
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8097
| License | MIT
| Doc PR |
1. 304 responses always send "Content-Type: text/html; charset=UTF-8"
header
I discovered that the HttpCache::handle method calls Response::prepare
after calling Response::isModified. Response::isModified removes the
Content-Type header as it should, but Response::handle adds in the
default Content-Type header when none is set. If the default
Content-Type is not the correct Content-Type, then the Content-Type in
the cache gets clobered. I solved this problem by moving the
Response::isModified call after the Response::prepare call. I updated
the testRespondsWith304WhenIfModifiedSinceMatchesLastModified and
testRespondsWith304WhenIfNoneMatchMatchesETag tests to verify that the
Content-Type header was not being sent for 304 responses.
2. Failure to invalidate cached entities referred to by the Location
header
I discovered that the Store::invalidate method was looking for Location
and Content-Location headers to invalidate, but it was looking in the
request headers instead of the response headers. Because the
Store::invalidate method doesn't take a response, I decided it was
better to move this logic to the HttpCache::invalidate method instead.
I updated the testInvalidatesCachedResponsesOnPost test to verify that
Location headers are getting invalidated correctly.
Commits
-------
a4251bd [HttpKernel] Fixed two bugs in HttpCache
1. 304 responses always send "Content-Type: text/html; charset=UTF-8"
header
I discovered that the HttpCache::handle method calls Response::prepare
after calling Response::isModified. Response::isModified removes the
Content-Type header as it should, but Response::handle adds in the
default Content-Type header when none is set. If the default
Content-Type is not the correct Content-Type, then the Content-Type in
the cache gets clobered. I solved this problem by moving the
Response::isModified call after the Response::prepare call. I updated
the testRespondsWith304WhenIfModifiedSinceMatchesLastModified and
testRespondsWith304WhenIfNoneMatchMatchesETag tests to verify that the
Content-Type header was not being sent for 304 responses.
2. Failure to invalidate cached entities referred to by the Location
header
I discovered that the Store::invalidate method was looking for Location
and Content-Location headers to invalidate, but it was looking in the
request headers instead of the response headers. Because the
Store::invalidate method doesn't take a response, I decided it was
better to move this logic to the HttpCache::invalidate method instead.
I updated the testInvalidatesCachedResponsesOnPost test to verify that
Location headers are getting invalidated correctly.
This PR was merged into the 2.1 branch.
Discussion
----------
[Console] fix and refactor exit code handling
Split of #8038
Commits
-------
5c317b7 [Console] fix and refactor exit code handling
This PR was merged into the 2.1 branch.
Discussion
----------
[CssSelector] Fix :nth-last-child() translation
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8068
| License | MIT
| Doc PR | n/a
Same as #8072, but for < 2.3
Commits
-------
1469953 [CssSelector] Fix :nth-last-child() translation
This PR was merged into the 2.1 branch.
Discussion
----------
[DomCrawler] Fix Crawler::children() to not trigger a notice for childless node
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #8048
| License | MIT
| Doc PR | n/a
Commits
-------
91b8490 Fix Crawler::children() to not trigger a notice for childless node
This PR was merged into the 2.1 branch.
Discussion
----------
[Validator] Fixed XML syntax in translation.
| Q | A
| ------------- | ---
| Fixed tickets |
| License | MIT
Commits
-------
0a4837d Fixed XML syntax.
This PR was merged into the 2.1 branch.
Discussion
----------
Fixed parsing of leading blank lines in folded scalars.
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #7989
| License | MIT
| Doc PR | n/a
Fixed the issue raised in #7989. The cause was in the way the parser determined the indentation level of block scalars. When the indentation is not manually specified, the parser now determines the indentation from the first *non-empty* line as per section [8.1.1.1.](http://www.yaml.org/spec/1.2/spec.html#id2793979) of the spec.
Commits
-------
a5441b2 Fixed parsing of leading blank lines in folded scalars. Closes#7989.
This PR was submitted for the master branch but it was merged into the 2.1 branch instead (closes#7987).
Discussion
----------
[Config] FIxed Loader::import()
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? |no
| Tests pass? | yes
| Fixed tickets | fixes#7965, replaces #7983
| License | MIT
| Doc PR | -
Commits
-------
984e56a [Config] Added a test case for Loader::import().
2f69860 [Config] Fixed Loader import
This PR was squashed before being merged into the 2.1 branch (closes#7969).
Discussion
----------
[Console] Added dedicated testcase for HelperSet class
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | NA
| License | MIT
| Doc PR | NA
Previously the HelperSet class was only tested by way of the Application testcase. This patch adds a dedicated testcase and increases test coverage of the class to 100%.
Commits
-------
37af771 [Console] Added dedicated testcase for HelperSet class
This PR was merged into the 2.1 branch.
Discussion
----------
[Filesystem] Fix regression introduced in 10dea94
This is one of ideas to fix the regression from 10dea948, @kachkaev what do you think?
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| Tests pass? | yes
| Fixed tickets | #7920
| License | MIT
Commits
-------
e4913f8 [Filesystem] Fix regression introduced in 10dea948
This PR was merged into the 2.1 branch.
Discussion
----------
added a missing check for the provider key
| Q | A
| ------------- | ---
| 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
-------
5b7e1e6 added a missing check for the provider key