Skip to content

Port 23-argument _posixsubprocess.fork_exec to Argument Clinic #94518

Description

@arhadthedev

Currently the function is parsed with the following behemoth:

if (!PyArg_ParseTuple(
args, "OOpO!OOiiiiiiiiii" _Py_PARSE_PID "OOOiOp:fork_exec",
&process_args, &executable_list,
&close_fds, &PyTuple_Type, &py_fds_to_keep,
&cwd_obj, &env_list,
&p2cread, &p2cwrite, &c2pread, &c2pwrite,
&errread, &errwrite, &errpipe_read, &errpipe_write,
&restore_signals, &call_setsid, &pgid_to_set,
&gid_object, &groups_list, &uid_object, &child_umask,
&preexec_fn, &allow_vfork))
returnNULL;

Conversion will:

  • hide this from a realm of manual and error-prone labor into a precise and checked world of automation
  • allow to use faster methods like METH_FASTCALL+_PyArg_CheckPositional.

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions