Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

C API: Cleanup header files #108765

Closed
vstinner opened this issue Sep 1, 2023 · 0 comments
Closed

C API: Cleanup header files #108765

vstinner opened this issue Sep 1, 2023 · 0 comments
Labels
type-feature A feature request or enhancement

Comments

@vstinner vstinner added the type-feature A feature request or enhancement label Sep 1, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
* Move <ctype.h>, <limits.h> and <stdarg.h> includes to Python.h.
* Move "pystats.h" include from object.h to Python.h.
* Remove redundant "pymem.h" include in objimpl.h and "pyport.h"
  include in pymem.h; Python.h already includes them earlier.
* Remove redundant <wchar.h> include in unicodeobject.h; Python.h
  already includes it.
* Move _SGI_MP_SOURCE define from Python.h to pyport.h.
* pycore_condvar.h includes explicitly <unistd.h> for the
  _POSIX_THREADS macro.
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
* Move <ctype.h>, <limits.h> and <stdarg.h> standard includes to
  Python.h.
* Move "pystats.h" include from object.h to Python.h.
* Remove redundant "pymem.h" include in objimpl.h and "pyport.h"
  include in pymem.h; Python.h already includes them earlier.
* Remove redundant <wchar.h> include in unicodeobject.h; Python.h
  already includes it.
* Move _SGI_MP_SOURCE define from Python.h to pyport.h.
* pycore_condvar.h includes explicitly <unistd.h> for the
  _POSIX_THREADS macro.
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
* Move <ctype.h>, <limits.h> and <stdarg.h> standard includes to
  Python.h.
* Move "pystats.h" include from object.h to Python.h.
* Remove redundant "pymem.h" include in objimpl.h and "pyport.h"
  include in pymem.h; Python.h already includes them earlier.
* Remove redundant <wchar.h> include in unicodeobject.h; Python.h
  already includes it.
* Move _SGI_MP_SOURCE define from Python.h to pyport.h.
* pycore_condvar.h includes explicitly <unistd.h> for the
  _POSIX_THREADS macro.
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
* Move <ctype.h>, <limits.h> and <stdarg.h> standard includes to
  Python.h.
* Move "pystats.h" include from object.h to Python.h.
* Remove redundant "pymem.h" include in objimpl.h and "pyport.h"
  include in pymem.h; Python.h already includes them earlier.
* Remove redundant <wchar.h> include in unicodeobject.h; Python.h
  already includes it.
* Move _SGI_MP_SOURCE define from Python.h to pyport.h.
* pycore_condvar.h includes explicitly <unistd.h> for the
  _POSIX_THREADS macro.
vstinner added a commit that referenced this issue Sep 1, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
Python.h no longer includes these standard header files: <time.h>,
<sys/select.h> and <sys/time.h>. They should now be included
explicitly if needed.
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
Remove prototypes for old Solaris and old QNX versions from pyport.h.
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
Move prototypes of gethostname(), _getpty() and struct termios from
pyport.h to the C code using them: posixmodule.c, socketmodule.c and
termios.c.

Replace "#ifdef SOLARIS" with "#ifdef __sun".
vstinner added a commit that referenced this issue Sep 1, 2023
* Move <ctype.h>, <limits.h> and <stdarg.h> standard includes to
  Python.h.
* Move "pystats.h" include from object.h to Python.h.
* Remove redundant "pymem.h" include in objimpl.h and "pyport.h"
  include in pymem.h; Python.h already includes them earlier.
* Remove redundant <wchar.h> include in unicodeobject.h; Python.h
  already includes it.
* Move _SGI_MP_SOURCE define from Python.h to pyport.h.
* pycore_condvar.h includes explicitly <unistd.h> for the
  _POSIX_THREADS macro.
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 1, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 2, 2023
Remove also the HAVE_IEEEFP_H macro: remove ieeefp.h from the
AC_CHECK_HEADERS() check of configure.ac.
vstinner added a commit that referenced this issue Sep 2, 2023
Move prototypes of gethostname(), _getpty() and struct termios from
pyport.h to the C code using them: posixmodule.c, socketmodule.c and
termios.c.

