summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeil Schemenauer <nascheme@enme.ucalgary.ca>2001-08-30 15:38:01 (GMT)
committerNeil Schemenauer <nascheme@enme.ucalgary.ca>2001-08-30 15:38:01 (GMT)
commit4042c69b5e718d48e31e38e702cf959ee08c2b2b (patch)
tree824c421d71599d61896d9455146fffd5c7d4cc49
parent55cdc88c09e89ca1585b63135f333ce07274487f (diff)
downloadcpython-4042c69b5e718d48e31e38e702cf959ee08c2b2b.zip
cpython-4042c69b5e718d48e31e38e702cf959ee08c2b2b.tar.gz
cpython-4042c69b5e718d48e31e38e702cf959ee08c2b2b.tar.bz2
Add news about GC API change. Explain how to upgrade extension modules.
-rw-r--r--Misc/NEWS19
1 files changed, 16 insertions, 3 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index d660df8..7ea6b93 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -22,9 +22,22 @@ Build
API
-+ XXX Say something about Neil's GC rework, and that extensions that
- don't upgrade to the new scheme will still compile but not actually
- participate in GC.
++ The GC API has been changed. Extensions that use the old API will still
+ compile but will not participate in GC. To upgrade an extension
+ module:
+
+ - rename Py_TPFLAGS_GC to PyTPFLAGS_HAVE_GC
+
+ - use PyObject_GC_New or PyObject_GC_NewVar to allocate objects and
+ PyObject_GC_Del to deallocate them
+
+ - rename PyObject_GC_Init to PyObject_GC_Track and PyObject_GC_Fini
+ to PyObject_GC_UnTrack
+
+ - remove PyGC_HEAD_SIZE from object size calculations
+
+ - remove calls to PyObject_AS_GC and PyObject_FROM_GC
+
New platforms