On Wed, Mar 19, 2008 at 10:27 PM, David Wolever <[EMAIL PROTECTED]> wrote:
> On 19-Mar-08, at 6:44 PM, Collin Winter wrote:
>  > You can pass -p to refactor.py to fix this on a per-run basis. See
>  > r58002 (and the revisions it mentions) for a failed attempt to do this
>  > automatically.
>
>  So, correct me if I'm wrong, but the relevant code is this:
>  -            try:
>  -                tree = self.driver.parse_string(data)
>  -            except parse.ParseError, e:
>  -                if e.type == token.EQUAL:
>  -                    tree = self.printless_driver.parse_string(data)
>  -                else:
>  -                    raise
>
>  Why not, instead of trying both parsers, scan for a __future__
>  import, then do the Right Thing based on that?

Different use cases.

Auto-detection based on __future__ would be a good thing to have
(assuming that __future__ statement has actually been implemented :-).

But the -p lag is for code that has already been converted to 3.0 (as
far as print statements are concerned anyway) and hence doesn't have
__future__ statements. This is mostly used in the standard library,
where sometimes it is useful to run selected fixers again after a
merge. :-)

-- 
--Guido van Rossum (home page: http://www.python.org/~guido/)
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to