Replace "#ifdef SOLARIS" with "#ifdef __sun".
vstinner added a commit to vstinner/cpython that referenced this issue Sep 3, 2023
Remove <ctype.h> in C files which don't use it; only sre.c and
_decimal.c still use it.

Remove _PY_PORT_CTYPE_UTF8_ISSUE code from pyport.h:

* Code added by commit b5047fd
  in 2004 for MacOSX and FreeBSD.
* Test removed by commit 52ddaef
  in 2007, since Python str type now uses locale independent
  functions like Py_ISALPHA() and Py_TOLOWER() and the Unicode
  database.

Modules/_sre/sre.c replaces _PY_PORT_CTYPE_UTF8_ISSUE with new
functions:

* sre_isalnum()
* sre_tolower()
* sre_toupper()

Remove unused includes:

* _localemodule.c: remove <stdio.h>.
* getargs.c: remove <float.h>.
* dynload_win.c: remove <direct.h>, it no longer calls _getcwd()
  since commit fb1f68e (in 2001).
vstinner added a commit that referenced this issue Sep 3, 2023
Remove <ctype.h> in C files which don't use it; only sre.c and
_decimal.c still use it.

Remove _PY_PORT_CTYPE_UTF8_ISSUE code from pyport.h:

* Code added by commit b5047fd
  in 2004 for MacOSX and FreeBSD.
* Test removed by commit 52ddaef
  in 2007, since Python str type now uses locale independent
  functions like Py_ISALPHA() and Py_TOLOWER() and the Unicode
  database.

Modules/_sre/sre.c replaces _PY_PORT_CTYPE_UTF8_ISSUE with new
functions: sre_isalnum(), sre_tolower(), sre_toupper().

Remove unused includes:

* _localemodule.c: remove <stdio.h>.
* getargs.c: remove <float.h>.
* dynload_win.c: remove <direct.h>, it no longer calls _getcwd()
  since commit fb1f68e (in 2001).
vstinner added a commit to vstinner/cpython that referenced this issue Sep 3, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 3, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 3, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Sep 3, 2023
There is no API change, since pyport.h includes exports.h.
vstinner added a commit that referenced this issue Sep 3, 2023
There is no API change, since pyport.h includes exports.h.
hugovk pushed a commit to hugovk/cpython that referenced this issue Sep 4, 2023
…108855)

There is no API change, since pyport.h includes exports.h.
vstinner pushed a commit to vstinner/cpython that referenced this issue Sep 6, 2023
vstinner pushed a commit to vstinner/cpython that referenced this issue Sep 6, 2023
vstinner added a commit that referenced this issue Sep 6, 2023
Mention one symbol imported by each #include.
vstinner added a commit to vstinner/cpython that referenced this issue Oct 27, 2023
unistd.h is needed by alarm() and pause().
vstinner added a commit to vstinner/cpython that referenced this issue Oct 27, 2023
unistd.h is needed by alarm() and pause().
vstinner added a commit that referenced this issue Oct 27, 2023
unistd.h is needed by alarm() and pause() functions.
iritkatriel pushed a commit to iritkatriel/cpython that referenced this issue Oct 29, 2023
vstinner added a commit to vstinner/cpython that referenced this issue Oct 31, 2023
In practice, only Windows is impacted, since the HAVE_STDDEF_H macro
was only defined on this platform.
vstinner added a commit to vstinner/cpython that referenced this issue Oct 31, 2023
In practice, only Windows is impacted, since the HAVE_STDDEF_H macro
was only defined on this platform.
vstinner added a commit to vstinner/cpython that referenced this issue Oct 31, 2023
In practice, only Windows is impacted, because the HAVE_STDDEF_H
macro was only defined on Windows.
vstinner added a commit that referenced this issue Oct 31, 2023
In practice, only Windows is impacted, because the HAVE_STDDEF_H
macro was only defined on Windows.
FullteaR pushed a commit to FullteaR/cpython that referenced this issue Nov 3, 2023
…ython#111563)

In practice, only Windows is impacted, because the HAVE_STDDEF_H
macro was only defined on Windows.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type-feature A feature request or enhancement
Projects
None yet
Development

No branches or pull requests

1 participant