[issue42972] [C API] Heap types (PyType_FromSpec) must fully implement the GC protocol

Erlend E. Aasland report at bugs.python.org
Thu May 13 17:34:43 EDT 2021


Erlend E. Aasland <erlend.aasland at innova.no> added the comment:

I've added a checkbox for types that fully implement the GC protocol to https://discuss.python.org/t/list-of-built-in-types-converted-to-heap-types/8403/1.

Heap types that fully implement the GC protocol:
* _abc._abc_data
* _bz2.BZ2Compressor
* _bz2.BZ2Decompressor
* _csv.Dialect
* _csv.reader
* _csv.writer
* _json.Encoder
* _json.Scanner
* _lzma.LZMACompressor
* _lzma.LZMADecompressor
* _multibytecodec.MultibyteCodec
* _struct.unpack_iterator
* _thread._local
* _thread.lock
* ast.AST

Heap types that do not fully implement the GC protocol:
* _curses_panel.panel
* _dbm.dbm
* _gdbm.gdbm
* _hashlib.HASH
* _hashlib.HASHXOF
* _lsprof.Profiler
* _md5.md5
* _multibytecodec.MultibyteIncrementalDecoder
* _multibytecodec.MultibyteIncrementalEncoder
* _multibytecodec.MultibyteStreamReader
* _multibytecodec.MultibyteStreamWriter
* _overlapped.Overlapped
* _queue.SimpleQueue
* _random.Random
* _sha1.sha1
* _sha256.sha224
* _sha256.sha256
* _sha512.sha384
* _sha512.sha512
* _sre.SRE_Scanner
* _ssl.MemoryBIO
* _ssl.SSLSession
* _ssl._SSLContext
* _ssl._SSLSocket
* _struct.Struct
* _thread.RLock
* _thread._localdummy
* _tkinter.Tcl_Obj
* _tkinter.tkapp
* _tkinter.tktimertoken
* array.array
* array.arrayiterator
* functools.KeyWrapper
* functools._lru_cache_wrapper
* functools._lru_list_elem
* functools.partial
* mmap.mmap
* operator.attrgetter
* operator.itemgetter
* operator.methodcaller
* posix.DirEntry
* posix.ScandirIterator
* pyexpat.xmlparser
* re.Match
* re.Pattern
* select.devpoll
* select.epoll
* select.kevent
* select.kqueue
* select.poll
* sqlite3.Cache
* sqlite3.Connection
* sqlite3.Cursor
* sqlite3.Node
* sqlite3.PrepareProtocol
* sqlite3.Row
* sqlite3.Statement
* ssl.SSLError
* unicodedata.UCD
* winapi__overlapped.Overlapped
* zlib.Compress
* zlib.Decompress

----------

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue42972>
_______________________________________


More information about the Python-bugs-list mailing list