summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoranimalize <animalize@users.noreply.github.com>2019-02-24 23:18:48 (GMT)
committerInada Naoki <methane@users.noreply.github.com>2019-02-24 23:18:48 (GMT)
commit463572c8beb59fd9d6850440af48a5c5f4c0c0c9 (patch)
tree643a8cee8377a871eac048685b0856c1abebc8bf
parent9e456bc70e7bc9ee9726d356d7167457e585fd4c (diff)
downloadcpython-463572c8beb59fd9d6850440af48a5c5f4c0c0c9.zip
cpython-463572c8beb59fd9d6850440af48a5c5f4c0c0c9.tar.gz
cpython-463572c8beb59fd9d6850440af48a5c5f4c0c0c9.tar.bz2
bpo-36101: remove non-ascii characters in docstring (GH-12018)
* remove non-ascii characters in docstring * clinic.py emits a warning when docstring has non-ascii character
-rw-r--r--Modules/_curses_panel.c8
-rw-r--r--Modules/clinic/_curses_panel.c.h6
-rw-r--r--Python/clinic/context.c.h4
-rw-r--r--Python/context.c4
-rwxr-xr-xTools/clinic/clinic.py3
5 files changed, 14 insertions, 11 deletions
diff --git a/Modules/_curses_panel.c b/Modules/_curses_panel.c
index 609718f..e7bbefd 100644
--- a/Modules/_curses_panel.c
+++ b/Modules/_curses_panel.c
@@ -412,12 +412,12 @@ _curses_panel.panel.set_userptr
obj: object
/
-Set the panel’s user pointer to obj.
+Set the panel's user pointer to obj.
[clinic start generated code]*/
static PyObject *
_curses_panel_panel_set_userptr(PyCursesPanelObject *self, PyObject *obj)
-/*[clinic end generated code: output=6fb145b3af88cf4a input=2056be1cd148b05c]*/
+/*[clinic end generated code: output=6fb145b3af88cf4a input=d2c6a9dbefabbf39]*/
{
PyObject *oldobj;
int rc;
@@ -587,12 +587,12 @@ _curses_panel.update_panels
Updates the virtual screen after changes in the panel stack.
-This does not call curses.doupdate(), so you’ll have to do this yourself.
+This does not call curses.doupdate(), so you'll have to do this yourself.
[clinic start generated code]*/
static PyObject *
_curses_panel_update_panels_impl(PyObject *module)
-/*[clinic end generated code: output=2f3b4c2e03d90ded input=a127069202b0a097]*/
+/*[clinic end generated code: output=2f3b4c2e03d90ded input=5299624c9a708621]*/
{
PyCursesInitialised;
update_panels();
diff --git a/Modules/clinic/_curses_panel.c.h b/Modules/clinic/_curses_panel.c.h
index ed59c3b..0df4420 100644
--- a/Modules/clinic/_curses_panel.c.h
+++ b/Modules/clinic/_curses_panel.c.h
@@ -228,7 +228,7 @@ PyDoc_STRVAR(_curses_panel_panel_set_userptr__doc__,
"set_userptr($self, obj, /)\n"
"--\n"
"\n"
-"Set the panel’s user pointer to obj.");
+"Set the panel\'s user pointer to obj.");
#define _CURSES_PANEL_PANEL_SET_USERPTR_METHODDEF \
{"set_userptr", (PyCFunction)_curses_panel_panel_set_userptr, METH_O, _curses_panel_panel_set_userptr__doc__},
@@ -322,7 +322,7 @@ PyDoc_STRVAR(_curses_panel_update_panels__doc__,
"\n"
"Updates the virtual screen after changes in the panel stack.\n"
"\n"
-"This does not call curses.doupdate(), so you’ll have to do this yourself.");
+"This does not call curses.doupdate(), so you\'ll have to do this yourself.");
#define _CURSES_PANEL_UPDATE_PANELS_METHODDEF \
{"update_panels", (PyCFunction)_curses_panel_update_panels, METH_NOARGS, _curses_panel_update_panels__doc__},
@@ -335,4 +335,4 @@ _curses_panel_update_panels(PyObject *module, PyObject *Py_UNUSED(ignored))
{
return _curses_panel_update_panels_impl(module);
}
-/*[clinic end generated code: output=ac1f56e6c3d4cc57 input=a9049054013a1b77]*/
+/*[clinic end generated code: output=3cc16062281b7e07 input=a9049054013a1b77]*/
diff --git a/Python/clinic/context.c.h b/Python/clinic/context.c.h
index bbe19db..eedfc88 100644
--- a/Python/clinic/context.c.h
+++ b/Python/clinic/context.c.h
@@ -82,7 +82,7 @@ PyDoc_STRVAR(_contextvars_Context_values__doc__,
"values($self, /)\n"
"--\n"
"\n"
-"Return a list of all variables’ values in the context object.");
+"Return a list of all variables\' values in the context object.");
#define _CONTEXTVARS_CONTEXT_VALUES_METHODDEF \
{"values", (PyCFunction)_contextvars_Context_values, METH_NOARGS, _contextvars_Context_values__doc__},
@@ -177,4 +177,4 @@ PyDoc_STRVAR(_contextvars_ContextVar_reset__doc__,
#define _CONTEXTVARS_CONTEXTVAR_RESET_METHODDEF \
{"reset", (PyCFunction)_contextvars_ContextVar_reset, METH_O, _contextvars_ContextVar_reset__doc__},
-/*[clinic end generated code: output=67c3a8f76b6cf4e7 input=a9049054013a1b77]*/
+/*[clinic end generated code: output=a86b66e1516c25d4 input=a9049054013a1b77]*/
diff --git a/Python/context.c b/Python/context.c
index 7531f14..9a50ea9 100644
--- a/Python/context.c
+++ b/Python/context.c
@@ -592,12 +592,12 @@ _contextvars_Context_keys_impl(PyContext *self)
/*[clinic input]
_contextvars.Context.values
-Return a list of all variables’ values in the context object.
+Return a list of all variables' values in the context object.
[clinic start generated code]*/
static PyObject *
_contextvars_Context_values_impl(PyContext *self)
-/*[clinic end generated code: output=d286dabfc8db6dde input=6c3d08639ba3bf67]*/
+/*[clinic end generated code: output=d286dabfc8db6dde input=ce8075d04a6ea526]*/
{
return _PyHamt_NewIterValues(self->ctx_vars);
}
diff --git a/Tools/clinic/clinic.py b/Tools/clinic/clinic.py
index 7f435f1..f4f0017 100755
--- a/Tools/clinic/clinic.py
+++ b/Tools/clinic/clinic.py
@@ -615,6 +615,9 @@ class CLanguage(Language):
return self.render_function(clinic, function)
def docstring_for_c_string(self, f):
+ if re.search(r'[^\x00-\x7F]', f.docstring):
+ warn("Non-ascii character appear in docstring.")
+
text, add, output = _text_accumulator()
# turn docstring into a properly quoted C string
for line in f.docstring.split('\n'):