8000 [Process] Fixed issue where $env or $_ENV can contain array values by mmucklo · Pull Request #8122 · symfony/symfony · GitHub
[go: up one dir, main page]

Skip to content

[Process] Fixed issue where $env or $_ENV can contain array values #8122

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 9,869 commits into from
Closed

[Process] Fixed issue where $env or $_ENV can contain array values #8122

wants to merge 9,869 commits into from

Conversation

mmucklo
Copy link
Contributor
@mmucklo mmucklo commented May 23, 2013

See Ticket #7196

[Process] Fixed issue where $env or $_ENV can contain array values

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

fabpot and others added 30 commits March 20, 2013 12:32
This PR was merged into the 2.1 branch.

Commits
-------

e6b7515 [DomCrawler] added support for query string with slash

Discussion
----------

[DomCrawler] added support for query string with slash

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

Link\getUri() failed to return correct uri when current query string contains slash
Test pass on branch 2.1 but fails on master
* 2.0:
  updated VERSION for 2.0.23
  update CONTRIBUTORS for 2.0.23
  updated CHANGELOG for 2.0.23

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
This reverts commit 70ec4f6, reversing
changes made to 3a03f3e.
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes #7433).

Commits
-------

9f84528 change wrapped exception message to be more usefull

Discussion
----------

change wrapped exception message to be more usefull

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

When you try to parse a yml file with the XMLLoader you get the following Exception

```
[Symfony\Component\DependencyInjection\Exception\InvalidArgumentException]
[ERROR 4] Start tag expected, '<' not found (in n/a - line 1, column 1)

[InvalidArgumentException]
[ERROR 4] Start tag expected, '<' not found (in n/a - line 1, column 1)
```

after the patch
```
[Symfony\Component\DependencyInjection\Exception\Invali
8000
dArgumentException]
Unable to parse file "/home/.../src/Application/FOS/UserBundle/DependencyInjection/../Resources/config/services.yml".

[InvalidArgumentException]
[ERROR 4] Start tag expected, '<' not found (in n/a - line 1, column 1)
```
This PR was merged into the 2.2 branch.

Commits
-------

7ef90d2 fix xsd definition for strict-requirements

Discussion
----------

fix xsd definition for strict-requirements

see https://groups.google.com/forum/?fromgroups=#!topic/symfony-devs/bvHPI5C4dlY
* 2.1:
  updated VERSION for 2.0.23
  update CONTRIBUTORS for 2.0.23
  updated CHANGELOG for 2.0.23
  [Form] fixed failing test
  [DomCrawler] added support for query string with slash
Add extension apc.so to Travis-CI testing
This PR was merged into the 2.1 branch.

Commits
-------

c928ddc [HttpFoudantion] fixed Request::getPreferredLanguage()
839c78a Revert "merged branch jfsimon/issue-6928 (PR #7378)"

Discussion
----------

[HttpFoundation] fixed Request::getPreferredLanguage()

Previous PR #7378 was wrong and adding BC break. Resolution for short languages codes is now done in `Request::getPreferredLanguage()` method.

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

Commits
-------

448983c [YAML] Added unit tests to Dumper

Discussion
----------

[YAML] Added unit tests to Dumper

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

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

by stof at 2013-02-21T11:28:55Z

I don't like the fact that you are adding a getter for the only purpose of reaching 100% coverage (which could be achieved differently by checking that the dumper can indeed use 8 spaces when dumping)

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

by eddiejaoude at 2013-02-21T11:33:03Z

Ok, fair point, I will amend.

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

by eddiejaoude at 2013-02-21T11:35:14Z

I also thought of using reflection for the private property, as checking 8 space dump is less of a unit test as using multiple methods, thoughts?

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

by eddiejaoude at 2013-02-21T13:42:30Z

Another way to look at it, is if the property has a 'setter' why should it not have a 'getter' too? i.e. If the developer can 'set' it, why cant they 'get' it too. Just another thought, once the best way to move forward is confirmed, I will update my other tests accordingly & submit them.

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

by Baachi at 2013-02-21T13:49:25Z

Another solution would be, to extend the `Dumper` class and move the `getIndentation` to this class. This class should be located into the `tests/` folder.

@stof What do you think?

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

