Add sys.flags.quiet attribute for the new -q option, as noted missing by Eric in #1772833.

This commit is contained in:
Georg Brandl 2010-12-28 18:30:18 +00:00
parent 31e3b77fea
commit 8aa7e999b5
6 changed files with 14 additions and 4 deletions

View file

@ -264,6 +264,11 @@ always available.
+------------------------------+------------------------------------------+ +------------------------------+------------------------------------------+
| :const:`bytes_warning` | -b | | :const:`bytes_warning` | -b |
+------------------------------+------------------------------------------+ +------------------------------+------------------------------------------+
| :const:`quiet` | -q |
+------------------------------+------------------------------------------+
.. versionchanged:: 3.2
Added ``quiet`` attribute for the new :option:`-q` flag.
.. data:: float_info .. data:: float_info

View file

@ -7,6 +7,7 @@ extern "C" {
PyAPI_DATA(int) Py_DebugFlag; PyAPI_DATA(int) Py_DebugFlag;
PyAPI_DATA(int) Py_VerboseFlag; PyAPI_DATA(int) Py_VerboseFlag;
PyAPI_DATA(int) Py_QuietFlag;
PyAPI_DATA(int) Py_InteractiveFlag; PyAPI_DATA(int) Py_InteractiveFlag;
PyAPI_DATA(int) Py_InspectFlag; PyAPI_DATA(int) Py_InspectFlag;
PyAPI_DATA(int) Py_OptimizeFlag; PyAPI_DATA(int) Py_OptimizeFlag;

View file

@ -15,6 +15,8 @@ Core and Builtins
- Issue #10779: PyErr_WarnExplicit() decodes the filename from the filesystem - Issue #10779: PyErr_WarnExplicit() decodes the filename from the filesystem
encoding instead of UTF-8. encoding instead of UTF-8.
- Add sys.flags attribute for the new -q command-line option.
Library Library
------- -------

View file

@ -319,7 +319,6 @@ Py_Main(int argc, wchar_t **argv)
int stdin_is_interactive = 0; int stdin_is_interactive = 0;
int help = 0; int help = 0;
int version = 0; int version = 0;
int quiet = 0;
int saw_unbuffered_flag = 0; int saw_unbuffered_flag = 0;
PyCompilerFlags cf; PyCompilerFlags cf;
@ -427,7 +426,7 @@ Py_Main(int argc, wchar_t **argv)
break; break;
case 'q': case 'q':
quiet++; Py_QuietFlag++;
break; break;
/* This space reserved for other options */ /* This space reserved for other options */
@ -594,7 +593,7 @@ Py_Main(int argc, wchar_t **argv)
#endif #endif
Py_Initialize(); Py_Initialize();
if (!quiet && (Py_VerboseFlag || if (!Py_QuietFlag && (Py_VerboseFlag ||
(command == NULL && filename == NULL && (command == NULL && filename == NULL &&
module == NULL && stdin_is_interactive))) { module == NULL && stdin_is_interactive))) {
fprintf(stderr, "Python %s on %s\n", fprintf(stderr, "Python %s on %s\n",

View file

@ -78,6 +78,7 @@ extern void _PyGILState_Fini(void);
int Py_DebugFlag; /* Needed by parser.c */ int Py_DebugFlag; /* Needed by parser.c */
int Py_VerboseFlag; /* Needed by import.c */ int Py_VerboseFlag; /* Needed by import.c */
int Py_QuietFlag; /* Needed by sysmodule.c */
int Py_InteractiveFlag; /* Needed by Py_FdIsInteractive() below */ int Py_InteractiveFlag; /* Needed by Py_FdIsInteractive() below */
int Py_InspectFlag; /* Needed to determine whether to exit at SystemError */ int Py_InspectFlag; /* Needed to determine whether to exit at SystemError */
int Py_NoSiteFlag; /* Suppress 'import site' */ int Py_NoSiteFlag; /* Suppress 'import site' */

View file

@ -1417,7 +1417,8 @@ static PyStructSequence_Field flags_fields[] = {
#endif #endif
/* {"unbuffered", "-u"}, */ /* {"unbuffered", "-u"}, */
/* {"skip_first", "-x"}, */ /* {"skip_first", "-x"}, */
{"bytes_warning", "-b"}, {"bytes_warning", "-b"},
{"quiet", "-q"},
{0} {0}
}; };
@ -1461,6 +1462,7 @@ make_flags(void)
/* SetFlag(saw_unbuffered_flag); */ /* SetFlag(saw_unbuffered_flag); */
/* SetFlag(skipfirstline); */ /* SetFlag(skipfirstline); */
SetFlag(Py_BytesWarningFlag); SetFlag(Py_BytesWarningFlag);
SetFlag(Py_QuietFlag);
#undef SetFlag #undef SetFlag
if (PyErr_Occurred()) { if (PyErr_Occurred()) {