From 21cb4a347210f6047b22e0d10add3c90d880a7d8 Mon Sep 17 00:00:00 2001 From: Alex Willmer Date: Sun, 5 Feb 2023 14:25:46 +0000 Subject: [PATCH] CI: Remove faulthandler fallback requirement faulthandler is a stdlib module in Python 3.3+. For a long time a PyPI package of the same name was available for earlier Python releases. That package has since been removed from PyPI, and the source respoitory archived. So we should not rely on it. fixes #983 refs #970 --- docs/ansible_detailed.rst | 15 +++++++-------- docs/changelog.rst | 1 + tests/requirements.txt | 1 - 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/docs/ansible_detailed.rst b/docs/ansible_detailed.rst index dd569a76..449771b8 100644 --- a/docs/ansible_detailed.rst +++ b/docs/ansible_detailed.rst @@ -1248,18 +1248,17 @@ with ``-vvv``. However, certain controller hangs may render ``MITOGEN_DUMP_THREAD_STACKS`` ineffective, or occur too infrequently for interactive reproduction. In these -cases `faulthandler `_ may be used: +cases :py:mod:`faulthandler` may be used with Python >= 3.3: -1. For Python 2, ``pip install faulthandler``. This is unnecessary on Python 3. -2. Once the hang occurs, observe the process tree using ``pstree`` or ``ps +1. Once the hang occurs, observe the process tree using ``pstree`` or ``ps --forest``. -3. The most likely process to be hung is the connection multiplexer, which can +2. The most likely process to be hung is the connection multiplexer, which can easily be identified as the parent of all SSH client processes. -4. Send ``kill -SEGV `` to the multiplexer PID, causing it to print all +3. Send ``kill -SEGV `` to the multiplexer PID, causing it to print all thread stacks. -5. `File a bug `_ including a copy - of the stacks, along with a description of the last task executing prior to - the hang. +4. `File a bug `_ + including a copy of the stacks and a description of the last task executing + before the hang It is possible the hang occurred in a process on a target. If ``strace`` is available, look for the host name not listed in Ansible output as reporting a diff --git a/docs/changelog.rst b/docs/changelog.rst index b4ae9df5..da5cc5e4 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -27,6 +27,7 @@ v0.3.4.dev0 was made to enqueue a message with a Broker that has already exitted`. However it may result in resource leaks. * :gh:issue:`659` Removed :mod:`mitogen.compat.simplejson`, not needed with Python 2.7+, contained Python 3.x syntax errors +* :gh:issue:`983` CI: Removed PyPI faulthandler requirement from tests v0.3.3 (2022-06-03) ------------------- diff --git a/tests/requirements.txt b/tests/requirements.txt index 0e9a0f0a..7301bee1 100644 --- a/tests/requirements.txt +++ b/tests/requirements.txt @@ -2,7 +2,6 @@ psutil==5.4.8 coverage==5.5; python_version < '3.7' coverage==6.4.4; python_version >= '3.7' Django==1.6.11 # Last version supporting 2.6. -faulthandler==3.2; python_version < '3.3' mock==2.0.0 pytz==2018.5 cffi==1.14.3 # Random pin to try and fix pyparser==2.18 not having effect