1pytestForkedHook() {
2 pytestFlagsArray+=(
3 "--forked"
4 )
5
6 # Using --forked on darwin leads to crashes when fork safety is
7 # enabled. This often happens when urllib tries to request proxy
8 # settings on MacOS through `urllib.request.getproxies()`
9 # - https://github.com/python/cpython/issues/77906
10 if [[ "$OSTYPE" == "darwin"* ]]; then
11 export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
12 fi
13}
14
15# the flags should be added before pytestCheckHook runs so
16# until we have dependency mechanism in generic builder, we need to use this ugly hack.
17
18if [ -z "${dontUsePytestForked-}" ] && [ -z "${dontUsePytestCheck-}" ]; then
19 if [[ " ${preDistPhases:-} " =~ " pytestCheckPhase " ]]; then
20 preDistPhases+=" "
21 preDistPhases="${preDistPhases/ pytestCheckPhase / pytestForkedHook pytestCheckPhase }"
22 else
23 preDistPhases+=" pytestForkedHook"
24 fi
25fi