[Python-checkins] cpython: Issue #18701: Remove support of old CPython versions (<3.0) from C code.
serhiy.storchaka
python-checkins at python.org
Fri Aug 16 23:50:30 CEST 2013
http://hg.python.org/cpython/rev/a04d957c8d07
changeset: 85208:a04d957c8d07
user: Serhiy Storchaka <storchaka at gmail.com>
date: Sat Aug 17 00:48:02 2013 +0300
summary:
Issue #18701: Remove support of old CPython versions (<3.0) from C code.
files:
Misc/NEWS | 2 +
Modules/_ctypes/_ctypes.c | 24 +----------------
Modules/_sqlite/cache.c | 1 -
Modules/_sqlite/connection.c | 1 -
Modules/_sqlite/cursor.c | 1 -
Modules/_sqlite/prepare_protocol.c | 1 -
Modules/_sqlite/row.c | 1 -
Modules/_sqlite/statement.c | 1 -
Modules/_sre.c | 17 ------------
Objects/stringlib/unicodedefs.h | 5 ---
PC/VS9.0/_sqlite3.vcproj | 4 ---
PCbuild/_sqlite3.vcxproj | 1 -
PCbuild/_sqlite3.vcxproj.filters | 3 --
13 files changed, 4 insertions(+), 58 deletions(-)
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -28,6 +28,8 @@
Library
-------
+- Issue #18701: Remove support of old CPython versions (<3.0) from C code.
+
- Issue #18756: Improve error reporting in os.urandom() when the failure
is due to something else than /dev/urandom not existing (for example,
exhausting the file descriptor limit).
diff --git a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c
--- a/Modules/_ctypes/_ctypes.c
+++ b/Modules/_ctypes/_ctypes.c
@@ -428,13 +428,7 @@
StgDictObject *dict = PyType_stgdict(type);
assert (dict);
- if (!PyArg_ParseTuple(args,
-#if (PY_VERSION_HEX < 0x02050000)
- "O|i:from_buffer",
-#else
- "O|n:from_buffer",
-#endif
- &obj, &offset))
+ if (!PyArg_ParseTuple(args, "O|n:from_buffer", &obj, &offset))
return NULL;
if (-1 == PyObject_AsWriteBuffer(obj, &buffer, &buffer_len))
@@ -447,11 +441,7 @@
}
if (dict->size > buffer_len - offset) {
PyErr_Format(PyExc_ValueError,
-#if (PY_VERSION_HEX < 0x02050000)
- "Buffer size too small (%d instead of at least %d bytes)",
-#else
"Buffer size too small (%zd instead of at least %zd bytes)",
-#endif
buffer_len, dict->size + offset);
return NULL;
}
@@ -484,13 +474,7 @@
StgDictObject *dict = PyType_stgdict(type);
assert (dict);
- if (!PyArg_ParseTuple(args,
-#if (PY_VERSION_HEX < 0x02050000)
- "O|i:from_buffer",
-#else
- "O|n:from_buffer",
-#endif
- &obj, &offset))
+ if (!PyArg_ParseTuple(args, "O|n:from_buffer", &obj, &offset))
return NULL;
if (-1 == PyObject_AsReadBuffer(obj, (const void**)&buffer, &buffer_len))
@@ -504,11 +488,7 @@
if (dict->size > buffer_len - offset) {
PyErr_Format(PyExc_ValueError,
-#if (PY_VERSION_HEX < 0x02050000)
- "Buffer size too small (%d instead of at least %d bytes)",
-#else
"Buffer size too small (%zd instead of at least %zd bytes)",
-#endif
buffer_len, dict->size + offset);
return NULL;
}
diff --git a/Modules/_sqlite/cache.c b/Modules/_sqlite/cache.c
--- a/Modules/_sqlite/cache.c
+++ b/Modules/_sqlite/cache.c
@@ -21,7 +21,6 @@
* 3. This notice may not be removed or altered from any source distribution.
*/
-#include "sqlitecompat.h"
#include "cache.h"
#include <limits.h>
diff --git a/Modules/_sqlite/connection.c b/Modules/_sqlite/connection.c
--- a/Modules/_sqlite/connection.c
+++ b/Modules/_sqlite/connection.c
@@ -29,7 +29,6 @@
#include "cursor.h"
#include "prepare_protocol.h"
#include "util.h"
-#include "sqlitecompat.h"
#include "pythread.h"
diff --git a/Modules/_sqlite/cursor.c b/Modules/_sqlite/cursor.c
--- a/Modules/_sqlite/cursor.c
+++ b/Modules/_sqlite/cursor.c
@@ -24,7 +24,6 @@
#include "cursor.h"
#include "module.h"
#include "util.h"
-#include "sqlitecompat.h"
PyObject* pysqlite_cursor_iternext(pysqlite_Cursor* self);
diff --git a/Modules/_sqlite/prepare_protocol.c b/Modules/_sqlite/prepare_protocol.c
--- a/Modules/_sqlite/prepare_protocol.c
+++ b/Modules/_sqlite/prepare_protocol.c
@@ -21,7 +21,6 @@
* 3. This notice may not be removed or altered from any source distribution.
*/
-#include "sqlitecompat.h"
#include "prepare_protocol.h"
int pysqlite_prepare_protocol_init(pysqlite_PrepareProtocol* self, PyObject* args, PyObject* kwargs)
diff --git a/Modules/_sqlite/row.c b/Modules/_sqlite/row.c
--- a/Modules/_sqlite/row.c
+++ b/Modules/_sqlite/row.c
@@ -23,7 +23,6 @@
#include "row.h"
#include "cursor.h"
-#include "sqlitecompat.h"
void pysqlite_row_dealloc(pysqlite_Row* self)
{
diff --git a/Modules/_sqlite/statement.c b/Modules/_sqlite/statement.c
--- a/Modules/_sqlite/statement.c
+++ b/Modules/_sqlite/statement.c
@@ -27,7 +27,6 @@
#include "microprotocols.h"
#include "prepare_protocol.h"
#include "util.h"
-#include "sqlitecompat.h"
/* prototypes */
static int pysqlite_check_remaining_sql(const char* tail);
diff --git a/Modules/_sre.c b/Modules/_sre.c
--- a/Modules/_sre.c
+++ b/Modules/_sre.c
@@ -70,10 +70,6 @@
/* enables copy/deepcopy handling (work in progress) */
#undef USE_BUILTIN_COPY
-#if PY_VERSION_HEX < 0x01060000
-#define PyObject_DEL(op) PyMem_DEL((op))
-#endif
-
/* -------------------------------------------------------------------- */
#if defined(_MSC_VER)
@@ -1993,10 +1989,8 @@
/* join list elements */
PyObject* joiner;
-#if PY_VERSION_HEX >= 0x01060000
PyObject* function;
PyObject* args;
-#endif
PyObject* result;
joiner = PySequence_GetSlice(string, 0, 0);
@@ -2008,7 +2002,6 @@
return joiner;
}
-#if PY_VERSION_HEX >= 0x01060000
function = PyObject_GetAttrString(joiner, "join");
if (!function) {
Py_DECREF(joiner);
@@ -2024,12 +2017,6 @@
result = PyObject_CallObject(function, args);
Py_DECREF(args); /* also removes list */
Py_DECREF(function);
-#else
- result = call(
- "string", "join",
- PyTuple_Pack(2, list, joiner)
- );
-#endif
Py_DECREF(joiner);
return result;
@@ -2136,7 +2123,6 @@
}
-#if PY_VERSION_HEX >= 0x02020000
static PyObject*
pattern_finditer(PatternObject* pattern, PyObject* args, PyObject* kw)
{
@@ -2158,7 +2144,6 @@
return iterator;
}
-#endif
static PyObject*
pattern_split(PatternObject* self, PyObject* args, PyObject* kw)
@@ -2581,10 +2566,8 @@
pattern_split_doc},
{"findall", (PyCFunction) pattern_findall, METH_VARARGS|METH_KEYWORDS,
pattern_findall_doc},
-#if PY_VERSION_HEX >= 0x02020000
{"finditer", (PyCFunction) pattern_finditer, METH_VARARGS|METH_KEYWORDS,
pattern_finditer_doc},
-#endif
{"scanner", (PyCFunction) pattern_scanner, METH_VARARGS|METH_KEYWORDS},
{"__copy__", (PyCFunction) pattern_copy, METH_NOARGS},
{"__deepcopy__", (PyCFunction) pattern_deepcopy, METH_O},
diff --git a/Objects/stringlib/unicodedefs.h b/Objects/stringlib/unicodedefs.h
--- a/Objects/stringlib/unicodedefs.h
+++ b/Objects/stringlib/unicodedefs.h
@@ -24,13 +24,8 @@
#define STRINGLIB_CHECK PyUnicode_Check
#define STRINGLIB_CHECK_EXACT PyUnicode_CheckExact
-#if PY_VERSION_HEX < 0x03000000
-#define STRINGLIB_TOSTR PyObject_Unicode
-#define STRINGLIB_TOASCII PyObject_Repr
-#else
#define STRINGLIB_TOSTR PyObject_Str
#define STRINGLIB_TOASCII PyObject_ASCII
-#endif
#define STRINGLIB_WANT_CONTAINS_OBJ 1
diff --git a/PC/VS9.0/_sqlite3.vcproj b/PC/VS9.0/_sqlite3.vcproj
--- a/PC/VS9.0/_sqlite3.vcproj
+++ b/PC/VS9.0/_sqlite3.vcproj
@@ -555,10 +555,6 @@
>
</File>
<File
- RelativePath="..\..\Modules\_sqlite\sqlitecompat.h"
- >
- </File>
- <File
RelativePath="..\..\Modules\_sqlite\statement.h"
>
</File>
diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj
--- a/PCbuild/_sqlite3.vcxproj
+++ b/PCbuild/_sqlite3.vcxproj
@@ -243,7 +243,6 @@
<ClInclude Include="..\Modules\_sqlite\module.h" />
<ClInclude Include="..\Modules\_sqlite\prepare_protocol.h" />
<ClInclude Include="..\Modules\_sqlite\row.h" />
- <ClInclude Include="..\Modules\_sqlite\sqlitecompat.h" />
<ClInclude Include="..\Modules\_sqlite\statement.h" />
<ClInclude Include="..\Modules\_sqlite\util.h" />
</ItemGroup>
diff --git a/PCbuild/_sqlite3.vcxproj.filters b/PCbuild/_sqlite3.vcxproj.filters
--- a/PCbuild/_sqlite3.vcxproj.filters
+++ b/PCbuild/_sqlite3.vcxproj.filters
@@ -30,9 +30,6 @@
<ClInclude Include="..\Modules\_sqlite\row.h">
<Filter>Header Files</Filter>
</ClInclude>
- <ClInclude Include="..\Modules\_sqlite\sqlitecompat.h">
- <Filter>Header Files</Filter>
- </ClInclude>
<ClInclude Include="..\Modules\_sqlite\statement.h">
<Filter>Header Files</Filter>
</ClInclude>
--
Repository URL: http://hg.python.org/cpython
More information about the Python-checkins
mailing list