Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

unwanted unicode passed to args #710

Closed
jdmarino opened this Issue · 2 comments

4 participants

John Marino Thomas Kluyver Fernando Perez Min RK
John Marino

(N00b to python and iPython)

Windows, python2.7, iPython 0.11

When using "run" with args, the receiving program gets unicode, not vanilla strings. This was not the case under 0.1 and is still not the case when python is run from the windows command line (i.e.when not using iPython).

Example: optional arg is a string that looks like a list: 'abc,def'. The receiving proc now gets u'abc,def', which when split() becomes a tuple (u'abc', u'def'). This is a problem for me because the string representation of the tuple is now different than it used to be (it includes the 'u'), so using the string as a key to a shelf stored before the change does not work. (That is, the shelf was made with key "('abc', 'def')" under 0.10, but now I'm trying to find "(u'abc', u'def')" under iPython 0.11 and cannot.)

The lack of default backward compatibility is forcing me to insulate my code with str(). Is there some setting to calm down the use of unicode?

Thomas Kluyver
Owner

At present, I don't think there is. It might get looked into for 0.12 - a couple of people have mentioned it.

Fernando Perez
Owner

Let's mark this as high-priority for 0.12. It's indeed affecting more than one person, and we are breaking (albeit unintentionally) a low-level behavior that programs expect, so it's definitely a bug on our side.

Min RK minrk referenced this issue from a commit
Commit has since been removed from the repository and is no longer available.
Min RK minrk referenced this issue from a commit in minrk/ipython
Min RK minrk don't inject unicode into sys.argv
Protects %run and `ipython script.py` from getting unicode sys.argv on Python 2

closes #710
625ff81
Min RK minrk closed this issue from a commit
Min RK minrk don't inject unicode into sys.argv
Protects %run and `ipython script.py` from getting unicode sys.argv on Python 2

closes #710
71d3d18
Min RK minrk closed this in 71d3d18
Fernando Perez fperez referenced this issue from a commit
Commit has since been removed from the repository and is no longer available.
matthew von rocketstein mattvonrocketstein referenced this issue from a commit in mattvonrocketstein/ipython
Min RK minrk don't inject unicode into sys.argv
Protects %run and `ipython script.py` from getting unicode sys.argv on Python 2

closes #710
0771420
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.