Skip to content

Commit

Permalink
pythongh-110850: Cleanup pycore_time.h includes (python#115724)
Browse files Browse the repository at this point in the history
<pycore_time.h> include is no longer needed to get the PyTime_t type
in internal header files. This type is now provided by <Python.h>
include. Add <pycore_time.h> includes to C files instead.
  • Loading branch information
vstinner authored Feb 20, 2024
1 parent e976bab commit d207c7c
Show file tree
Hide file tree
Showing 23 changed files with 28 additions and 17 deletions.
1 change: 0 additions & 1 deletion Include/internal/pycore_import.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ extern "C" {

#include "pycore_lock.h" // PyMutex
#include "pycore_hashtable.h" // _Py_hashtable_t
#include "pycore_time.h" // PyTime_t

extern int _PyImport_IsInitialized(PyInterpreterState *);

Expand Down
2 changes: 0 additions & 2 deletions Include/internal/pycore_lock.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,6 @@ extern "C" {
# error "this header requires Py_BUILD_CORE define"
#endif

#include "pycore_time.h" // PyTime_t


// A mutex that occupies one byte. The lock can be zero initialized.
//
Expand Down
2 changes: 0 additions & 2 deletions Include/internal/pycore_parking_lot.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,6 @@ extern "C" {
# error "this header requires Py_BUILD_CORE define"
#endif

#include "pycore_time.h" // PyTime_t


enum {
// The thread was unparked by another thread.
Expand Down
1 change: 0 additions & 1 deletion Include/internal/pycore_semaphore.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
#endif

#include "pycore_pythread.h" // _POSIX_SEMAPHORES
#include "pycore_time.h" // PyTime_t

#ifdef MS_WINDOWS
# define WIN32_LEAN_AND_MEAN
Expand Down
2 changes: 2 additions & 0 deletions Modules/_datetimemodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@
#include "Python.h"
#include "pycore_long.h" // _PyLong_GetOne()
#include "pycore_object.h" // _PyObject_Init()
#include "pycore_time.h" // _PyTime_ObjectToTime_t()

#include "datetime.h"


Expand Down
1 change: 1 addition & 0 deletions Modules/_lsprof.c
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
#include "pycore_call.h" // _PyObject_CallNoArgs()
#include "pycore_ceval.h" // _PyEval_SetProfile()
#include "pycore_pystate.h" // _PyThreadState_GET()
#include "pycore_time.h" // _PyTime_FromNanosecondsObject()

#include "rotatingtree.h"

Expand Down
1 change: 1 addition & 0 deletions Modules/_randommodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@
#include "pycore_modsupport.h" // _PyArg_NoKeywords()
#include "pycore_moduleobject.h" // _PyModule_GetState()
#include "pycore_pylifecycle.h" // _PyOS_URandomNonblock()
#include "pycore_time.h" // _PyTime_GetSystemClock()

#ifdef HAVE_UNISTD_H
# include <unistd.h> // getpid()
Expand Down
1 change: 1 addition & 0 deletions Modules/_ssl.c
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
#include "Python.h"
#include "pycore_fileutils.h" // _PyIsSelectable_fd()
#include "pycore_pyerrors.h" // _PyErr_ChainExceptions1()
#include "pycore_time.h" // _PyDeadline_Init()
#include "pycore_weakref.h" // _PyWeakref_GET_REF()

/* Include symbols from _socket module */
Expand Down
3 changes: 2 additions & 1 deletion Modules/_testinternalcapi/test_lock.c
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
// C Extension module to test pycore_lock.h API

#include "parts.h"

#include "pycore_lock.h"
#include "pycore_time.h" // _PyTime_GetMonotonicClock()

#include "clinic/test_lock.c.h"

#ifdef MS_WINDOWS
Expand Down
1 change: 1 addition & 0 deletions Modules/_threadmodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
#include "pycore_pylifecycle.h"
#include "pycore_pystate.h" // _PyThreadState_SetCurrent()
#include "pycore_sysmodule.h" // _PySys_GetAttr()
#include "pycore_time.h" // _PyTime_FromSeconds()
#include "pycore_weakref.h" // _PyWeakref_GET_REF()

#include <stdbool.h>
Expand Down
1 change: 1 addition & 0 deletions Modules/faulthandler.c
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#include "pycore_pystate.h" // _PyThreadState_GET()
#include "pycore_signal.h" // Py_NSIG
#include "pycore_sysmodule.h" // _PySys_GetAttr()
#include "pycore_time.h" // _PyTime_FromSecondsObject()
#include "pycore_traceback.h" // _Py_DumpTracebackThreads

#ifdef HAVE_UNISTD_H
Expand Down
1 change: 1 addition & 0 deletions Modules/posixmodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
#include "pycore_pylifecycle.h" // _PyOS_URandom()
#include "pycore_pystate.h" // _PyInterpreterState_GET()
#include "pycore_signal.h" // Py_NSIG
#include "pycore_time.h" // _PyLong_FromTime_t()

#ifdef HAVE_UNISTD_H
# include <unistd.h> // symlink()
Expand Down
1 change: 1 addition & 0 deletions Modules/signalmodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
#include "pycore_pyerrors.h" // _PyErr_SetString()
#include "pycore_pystate.h" // _PyThreadState_GET()
#include "pycore_signal.h" // _Py_RestoreSignals()
#include "pycore_time.h" // _PyTime_FromSecondsObject()

#ifndef MS_WINDOWS
# include "posixmodule.h" // _PyLong_FromUid()
Expand Down
1 change: 1 addition & 0 deletions Modules/socketmodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,7 @@ Local naming conventions:
#include "pycore_capsule.h" // _PyCapsule_SetTraverse()
#include "pycore_fileutils.h" // _Py_set_inheritable()
#include "pycore_moduleobject.h" // _PyModule_GetState
#include "pycore_time.h" // _PyTime_AsMilliseconds()

#ifdef _Py_MEMORY_SANITIZER
# include <sanitizer/msan_interface.h>
Expand Down
2 changes: 0 additions & 2 deletions Modules/socketmodule.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
/* Socket module header file */

#include "pycore_time.h" // PyTime_t

/* Includes needed for the sockaddr_* symbols below */
#ifndef MS_WINDOWS
#ifdef __VMS
Expand Down
1 change: 1 addition & 0 deletions Modules/timemodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
#include "pycore_moduleobject.h" // _PyModule_GetState()
#include "pycore_namespace.h" // _PyNamespace_New()
#include "pycore_runtime.h" // _Py_ID()
#include "pycore_time.h" // _PyTimeFraction

#include <time.h> // clock()
#ifdef HAVE_SYS_TIMES_H
Expand Down
1 change: 1 addition & 0 deletions Python/gc.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
#include "pycore_object_alloc.h" // _PyObject_MallocWithType()
#include "pycore_pyerrors.h"
#include "pycore_pystate.h" // _PyThreadState_GET()
#include "pycore_time.h" // _PyTime_GetPerfCounter()
#include "pycore_weakref.h" // _PyWeakref_ClearRef()
#include "pydtrace.h"

Expand Down
1 change: 1 addition & 0 deletions Python/gc_free_threading.c
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
#include "pycore_object_stack.h"
#include "pycore_pyerrors.h"
#include "pycore_pystate.h" // _PyThreadState_GET()
#include "pycore_time.h" // _PyTime_GetPerfCounter()
#include "pycore_tstate.h" // _PyThreadStateImpl
#include "pycore_weakref.h" // _PyWeakref_ClearRef()
#include "pydtrace.h"
Expand Down
1 change: 1 addition & 0 deletions Python/import.c
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
#include "pycore_pymem.h" // _PyMem_SetDefaultAllocator()
#include "pycore_pystate.h" // _PyInterpreterState_GET()
#include "pycore_sysmodule.h" // _PySys_Audit()
#include "pycore_time.h" // _PyTime_GetPerfCounter()
#include "pycore_weakref.h" // _PyWeakref_GET_REF()

#include "marshal.h" // PyMarshal_ReadObjectFromString()
Expand Down
7 changes: 4 additions & 3 deletions Python/lock.c
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,13 @@
#include "pycore_lock.h"
#include "pycore_parking_lot.h"
#include "pycore_semaphore.h"
#include "pycore_time.h" // _PyTime_GetMonotonicClock()

#ifdef MS_WINDOWS
#define WIN32_LEAN_AND_MEAN
#include <windows.h> // SwitchToThread()
# define WIN32_LEAN_AND_MEAN
# include <windows.h> // SwitchToThread()
#elif defined(HAVE_SCHED_H)
#include <sched.h> // sched_yield()
# include <sched.h> // sched_yield()
#endif

// If a thread waits on a lock for longer than TIME_TO_BE_FAIR_NS (1 ms), then
Expand Down
9 changes: 5 additions & 4 deletions Python/parking_lot.c
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
#include "Python.h"

#include "pycore_llist.h"
#include "pycore_lock.h" // _PyRawMutex
#include "pycore_lock.h" // _PyRawMutex
#include "pycore_parking_lot.h"
#include "pycore_pyerrors.h" // _Py_FatalErrorFormat
#include "pycore_pystate.h" // _PyThreadState_GET
#include "pycore_semaphore.h" // _PySemaphore
#include "pycore_pyerrors.h" // _Py_FatalErrorFormat
#include "pycore_pystate.h" // _PyThreadState_GET
#include "pycore_semaphore.h" // _PySemaphore
#include "pycore_time.h" //_PyTime_GetMonotonicClock()

#include <stdbool.h>

Expand Down
3 changes: 2 additions & 1 deletion Python/thread_nt.h
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#include "pycore_interp.h" // _PyInterpreterState.threads.stacksize
#include "pycore_interp.h" // _PyInterpreterState.threads.stacksize
#include "pycore_time.h" // _PyTime_AsMicroseconds()

/* This code implemented by [email protected] */
/* Fast NonRecursiveMutex support by Yakov Markovitch, [email protected] */
Expand Down
1 change: 1 addition & 0 deletions Python/thread_pthread.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#include "pycore_interp.h" // _PyInterpreterState.threads.stacksize
#include "pycore_pythread.h" // _POSIX_SEMAPHORES
#include "pycore_time.h" // _PyTime_FromMicrosecondsClamup()

/* Posix threads interface */

Expand Down

0 comments on commit d207c7c

Please sign in to comment.