by stof at 2013-02-21T14:21:54Z

@Baachi IMO, the unit test should ensure that we can actually change the indentation of the dumped code (which is what we want to do). We don't bother about being able to get the indentation (we don't even have a method for it currently), we want it to be applied. The Dumper is not a configuration object. It is an object doing some work.

So testing that a new getter returns the value will not ensure that changing the indentation is working.

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

by Baachi at 2013-02-21T15:07:23Z

@stof Ah yes, I understand you. So my solution is wrong, @eddiejaoude should call `setIndentation` and check the dumped yaml` if the string has the right indentation.

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

by eddiejaoude at 2013-02-22T07:35:08Z

Ok, thanks for the clarification guys. I will get on the case shortly!
…7449)

This PR was merged into the 2.1 branch.

Discussion
----------

[Form] made DefaultCsrfProvider using session_status() when available

| Q             | A
| ------------- | ---
| Bug fix?      | [on PHP 5.4]
| Tests pass?   | [yes]
| License       | MIT

Commits
-------

5afea04 [Form] made DefaultCsrfProvider using session_status() when available
This PR was merged into the 2.1 branch.

Discussion
----------

[Yaml] fixed bugs with folded scalar parsing (2.1 branch)

| 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

This is a re-do of #7445, which was submitted against 2.0, which is no longer supported. Additionally, the previous PR broke some tests because literal tabs were accidentally changed to spaces, and GitHub's diff engine seemingly ignored the change, although the differences showed up when using git diff directly. This PR leaves the literals untouched, and hence the tests should now pass.

**From the original PR:**

I found some more bugs with the parsing of folded scalars. I'd also made some mistakes in the tests introduced by me in #6785. This PR fixes the incorrect tests, and introduces more related tests.

I had to completely rewrite the `Parser::parseFoldedScalar()` method. I think it came out simpler in the end - less 'special cases'. I've done some basic profiling by running the parser tests on repeat and haven't noticed any difference in parsing performance.

Commits
-------

bbcdfe2 [Yaml] fixed bugs with folded scalar parsing
Added the possibility to to use '@@' as an escaping strategy for
parameters that should be treated as strings but start with '@'
(i.e. safe mailer passwords).
This PR was submitted for the master branch but it was merged into the 2.1 branch instead (closes #7357).

Discussion
----------

[DependencyInjection] Added @@ escaping strategy for YamlFileLoader and YamlDumper

Added the possibility to to use ```@@``` as an escaping strategy for
parameters that should be treated as strings but start with ```@```
(i.e. safe mailer passwords).

This PR is deprecating #7307, since as a new feature it has to be compared against the master branch.

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

Commits
-------

8cdf387 [DependencyInjection] Added '@@' escaping strategy for YamlFileLoader and YamlDumper
This PR was submitted for the master branch but it was merged into the 2.1 branch instead (closes #7248).

Discussion
----------

#7106 - check php version for getcwd()

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

Commits
-------

11d3855  #7106 - fix for ZTS builds
This PR was merged into the 2.1 branch.

Discussion
----------

Routing issue with installation in a sub-directory

ref: #7129

Commits
-------

8d9cd42 Routing issue with installation in a sub-directory ref: #7129
* 2.1:
  #7106 - fix for ZTS builds
  Added '@@' escaping strategy for YamlFileLoader and YamlDumper
  [Yaml] fixed bugs with folded scalar parsing
  [Form] made DefaultCsrfProvider using session_status() when available
  Added unit tests to Dumper
  Update .travis.yml (closes #7355)
  [HttpFoudantion] fixed Request::getPreferredLanguage()
  Revert "merged branch jfsimon/issue-6928 (PR #7378)"
  Routing issue with installation in a sub-directory ref: #7129

Conflicts:
	.travis.yml
	src/Symfony/Bundle/FrameworkBundle/Routing/Router.php
	src/Symfony/Component/Routing/RouteCollection.php
This PR was merged into the 2.2 branch.

Discussion
----------

[2.3] [WebProfiler] added the possibility to override the application name/version in the WDT

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

Commits
-------

d35cb9f [WebProfiler] added the possibility to override the application name/version in the WDT
This PR was merged into the 2.2 branch.

Discussion
----------

Reverts behavior change to UrlGenerator

I do not want to talk much about the behavior change and whether it makes sense or not because I think it does not matter in this situation anyway.

The ``generate`` method is tagged with ``@api``, there is no security issue that was fixed. According to the rules set forth at http://symfony.com/doc/current/book/stable_api.html, the semantics of such a method must not be changed.

There is some more discussion in #6814 and the commit changing the behavior is this one: symfony/routing@c66d1f9#diff-0

Commits
-------

a765375 reverts some behavior changes made in c66d1f9de30fd1b6a86cca10dd79d12c9ba9ff25
This PR was merged into the 2.1 branch.

Discussion
----------

[FrameworkBundle] Reuse definition variable in FormPass

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

Commits
-------

f52320d [FrameworkBundle] Reuse definition variable in FormPass
The getClientIp now returns ip of the earliest server in a proxy chain when all the servers in the chain are trusted proxies. Before this patch the getClientIp used to return null at such condition.
Some appropriate tests are added.
fabpot and others added 25 commits May 8, 2013 10:39
…#7969)

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 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
1858b96 introduced a mocked context and therefore getExecutionContext() is now called getMockExectionContext().
This PR was merged into the 2.2 branch.

Discussion
----------

Fixed failing 2.2 tests

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

1858b96 introduced a mocked context and therefore `getExecutionContext()` is was renamed to `getMockExectionContext()`.

Commits
-------

ef87ba7 [Form] Fixed a method name.
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 merged into the 2.1 branch.

Discussion
----------

[Validator] Fixed XML syntax in translation.

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

Commits
-------

0a4837d Fixed XML syntax.
* 2.1:
  Fixed XML syntax.
  Fixed parsing of leading blank lines in folded scalars. Closes #7989.
  Added a test case for Loader::import().
  Fixed Loader import
  [Console] Added dedicated testcase for HelperSet class
* 2.1:
  removed CHANGELOG for 2.0 as it is not maintained anymore

Conflicts:
	CHANGELOG-2.0.md
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
----------

[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
* 2.1:
  [CssSelector] Fix :nth-last-child() translation
  Fix Crawler::children() to not trigger a notice for childless node
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
* 2.1:
  [Console] fix and refactor exit code handling
See ticket #7196
There are cases where $env or $_ENV can contain a value that is an array
This will cause Process to throw an Array to String conversion exception
Initially I submitted a patch of Process.php, however Fabien indicated
that it shouldn't be fixed there (see pull request #7134).  Before a
simple work around would be register_argc_argv = On in php.ini, however
with recent changes to symfony, this seems to no longer work.
@jmikola
Copy link
Contributor
jmikola commented May 23, 2013

This PR seems to have inadvertently alerted a large number of Symfony contributors via GitHub. I suggest doing a hard reset of your ticket_7196 branch to symfony/master (or deleting and recreating it) and chery-picking your commit, https://github.com/mmucklo/symfony/commit/0d2eea24bd321bf8c01c222a04595b816dcf8579, into it. Force push back to your GitHub fork and this PR should rectify itself and only show the single commit.

@mmucklo
Copy link
Contributor Author
mmucklo commented May 23, 2013

Okay let me try one of those things...

@mmucklo
Copy link
Contributor Author
mmucklo commented May 23, 2013

Jeremy,

I created this ticket_7196 off the 2.2 branch, I think maybe that was half
the problem, and then followed a github gist on fixing my email address, I
think that was the other half.

I may just delete things and start over...

On Thu, May 23, 2013 at 12:43 AM, Jeremy Mikola notifications@github.comwrote:

This PR seems to have inadvertently alerted a large number of Symfony
contributors via GitHub. I suggest doing a hard reset of your ticket_7196branch to
symfony/master (or deleting and recreating it) and chery-picking your
commit, mmucklo@0d2eea2https://github.com/mmucklo/symfony/commit/0d2eea24bd321bf8c01c222a04595b816dcf8579,
into it. Force push back to your GitHub fork and this PR should rectify
itself and only show the single commit.


Reply to this email directly or view it on GitHubhttps://github.com//pull/8122#issuecomment-18328097
.

@mmucklo mmucklo closed this May 23, 2013
@mmucklo mmucklo deleted the ticket_7196 branch May 23, 2013 07:59
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