Commit Graph

16897 Commits

Author SHA1 Message Date
Nick Stemerdink 861d3075b3 Fixed bug that incorrectly causes the "required" attribute to be omitted from select even though it contains the "multiple" attribute 2014-03-19 14:38:32 +01:00
Fabien Potencier d4a78fec32 minor #10142 [Tests] Added travis_retry to .travis.yml (lavoiesl)
This PR was submitted for the 2.3-dev branch but it was merged into the 2.3 branch instead (closes #10142).

Discussion
----------

[Tests] Added travis_retry to .travis.yml

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

As stated on their [blog](http://blog.travis-ci.com/2013-05-20-network-timeouts-build-retries/), this is the recommended way.

Example of a failed build because of it:
https://travis-ci.org/symfony/symfony/jobs/17664775

Commits
-------

702432a Added travis_retry to .travis.yml
2014-03-19 11:54:27 +01:00
Sébastien Lavoie 6db5014f4c Added travis_retry to .travis.yml
As stated on their [blog](http://blog.travis-ci.com/2013-05-20-network-timeouts-build-retries/), this is the recommended way.

Example of a failed build because of it:
https://travis-ci.org/symfony/symfony/jobs/17664775
2014-03-19 11:54:26 +01:00
Fabien Potencier 53fec31566 feature #9097 [Validator] Added hasser support for entity method validation (bicpi)
This PR was squashed before being merged into the 2.5-dev branch (closes #9097).

Discussion
----------

[Validator] Added hasser support for entity method validation

Hasser support was added in addition to existing getter and isser support for more consistency between components

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

Commits
-------

e8b6978 [Validator] Added hasser support for entity method validation
2014-03-19 10:45:16 +01:00
Philipp Rieber e8b6978d3a [Validator] Added hasser support for entity method validation 2014-03-19 10:45:16 +01:00
Fabien Potencier cc5f606356 minor #10484 [Process] fix some typos and refactor some code (Tobion)
This PR was merged into the 2.3 branch.

Discussion
----------

[Process] fix some typos and refactor some code

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

Commits
-------

b422613 [Process] fix some typos and refactor some code
2014-03-19 07:27:25 +01:00
Fabien Potencier b14fa26b67 feature #10476 [Console] Fixed unsetting of setted attributes on OutputFormatterStyle (Badkill)
This PR was merged into the 2.5-dev branch.

Discussion
----------

[Console] Fixed unsetting of setted attributes on OutputFormatterStyle

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

Unset only previous setted styles in place of all styles, before this fix,
OutputFormatterStyle reset all attributes with '\e[0m' sequence.
Now, if a foreground is setted, reset only the foreground so you can use innested attributes

Conflicts:
	src/Symfony/Component/Console/Tests/Formatter/OutputFormatterStyleTest.php
	src/Symfony/Component/Console/Tests/Formatter/OutputFormatterTest.php
	src/Symfony/Component/Console/Tests/Output/OutputTest.php

Commits
-------

ce0c4b4 [Console] Fixed unsetting of setted attributes on OutputFormatterStyle
2014-03-19 07:24:10 +01:00
Fabien Potencier 1e9e8afa5d bug #10479 [2.3][Process] Fix escaping on Windows (romainneutron)
This PR was merged into the 2.3 branch.

Discussion
----------

[2.3][Process] Fix escaping on Windows

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

Windows escaping is broken since the last merges.

After digging more on Windows escaping, I realised some things:
 - We forbid environment variable expansion by escaping `%APPDATA%` to `^%"APPDATA"^%`
 - We explicitly ask for variable expansion at runtime (running the command line with the [`/V:ON`](https://github.com/symfony/symfony/blob/2.3/src/Symfony/Component/Process/Process.php#L235) flag). Running a command containing `!APPDATA!` will be escaped and expanded (our previous rule is easily overriden)
 - On platform that are not windows, we use strong escaping that prevents any variable expansion (`$PATH` will be escaped to `'$PATH'` that is not interpreted as the current PATH)

We have three possibilities:
 - Keep this behavior as this.
 - Prefer a consistent API and use a strong escaping strategy everywhere, but it would result in a BC break (see #8975).
 - Allow environment variable expansion and escape `%APPDATA%` to `"%APPDATA%"`

Any thoughts about this ?

Commits
-------

0f65f90 [Process] Fix escaping on Windows
2014-03-19 07:22:00 +01:00
Danilo Silva ce0c4b4284 [Console] Fixed unsetting of setted attributes on OutputFormatterStyle
Unset only previous setted styles in place of all styles, before this fix,
OutputFormatterStyle reset all attributes with '\e[0m' sequence.
Now, if a foreground is setted, reset only the foreground so you can use innested attributes

Conflicts:
	src/Symfony/Component/Console/Tests/Formatter/OutputFormatterStyleTest.php
	src/Symfony/Component/Console/Tests/Formatter/OutputFormatterTest.php
	src/Symfony/Component/Console/Tests/Output/OutputTest.php
2014-03-18 22:29:59 +01:00
Tobias Schultze b4226137f6 [Process] fix some typos and refactor some code 2014-03-18 21:00:58 +01:00
Fabien Potencier fccf8b509a minor #10483 [2.3][Process] Fix unit tests in sigchild disabled environment (romainneutron)
This PR was merged into the 2.3 branch.

Discussion
----------

[2.3][Process] Fix unit tests in sigchild disabled environment

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

We've been a bit fast when merging #10480 and tests were broken in the last update I did.

Commits
-------

5f6ee12 [Process] Fix unit tests in sigchild disabled environment
2014-03-18 20:16:36 +01:00
Romain Neutron 5f6ee1205a [Process] Fix unit tests in sigchild disabled environment 2014-03-18 19:09:01 +01:00
Fabien Potencier c57fbdad25 bug #10480 [Process] Fixed fatal errors in getOutput and getErrorOutput when process was not started (romainneutron)
This PR was merged into the 2.3 branch.

Discussion
----------

[Process] Fixed fatal errors in getOutput and getErrorOutput when process was not started

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

This PR replaces #9452 and address the latest changes.
Side note : I've not updated `getExitCode`, `getExitCodeText` and `isSuccessful` as they were explicitly tested to return null in case the process is not started or terminated. I think it would be a BC break to do that.

Commits
-------

449fe01 [Process] Trow exceptions in case a Process method is supposed to be called after termination
0ae6858 [Process] fixed fatal errors in getOutput and getErrorOutput when process was not started
2014-03-18 19:00:11 +01:00
Romain Neutron 449fe01992 [Process] Trow exceptions in case a Process method is supposed to be called after termination 2014-03-18 18:34:51 +01:00
Fabien Potencier e4c4a7d538 fixed typo 2014-03-18 17:51:19 +01:00
Fabien Potencier 442c4700a5 bug #10420 [2.3][Process] Make Process::start non-blocking on Windows platform (romainneutron)
This PR was merged into the 2.3 branch.

Discussion
----------

[2.3][Process] Make Process::start non-blocking on Windows platform

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

This PR is a proposition that solves issue #9755.

Let me sum-up what problems we have on Windows platform:
 - We can not use pipes with `proc_open` on Windows because `stream_set_blocking` does not work on this platform, resulting in blocking pipes and a blocking `Process::start` (see https://bugs.php.net/bug.php?id=51800, https://bugs.php.net/bug.php?id=47918 and https://bugs.php.net/bug.php?id=50856).
 - We can not use file handles for both `STDOUT` and `STDERR` as it might produce corrupted content (see https://bugs.php.net/bug.php?id=65650).
 - We currently use file handles for `STDOUT` and pipe for `STDERR` but it makes `Process::start` blocking.

The solution I propose here is to use native redirections, write `STDERR` / `STDOUT` in temporary files, read these files, finally cleanup.
It works pretty well, all tests pass on Windows. Better : [previous tests that were specific to this platform](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Process/Tests/AbstractProcessTest.php#L720-725) disappear as unix one are now okay :).

The drawback of this is the need of using `taskkill`: When stopping a process (`Process::stop` or in case of a timeout reached) `proc_terminate` does not kill the underlying process properly, only the `cmd` parent. The underlying process run by Process still runs after the `proc_terminate` call, having a lock on the temporary files we're using for getting the output, avoiding PHP to remove them (or any user on system) until the underlying process has finish to run).
So I use the `taskkill` Windows command to terminate the underlying process. This works well but I've to admit it's not pretty. If we do not use this hack, let's face that the underlying process is not stopped.

Last but not least, let's deal with the case we're running on Windows platform with PHP having --enable-sigchild environment (I don't know if it can really happen)
In this case:
 - we can not retrieve the `pid`
 - we can not `taskkill` the underlying process
 - it runs
 - locks remain on temporary files, we might not be able to remove them
We can't really deal with this.

Feedback more than welcome

Commits
-------

1f5bf32 [Process] Make Process::start non-blocking on Windows platform
2014-03-18 15:17:47 +01:00
Max Voloshin 0ae685878c [Process] fixed fatal errors in getOutput and getErrorOutput when process was not started 2014-03-18 15:14:03 +01:00
Romain Neutron 0f65f90b06 [Process] Fix escaping on Windows
Windows escaping is broken since the last merges.
2014-03-18 15:00:41 +01:00
Fabien Potencier 8170db84b3 feature #10473 [WebProfilerBundle] enhance logs display (nicolas-grekas)
This PR was merged into the 2.5-dev branch.

Discussion
----------

[WebProfilerBundle] enhance logs display

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

Commits
-------

3e6c940 [WebProfilerBundle] enhance logs display
2014-03-18 14:44:19 +01:00
Romain Neutron 1f5bf324fe [Process] Make Process::start non-blocking on Windows platform 2014-03-18 10:55:01 +01:00
Fabien Potencier 6deb4ccb88 minor #10474 [Console] Rename Command::setProcessName to Command::setProcessTitle (lyrixx)
This PR was merged into the 2.5-dev branch.

Discussion
----------

[Console] Rename Command::setProcessName to Command::setProcessTitle

To be more consistant with the underlying system.

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no (because the 2.5 is not released yet)
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | none
| License       | MIT
| Doc PR        | none

Commits
-------

6786f6d [Console] Rename Command::setProcessName to Command::setProcessTitle
2014-03-18 10:32:32 +01:00
Nicolas Grekas 3e6c940495 [WebProfilerBundle] enhance logs display 2014-03-18 10:04:14 +01:00
Grégoire Pineau 6786f6db18 [Console] Rename Command::setProcessName to Command::setProcessTitle
To be more consistant with the underlying system.
2014-03-18 00:05:29 +01:00
Fabien Potencier 71dc07ce08 feature #10466 [Debug] add a screaming mode to ErrorHandler (nicolas-grekas)
This PR was merged into the 2.5-dev branch.

Discussion
----------

[Debug] add a screaming mode to ErrorHandler

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

Collect and display silenced PHP errors in the debug toolbar.

Commits
-------

5cc817d [Debug] add a screaming mode to ErrorHandler
2014-03-17 16:55:06 +01:00
Fabien Potencier 02088bc62f fixed CS 2014-03-17 16:43:11 +01:00
Fabien Potencier 433a13aef7 minor #10470 [server:run] [#10461] Add docs about custom environment (WouterJ)
This PR was merged into the 2.3 branch.

Discussion
----------

[server:run] [#10461] Add docs about custom environment

| Q             | A
| ------------- | ---
| Fixed tickets | #10461, https://github.com/symfony/symfony-docs/issues/3688
| License       | MIT

It's better to document this specific usecase in the command help.

Commits
-------

6871a61 [#10461] Add docs about custom environment
2014-03-17 16:42:55 +01:00
Fabien Potencier c152ccb5b6 minor #10469 fix doc block and namespace by @insekticide (cordoval)
This PR was merged into the 2.5-dev branch.

Discussion
----------

fix doc block and namespace by @insekticide

|Q            |A     |
|---          |---   |
|Bug Fix?     |yes   |
|New Feature? |no    |
|BC Breaks?   |no    |
|Deprecations?|no    |
|Tests Pass?  |yes   |
|Fixed Tickets|#10464|
|License      |MIT   |
|Doc PR       |      |

Commits
-------

89bde6e fix class namespace by @insekticid and doc block fix
2014-03-17 16:29:53 +01:00
Wouter J 6871a614b9 [#10461] Add docs about custom environment 2014-03-17 16:16:17 +01:00
Nicolas Grekas 5cc817d1bd [Debug] add a screaming mode to ErrorHandler 2014-03-17 14:44:56 +00:00
Luis Cordova 89bde6e03b fix class namespace by @insekticid and doc block fix 2014-03-17 07:23:37 -07:00
Fabien Potencier 2193f3db39 minor #10460 Typo fix at UploadedFile.php documentation (jbruni)
This PR was submitted for the 2.3-dev branch but it was merged into the 2.3 branch instead (closes #10460).

Discussion
----------

Typo fix at UploadedFile.php documentation

Commits
-------

ced3f04 Typo fix at UploadedFile.php documentation
2014-03-16 09:02:28 +01:00
J Bruni d02e2aa7e8 Typo fix at UploadedFile.php documentation 2014-03-16 09:02:27 +01:00
Fabien Potencier 48c9985e73 feature #10451 [TwigBundle] Add possibility to generate absolute assets urls (romainneutron)
This PR was merged into the 2.5-dev branch.

Discussion
----------

[TwigBundle] Add possibility to generate absolute assets urls

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/3683

This is another approach of #7722

 - [x] Add unit tests
 - [x] Update doc

Commits
-------

76b8851 [TwigBundle] Add possibility to generate absolute assets urls
2014-03-15 09:47:57 +01:00
Fabien Potencier 5d25c8dd4e bug #10455 [2.3][Process] Fix random failures in test suite on TravisCI (romainneutron)
This PR was merged into the 2.3 branch.

Discussion
----------

[2.3][Process] Fix random failures in test suite on TravisCI

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

Commits
-------

783e377 [Process] Avoid failures because of slow IOs
238565e [Process] Avoid failure because of a slow process
173f8c5 [Process] Avoid failure when calling Process::stop in edge cases
2014-03-15 09:46:55 +01:00
Fabien Potencier a635c4f9a3 bug #10456 [Process] Handle idle timeout and disabled output conflict (romainneutron)
This PR was merged into the 2.5-dev branch.

Discussion
----------

[Process] Handle idle timeout and disabled output conflict

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #10453
| License       | MIT
| Doc PR        | WIP (a note should be added in the doc)

Commits
-------

ae84810 [Process] Increase tests speed
40c08c6 [Process] Handle idle timeout and disable output conflict
2014-03-15 09:40:48 +01:00
Romain Neutron 783e377eed [Process] Avoid failures because of slow IOs
See example of failure here https://travis-ci.org/symfony/symfony/jobs/20701462
2014-03-14 19:58:01 +01:00
Romain Neutron ae8481038e [Process] Increase tests speed 2014-03-14 19:46:29 +01:00
Romain Neutron 40c08c640e [Process] Handle idle timeout and disable output conflict 2014-03-14 19:08:20 +01:00
Romain Neutron 238565e93a [Process] Avoid failure because of a slow process
See example of failure here https://travis-ci.org/symfony/symfony/jobs/20761834.
2014-03-14 18:34:18 +01:00
Romain Neutron 173f8c5fd2 [Process] Avoid failure when calling Process::stop in edge cases
See https://travis-ci.org/symfony/symfony/jobs/20664994 for an example of failure.
2014-03-14 18:34:18 +01:00
Romain Neutron 76b88511a6 [TwigBundle] Add possibility to generate absolute assets urls 2014-03-14 14:43:21 +01:00
Fabien Potencier 123dcac063 minor #10436 Update DefaultAuthenticationSuccessHandler.php (ureimers)
This PR was submitted for the 2.3-dev branch but it was merged into the 2.3 branch instead (closes #10436).

Discussion
----------

Update DefaultAuthenticationSuccessHandler.php

[Security] [Http] [Authentication] Fixed class description of DefaultAuthenticatioNSuccessHander

| Q             | A
| ------------- | ---
| Fixed tickets | none
| License       | MIT

Commits
-------

b458551 Update DefaultAuthenticationSuccessHandler.php
2014-03-14 13:21:43 +01:00
ureimers 7fc0c5f1fd Update DefaultAuthenticationSuccessHandler.php 2014-03-14 13:21:43 +01:00
Fabien Potencier 1e973b2a9a feature #10404 [Security] Match request based on HTTP methods in firewall config (danez)
This PR was submitted for the 2.4 branch but it was merged into the 2.5-dev branch instead (closes #10404).

Discussion
----------

[Security] Match request based on HTTP methods in firewall config

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

For an api I had to work on, I was in the need to have different firewalls for different HTTP Methods. I started building my own ```RequestMatcher``` until I discovered, that the regular RequestMatcher is able to handle HTTP Methods. The only thing that is missing is the possibility to configure it in the firewall section of the configuration. (For access_control it is already possible)

With this PR it is possible to do things like this:
```yaml
security:
    firewalls:
        api_options:
            pattern:    ^/
            methods:    [OPTIONS]
            security:   false
        api:
            pattern:    ^/
            some_auth:  true
```

I think this integrates quite nicely. Or is there any downside you can think of?

If it is good to go, I'll open a PR for the docs.

Commits
-------

2878757 Make it possible to match the request based on HTTP methods in the firewall configuration
2014-03-14 12:27:42 +01:00
Daniel Tschinder a8e9ed5cf1 Make it possible to match the request based on HTTP methods in the firewall configuration 2014-03-14 12:27:42 +01:00
Fabien Potencier f0c0c2c99d tweaked sentence 2014-03-14 12:08:56 +01:00
Fabien Potencier fe91a2ca62 bug #10448 [2.3][Process] Fix quoted arguments escaping (romainneutron)
This PR was merged into the 2.3 branch.

Discussion
----------

[2.3][Process] Fix quoted arguments escaping

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

This PR replaces #8972

Commits
-------

de681cb [Process] Add tests on ProcessUtils::escapeArgument
85fb495 [Process] Fix: Arguments including space and quote are not correctly escaped (win)
2014-03-14 12:05:38 +01:00
Fabien Potencier 79e92f95d6 bug #10444 [DomCrawler] Fixed incorrect value name conversion in getPhpValues() and getPhpFiles() (romainneutron)
This PR was merged into the 2.3 branch.

Discussion
----------

[DomCrawler] Fixed incorrect value name conversion in getPhpValues() and getPhpFiles()

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

This PR replaces #10193

Commits
-------

89c599e [DomCrawler] Add tests for recursive cases of getPhpValues() and getPhpFiles()
e961f57 [DomCrawler] Fixed incorrect value name conversion in getPhpValues() and getPhpFiles()
2014-03-14 12:04:24 +01:00
Fabien Potencier bdddf3ab8c fixed typo 2014-03-14 11:12:00 +01:00
Romain Neutron de681cbf5c [Process] Add tests on ProcessUtils::escapeArgument 2014-03-14 10:50:34 +01:00