summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Doc/library/commands.rst8
-rw-r--r--Lib/commands.py4
-rw-r--r--Lib/test/test_py3kwarn.py9
3 files changed, 20 insertions, 1 deletions
diff --git a/Doc/library/commands.rst b/Doc/library/commands.rst
index 177710b..c3f7710 100644
--- a/Doc/library/commands.rst
+++ b/Doc/library/commands.rst
@@ -42,7 +42,13 @@ The :mod:`commands` module defines the following functions:
.. deprecated:: 2.6
This function is nonobvious and useless, also the name is misleading in the
- presence of :func:`getstatusoutput`.
+ presence of :func:`getstatusoutput`. It is removed in 3.x.
+
+.. warning::
+
+ Two undocumented functions in this module, :func:`mk2arg` and :func:`mkargs`
+ are removed in 3.x.
+
Example::
diff --git a/Lib/commands.py b/Lib/commands.py
index d19aa1a..b4e1d3c 100644
--- a/Lib/commands.py
+++ b/Lib/commands.py
@@ -63,6 +63,8 @@ def getstatusoutput(cmd):
# Make command argument from directory and pathname (prefix space, add quotes).
#
def mk2arg(head, x):
+ from warnings import warnpy3k
+ warnpy3k("In 3.x, mk2arg is removed.")
import os
return mkarg(os.path.join(head, x))
@@ -75,6 +77,8 @@ def mk2arg(head, x):
# with backslash.
#
def mkarg(x):
+ from warnings import warnpy3k
+ warnpy3k("in 3.x, mkarg is remove.")
if '\'' not in x:
return ' \'' + x + '\''
s = ' "'
diff --git a/Lib/test/test_py3kwarn.py b/Lib/test/test_py3kwarn.py
index 180342b..d5574f4 100644
--- a/Lib/test/test_py3kwarn.py
+++ b/Lib/test/test_py3kwarn.py
@@ -212,6 +212,15 @@ class TestStdlibRemovals(unittest.TestCase):
mod.walk(".", dumbo, None)
self.assertEquals(str(w.message), msg)
+ def test_commands_members(self):
+ import commands
+ members = {"mk2arg" : 2, "mkarg" : 1, "getstatus" : 1}
+ for name, arg_count in members.items():
+ with catch_warning(record=False):
+ warnings.filterwarnings("error")
+ func = getattr(commands, name)
+ self.assertRaises(DeprecationWarning, func, *([None]*arg_count))
+
def test_main():
run_unittest(TestPy3KWarnings,