+------------------------------+------------------------------------------+
| :const:`ignore_environment` | -E |
+------------------------------+------------------------------------------+
- | :const:`tabcheck` | -t or -tt |
- +------------------------------+------------------------------------------+
| :const:`verbose` | -v |
+------------------------------+------------------------------------------+
| :const:`unicode` | -U |
manipulations of :data:`sys.path` that it entails.
-.. cmdoption:: -t
-
- Issue a warning when a source file mixes tabs and spaces for indentation in a
- way that makes it depend on the worth of a tab expressed in spaces. Issue an
- error when the option is given twice (:option:`-tt`).
-
-
.. cmdoption:: -u
Force stdin, stdout and stderr to be totally unbuffered. On systems where it
PyAPI_DATA(int) Py_BytesWarningFlag;
PyAPI_DATA(int) Py_UseClassExceptionsFlag;
PyAPI_DATA(int) Py_FrozenFlag;
-PyAPI_DATA(int) Py_TabcheckFlag;
PyAPI_DATA(int) Py_IgnoreEnvironmentFlag;
PyAPI_DATA(int) Py_DivisionWarningFlag;
PyAPI_DATA(int) Py_DontWriteBytecodeFlag;
self.raise_catch(IndentationError, "IndentationError")
self.raise_catch(TabError, "TabError")
- # can only be tested under -tt, and is the only test for -tt
- #try: compile("try:\n\t1/0\n \t1/0\nfinally:\n pass\n", '<string>', 'exec')
- #except TabError: pass
- #else: self.fail("TabError not raised")
+ try: compile("try:\n\t1/0\n \t1/0\nfinally:\n pass\n",
+ '<string>', 'exec')
+ except TabError: pass
+ else: self.fail("TabError not raised")
self.raise_catch(SystemError, "SystemError")
PYVER="@PYVER@"
FWK="/Library/Frameworks/Python.framework/Versions/@PYVER@"
-"${FWK}/bin/python" -Wi -tt \
+"${FWK}/bin/python" -Wi \
"${FWK}/lib/python${PYVER}/compileall.py" \
-x badsyntax -x site-packages \
"${FWK}/lib/python${PYVER}"
-"${FWK}/bin/python" -Wi -tt -O \
+"${FWK}/bin/python" -Wi -O \
"${FWK}/lib/python${PYVER}/compileall.py" \
-x badsyntax -x site-packages \
"${FWK}/lib/python${PYVER}"
-"${FWK}/bin/python" -Wi -tt \
+"${FWK}/bin/python" -Wi \
"${FWK}/lib/python${PYVER}/compileall.py" \
-x badsyntax -x site-packages \
"${FWK}/Mac/Tools"
-"${FWK}/bin/python" -Wi -tt -O \
+"${FWK}/bin/python" -Wi -O \
"${FWK}/lib/python${PYVER}/compileall.py" \
-x badsyntax -x site-packages \
"${FWK}/Mac/Tools"
$(RUNSHARED) $(BUILDPYTHON) $(CACHERSRC) -v $(DESTDIR)$(MACLIBDEST) $(DESTDIR)$(MACTOOLSDEST)
- $(RUNSHARED) $(BUILDPYTHON) -Wi -tt $(compileall) -d $(MACTOOLSDEST) -x badsyntax $(DESTDIR)$(MACTOOLSDEST)
- $(RUNSHARED) $(BUILDPYTHON) -O -Wi -tt $(compileall) -d $(MACTOOLSDEST) -x badsyntax $(DESTDIR)$(MACTOOLSDEST)
+ $(RUNSHARED) $(BUILDPYTHON) -Wi $(compileall) -d $(MACTOOLSDEST) -x badsyntax $(DESTDIR)$(MACTOOLSDEST)
+ $(RUNSHARED) $(BUILDPYTHON) -O -Wi $(compileall) -d $(MACTOOLSDEST) -x badsyntax $(DESTDIR)$(MACTOOLSDEST)
$(INSTALLED_PYTHONAPP): install_Python
TESTOPTS= -l $(EXTRATESTOPTS)
TESTPROG= $(srcdir)/Lib/test/regrtest.py
-TESTPYTHON= $(RUNSHARED) ./$(BUILDPYTHON) -E -tt -bb
+TESTPYTHON= $(RUNSHARED) ./$(BUILDPYTHON) -E -bb
test: all platform
-find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm -f
-$(TESTPYTHON) $(TESTPROG) $(TESTOPTS)
-find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm -f
-$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall
$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall
- $(RUNSHARED) /usr/libexec/oah/translate ./$(BUILDPYTHON) -E -tt $(TESTPROG) $(TESTOPTS) -uall
+ $(RUNSHARED) /usr/libexec/oah/translate ./$(BUILDPYTHON) -E $(TESTPROG) $(TESTOPTS) -uall
# Like testall, but with a single pass only
done
$(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
- ./$(BUILDPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \
+ ./$(BUILDPYTHON) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
-d $(LIBDEST) -f \
-x 'bad_coding|badsyntax|site-packages' $(DESTDIR)$(LIBDEST)
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
- ./$(BUILDPYTHON) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \
+ ./$(BUILDPYTHON) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \
-d $(LIBDEST) -f \
-x 'bad_coding|badsyntax|site-packages' $(DESTDIR)$(LIBDEST)
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
- ./$(BUILDPYTHON) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \
+ ./$(BUILDPYTHON) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
-d $(LIBDEST)/site-packages -f \
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
- ./$(BUILDPYTHON) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \
+ ./$(BUILDPYTHON) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \
-d $(LIBDEST)/site-packages -f \
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
- ./$(BUILDPYTHON) -Wi -t -c "import lib2to3.pygram"
+ ./$(BUILDPYTHON) -Wi -c "import lib2to3.pygram"
# Create the PLATDIR source directory, if one wasn't distributed..
$(srcdir)/Lib/$(PLATDIR):
Core and Builtins
-----------------
+- Removed the already-defunct ``-t`` option.
+
- Issue #2957: Corrected a ValueError "recursion limit exceeded", when
unmarshalling many code objects, which happens when importing a
large .pyc file (~1000 functions).
PYTHON=$INSTALL_DIR/bin/python
# Python options and regression test program that should always be run.
-REGRTEST_ARGS="-E -tt $INSTALL_DIR/lib/python3.0/test/regrtest.py"
+REGRTEST_ARGS="-E $INSTALL_DIR/lib/python3.0/test/regrtest.py"
REFLOG="build/reflog.txt.out"
# These tests are not stable and falsely report leaks sometimes.
-OO remove doc-strings in addition to the -O optimizations
-Q arg division options: -Qold (default), -Qwarn, -Qwarnall, -Qnew
-S Don't perform 'import site' on initialization
--t Issue warnings about inconsistent tab usage (-tt: issue errors)
-u Unbuffered binary stdout and stderr (also PYTHONUNBUFFERED=x).
-v Verbose (trace import statements) (also PYTHONVERBOSE=x)
-W arg : warning control (arg is action:message:category:module:lineno)
.B \-S
]
[
-.B \-t
-]
-[
.B \-u
]
.br
.I sys.path
that it entails.
.TP
-.B \-t
-Issue a warning when a source file mixes tabs and spaces for
-indentation in a way that makes it depend on the worth of a tab
-expressed in spaces. Issue an error when the option is given twice.
-.TP
.B \-u
Force stdin, stdout and stderr to be totally unbuffered. On systems
where it matters, also put stdin, stdout and stderr in binary mode.
#
# cd python/dist/src
# valgrind --tool=memcheck --suppressions=Misc/valgrind-python.supp \
-# ./python -E -tt ./Lib/test/regrtest.py -u bsddb,network
+# ./python -E ./Lib/test/regrtest.py -u bsddb,network
#
# You must edit Objects/obmalloc.c and uncomment Py_USING_MEMORY_DEBUGGER
# to use the preferred suppressions with Py_ADDRESS_IN_RANGE.
-OO : remove doc-strings in addition to the -O optimizations\n\
-s : don't add user site directory to sys.path; also PYTHONNOUSERSITE\n\
-S : don't imply 'import site' on initialization\n\
--t : issue warnings about inconsistent tab usage (-tt: issue errors)\n\
";
static char *usage_3 = "\
-u : unbuffered binary stdout and stderr; also PYTHONUNBUFFERED=x\n\
break;
case 't':
- Py_TabcheckFlag++;
+ /* ignored for backwards compatibility */
break;
case 'u':
@if "%_qmode%"=="yes" goto Qmode
@echo Deleting .pyc/.pyo files ...
@%_exe% rmpyc.py
-%_exe% %_dashO% -E -tt ../../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
+%_exe% %_dashO% -E ../../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
@echo About to run again without deleting .pyc/.pyo first:
@pause
:Qmode
-%_exe% %_dashO% -E -tt ../../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
+%_exe% %_dashO% -E ../../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
@set _exe=
@set _qmode=
@set _dashO=
if "%1"=="-q" (set qmode=yes) & shift & goto CheckOpts
if "%1"=="-d" (set exe=python_d) & shift & goto CheckOpts
-set cmd=%exe% %dashO% -E -tt ../../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
+set cmd=%exe% %dashO% -E ../../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
if defined qmode goto Qmode
echo Deleting .pyc/.pyo files ...
if "%1"=="-q" (set qmode=yes) & shift & goto CheckOpts\r
if "%1"=="-d" (set exe=python_d) & shift & goto CheckOpts\r
\r
-set cmd=%exe% %dashO% -E -tt ../../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9\r
+set cmd=%exe% %dashO% -E ../../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9\r
if defined qmode goto Qmode\r
\r
echo Deleting .pyc/.pyo files ...\r
# the test target
test:
-find ../../Lib -name "*.py[co]" -exec rm {} ";"
- -./python -E -tt ../../lib/test/regrtest.py -l -u "network"
- ./python -E -tt ../../lib/test/regrtest.py -l -u "network"
+ -./python -E ../../lib/test/regrtest.py -l -u "network"
+ ./python -E ../../lib/test/regrtest.py -l -u "network"
-include $(OUTBASE)python.dep
"PyParser_Delete"
; From python26_s.lib(parsetok)
- "Py_TabcheckFlag"
"PyParser_ParseString"
"PyParser_ParseStringFlagsFilename"
"PyParser_ParseFile"
Py_InteractiveFlag
Py_NoSiteFlag
Py_OptimizeFlag
- Py_TabcheckFlag
Py_UseClassExceptionsFlag
Py_VerboseFlag
_PyImport_Filetab
PATH %PATH%;..\..\%tcltk%\bin
set exe=%prefix%\python%suffix%
-set cmd=%exe% %dashO% -E -tt ../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
+set cmd=%exe% %dashO% -E ../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
if defined qmode goto Qmode
echo Deleting .pyc/.pyo files ...
#include "errcode.h"
#include "graminit.h"
-int Py_TabcheckFlag;
-
/* Forward */
static node *parsetok(struct tok_state *, grammar *, int, perrdetail *, int *);
}
tok->filename = filename ? filename : "<string>";
- if (Py_TabcheckFlag >= 3)
- tok->alterror = 0;
-
return parsetok(tok, g, start, err_ret, flags);
}
return NULL;
}
tok->filename = filename;
- if (Py_TabcheckFlag >= 3)
- tok->alterror = 0;
-
return parsetok(tok, g, start, err_ret, flags);
}
{"no_user_site", "-s"},
{"no_site", "-S"},
{"ignore_environment", "-E"},
- {"tabcheck", "-t or -tt"},
{"verbose", "-v"},
#ifdef RISCOS
{"riscos_wimp", "???"},
flags__doc__, /* doc */
flags_fields, /* fields */
#ifdef RISCOS
- 12
-#else
11
+#else
+ 10
#endif
};
SetFlag(Py_NoUserSiteDirectory);
SetFlag(Py_NoSiteFlag);
SetFlag(Py_IgnoreEnvironmentFlag);
- SetFlag(Py_TabcheckFlag);
SetFlag(Py_VerboseFlag);
#ifdef RISCOS
SetFlag(Py_RISCOSWimpFlag);