Skip to content
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

[Console] Fix empty COLUMNS/LINES env vars #20328

Merged
merged 1 commit into from
Oct 27, 2016

Conversation

nicolas-grekas
Copy link
Member

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

Here is a python app that fails otherwise:

test.py:

import os

int(os.environ.get('COLUMNS', 80))

test.php:

<?php
putenv('COLUMNS=');
passthru('python test.py');

result:

$ php test.php
Traceback (most recent call last):
 File "test.py", line 3, in <module>
   int(os.environ.get('COLUMNS', 80))
ValueError: invalid literal for int() with base 10: ''

@romainneutron
Copy link
Contributor

👍

@fabpot
Copy link
Member

fabpot commented Oct 27, 2016

Thank you @nicolas-grekas.

@fabpot fabpot merged commit 8ad991e into symfony:master Oct 27, 2016
fabpot added a commit that referenced this pull request Oct 27, 2016
This PR was merged into the 3.2-dev branch.

Discussion
----------

[Console] Fix empty COLUMNS/LINES env vars

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

Here is a python app that fails otherwise:

test.py:
```python
import os

int(os.environ.get('COLUMNS', 80))
```

test.php:
```php
<?php
putenv('COLUMNS=');
passthru('python test.py');
```

result:
```
$ php test.php
Traceback (most recent call last):
 File "test.py", line 3, in <module>
   int(os.environ.get('COLUMNS', 80))
ValueError: invalid literal for int() with base 10: ''
```

Commits
-------

8ad991e [Console] Fix empty COLUMNS/LINES env vars
@nicolas-grekas nicolas-grekas deleted the fix-putenv branch October 27, 2016 16:32
@fabpot fabpot mentioned this pull request Nov 17, 2016
fabpot added a commit that referenced this pull request Apr 11, 2017
…ded) (duncan3dc)

This PR was merged into the 3.2 branch.

Discussion
----------

[Console] Allow terminal dimensions to be set to 0 (unbounded)

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

A previous PR (#20328) changed the behavior of terminals with undefined widths from unbounded to 80 characters. And due to the way the existing code worked it become impossible to set a terminal to be unbounded again. This PR provides a way to restore the previous behavior:
```php
putenv('COLUMNS=0');
```

Commits
-------

4c1b001 Allow terminal dimensions to be set to 0 (unbounded)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants