mirror of
https://github.com/python/cpython.git
synced 2025-11-02 03:01:58 +00:00
Merge 23c1-branch back into the head. Barry will send email about the
New Plan (releases to be made off the head, ongoing random 2.4 stuff to be done on a short-lived branch, provided anyone is motivated enough to create one).
This commit is contained in:
parent
0ceb9b1603
commit
6a627250d2
2 changed files with 48 additions and 6 deletions
38
Misc/NEWS
38
Misc/NEWS
|
|
@ -4,6 +4,40 @@ Python News
|
||||||
|
|
||||||
(editors: check NEWS.help for information about editing NEWS using ReST.)
|
(editors: check NEWS.help for information about editing NEWS using ReST.)
|
||||||
|
|
||||||
|
What's New in Python 2.3 release candidate 2?
|
||||||
|
=============================================
|
||||||
|
|
||||||
|
*Release date: DD-MMM-YYYY*
|
||||||
|
|
||||||
|
Core and builtins
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
Extension modules
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
- A longstanding bug in the parser module's initialization could cause
|
||||||
|
fatal internal refcount confusion when the module got initialized more
|
||||||
|
than once. This has been fixed.
|
||||||
|
|
||||||
|
Library
|
||||||
|
-------
|
||||||
|
|
||||||
|
Tools/Demos
|
||||||
|
-----------
|
||||||
|
|
||||||
|
Build
|
||||||
|
-----
|
||||||
|
|
||||||
|
C API
|
||||||
|
-----
|
||||||
|
|
||||||
|
Windows
|
||||||
|
-------
|
||||||
|
|
||||||
|
Mac
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
What's New in Python 2.3 release candidate 1?
|
What's New in Python 2.3 release candidate 1?
|
||||||
=============================================
|
=============================================
|
||||||
|
|
||||||
|
|
@ -26,7 +60,7 @@ Core and builtins
|
||||||
|
|
||||||
- A warning about assignments to module attributes that shadow
|
- A warning about assignments to module attributes that shadow
|
||||||
builtins, present in earlier releases of 2.3, has been removed.
|
builtins, present in earlier releases of 2.3, has been removed.
|
||||||
|
|
||||||
- It is not possible to create subclasses of builtin types like str
|
- It is not possible to create subclasses of builtin types like str
|
||||||
and tuple that define an itemsize. Earlier releases of Python 2.3
|
and tuple that define an itemsize. Earlier releases of Python 2.3
|
||||||
allowed this by mistake, leading to crashes and other problems.
|
allowed this by mistake, leading to crashes and other problems.
|
||||||
|
|
@ -58,7 +92,7 @@ Extension modules
|
||||||
- The cPickle Pickler garbage collection support was fixed to traverse
|
- The cPickle Pickler garbage collection support was fixed to traverse
|
||||||
the find_class attribute, if present.
|
the find_class attribute, if present.
|
||||||
|
|
||||||
- There are several fixes for the bsddb3 wrapper module.
|
- There are several fixes for the bsddb3 wrapper module.
|
||||||
|
|
||||||
bsddb3 no longer crashes if an environment is closed before a cursor
|
bsddb3 no longer crashes if an environment is closed before a cursor
|
||||||
(SF bug 763298).
|
(SF bug 763298).
|
||||||
|
|
|
||||||
|
|
@ -106,7 +106,7 @@ node2tuple(node *n, /* node to convert */
|
||||||
}
|
}
|
||||||
(void) addelem(v, i+1, w);
|
(void) addelem(v, i+1, w);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (TYPE(n) == encoding_decl)
|
if (TYPE(n) == encoding_decl)
|
||||||
(void) addelem(v, i+1, PyString_FromString(STR(n)));
|
(void) addelem(v, i+1, PyString_FromString(STR(n)));
|
||||||
return (v);
|
return (v);
|
||||||
|
|
@ -2904,11 +2904,19 @@ initparser(void)
|
||||||
if (parser_error == 0)
|
if (parser_error == 0)
|
||||||
parser_error = PyErr_NewException("parser.ParserError", NULL, NULL);
|
parser_error = PyErr_NewException("parser.ParserError", NULL, NULL);
|
||||||
|
|
||||||
if ((parser_error == 0)
|
if (parser_error == 0)
|
||||||
|| (PyModule_AddObject(module, "ParserError", parser_error) != 0)) {
|
|
||||||
/* caller will check PyErr_Occurred() */
|
/* caller will check PyErr_Occurred() */
|
||||||
return;
|
return;
|
||||||
}
|
/* CAUTION: The code next used to skip bumping the refcount on
|
||||||
|
* parser_error. That's a disaster if initparser() gets called more
|
||||||
|
* than once. By incref'ing, we ensure that each module dict that
|
||||||
|
* gets created owns its reference to the shared parser_error object,
|
||||||
|
* and the file static parser_error vrbl owns a reference too.
|
||||||
|
*/
|
||||||
|
Py_INCREF(parser_error);
|
||||||
|
if (PyModule_AddObject(module, "ParserError", parser_error) != 0)
|
||||||
|
return;
|
||||||
|
|
||||||
Py_INCREF(&PyST_Type);
|
Py_INCREF(&PyST_Type);
|
||||||
PyModule_AddObject(module, "ASTType", (PyObject*)&PyST_Type);
|
PyModule_AddObject(module, "ASTType", (PyObject*)&PyST_Type);
|
||||||
Py_INCREF(&PyST_Type);
|
Py_INCREF(&PyST_Type);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue