Commit Graph

15748 Commits

Author SHA1 Message Date
Fabien Potencier
57c695b424 feature #9578 [DomCrawler] Fixes attr method returning empty string for missing attributes (aik099)
This PR was submitted for the 2.3 branch but it was merged into the master branch instead (closes #9578).

Discussion
----------

[DomCrawler] Fixes `attr` method returning empty string for missing attributes

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

Bug discovered on Behat/MinkBrowserKitDriver#32.

Commits
-------

51d23fa [DomCrawler] Fixes `attr` method returning empty string for missing attributes
2013-11-23 08:18:27 +01:00
Alexander Obuhovich
13168bcbeb Fixes attr method returning empty string for missing attributes 2013-11-23 08:18:27 +01:00
Fabien Potencier
d8893c4d64 bug #9565 [Debug] Fixed ClassNotFoundFatalErrorHandler which could cause a fatal error (jakzal)
This PR was merged into the master branch.

Discussion
----------

[Debug] Fixed ClassNotFoundFatalErrorHandler which could cause a fatal error

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

It might happen that `require_once` will include a file second time (for example with links or case-changed paths). Therefore we need to check if a class exists before requiring the file.

I also removed an unused argument from two methods (`$loader`).

Commits
-------

0baae4c [Debug] Fixed ClassNotFoundFatalErrorHandler which could cause a fatal error.
2013-11-23 08:01:41 +01:00
Fabien Potencier
862f5e5882 bug #9525 Cache Warmup Breaks Namespaced Kernel (rdohms)
This PR was merged into the master branch.

Discussion
----------

Cache Warmup Breaks Namespaced Kernel

| Q             | A
| ------------- | ---
| Bug fix?      | [yes]
| New feature?  | [no]
| BC breaks?    | [no]
| Deprecations? | [no]
| Tests pass?   | have not tried yet
| License       | MIT
| Fixed tickets | further fixes #1431

My kernel has been moved and namespaced to `Cfs\Bundle\MultiSiteBundle\Kernel\CfsKernel`. This worked fine until a change was made to how the kernel temp stuff is handled in the warmup phase.

When the app generates its own cache (i.e you run cache without warmup and access the site) everything is generated ok and the .meta files generate the proper reference to the FQN of the Kernel.

However if the warmup is used, it uses `Cfs\Bundle\MultiSiteBundle\Kernel\CfsKerne_` as the temporary Kernel, and when it does "fix references to the Kernel in .meta files" it generates 2 errors.

1. It does not use a string safe tempKernel name, so it never finds the reference to the kernel
2. If you fix that, then it replaces the FQN of the tempKernel with `CfsKernel`, the non-namespaced name of the proper Kernel (it also leaves the character count wrong in the serialization `C:43:<class>` where 43 is the char count for the FQN above)

The two changes above fix this, by escaping the string and replacing it with a FQN Kernel Class name.

What are your thoughts on this? If this sounds reasonable i'll do further enhancements and check tests.

Commits
-------

9e7788e Cache Warmup Breaks Namespaced Kernel
2013-11-23 07:56:00 +01:00
Jakub Zalas
0baae4cde6 [Debug] Fixed ClassNotFoundFatalErrorHandler which could cause a fatal error.
It might happen that require_once will include a file second time (for
example with links or case-changed paths). Therefore we need to check
if a class exists before requiring the file.
2013-11-22 20:12:05 +00:00
Fabien Potencier
b74a887cd9 minor #9487 unify constructor initialization style throughout symfony (Tobion)
This PR was merged into the master branch.

Discussion
----------

unify constructor initialization style throughout symfony

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

In almost all classes symfony uses property initialization when the value is static. Constructor initialization is only used for things that actually have logic, like passed parameters or dynamic values. IMHO it makes the code much more readable because property definition, phpdoc and default value is in one place. Also one can easily see what the constructor implements for logic like overridden default value of a parent class. Otherwise the real deal is just hidden behind 10 property initializations. One more advantage is that it requires less code. As you can see, the code was almost cut in half (210 additions and 395 deletions).
I unified it accordingly across symfony. Sometimes it was [not even consistent within one class](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Config/Definition/BaseNode.php#L32). At the same time I recognized some errors like missing parent constructor call, or undefined properties or private properties that are not even used.

I then realized that a few Kernel tests were not passing because they were deeply implementation specific like modifying booted flag with a custom `KernelForTest->setIsBooted();`. I improved and refactored the kernel tests in the __second commit__.

__Third commit__ unifies short ternary operator, e.g. `$foo ?: new Foo()`. __Forth commit__ unifies missing parentheses, e.g. `new Foo()`.

Commits
-------

077a089 unify missing parentheses
2888594 unify short ternary operator
2a9daff [HttpKernel] better written kernel tests
111ac18 unify constructor initialization style throughout symfony
2013-11-22 18:42:00 +01:00
Fabien Potencier
efff757e24 fixed CS 2013-11-22 18:29:47 +01:00
Fabien Potencier
572c3bb900 minor #9481 [HttpFoundation] fixed the issue described in #9480 (andremaha)
This PR was merged into the master branch.

Discussion
----------

[HttpFoundation] fixed the issue described in #9480

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

Commits
-------

7d35ce3 [HttpFoundation] fixed the issue described in #9480
2013-11-22 18:25:24 +01:00
Fabien Potencier
415e0d06df minor #9542 unify and fix callable phpdoc throughout symfony (Tobion)
This PR was merged into the master branch.

Discussion
----------

unify and fix callable phpdoc throughout symfony

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

I unified the phpdoc to use "callable" as type. It wasn't done consistently. It varied between mixed, callback, callable.
I think callable is best because php 5.4 even has a typehint callable.

Commits
-------

6d5ddce unify and fix callable phpdoc throughout symfony
2013-11-22 17:55:47 +01:00
Fabien Potencier
8d8b3db758 feature #9546 [FrameworkBundle] use the new request_stack service in the GlobalVariables object (hhamon)
This PR was merged into the master branch.

Discussion
----------

[FrameworkBundle] use the new request_stack service in the GlobalVariables object

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

Commits
-------

9c2ce49 [FrameworkBundle] use the new request_stack object in the GlobalVariables object
2013-11-22 17:52:08 +01:00
Fabien Potencier
60eb4f630d bug #9566 [Console] Revert BC-break for verbose option value (chEbba)
This PR was merged into the master branch.

Discussion
----------

[Console] Revert BC-break for verbose option value

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

Closes #9285

----

PR #8835 "fixed" the input value for verbosity option with `VALUE_OPTIONAL`. And syntax like
```
cli.php -v command
cli.php --verbose command
```
Is broken now, because `ArgvInput` tries to use argument as verbose value (#9285).
For now i added a test for this case and revert this changes.

Commits
-------

432bbe1 [Console] Revert a28eb8 because of BC break
5e03e9a [Console] Add test for --verbose before argument
2013-11-22 17:23:52 +01:00
Fabien Potencier
f00146f5bf minor #9563 [Security] optimized ExpressionVoter (fabpot)
This PR was merged into the master branch.

Discussion
----------

[Security] optimized ExpressionVoter

Commits
-------

a8c74d1 [Security] optimized ExpressionVoter
2013-11-22 14:54:43 +01:00
Fabien Potencier
a8c74d1880 [Security] optimized ExpressionVoter 2013-11-22 14:45:43 +01:00
Kirill chEbba Chebunin
432bbe1af8 [Console] Revert a28eb8 because of BC break 2013-11-22 04:30:18 +04:00
Kirill chEbba Chebunin
5e03e9ad72 [Console] Add test for --verbose before argument 2013-11-22 04:30:09 +04:00
Fabien Potencier
e49ca36120 bug #9553 [FrameworkBundle] use the new request_stack service to get the Request object in the base Controller class (hhamon)
This PR was merged into the master branch.

Discussion
----------

[FrameworkBundle] use the new request_stack service to get the Request object in the base Controller class

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

Commits
-------

2e07338 [FrameworkBundle] use the new request_stack service to get the Request object in the base Controller class
2013-11-21 18:10:54 +01:00
Hugo Hamon
2e07338c5c [FrameworkBundle] use the new request_stack service to get the Request object in the base Controller class 2013-11-21 11:59:04 +01:00
Fabien Potencier
95b2d02ce9 feature #9541 [Translation] make IdentityTranslater consistent with normal translator (Tobion)
This PR was merged into the master branch.

Discussion
----------

[Translation] make IdentityTranslater consistent with normal translator

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

The MessageSelector should not be required in the constructor of the IdentityTranslator because it's also optional for the [Translator](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Translation/Translator.php#L64).
I also fixed the TranslatorInterface phpdoc and the IdentityTranslator params similar to 90a20d7835

Commits
-------

7cdb260 [Translation] make IdentityTranslater consistent with normal translator
2013-11-21 08:05:43 +01:00
Fabien Potencier
bb7ac471de minor #9540 [Security] Added a missing field in SimpleAuthenticationHandler (jakzal)
This PR was squashed before being merged into the master branch (closes #9540).

Discussion
----------

[Security] Added a missing field in SimpleAuthenticationHandler

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

Added tests and made a small CS fix as a bonus.

Btw, the properties are protected. Do we really want to provide extension points here?

Commits
-------

d553347 [Security] Added a missing field in SimpleAuthenticationHandler
2013-11-21 07:37:18 +01:00
Jakub Zalas
d553347549 [Security] Added a missing field in SimpleAuthenticationHandler 2013-11-21 07:37:18 +01:00
Fabien Potencier
b5cacc54cc bug #9536 [FrameworkBundle] Update 2 dependencies (currently broken) (asm89)
This PR was squashed before being merged into the master branch (closes #9536).

Discussion
----------

[FrameworkBundle] Update 2 dependencies (currently broken)

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

## Dependency on http-foundation

In b1a062d232 the `RequestStack` was moved to `http-foundation`, because of this the `framework-bundle` now also depends on `http-foundation`: b1a062d232 (diff-3) (at least in services.xml).

We got an error while installing the framework-bundle `2.4.*` with `prefer-stable` in our composer.json. We currently get framework-bundle 2.4 with http-kernel and http-foundation 2.3. An alternative fix would be raising the requirement of http-kernel to 2.4, but I think this is the "purest" declaration of dependencies.

Update 1
## Dependency on config

In 05e9ca7509 the config component was updated with an xml reference dumper for configuration. In the same commit the frameworkbundle dump command is updated to make use of the 2 newly introduced classes. It is currently possible to get an installation with config `2.3`, which in turn leads to an exception when running the dump-reference command:

```
 $ app/console config:dump-reference framework
# Default configuration for extension with alias: "framework"
PHP Fatal error:  Class 'Symfony\Component\Config\Definition\Dumper\YamlReferenceDumper
```

Update 2
## Dependency on http-kernel
We just found out that the dependency on http-kernel should also be updated to `2.4`. That's because the framework-bundle injects the `RequestStack` now and doesn't set the request on the `RouterListener` service anymore. Without updating the dependency it is possible to get a `RouterListener` that is not aware of the request stack (< 2.4) and none of your routes will work.

*tests are failing because of some race condition I guess?*

Commits
-------

fe5d8f8 [FrameworkBundle] Update 2 dependencies (currently broken)
2013-11-21 07:34:10 +01:00
Alexander
fe5d8f86a8 [FrameworkBundle] Update 2 dependencies (currently broken) 2013-11-21 07:34:10 +01:00
Hugo Hamon
9c2ce49d92 [FrameworkBundle] use the new request_stack object in the GlobalVariables object 2013-11-20 13:37:49 +01:00
Tobias Schultze
6d5ddce9a4 unify and fix callable phpdoc throughout symfony 2013-11-20 10:25:10 +01:00
Tobias Schultze
7cdb26066f [Translation] make IdentityTranslater consistent with normal translator 2013-11-20 03:31:35 +01:00
Fabien Potencier
8d85745430 minor #9518 Fixed typos (pborreli)
This PR was merged into the master branch.

Discussion
----------

Fixed typos

Commits
-------

8ebf7c5 Fixed typos
2013-11-19 19:29:47 +01:00
Fabien Potencier
1a992908f1 minor #9531 Add missing dependency to expression-language (armetiz)
This PR was merged into the master branch.

Discussion
----------

Add missing dependency to expression-language

Add missing dependency, without this dependency, PHPUnit can't run successfully.

Commits
-------

4206e98 Add missing dependency to expression-language
2013-11-19 19:25:17 +01:00
Fabien Potencier
c18ba190cf Merge pull request #9532 from fzaninotto/bug_trait_executable
Remove executable bit on ContainerAwareTrait PHP file
2013-11-19 10:12:24 -08:00
Francois Zaninotto
76efcc7f8c Remove executable bit on PHP file 2013-11-19 14:48:58 +01:00
Thomas Tourlourat
4206e98f01 Add missing dependency to expression-language 2013-11-19 14:20:36 +01:00
Fabien Potencier
4f51f0f1c3 bug #9529 [ExpressionLanguage] Fixed conflict between punctation and range (WouterJ)
This PR was squashed before being merged into the master branch (closes #9529).

Discussion
----------

[ExpressionLanguage] Fixed conflict between punctation and range

The range operator (`..`) was actually lexed as 2 punctations (`.`). That causes any expression using the range to fail.

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

Commits
-------

b521dc5 [ExpressionLanguage] Fixed conflict between punctation and range
2013-11-18 22:05:18 +01:00
Wouter J
b521dc5ace [ExpressionLanguage] Fixed conflict between punctation and range 2013-11-18 22:05:18 +01:00
Rafael Dohms
9e7788ea80 Cache Warmup Breaks Namespaced Kernel
My kernel has been moved and namespaced to `Cfs\Bundle\MultiSiteBundle\Kernel\CfsKernel`. This worked fine until a change was made to how the kernel temp stuff is handled in the warmup phase.

When the app generates its own cache (i.e you run cache without warmup and access the site) everything is generated ok and the .meta files generate the proper reference to the FQN of the Kernel.

However if the warmup is used, it uses `Cfs\Bundle\MultiSiteBundle\Kernel\CfsKerne_` as the temporary Kernel, and when it does "fix references to the Kernel in .meta files" it generates 2 errors.

1. It does not use a string safe tempKernel name, so it never finds the reference to the kernel
2. If you fix that, then it replaces the FQN of the tempKernel with `CfsKernel`, the non-namespaced name of the proper Kernel (it also leaves the character count wrong in the serialization `C:43:<class>` where 43 is the char count for the FQN above)

The two changes above fix this, by escaping the string and replacing it with a FQN Kernel Class name.

What are your thoughts on this?
2013-11-18 11:39:25 +01:00
Fabien Potencier
4e9332b6b6 minor #9519 [Debug] Fixed a typo. (jakzal)
This PR was merged into the master branch.

Discussion
----------

[Debug] Fixed a typo.

@pborreli style ;)

Commits
-------

df90c62 [Debug] Fixed a typo.
2013-11-17 09:45:14 +01:00
Jakub Zalas
df90c623f9 [Debug] Fixed a typo. 2013-11-16 18:00:51 +00:00
Pascal Borreli
8ebf7c5515 Fixed typos 2013-11-16 15:13:54 +00:00
Tobias Schultze
077a089b4e unify missing parentheses 2013-11-14 15:30:56 +01:00
Tobias Schultze
2888594dbd unify short ternary operator 2013-11-14 15:22:38 +01:00
Fabien Potencier
587f355137 Merge branch '2.3'
* 2.3: (25 commits)
  bumped Symfony version to 2.2.11
  updated VERSION for 2.2.10
  update CONTRIBUTORS for 2.2.10
  updated CHANGELOG for 2.2.10
  fixed version
  Request::overrideGlobals() may call invalid ini value
  Force Luhn Validator to only work with strings
  Fixed bug with lazy services
  [Translation] fixed the error in the dumper test as described in #9475
  deleted mixing string concatenation inside a sprintf
  "__call()" should be displayed only if $this->magicCall is true
  [Console] fix phpdoc and constructor default value
  Add media-query for printing: Do not print the toolbar.
  Fix ProgressHelper redraw when redrawFreq is greater than 1
  Update toolbar.css.twig
  slovenian translations fixed
  slovenian translations fixed
  [DependencyInjection] fixed YamlDumper did not make services private.
  [FrameworkBundle] fix routing container parameter exception message
  [Form] fix and unify phpdoc
  ...

Conflicts:
	src/Symfony/Component/Console/Helper/ProgressHelper.php
	src/Symfony/Component/DependencyInjection/ContainerBuilder.php
	src/Symfony/Component/HttpKernel/Kernel.php
2013-11-13 22:30:16 +01:00
Fabien Potencier
59a4313a52 Merge branch '2.2' into 2.3
* 2.2:
  bumped Symfony version to 2.2.11
  updated VERSION for 2.2.10
  update CONTRIBUTORS for 2.2.10
  updated CHANGELOG for 2.2.10
  fixed version
  Request::overrideGlobals() may call invalid ini value
  Force Luhn Validator to only work with strings
  [Translation] fixed the error in the dumper test as described in #9475
  [Console] fix phpdoc and constructor default value

Conflicts:
	src/Symfony/Component/Console/Helper/ProgressHelper.php
	src/Symfony/Component/HttpKernel/Kernel.php
2013-11-13 22:27:40 +01:00
Fabien Potencier
16b01ec1bc bumped Symfony version to 2.2.11 2013-11-13 22:22:57 +01:00
Fabien Potencier
14979a3bf9 updated VERSION for 2.2.10 2013-11-13 15:29:12 +01:00
Fabien Potencier
7e744370d7 update CONTRIBUTORS for 2.2.10 2013-11-13 15:29:00 +01:00
Fabien Potencier
09da15b24d updated CHANGELOG for 2.2.10 2013-11-13 15:28:18 +01:00
Fabien Potencier
72d961847f fixed version 2013-11-13 15:28:11 +01:00
Fabien Potencier
2866bd4956 bug #9499 Request::overrideGlobals() may call invalid ini value (denkiryokuhatsuden)
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes #9499).

Discussion
----------

Request::overrideGlobals() may call invalid ini value

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

According to http://php.net/manual/ja/ini.core.php ,
there's not variable_order, but variables_order (with trailing "s").

Perhaps it breaks BC for some developer who unsets (sets falsy value to )
'request_order' ini value and sets 'variable_order' manually?

Commits
-------

7f43fb8 Request::overrideGlobals() may call invalid ini value
2013-11-13 09:30:53 +01:00
Daisuke Ohata
9bc76ca13d Request::overrideGlobals() may call invalid ini value
According to http://php.net/manual/ja/ini.core.php ,
there's not variable_order, but variables_order (with trailing "s").

Perhaps it breaks BC for some developer who unsets
'request_order' ini value and sets 'variable_order' manually?
2013-11-13 09:30:53 +01:00
Fabien Potencier
1667197875 feature #9494 made Router implement RequestMatcherInterface (fabpot)
This PR was merged into the master branch.

Discussion
----------

made Router implement RequestMatcherInterface

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

Commits
-------

42346ea made Router implement RequestMatcherInterface
2013-11-12 22:52:06 +01:00
Fabien Potencier
42346ea3a2 made Router implement RequestMatcherInterface 2013-11-12 08:05:02 +01:00
Tobias Schultze
2a9daff8d9 [HttpKernel] better written kernel tests 2013-11-11 19:41:19 +01:00