This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author exarkun
Recipients exarkun, ezio.melotti, shypike
Date 2010-06-12.18:15:37
SpamBayes Score 4.370367e-05
Marked as misclassified No
Message-id <1276366539.69.0.580164436448.issue8972@psf.upfronthosting.co.za>
In-reply-to
Content
Thanks.

I'm not sure this is a correct change.  And in fact, I would say that the current quoting of | is also incorrect.

& and | (and ^ and perhaps several others) have special meaning to cmd.exe.  list2cmdline is documented as applying the quoting rules which the "MS C runtime" uses: cmd.exe and the C runtime are different and have different rules.

It seems to me that whoever added the | handling to list2cmdline was confused about the purpose of this function, or failed to properly document the function.

It would make more sense to document list2cmdline as applying cmd.exe-style quoting rules, if those are the rules it is actually going to implement.

A better option, though, would probably be to implement the cmd.exe quoting rules in a different function from the MS C runtime rules.

This all might benefit from a sanity check from someone who's actually worked with the subprocess module before, though (ie, not me).
History
Date User Action Args
2010-06-12 18:15:39exarkunsetrecipients: + exarkun, ezio.melotti, shypike
2010-06-12 18:15:39exarkunsetmessageid: <1276366539.69.0.580164436448.issue8972@psf.upfronthosting.co.za>
2010-06-12 18:15:37exarkunlinkissue8972 messages
2010-06-12 18:15:37exarkuncreate