Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog/68148.changed.md
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
Update packaged python from 3.10 to 3.11
Fix multiprocessing handling for python 3.14
8 changes: 6 additions & 2 deletions salt/utils/platform.py
Original file line number Diff line number Diff line change
Expand Up @@ -237,12 +237,16 @@ def is_aarch64():

def spawning_platform():
"""
Returns True if multiprocessing.get_start_method(allow_none=False) returns "spawn"
Returns True if multiprocessing.get_start_method(allow_none=False) != "fork"
("spawn" or "forkserver")

This is the default for Windows Python >= 3.4 and macOS on Python >= 3.8.
Salt, however, will force macOS to spawning by default on all python versions
Starting with Python 3.14, Linux also defaults to not "fork", but it uses
(new) "forkserver" instead of "spawn". Functionally, it's very similar as
far as Salt is concerned (process state is not inherited).
"""
return multiprocessing.get_start_method(allow_none=False) == "spawn"
return multiprocessing.get_start_method(allow_none=False) != "fork"


def get_machine_identifier():
Expand Down
Loading