Building with subinterpreters?

On main, when I run the test suite, I get this output at the end:

1 test run no tests:

Looking in Lib/test_interpreters, it seems that it thinks subinterpreter support is missing, yet I can import the _interpreters module:

% ./python.exe 
Python 3.14.0a0 experimental free-threading build (heads/main:9b422fc6af8, May 22 2024, 16:24:29) [Clang 15.0.0 (clang-1500.3.9.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import _interpreters
>>> dir(_interpreters)
('CrossInterpreterBufferView', 'InterpreterError', 'InterpreterNotFoundError', 'NotShareableError',  ... 'whence')

I saw nothing obvious in the output of ./configure --help that would suggest I needed to run configure with a special command line argument. It didn’t seem that there was a special resource flag for the test module either. The output of running just that test is also unhelpful:

% ./python.exe -E  -m test test_interpreters
Using random seed: 2839399301
0:00:00 load avg: 1.87 Run 1 test sequentially
0:00:00 load avg: 1.87 [1/1] test_interpreters
test_interpreters ran no tests

== Tests result: NO TESTS RAN ==

1 test run no tests:

Total duration: 12 ms
Total tests: run=0
Total test files: run=1/1 run_no_tests=1

What am I missing?

It looks like load_tests in test_interpreter.__init__ is being guarded behind if not Py_GIL_DISABLED: and you are running the free threaded build.

I can’t speak as to why that is though.