I came here from the python.org webpage “Dealing with Bugs.” Python is such a mature language that it seems unlikely I could find a bug. It sure seems like I have but it is more likely that I am doing something wrong.
Can I raise this type of question here? If not, where should I do it?
I have a sample program I can share to demonstrate the problem.
I am running on Linux Mint (21.3 and 22.1) with Python 3.10 and 3.12.
The Python program starts multiple threads and each of those threads use subprocess.Popen to run a program. If two of those threads run concurrently, the GUI will not shutdown completely. I removed the Popen calls and substituted time.sleep() to confirm that concurrent threads not using subprocess.Popen do not cause any problem. I have tried both the threading module and the concurrent.futures module. Same result.
When I run the program in a terminal window, the program seems to shutdown because I have a print statement at the very end of the program and the message from that print statement appears in the window. The command line prompt also appears. Everything looks ok but the window is now useless. It will not respond to any keypress except ctrl+C, which only causes another prompt to appear. It is no longer possible to type any command. The window can be closed only by clicking on the X in the corner of the window.
I should add that all threads have finished before I try to shutdown the program.
Again, if this is not the right place to raise this issue, please let me know where I can.