Hi, The PEP 433 proposes different options to add a new cloexec parameter:
a) cloexec=False by default b) cloexec=True by default c) configurable default value I tried to list in the PEP 433 advantages and drawbacks of each option. If I recorded correctly opinions, the different options have the following supporters: a) cloexec=False by default b) cloexec=True by default: Charles-François Natali c) configurable default value: Antoine Pitrou, Nick Coghlan, Guido van Rossum I don't know if it's enough to say that (c) is the chosen option. -- For the name of the new parameter, I still prefer "cloexec" for the reason given by Antoine: on UNIX, the flag has only an effect on exec(), not on fork(). So inherited=False can be misleading on UNIX. I updated the rationale of the PEP to describe the close-on-exec flag: http://www.python.org/dev/peps/pep-0433/#rationale -- FYI on Windows, cloexec=False (inherited=True) doesn't mean that the file descriptor will be inherited. It also depends on the bInheritHandles parameter of the CreateProcess() function. Extract of the PEP: "On Windows, the file descriptor is not inherited if the close-on-exec flag is set, the file descriptor is inherited by child processes if the flag is cleared and if CreateProcess() is called with the bInheritHandles parameter set to TRUE (when subprocess.Popen is created with close_fds=False for example)." Victor _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com