Skip to content

gh-118251: Skip tests not files in JIT CI #118536

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

Merged
merged 4 commits into from
May 3, 2024
Merged
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
13 changes: 5 additions & 8 deletions .github/workflows/jit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,14 +75,10 @@ jobs:
architecture: aarch64
runner: ubuntu-latest
compiler: gcc
# These fail because of emulation, not because of the JIT:
exclude: test_pathlib test_posixpath test_unix_events test_init test_process_pool test_shutdown test_multiprocessing_fork test_cmd_line test_faulthandler test_os test_perf_profiler test_posix test_signal test_socket test_subprocess test_threading test_venv test_external_inspection
- target: aarch64-unknown-linux-gnu/clang
architecture: aarch64
runner: ubuntu-latest
compiler: clang
# These fail because of emulation, not because of the JIT:
exclude: test_pathlib test_posixpath test_unix_events test_init test_process_pool test_shutdown test_multiprocessing_fork test_cmd_line test_faulthandler test_os test_perf_profiler test_posix test_signal test_socket test_subprocess test_threading test_venv test_external_inspection
env:
CC: ${{ matrix.compiler }}
steps:
Expand All @@ -97,7 +93,7 @@ jobs:
choco upgrade llvm -y
choco install llvm --allow-downgrade --no-progress --version ${{ matrix.llvm }}
./PCbuild/build.bat --experimental-jit ${{ matrix.debug && '-d' || '--pgo' }} -p ${{ matrix.architecture }}
./PCbuild/rt.bat ${{ matrix.debug && '-d' }} -p ${{ matrix.architecture }} -q --exclude ${{ matrix.exclude }} --multiprocess 0 --timeout 4500 --verbose2 --verbose3
./PCbuild/rt.bat ${{ matrix.debug && '-d' }} -p ${{ matrix.architecture }} -q --multiprocess 0 --timeout 4500 --verbose2 --verbose3

# No PGO or tests (yet):
- name: Emulated Windows
Expand All @@ -115,7 +111,7 @@ jobs:
SDKROOT="$(xcrun --show-sdk-path)" \
./configure --enable-experimental-jit ${{ matrix.debug && '--with-pydebug' || '--enable-optimizations --with-lto' }}
make all --jobs 4
./python.exe -m test --exclude ${{ matrix.exclude }} --multiprocess 0 --timeout 4500 --verbose2 --verbose3
./python.exe -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3

# --with-lto has been removed temporarily as a result of an open issue in LLVM 18 (see https://github.com/llvm/llvm-project/issues/87553)
- name: Native Linux
Expand All @@ -125,11 +121,12 @@ jobs:
export PATH="$(llvm-config-${{ matrix.llvm }} --bindir):$PATH"
./configure --enable-experimental-jit ${{ matrix.debug && '--with-pydebug' || '--enable-optimizations' }}
make all --jobs 4
./python -m test --exclude ${{ matrix.exclude }} --multiprocess 0 --timeout 4500 --verbose2 --verbose3
./python -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3

