8000 [FrameworkBundle] Fixes invalid serialized objects in cache by jfsimon · Pull Request #7235 · symfony/symfony · GitHub
[go: up one dir, main page]

Skip to content

[FrameworkBundle] Fixes invalid serialized objects in cache #7235

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 4,049 commits into from

Conversation

jfsimon
Copy link
Contributor
@jfsimon jfsimon commented Mar 1, 2013
Q A
Bug fix? yes
New feature? no
BC breaks? no
Deprecations? no
Tests pass? yes
Fixed tickets #6203

Fixes 2 problems:

  • malformed router chache filenames (matcher & dumper)
  • invalid cache file paths in serialized objects (.meta files)

fabpot and others added 30 commits November 29, 2012 11:32
* 2.0:
  [DependencyInjection] fixed composer.json
  [Form] Updated checks for the ICU version from 4.5+ to 4.7+ due to test failures with ICU 4.6
  fixed CS
  small fix of symfony#5984 when the container param is not set
  fixed CS
  Use better default ports in urlRedirectAction
  Add tests for urlRedirectAction
  Update src/Symfony/Component/DomCrawler/Tests/FormTest.php
  Update src/Symfony/Component/DomCrawler/Form.php
  [Security] remove escape charters from username provided by Digest DigestAuthenticationListener
  [Security] added test extra for digest authentication
  fixed CS
  [Security] Fixed digest authentication
  [Security] Fixed digest authentication
  [SecurityBundle] Convert Http method to uppercase in the config
  Use Norm Data instead of Data

Conflicts:
	src/Symfony/Bridge/Doctrine/Form/EventListener/MergeCollectionListener.php
	src/Symfony/Bundle/FrameworkBundle/Controller/RedirectController.php
	src/Symfony/Component/DependencyInjection/composer.json
