diff --git a/Lib/asyncio/futures.py b/Lib/asyncio/futures.py
index 7c5b1aa7451..87ae30aa09e 100644
--- a/Lib/asyncio/futures.py
+++ b/Lib/asyncio/futures.py
@@ -432,18 +432,18 @@ def _copy_future_state(source, dest):
try:
- import _futures
+ import _asyncio
except ImportError:
pass
else:
- _futures._init_module(
+ _asyncio._init_module(
traceback.extract_stack,
events.get_event_loop,
_future_repr_info,
InvalidStateError,
CancelledError)
- Future = _futures.Future
+ Future = _asyncio.Future
def _chain_future(source, destination):
diff --git a/Modules/Setup.dist b/Modules/Setup.dist
index 3211bef7627..8b87fc8143f 100644
--- a/Modules/Setup.dist
+++ b/Modules/Setup.dist
@@ -181,7 +181,7 @@ _symtable symtablemodule.c
#_datetime _datetimemodule.c # datetime accelerator
#_bisect _bisectmodule.c # Bisection algorithms
#_heapq _heapqmodule.c # Heap queue algorithm
-#_futures _futuresmodule.c # Fast asyncio Future
+#_asyncio _asynciomodule.c # Fast asyncio Future
#unicodedata unicodedata.c # static Unicode character database
diff --git a/Modules/_futuresmodule.c b/Modules/_asynciomodule.c
similarity index 97%
rename from Modules/_futuresmodule.c
rename to Modules/_asynciomodule.c
index 3e91a3c8b86..ce576e5799c 100644
--- a/Modules/_futuresmodule.c
+++ b/Modules/_asynciomodule.c
@@ -6,8 +6,8 @@
_Py_IDENTIFIER(call_soon);
-/* State of the _futures module */
-static int _futuremod_ready;
+/* State of the _asyncio module */
+static int _asynciomod_ready;
static PyObject *traceback_extract_stack;
static PyObject *asyncio_get_event_loop;
static PyObject *asyncio_repr_info_func;
@@ -21,11 +21,11 @@ static PyObject* new_future_iter(PyObject *fut);
/* make sure module state is initialized and ready to be used. */
static int
-_FuturesMod_EnsureState(void)
+_AsyncioMod_EnsureState(void)
{
- if (!_futuremod_ready) {
+ if (!_asynciomod_ready) {
PyErr_SetString(PyExc_RuntimeError,
- "_futures module wasn't properly initialized");
+ "_asyncio module wasn't properly initialized");
return -1;
}
return 0;
@@ -108,7 +108,7 @@ FutureObj_init(FutureObj *fut, PyObject *args, PyObject *kwds)
PyObject *res = NULL;
_Py_IDENTIFIER(get_debug);
- if (_FuturesMod_EnsureState()) {
+ if (_AsyncioMod_EnsureState()) {
return -1;
}
@@ -218,7 +218,7 @@ PyDoc_STRVAR(pydoc_exception,
static PyObject *
FutureObj_exception(FutureObj *fut, PyObject *arg)
{
- if (_FuturesMod_EnsureState()) {
+ if (_AsyncioMod_EnsureState()) {
return NULL;
}
@@ -251,7 +251,7 @@ PyDoc_STRVAR(pydoc_set_result,
static PyObject *
FutureObj_set_result(FutureObj *fut, PyObject *res)
{
- if (_FuturesMod_EnsureState()) {
+ if (_AsyncioMod_EnsureState()) {
return NULL;
}
@@ -282,7 +282,7 @@ FutureObj_set_exception(FutureObj *fut, PyObject *exc)
{
PyObject *exc_val = NULL;
- if (_FuturesMod_EnsureState()) {
+ if (_AsyncioMod_EnsureState()) {
return NULL;
}
@@ -735,7 +735,7 @@ static void FutureObj_dealloc(PyObject *self);
static PyTypeObject FutureType = {
PyVarObject_HEAD_INIT(0, 0)
- "_futures.Future",
+ "_asyncio.Future",
sizeof(FutureObj), /* tp_basicsize */
.tp_dealloc = FutureObj_dealloc,
.tp_as_async = &FutureType_as_async,
@@ -898,7 +898,7 @@ static PyMethodDef FutureIter_methods[] = {
static PyTypeObject FutureIterType = {
PyVarObject_HEAD_INIT(0, 0)
- "_futures.FutureIter",
+ "_asyncio.FutureIter",
sizeof(futureiterobject), /* tp_basicsize */
0, /* tp_itemsize */
(destructor)FutureIter_dealloc, /* tp_dealloc */
@@ -949,7 +949,7 @@ new_future_iter(PyObject *fut)
/*********************** Module **************************/
-PyDoc_STRVAR(module_doc, "Fast asyncio.Future implementation.\n");
+PyDoc_STRVAR(module_doc, "asyncio speedups.\n");
PyObject *
_init_module(PyObject *self, PyObject *args)
@@ -984,24 +984,24 @@ _init_module(PyObject *self, PyObject *args)
Py_INCREF(cancelledError);
Py_XSETREF(asyncio_CancelledError, cancelledError);
- _futuremod_ready = 1;
+ _asynciomod_ready = 1;
Py_RETURN_NONE;
}
-static struct PyMethodDef futuresmod_methods[] = {
+static struct PyMethodDef asynciomod_methods[] = {
{"_init_module", _init_module, METH_VARARGS, NULL},
{NULL, NULL}
};
-static struct PyModuleDef _futuresmodule = {
+static struct PyModuleDef _asynciomodule = {
PyModuleDef_HEAD_INIT, /* m_base */
- "_futures", /* m_name */
+ "_asyncio", /* m_name */
module_doc, /* m_doc */
-1, /* m_size */
- futuresmod_methods, /* m_methods */
+ asynciomod_methods, /* m_methods */
NULL, /* m_slots */
NULL, /* m_traverse */
NULL, /* m_clear */
@@ -1010,7 +1010,7 @@ static struct PyModuleDef _futuresmodule = {
PyMODINIT_FUNC
-PyInit__futures(void)
+PyInit__asyncio(void)
{
if (PyType_Ready(&FutureType) < 0) {
return NULL;
@@ -1019,7 +1019,7 @@ PyInit__futures(void)
return NULL;
}
- PyObject *m = PyModule_Create(&_futuresmodule);
+ PyObject *m = PyModule_Create(&_asynciomodule);
if (m == NULL) {
return NULL;
}
diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj
index 1507adbf4a0..aa6ba74fa52 100644
--- a/PCbuild/pythoncore.vcxproj
+++ b/PCbuild/pythoncore.vcxproj
@@ -213,6 +213,7 @@
+
@@ -221,7 +222,6 @@
-
diff --git a/PCbuild/pythoncore.vcxproj.filters b/PCbuild/pythoncore.vcxproj.filters
index ef2433322de..a45b9d91e1b 100644
--- a/PCbuild/pythoncore.vcxproj.filters
+++ b/PCbuild/pythoncore.vcxproj.filters
@@ -446,6 +446,9 @@
+
+ Modules
+
Modules
@@ -470,9 +473,6 @@
Modules
-
- Modules
-
Modules
diff --git a/setup.py b/setup.py
index 1d4a7f883a2..b54ef816995 100644
--- a/setup.py
+++ b/setup.py
@@ -656,8 +656,8 @@ class PyBuildExt(build_ext):
depends=['unicodedata_db.h', 'unicodename_db.h']) )
# _opcode module
exts.append( Extension('_opcode', ['_opcode.c']) )
- # Fast asyncio Future implementation
- exts.append( Extension("_futures", ["_futuresmodule.c"]) )
+ # asyncio speedups
+ exts.append( Extension("_asyncio", ["_asynciomodule.c"]) )
# Modules with some UNIX dependencies -- on by default:
# (If you have a really backward UNIX, select and socket may not be