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.

classification
Title: New shlex functionality
Type: Stage:
Components: Library (Lib) Versions: Python 2.3
process
Status: closed Resolution: accepted
Dependencies: Superseder:
Assigned To: niemeyer Nosy List: gvanrossum, niemeyer
Priority: high Keywords: patch

Created on 2003-04-16 19:28 by niemeyer, last changed 2022-04-10 16:08 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
shlex.py.patch niemeyer, 2003-04-16 19:28 Version 1
shlex.patch niemeyer, 2003-04-17 21:36 Version 2
Messages (3)
msg43383 - (view) Author: Gustavo Niemeyer (niemeyer) * (Python committer) Date: 2003-04-16 19:28
This patch implements the shlex.py features discussed
in the mailling list.

I'm not sure if "split_args()" is the best name for the
introduced function. Any suggestion?
msg43384 - (view) Author: Guido van Rossum (gvanrossum) * (Python committer) Date: 2003-04-16 19:53
Logged In: YES 
user_id=6380

I would call it simply split(), like other splitting functions.

Add docs, add unit tests, check it in. We'll see if someone
cares. :-)
msg43385 - (view) Author: Gustavo Niemeyer (niemeyer) * (Python committer) Date: 2003-04-17 21:36
Logged In: YES 
user_id=7887

I had to change the implementation to make it understand
escaping as presented in posix shells. I've also introduced
other minor changes, like including iso-8859-1 characters in
wordchars, and a new whitespace_split mode, which helps in
shell argument parsing routines.

Besides that, I've written complex testcases based on the
shellwords dataset (which was generated with help of a posix
shell), and ported the dataset to work in non-posix mode as
well. The later tests were also executed in Python 2.2 to
check for compatibility issues, and no problems were detected.

I've also written documentation for the new features, and
included a simple description of how the parser will behave
in posix and non-posix modes.

These changes were applied as:

Doc/lib/libshlex.tex: 1.13
Lib/shlex.py: 1.18
Lib/test/test_shlex.py: 1.1
Misc/NEWS: 1.731

I've attached the new patch (Version 2) here for reference.
History
Date User Action Args
2022-04-10 16:08:11adminsetgithub: 38314
2003-04-16 19:28:56niemeyercreate