Victor Stinner
cdad2724e6
bpo-40137: Add pycore_moduleobject.h internal header (GH-25507)
...
Add pycore_moduleobject.h internal header file with static inline
functions to access module members:
* _PyModule_GetDict()
* _PyModule_GetDef()
* _PyModule_GetState()
These functions don't check at runtime if their argument has a valid
type and can be inlined even if Python is not built with LTO.
_PyType_GetModuleByDef() uses _PyModule_GetDef().
Replace PyModule_GetState() with _PyModule_GetState() in the
extension modules, considered as performance sensitive:
* _abc
* _functools
* _operator
* _pickle
* _queue
* _random
* _sre
* _struct
* _thread
* _winapi
* array
* posix
The following extensions are now built with the Py_BUILD_CORE_MODULE
macro defined, to be able to use the internal pycore_moduleobject.h
header: _abc, array, _operator, _queue, _sre, _struct.
2021-04-22 00:52:52 +02:00
Erlend Egeberg Aasland
bf108bb21e
bpo-40077: Fix typo in simplequeue_get_state_by_type() (GH-23975)
...
The typo did no damage, but it looks suspicious and confusing.
Introduced by GH-23136.
Skip news.
Automerge-Triggered-By: GH:pitrou
2020-12-28 09:47:16 -08:00
Christian Heimes
3094dd5fb5
bpo-1635741: Port _queue to multiphase initialization (GH-23376)
...
Signed-off-by: Christian Heimes <christian@python.org>
Automerge-Triggered-By: GH:tiran
2020-11-19 00:24:37 -08:00
Erlend Egeberg Aasland
01c6aa43dc
bpo-40077: Convert _queuemodule to use heap types (GH-23136)
...
@vstinner / @corona10, would you mind reviewing this?
2020-11-07 11:18:37 -08:00
Victor Stinner
4a21e57fe5
bpo-40268: Remove unused structmember.h includes (GH-19530)
...
If only offsetof() is needed: include stddef.h instead.
When structmember.h is used, add a comment explaining that
PyMemberDef is used.
2020-04-15 02:35:41 +02:00
Victor Stinner
62183b8d6d
bpo-40268: Remove explicit pythread.h includes ( #19529 )
...
Remove explicit pythread.h includes: it is always included
by Python.h.
2020-04-15 02:04:42 +02:00
Batuhan Taşkaya
0361556537
bpo-39481: PEP 585 for a variety of modules (GH-19423)
...
- concurrent.futures
- ctypes
- http.cookies
- multiprocessing
- queue
- tempfile
- unittest.case
- urllib.parse
2020-04-10 07:46:36 -07:00
Dong-hee Na
37fcbb65d4
bpo-40024: Update C extension modules to use PyModule_AddType() (GH-19119)
...
Update _asyncio, _bz2, _csv, _curses, _datetime,
_io, _operator, _pickle, _queue, blake2,
multibytecodec and overlapped C extension modules
to use PyModule_AddType().
2020-03-24 23:08:51 +01:00
Jeroen Demeyer
530f506ac9
bpo-36974: tp_print -> tp_vectorcall_offset and tp_reserved -> tp_as_async (GH-13464)
...
Automatically replace
tp_print -> tp_vectorcall_offset
tp_compare -> tp_as_async
tp_reserved -> tp_as_async
2019-05-30 19:13:39 -07:00
Victor Stinner
1a6be91e6f
bpo-35081: Make some _PyGC macros internal (GH-10507)
...
* Move "GC" macros together:
* PyObject_IS_GC()
* _Py_AS_GC()
* _PyObject_GC_IS_TRACKED()
* _PyObject_GC_MAY_BE_TRACKED()
* Mark other GC macros as internal (#ifdef Py_BUILD_CORE):
* _PyGCHead_NEXT(g), _PyGCHead_SET_NEXT(g, p)
* _PyGCHead_PREV(g), _PyGCHead_SET_PREV(g, p)
* _PyGCHead_FINALIZED(g), _PyGCHead_SET_FINALIZED(g)
* _PyGC_FINALIZED(o), _PyGC_SET_FINALIZED(o)
* _PyObject_GC_TRACK(o), _PyObject_GC_UNTRACK(o)
* _PyGC_PREV_MASK_FINALIZED
* _PyGC_PREV_MASK_COLLECTING
* _PyGC_PREV_SHIFT
* _PyGC_PREV_MASK
* Replace _PyGC_generation0 with _PyRuntime.gc.generation0
* _queuemodule.c: replace _PyObject_GC_UNTRACK()
with with PyObject_GC_UnTrack()
* Document that _PyObject_GC_TRACK() _PyObject_GC_UNTRACK() macros
have been removed from the public C API.
2018-11-13 12:52:18 +01:00
Peter Eisentraut
0e0bc4e221
Fix misleading mentions of tp_size in comments (GH-9093)
...
Many type object initializations labeled a field "tp_size" in the
comment, but the name of that field is tp_basicsize.
2018-09-10 09:46:08 -07:00
Benjamin Peterson
9b50a7f29b
Make PySimpleQueueType static. (GH-8175)
2018-07-07 15:21:15 -07:00
Antoine Pitrou
94e1696d04
bpo-14976: Reentrant simple queue ( #3346 )
...
Add a queue.SimpleQueue class, an unbounded FIFO queue with a reentrant C implementation of put().
2018-01-16 00:27:16 +01:00