[Patches] [ python-Patches-1007189 ] Multi-line imports implementation

SourceForge.net noreply at sourceforge.net
Tue Aug 31 12:20:36 CEST 2004


Patches item #1007189, was opened at 2004-08-11 21:25
Message generated for change (Comment added) made by anthonybaxter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=305470&aid=1007189&group_id=5470

Category: Parser/Compiler
Group: None
>Status: Closed
>Resolution: Fixed
>Priority: 5
Submitted By: Dima Dorfman (ddorfman)
Assigned to: Anthony Baxter (anthonybaxter)
Summary: Multi-line imports implementation

Initial Comment:
Implementation of multi-line imports. As discussed on python-dev, 
this variant accepts

  from sys import (stdin, stdout)

but not

  from sys import (*)
  import (os)

or any variants thereof. This patch is intended to be complete and 
ready for commit after someone reviews it. The following files are 
machine-generated and need to be committed along with these 
changes, but they are not included in the diff:

  Lib/symbol.py Include/graminit.h Python/graminit.c

References:
http://mail.python.org/pipermail/python-dev/2004-August/047393.
html
(<20040809043104.GA82909 at trit.org>) and followups, PEP 328


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

>Comment By: Anthony Baxter (anthonybaxter)
Date: 2004-08-31 20:20

Message:
Logged In: YES 
user_id=29957

Checked into trunk - will be in Python 2.4a3. Thanks for the
implementation!

/cvsroot/python/python/dist/src/Doc/ref/ref6.tex,v  <-- 
ref6.tex
new revision: 1.72; previous revision: 1.71

/cvsroot/python/python/dist/src/Grammar/Grammar,v  <--  Grammar
new revision: 1.52; previous revision: 1.51

/cvsroot/python/python/dist/src/Include/graminit.h,v  <-- 
graminit.h
new revision: 2.23; previous revision: 2.22

/cvsroot/python/python/dist/src/Lib/symbol.py,v  <--  symbol.py
new revision: 1.18; previous revision: 1.17

/cvsroot/python/python/dist/src/Lib/compiler/transformer.py,v
 <--  transformer.py
new revision: 1.44; previous revision: 1.43

/cvsroot/python/python/dist/src/Lib/test/test_compile.py,v 
<--  test_compile.py
new revision: 1.23; previous revision: 1.22

/cvsroot/python/python/dist/src/Lib/test/test_grammar.py,v 
<--  test_grammar.py
new revision: 1.51; previous revision: 1.50

/cvsroot/python/python/dist/src/Lib/test/test_parser.py,v 
<--  test_parser.py
new revision: 1.20; previous revision: 1.19

/cvsroot/python/python/dist/src/Lib/test/output/test_grammar,v
 <--  test_grammar
new revision: 1.21; previous revision: 1.20

/cvsroot/python/python/dist/src/Misc/NEWS,v  <--  NEWS
new revision: 1.1125; previous revision: 1.1124

/cvsroot/python/python/dist/src/Modules/parsermodule.c,v 
<--  parsermodule.c
new revision: 2.85; previous revision: 2.84

/cvsroot/python/python/dist/src/Python/compile.c,v  <-- 
compile.c
new revision: 2.326; previous revision: 2.325

/cvsroot/python/python/dist/src/Python/future.c,v  <--  future.c
new revision: 2.14; previous revision: 2.13

/cvsroot/python/python/dist/src/Python/graminit.c,v  <-- 
graminit.c
new revision: 2.38; previous revision: 2.37



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

Comment By: Anthony Baxter (anthonybaxter)
Date: 2004-08-24 19:53

Message:
Logged In: YES 
user_id=29957

I'll be checking this in shortly.

(aside: please don't monkey with the priority settings...
thanks)


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

Comment By: Dima Dorfman (ddorfman)
Date: 2004-08-24 15:53

Message:
Logged In: YES 
user_id=908995

Is this patch waiting on anything else? Should I send out emails 
soliciting reviews from Fred and Jeremey?

Bumped priority since this should go in to the next alpha.

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

Comment By: Dima Dorfman (ddorfman)
Date: 2004-08-14 20:14

Message:
Logged In: YES 
user_id=908995

Uploaded new patch. Changes:

  - Support trailing comma in from list (suggested by Michael
    Chermside on python-dev). This form is now acceptable:

      from os import (path,)

    but this is not:

      from os import path,

    I originally wanted to support the latter for consistency, but I
    don't think it's necessary (who would want to do that but not use
    parens?) and it's potentially confusing in a case like this:

      from sys import stdin,
      stdout

    which looks like it was intended to be one statement, but the
    second line is actually separate. The way the grammar is written,
    the case with a trailing comma but no parentheses parses okay, but
    it is intentionally rejected by the compiler.

  - Added more success and fail cases, incl. the "import (*)" case.

  - Added NEWS entry. (I'm uncertain whether providing this as part of
    a larger change actually helps; the file changes often enough that
    the patch stands a good chance of not applying cleanly.)

There should definitely be more docs, but I intentionally didn't try
to include unnecessary changes in this patch. As already mentioned,
that can be done later.


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

Comment By: Guido van Rossum (gvanrossum)
Date: 2004-08-14 00:56

Message:
Logged In: YES 
user_id=6380

+1 from a quick glance.

Missing a Misc/NEWS file update.

Suggestion: add "from sys import (*)" to the fail tests.

Please ask Fred to review the parser module changes.

Please ask Jeremy to review the compiler module changes.

Shouldn't there be more docs? Tutorial examples? Etc.

All that can be done after it's checked in.

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

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=305470&aid=1007189&group_id=5470


More information about the Patches mailing list