* 2.0:
  replaced magic strings by proper constants
  refactored tests for Request
  fixed the logic in Request::isSecure() (if the information comes from a source that we trust, don't check other ones)
  added a way to configure the X-Forwarded-XXX header names and a way to disable trusting them
  fixed algorithm used to determine the trusted client IP
  removed the non-standard Client-IP HTTP header

Conflicts:
	src/Symfony/Component/HttpFoundation/Request.php
	src/Symfony/Component/HttpFoundation/Tests/RequestTest.php
* 2.0:
  [HttpFoundation] reverted variable rename

Conflicts:
	src/Symfony/Component/HttpFoundation/Request.php
…hasSession() as this is a recurrent question (refs symfony#4541)
* 2.0:
  [TwigBundle] Moved the registration of the app global to the environment
  needs to use simpleContent in xsd to allow empty elements
  bumped Symfony version to 2.0.19-DEV
  removed wrong routing xsd statement `mixed="true"`
  removed unused attribute from routing.xsd
  updated VERSION for 2.0.19
  update CONTRIBUTORS for 2.0.19
  updated CHANGELOG for 2.0.19

Conflicts:
	CONTRIBUTORS.md
	src/Symfony/Bundle/TwigBundle/Resources/config/twig.xml
	src/Symfony/Bundle/TwigBundle/TwigEngine.php
	src/Symfony/Component/HttpKernel/Kernel.php
This PR was submitted for the master branch but it was merged into the 2.1 branch instead (closes symfony#6177).

Commits
-------

964074a Fix namespace of Validator and BrowserKit Tests

Discussion
----------

Fix namespace of Validator and BrowserKit Tests

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Todo: -
License of the code: MIT
This is just for consistency with the node type (Boolean)
This PR was submitted for the master branch but it was merged into the 2.1 branch instead (closes symfony#6155).

Commits
-------

88811f4 [FrameworkBundle] Fixed DefaultValue for session.auto_start in NodeDefinition

Discussion
----------

[FrameworkBundle] Fixed DefaultValue for session.auto_start in NodeDefinition

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets:
Todo: -
License of the code: MIT
Documentation PR: -

This is just for consistency with the node type.

---------------------------------------------------------------------------

by fabpot at 2012-11-30T07:17:33Z

I don't see the need to change the default value as this is deprecated anyway.

---------------------------------------------------------------------------

by franmomu at 2012-11-30T07:35:35Z

I was trying to validate default values in Config Component and if I do this throws an exception
This PR was merged into the 2.1 branch.

Commits
-------

d03281b [Security] Move DigestDataTest.php inside the Security component

Discussion
----------

[Security] Move DigestDataTest.php inside the Security component

Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Todo: -
License of the code: MIT
* 2.0:
  [Locale] fixed tests
  [Config] Fixed tests on Windows
  [TwigBundle] Fixed tests

Conflicts:
	phpunit.xml.dist
	src/Symfony/Bundle/TwigBundle/Tests/TwigEngineTest.php
	src/Symfony/Component/Locale/Tests/Stub/StubIntlDateFormatterTest.php
	src/Symfony/Component/Locale/Tests/Stub/StubNumberFormatterTest.php
This PR was merged into the 2.1 branch.

Commits
-------

10e5f3b Removed useless branch alias for dev-master in composer.json

Discussion
----------

[2.1] Fixed composer.json

---------------------------------------------------------------------------

by fabpot at 2012-12-06T08:23:35Z

Why is is useless?

---------------------------------------------------------------------------

by hason at 2012-12-06T08:30:58Z

Because the ``dev-master`` branch is alias for ``2.2-dev`` as mentioned @stof in symfony#6196 (comment).

---------------------------------------------------------------------------

by fabpot at 2012-12-06T08:33:42Z

got it now. Can you fix your PR as there are some unrelated commits? Thanks.

---------------------------------------------------------------------------

by hason at 2012-12-06T09:02:50Z

I backported some "unrelated" commits for better usage with composer. Should I remove these?

---------------------------------------------------------------------------

by fabpot at 2012-12-06T09:05:45Z

We do not backport things. So, please, remove them.

---------------------------------------------------------------------------

by hason at 2012-12-06T10:02:08Z

done
This PR was merged into the 2.1 branch.

Commits
-------

b604eb7 [DoctrineBridge] Improved performance of the EntityType when used with the "query_builder" option
db2ee54 [DoctrineBridge] Improved exception message
99321cb [DoctrineBridge] Fixed: Exception is thrown if the entity class is not known to Doctrine

Discussion
----------

[DoctrineBridge] fixed caching when EntityType is used with the "query_builder" option

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -
* 2.0:
  [HttpFoundation] changed UploadedFile::move() to use move_uploaded_file() when possible (closes symfony#5878, closes symfony#6185)
  [HttpFoundation] added a check for the host header value

Conflicts:
	src/Symfony/Component/HttpFoundation/File/File.php
	src/Symfony/Component/HttpFoundation/Request.php
	src/Symfony/Component/HttpFoundation/Tests/RequestTest.php
…EFAULT_FORMAT if "widget" is not "single_text"
This PR was merged into the 2.1 branch.

Commits
-------

ca5d9ac [DoctrineBridge] Fixed caching in DoctrineType when "choices" or "preferred_choices" is passed

Discussion
----------

[DoctrineBridge] Fixed caching in DoctrineType when "choices" or "preferred_choices" is passed

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: symfony#6190
Todo: -
License of the code: MIT
Documentation PR: n/a

----------------------------------------------------------
10000
-----------------

by craue at 2012-12-06T18:31:43Z

:+1:

---------------------------------------------------------------------------

by lstrojny at 2012-12-06T18:35:04Z

What about a test?

---------------------------------------------------------------------------

by bschussek at 2012-12-07T12:39:51Z

Removed CHANGELOG entries and added tests.

---------------------------------------------------------------------------

by craue at 2012-12-07T13:14:02Z

I'm not sure if @fabpot is objected to the changelog entry entirely or just the version number. What is the segfault about for PHP 5.4 in Travis?
This PR was merged into the 2.1 branch.

Commits
-------

6e7e08f [Form] Fixed the default value of "format" in DateType to DateType::DEFAULT_FORMAT if "widget" is not "single_text"

Discussion
----------

[Form] Fixed the "format" option in DateType

Bug fix: yes
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: symfony#6141
Todo: -
License of the code: MIT
Documentation PR: -

This PR fixes a regression introduced in symfony#4839. To quote that PR:

> This PR changes DateType and DateTimeType to support HTML5 by default when setting the option "widget" to "single_text".

In reality, the "format" option now defaults to the HTML5 format always, not just when "widget" is "single_text". This is fixed here.

The second commit in this PR removes special characters between select/text fields. What, with German locale, was

```
<day input>.<month input>.<year input>
```

before is now

```
<day input><month input><year input>
```

This is the way date fields are represented on the majority of websites. If you *need* separators, you can have them by setting the "format" option to a custom value:

```php
$builder->add('myDate', 'date', array(
    'format' => 'dd.MM.yyyy',
));
```

---------------------------------------------------------------------------

by fabpot at 2012-12-07T08:52:21Z

The second commit should probably be done on master and it changes the behavior.

---------------------------------------------------------------------------

by bschussek at 2012-12-07T12:23:22Z

Ok, I removed the second commit now and removed the entries from the CHANGELOG.
This PR was merged into the 2.1 branch.

Commits
-------

a37e5e3 [Form] Fix const inside an anonymous function

Discussion
----------

[Form] Fix const inside an anonymous function for PHP5.3

Related with the comment in symfony#6217

---------------------------------------------------------------------------

by lsmith77 at 2012-12-10T09:14:20Z

+1 .. would be good to get this merged ASAP // @fabpot @bschussek
When having a Cache-Control header like:

    max-age="0"

isset($match[2]) is true but $match[2] containing: "0", it is evaluated
as false and 'true' will be set to "max-age" entry instead of "0".
symfony#6252)

This PR was submitted for the master branch but it was merged into the 2.1 branch instead (closes symfony#6252).

Commits
-------

97d9bf0 Fixed: HeaderBag::parseCacheControl() not parsing quoted zero correctly

Discussion
----------

Fixed: HeaderBag::parseCacheControl() not parsing quoted zero correctly

When having a Cache-Control header like:

    max-age="0"

```isset($match[2])``` is true but ```$match[2]``` containing: ```"0"```, it is evaluated
as ```false```. The result is that ```true``` will be set to "max-age" entry instead of ```"0"```.
Johannes Klauss and others added 24 commits February 22, 2013 19:02
This PR was squashed before being merged into the 2.1 branch (closes symfony#7153).

Commits
-------

b2080c4 [HttpFoundation] Remove Cache-Control when using https download via IE<9 (fixes symfony#6750)

Discussion
----------

[HttpFoundation] Remove Cache-Control when using https download via IE<9 (fixes symfony#6750)

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | symfony#6750
| License       | MIT
| Doc PR        |
This PR was merged into the 2.1 branch.

Commits
-------

06ebb0d Defined stable version point of Doctrine.

Discussion
----------

Defined stable version point of Doctrine.

As per @stof suggestion, updated 2.1 branch to define the stable version point for Doctrine libraries. @fabpot it's all yours! =)

```
| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
```
* 2.0:
  [Form] Fixed "label" option to accept the value "0"
  [DomCrawler] lowered parsed protocol string (fixes symfony#6986)

Conflicts:
	src/Symfony/Component/Form/Extension/Core/Type/FieldType.php
	tests/Symfony/Tests/Component/Form/Extension/Core/Type/FieldTypeTest.php
The HTML5 spec states that the href attribute is optional for the
base tag. Fixed the DomCrawler::addHtmlContent() method to support this

See here and here:
http://www.w3.org/TR/html-markup/base.html#base.attrs.href
http://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#the-base-element
…symfony#7178)

This PR was submitted for the master branch but it was merged into the 2.1 branch instead (closes symfony#7178).

Commits
-------

c41f640 [DomCrawler] Fixed handling absent href attribute in base tag

Discussion
----------

[DomCrawler] Fixed handling absent href attribute in base tag

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

# Description
The HTML5 spec states that the href attribute is optional for the
base tag. The current code causes an exception on conforming HTML.
Fixed the DomCrawler::addHtmlContent() method to support this.
Added Unit Test to check for this situation.

# Explanantion
Currently, if the base tag doesn't have an href attribute, the uri for the DomCrawler gets set to an empty string. This is incorrect behaviour, especially because it breaks DomCrawler::links(). The Symfony\Component\DomCrawler\Link objects it creates, expect a non-empty string in their constructor arguments and throw an InvalidArgumentException.

# References
http://www.w3.org/TR/html-markup/base.html#base.attrs.href
http://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#the-base-element
This PR was merged into the 2.1 branch.

Commits
-------

0690709 added a DebuClassLoader::findFile() method to make the wrapping less invasive

Discussion
----------

added a DebuClassLoader::findFile() method to make the wrapping less invasive

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

i have classified it as a bug fix, since due to the wrapping it can break assumptions about the loaded class loader, so implementing this method at least doesnt break the assumption that ``findFile()`` is available.

actually i think we should also introduced a loader interface to reduce the duct typing

---------------------------------------------------------------------------

by stof at 2013-02-24T16:39:46Z

:-1: for the interface:

- it would make the use of the autoloader more difficult (you would have to require the interface before requiring the loader)
- it would forbid using these wrappers with the composer ClassLoader

---------------------------------------------------------------------------

by digitalkaoz at 2013-02-24T19:16:36Z

mh, i think all autoloaders should follow a common interface, maybe its worth to think about a PSR?

---------------------------------------------------------------------------

by lsmith77 at 2013-02-24T19:27:27Z

ah I see

---------------------------------------------------------------------------

by stof at 2013-02-24T20:33:07Z

@digitalkaoz Such an interface would have to be in PHP itself, otherwise, you would have to require it first each time (as it cannot be autoloaded before registering the autoloader). And an autoloader in PHP is just a callable.

---------------------------------------------------------------------------

by digitalkaoz at 2013-02-24T20:47:10Z

Yes @stof, i know, but it would be nice if all autoloaders follows a common pattern , call it a convention ;)
…e text in trans tags (closes symfony#7056)

Trimming was not done by the extractor but it was the default behavior
of the TransNode class. Now, things are consistent between the two.
A link (anchor tag with an href attr) in crawled by the Crawler
can contain any valid URI, including mailto: links.

Currently this is not correctly supported by Link::getUri.
Schemes that do not start with 'http' are treated as relative URIs
and appenden to the base URI. This leads to strange URIs like this:
http://foo.com/mailto:foo@bar.com

Fixed Link::getUri to treat any URI with a schema part as an
absolute URL. Updated the unit tests to test for this.
…(PR symfony#7214)

This PR was merged into the 2.1 branch.

Commits
-------

8f8ba38 [DomCrawler] fix handling of schemes by Link::getUri()

Discussion
----------

[DomCrawler] fixed handling of schemes by Link::getUri()

A link (anchor tag with an href attr) in pages crawled by the Crawler
can contain any valid URI, including mailto: links.

Currently this is not correctly supported by `Link::getUri`.
Schemes that do not start with 'http' are treated as relative URIs
and appenden to the base URI. This leads to strange URIs like this:
http://foo.com/mailto:foo@bar.com

Fixed `Link::getUri` to treat any URI with a schema part as an
absolute URL. Updated the unit tests to test for this.

---------------------------------------------------------------------------

by matthijsvandenbos at 2013-02-28T11:55:18Z

Ok, I will update the pull request

---------------------------------------------------------------------------

by matthijsvandenbos at 2013-02-28T12:25:45Z

Fixed
This PR was squashed before being merged into the 2.1 branch (closes symfony#7206).

Commits
-------

bae83c7 [TwigBridge] fixed trans twig extractor

Discussion
----------

[TwigBridge] fixed trans twig extractor

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | symfony#6943
This PR was merged into the 2.1 branch.

Commits
-------

5b19c89 [Console] fixed unparsed StringInput tokens
635b1fc StringInput resets the given options.

Discussion
----------

[Console] fixes unparsed StringInput tokens

`StringInput` instances call `setToken` after constructor, `parse` method is called in constructor, so `StringInput` tokens where never parsed.

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | symfony#6749
This PR was submitted for the master branch but it was merged into the 2.1 branch instead (closes symfony#7224).

Commits
-------

801a71f [Console] Options small typo

Discussion
----------

[Console] Fix small Options typo

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| License       | MIT
* 2.0:
  [Console] Fixed comment

Conflicts:
	src/Symfony/Component/Console/Output/OutputInterface.php
@jfsimon
Copy link
Contributor Author
jfsimon commented Mar 1, 2013

Ooops :\

@jfsimon jfsimon closed this Mar 1, 2013
@jfsimon
Copy link
Contributor Author
jfsimon commented Mar 1, 2013

Replaced with #7235

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.

0