#2357·fabric

Cannot interact with .run() commands as of Python 3.14

Author: alandmooreCreated Feb 17, 2026Updated Aug 24, 2026
LabelsBugNeeds investigationPython versions

Test code:

from fabric import Connection
cx = Connection('myserver', user='myuser') # other connection details as needed
cx.open()
cx.run('read test')

In Python 3.13 and below, running a command via Connection.run allowed for interaction with the command. In the above example, it would return a result when Enter is pressed.

As of Python 3.14, the keyboard input does not seem to register and the script will hang waiting for input.

I have tried adding pty=True to both Connection() and run(), but it doesn't make any difference.

I am testing this using Python 3.14 on current Arch linux and Python 3.13 on Debian trixie. Remote host in both cases is Debian Trixie.