# --with-lto has been removed temporarily as a result of an open issue in LLVM 18 (see https://github.com/llvm/llvm-project/issues/87553)
- name: Emulated Linux
if: runner.os == 'Linux' && matrix.architecture != 'x86_64'
# The --ignorefile on ./python -m test is used to exclude tests known to fail when running on an emulated Linux.
run: |
sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh ${{ matrix.llvm }}
export PATH="$(llvm-config-${{ matrix.llvm }} --bindir):$PATH"
Expand All @@ -146,4 +143,4 @@ jobs:
HOSTRUNNER=qemu-${{ matrix.architecture }} \
./configure --enable-experimental-jit ${{ matrix.debug && '--with-pydebug' || '--enable-optimizations ' }} --build=x86_64-linux-gnu --host="$HOST" --with-build-python=../build/bin/python3 --with-pkg-config=no ac_cv_buggy_getaddrinfo=no ac_cv_file__dev_ptc=no ac_cv_file__dev_ptmx=yes
make all --jobs 4
./python -m test --exclude ${{ matrix.exclude }} --multiprocess 0 --timeout 4500 --verbose2 --verbose3
./python -m test --ignorefile=Tools/jit/ignore-tests-emulated-linux.txt --multiprocess 0 --timeout 4500 --verbose2 --verbose3
79 changes: 79 additions & 0 deletions Tools/jit/ignore-tests-emulated-linux.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
test_multiprocessing_fork
test.test_asyncio.test_unix_events.TestFork.test_fork_asyncio_run
test.test_asyncio.test_unix_events.TestFork.test_fork_asyncio_subprocess
test.test_asyncio.test_unix_events.TestFork.test_fork_signal_handling
test.test_cmd_line.CmdLineTest.test_no_std_streams
test.test_cmd_line.CmdLineTest.test_no_stdin
test.test_concurrent_futures.test_init.ProcessPoolForkFailingInitializerTest.test_initializer
test.test_concurrent_futures.test_process_pool.ProcessPoolForkProcessPoolExecutorTest.test_ressources_gced_in_workers
test.test_external_inspection.TestGetStackTrace.test_remote_stack_trace
test.test_external_inspection.TestGetStackTrace.test_self_trace
test.test_faulthandler.FaultHandlerTests.test_enable_fd
test.test_faulthandler.FaultHandlerTests.test_enable_file
test.test_init.ProcessPoolForkFailingInitializerTest.test_initializer
test.test_os.ForkTests.test_fork_warns_when_non_python_thread_exists
test.test_os.TimerfdTests.test_timerfd_initval
test.test_os.TimerfdTests.test_timerfd_interval
test.test_os.TimerfdTests.test_timerfd_TFD_TIMER_ABSTIME
test.test_pathlib.PathSubclassTest.test_is_mount_root
test.test_pathlib.PathTest.test_is_mount_root
test.test_pathlib.PosixPathTest.test_is_mount_root
test.test_pathlib.test_pathlib.PathSubclassTest.test_is_mount_root
test.test_pathlib.test_pathlib.PathTest.test_is_mount_root
test.test_pathlib.test_pathlib.PosixPathTest.test_is_mount_root
test.test_posix.TestPosixSpawn.test_close_file
test.test_posix.TestPosixSpawnP.test_close_file
test.test_posixpath.PosixPathTest.test_ismount
test.test_signal.StressTest.test_stress_modifying_handlers
test.test_socket.BasicCANTest.testFilter
test.test_socket.BasicCANTest.testLoopback
test.test_socket.LinuxKernelCryptoAPI.test_aead_aes_gcm
test.test_socket.LinuxKernelCryptoAPI.test_aes_cbc
test.test_socket.RecvmsgIntoRFC3542AncillaryUDP6Test.testSecondCmsgTrunc1
test.test_socket.RecvmsgIntoRFC3542AncillaryUDP6Test.testSecondCmsgTrunc2Int
test.test_socket.RecvmsgIntoRFC3542AncillaryUDP6Test.testSecondCmsgTruncInData
test.test_socket.RecvmsgIntoRFC3542AncillaryUDP6Test.testSecondCmsgTruncLen0Minus1
test.test_socket.RecvmsgIntoRFC3542AncillaryUDP6Test.testSingleCmsgTruncInData
test.test_socket.RecvmsgIntoRFC3542AncillaryUDP6Test.testSingleCmsgTruncLen0Minus1
test.test_socket.RecvmsgIntoRFC3542AncillaryUDPLITE6Test.testSecondCmsgTrunc1
test.test_socket.RecvmsgIntoRFC3542AncillaryUDPLITE6Test.testSecondCmsgTrunc2Int
test.test_socket.RecvmsgIntoRFC3542AncillaryUDPLITE6Test.testSecondCmsgTruncInData
test.test_socket.RecvmsgIntoRFC3542AncillaryUDPLITE6Test.testSecondCmsgTruncLen0Minus1
test.test_socket.RecvmsgIntoRFC3542AncillaryUDPLITE6Test.testSingleCmsgTruncInData
test.test_socket.RecvmsgIntoRFC3542AncillaryUDPLITE6Test.testSingleCmsgTruncLen0Minus1
test.test_socket.RecvmsgIntoSCMRightsStreamTest.testCmsgTruncLen0
test.test_socket.RecvmsgIntoSCMRightsStreamTest.testCmsgTruncLen0Minus1
test.test_socket.RecvmsgIntoSCMRightsStreamTest.testCmsgTruncLen0Plus1
test.test_socket.RecvmsgIntoSCMRightsStreamTest.testCmsgTruncLen1
test.test_socket.RecvmsgIntoSCMRightsStreamTest.testCmsgTruncLen2Minus1
test.test_socket.RecvmsgRFC3542AncillaryUDP6Test.testSecondCmsgTrunc1
test.test_socket.RecvmsgRFC3542AncillaryUDP6Test.testSecondCmsgTrunc2Int
test.test_socket.RecvmsgRFC3542AncillaryUDP6Test.testSecondCmsgTruncInData
test.test_socket.RecvmsgRFC3542AncillaryUDP6Test.testSecondCmsgTruncLen0Minus1
test.test_socket.RecvmsgRFC3542AncillaryUDP6Test.testSingleCmsgTruncInData
test.test_socket.RecvmsgRFC3542AncillaryUDP6Test.testSingleCmsgTruncLen0Minus1
test.test_socket.RecvmsgRFC3542AncillaryUDPLITE6Test.testSecondCmsgTrunc1
test.test_socket.RecvmsgRFC3542AncillaryUDPLITE6Test.testSecondCmsgTrunc2Int
test.test_socket.RecvmsgRFC3542AncillaryUDPLITE6Test.testSecondCmsgTruncInData
test.test_socket.RecvmsgRFC3542AncillaryUDPLITE6Test.testSecondCmsgTruncLen0Minus1
test.test_socket.RecvmsgRFC3542AncillaryUDPLITE6Test.testSingleCmsgTruncInData
test.test_socket.RecvmsgRFC3542AncillaryUDPLITE6Test.testSingleCmsgTruncLen0Minus1
test.test_socket.RecvmsgRFC3542AncillaryUDPLITE6Test.testSingleCmsgTruncLen0Minus1
test.test_socket.RecvmsgSCMRightsStreamTest.testCmsgTruncLen0
test.test_socket.RecvmsgSCMRightsStreamTest.testCmsgTruncLen0Minus1
test.test_socket.RecvmsgSCMRightsStreamTest.testCmsgTruncLen0Plus1
test.test_socket.RecvmsgSCMRightsStreamTest.testCmsgTruncLen1
test.test_socket.RecvmsgSCMRightsStreamTest.testCmsgTruncLen2Minus1
test.test_subprocess.POSIXProcessTestCase.test_exception_bad_args_0
test.test_subprocess.POSIXProcessTestCase.test_exception_bad_executable
test.test_subprocess.ProcessTestCase.test_cwd_with_relative_arg
test.test_subprocess.ProcessTestCase.test_cwd_with_relative_executable
test.test_subprocess.ProcessTestCase.test_empty_env
test.test_subprocess.ProcessTestCase.test_file_not_found_includes_filename
test.test_subprocess.ProcessTestCase.test_one_environment_variable
test.test_subprocess.ProcessTestCaseNoPoll.test_cwd_with_relative_arg
test.test_subprocess.ProcessTestCaseNoPoll.test_cwd_with_relative_executable
test.test_subprocess.ProcessTestCaseNoPoll.test_empty_env
test.test_subprocess.ProcessTestCaseNoPoll.test_file_not_found_includes_filename
test.test_subprocess.ProcessTestCaseNoPoll.test_one_environment_variable
test.test_venv.BasicTest.test_zippath_from_non_installed_posix
Loading