.. _missing-timeout:

missing-timeout / W3101
=======================

**Message emitted:**

Missing timeout argument for method '%s' can cause your program to hang indefinitely

**Description:**

*Used when a method needs a 'timeout' parameter in order to avoid waiting for a long time. If no timeout is specified explicitly the default value is used. For example for 'requests' the program will never time out (i.e. hang indefinitely).*

**Problematic code:**

.. literalinclude:: /data/messages/m/missing-timeout/bad.py
   :language: python

**Correct code:**

.. literalinclude:: /data/messages/m/missing-timeout/good.py
   :language: python

**Additional details:**

You can add new methods that should have a defined ```timeout`` argument as qualified names
in the ``timeout-methods`` option, for example:

* ``requests.api.get``
* ``requests.api.head``
* ``requests.api.options``
* ``requests.api.patch``
* ``requests.api.post``
* ``requests.api.put``
* ``requests.api.request``


Created by the `method_args <https://github.com/PyCQA/pylint/blob/main/pylint/checkers/method_args.py>`__ checker.