Kaydet (Commit) 14eba5fa authored tarafından Éric Araujo's avatar Éric Araujo

Brench merge

......@@ -2,7 +2,7 @@
===============================================================================
.. module:: argparse
:synopsis: Command-line option and argument-parsing library.
:synopsis: Command-line option and argument parsing library.
.. moduleauthor:: Steven Bethard <steven.bethard@gmail.com>
.. sectionauthor:: Steven Bethard <steven.bethard@gmail.com>
......@@ -107,7 +107,7 @@ or the :func:`max` function if it was not.
Parsing arguments
^^^^^^^^^^^^^^^^^
:class:`ArgumentParser` parses args through the
:class:`ArgumentParser` parses arguments through the
:meth:`~ArgumentParser.parse_args` method. This will inspect the command line,
convert each arg to the appropriate type and then invoke the appropriate action.
In most cases, this means a simple :class:`Namespace` object will be built up from
......@@ -118,7 +118,7 @@ attributes parsed out of the command line::
In a script, :meth:`~ArgumentParser.parse_args` will typically be called with no
arguments, and the :class:`ArgumentParser` will automatically determine the
command-line args from :data:`sys.argv`.
command-line arguments from :data:`sys.argv`.
ArgumentParser objects
......@@ -669,11 +669,11 @@ be positional::
action
^^^^^^
:class:`ArgumentParser` objects associate command-line args with actions. These
actions can do just about anything with the command-line args associated with
:class:`ArgumentParser` objects associate command-line arguments with actions. These
actions can do just about anything with the command-line arguments associated with
them, though most actions simply add an attribute to the object returned by
:meth:`~ArgumentParser.parse_args`. The ``action`` keyword argument specifies
how the command-line args should be handled. The supported actions are:
how the command-line arguments should be handled. The supported actions are:
* ``'store'`` - This just stores the argument's value. This is the default
action. For example::
......@@ -745,8 +745,8 @@ the Action API. The easiest way to do this is to extend
:meth:`~ArgumentParser.parse_args`. Most actions add an attribute to this
object.
* ``values`` - The associated command-line args, with any type-conversions
applied. (Type-conversions are specified with the type_ keyword argument to
* ``values`` - The associated command-line arguments, with any type conversions
applied. (Type conversions are specified with the type_ keyword argument to
:meth:`~ArgumentParser.add_argument`.
* ``option_string`` - The option string that was used to invoke this action.
......@@ -778,7 +778,7 @@ single action to be taken. The ``nargs`` keyword argument associates a
different number of command-line arguments with a single action. The supported
values are:
* N (an integer). N args from the command line will be gathered together into a
* N (an integer). N arguments from the command line will be gathered together into a
list. For example::
>>> parser = argparse.ArgumentParser()
......@@ -822,7 +822,7 @@ values are:
Namespace(infile=<_io.TextIOWrapper name='<stdin>' encoding='UTF-8'>,
outfile=<_io.TextIOWrapper name='<stdout>' encoding='UTF-8'>)
* ``'*'``. All command-line args present are gathered into a list. Note that
* ``'*'``. All command-line arguments present are gathered into a list. Note that
it generally doesn't make much sense to have more than one positional argument
with ``nargs='*'``, but multiple optional arguments with ``nargs='*'`` is
possible. For example::
......@@ -846,7 +846,7 @@ values are:
usage: PROG [-h] foo [foo ...]
PROG: error: too few arguments
If the ``nargs`` keyword argument is not provided, the number of args consumed
If the ``nargs`` keyword argument is not provided, the number of arguments consumed
is determined by the action_. Generally this means a single command-line arg
will be consumed and a single item (not a list) will be produced.
......@@ -864,7 +864,7 @@ the various :class:`ArgumentParser` actions. The two most common uses of it are
* When :meth:`~ArgumentParser.add_argument` is called with option strings
(like ``-f`` or ``--foo``) and ``nargs='?'``. This creates an optional
argument that can be followed by zero or one command-line args.
argument that can be followed by zero or one command-line arguments.
When parsing the command line, if the option string is encountered with no
command-line arg following it, the value of ``const`` will be assumed instead.
See the nargs_ description for examples.
......@@ -914,11 +914,11 @@ command-line argument was not present.::
type
^^^^
By default, :class:`ArgumentParser` objects read command-line args in as simple
By default, :class:`ArgumentParser` objects read command-line arguments in as simple
strings. However, quite often the command-line string should instead be
interpreted as another type, like a :class:`float` or :class:`int`. The
``type`` keyword argument of :meth:`~ArgumentParser.add_argument` allows any
necessary type-checking and type-conversions to be performed. Common built-in
necessary type-checking and type conversions to be performed. Common built-in
types and functions can be used directly as the value of the ``type`` argument::
>>> parser = argparse.ArgumentParser()
......@@ -938,7 +938,7 @@ writable file::
Namespace(bar=<_io.TextIOWrapper name='out.txt' encoding='UTF-8'>)
``type=`` can take any callable that takes a single string argument and returns
the type-converted value::
the converted value::
>>> def perfect_square(string):
... value = int(string)
......@@ -973,7 +973,7 @@ See the choices_ section for more details.
choices
^^^^^^^
Some command-line args should be selected from a restricted set of values.
Some command-line arguments should be selected from a restricted set of values.
These can be handled by passing a container object as the ``choices`` keyword
argument to :meth:`~ArgumentParser.add_argument`. When the command line is
parsed, arg values will be checked, and an error message will be displayed if
......@@ -1331,7 +1331,7 @@ An error is produced for arguments that could produce more than one options.
Beyond ``sys.argv``
^^^^^^^^^^^^^^^^^^^
Sometimes it may be useful to have an ArgumentParser parse args other than those
Sometimes it may be useful to have an ArgumentParser parse arguments other than those
of :data:`sys.argv`. This can be accomplished by passing a list of strings to
:meth:`~ArgumentParser.parse_args`. This is useful for testing at the
interactive prompt::
......@@ -1559,7 +1559,7 @@ FileType objects
The :class:`FileType` factory creates objects that can be passed to the type
argument of :meth:`ArgumentParser.add_argument`. Arguments that have
:class:`FileType` objects as their type will open command-line args as files
:class:`FileType` objects as their type will open command-line arguments as files
with the requested modes and buffer sizes:
>>> parser = argparse.ArgumentParser()
......@@ -1673,7 +1673,7 @@ Parser defaults
.. method:: ArgumentParser.set_defaults(**kwargs)
Most of the time, the attributes of the object returned by :meth:`parse_args`
will be fully determined by inspecting the command-line args and the argument
will be fully determined by inspecting the command-line arguments and the argument
actions. :meth:`set_defaults` allows some additional
attributes that are determined without any inspection of the command line to
be added::
......
......@@ -4,7 +4,7 @@
.. module:: email.policy
:synopsis: Controlling the parsing and generating of messages
.. versionadded: 3.3
.. versionadded:: 3.3
The :mod:`email` package's prime focus is the handling of email messages as
......
......@@ -10,7 +10,7 @@ from distutils.core import Distribution
from distutils.errors import DistutilsFileError
from distutils.tests import support
from test.support import run_unittest, create_empty_file
from test.support import run_unittest
class BuildPyTestCase(support.TempdirManager,
......@@ -71,11 +71,11 @@ class BuildPyTestCase(support.TempdirManager,
# create the distribution files.
sources = self.mkdtemp()
create_empty_file(os.path.join(sources, "__init__.py"))
open(os.path.join(sources, "__init__.py"), "w").close()
testdir = os.path.join(sources, "doc")
os.mkdir(testdir)
create_empty_file(os.path.join(testdir, "testfile"))
open(os.path.join(testdir, "testfile"), "w").close()
os.chdir(sources)
old_stdout = sys.stdout
......
......@@ -3,18 +3,14 @@
from packaging.pypi.xmlrpc import Client, InvalidSearchField, ProjectNotFound
from packaging.tests import unittest
from packaging.tests.support import fake_dec
try:
import threading
from packaging.tests.pypi_server import use_xmlrpc_server
except ImportError:
threading = None
def use_xmlrpc_server():
def _use(func):
def __use(*args, **kw):
return func(*args, **kw)
return __use
return _use
use_xmlrpc_server = fake_dec
@unittest.skipIf(threading is None, "Needs threading")
......
......@@ -276,7 +276,7 @@ def split(s, comments=False, posix=True):
return list(lex)
_find_unsafe = re.compile(r'[^\w\d@%_\-\+=:,\./]').search
_find_unsafe = re.compile(r'[^\w@%\-\+=:,\./]', re.ASCII).search
def quote(s):
"""Return a shell-escaped version of the string *s*."""
......
......@@ -267,7 +267,7 @@ def rmtree(path, ignore_errors=False, onerror=None):
names = []
try:
names = os.listdir(path)
except os.error as err:
except os.error:
onerror(os.listdir, path, sys.exc_info())
for name in names:
fullname = os.path.join(path, name)
......@@ -280,7 +280,7 @@ def rmtree(path, ignore_errors=False, onerror=None):
else:
try:
os.remove(fullname)
except os.error as err:
except os.error:
onerror(os.remove, fullname, sys.exc_info())
try:
os.rmdir(path)
......@@ -323,7 +323,7 @@ def move(src, dst):
raise Error("Destination path '%s' already exists" % real_dst)
try:
os.rename(src, real_dst)
except OSError as exc:
except OSError:
if os.path.isdir(src):
if _destinsrc(src, dst):
raise Error("Cannot move a directory '%s' into itself '%s'." % (src, dst))
......
......@@ -176,7 +176,8 @@ class ShlexTest(unittest.TestCase):
def testQuote(self):
safeunquoted = string.ascii_letters + string.digits + '@%_-+=:,./'
unsafe = '"`$\\!'
unicode_sample = '\xe9\xe0\xdf' # e + acute accent, a + grave, sharp s
unsafe = '"`$\\!' + unicode_sample
self.assertEqual(shlex.quote(''), "''")
self.assertEqual(shlex.quote(safeunquoted), safeunquoted)
......
......@@ -1330,8 +1330,8 @@ smelly: all
# Find files with funny names
funny:
find $(DISTDIRS) \
-o -type d \
find $(SUBDIRS) $(SUBDIRSTOO) \
-type d \
-o -name '*.[chs]' \
-o -name '*.py' \
-o -name '*.pyw' \
......@@ -1359,7 +1359,7 @@ funny:
-o -name .hgignore \
-o -name .bzrignore \
-o -name MANIFEST \
-o -print
-print
# Perform some verification checks on any modified files.
patchcheck:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment