The test test_asynctest_support fails: test_asynctest_support
- [x] a detailed description of the bug or problem you are having
- [x] output of
pip listfrom the virtual environment you are using - [x] pytest and operating system versions
- [x] minimal example if possible
failure log:
============================================================================== FAILURES ===============================================================================
_______________________________________________________________________ test_asynctest_support ________________________________________________________________________
pytester = <Pytester PosixPath('/tmp/pytest-of-yuri/pytest-40/test_asynctest_support0')>
def test_asynctest_support(pytester: Pytester) -> None:
"""Check asynctest support (#7110)"""
> pytest.importorskip("asynctest")
/usr/ports/devel/py-pytest/work-py311/pytest-8.4.2/testing/test_unittest.py:1327:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/local/lib/python3.11/site-packages/asynctest/__init__.py:22: in <module>
from .case import *
/usr/local/lib/python3.11/site-packages/asynctest/case.py:54: in <module>
import asynctest.selector
/usr/local/lib/python3.11/site-packages/asynctest/selector.py:29: in <module>
from . import mock
/usr/local/lib/python3.11/site-packages/asynctest/mock.py:428: in <module>
class _AwaitEvent:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
class _AwaitEvent:
def __init__(self, mock):
self._mock = mock
self._condition = None
> @asyncio.coroutine
^^^^^^^^^^^^^^^^^
E AttributeError: module 'asyncio' has no attribute 'coroutine'
/usr/local/lib/python3.11/site-packages/asynctest/mock.py:433: AttributeError
$ pip list
Package Version
------------------------------- ---------------
accessible-pygments 0.0.5
aioquic 1.2.0
alabaster 0.7.16
anyio 4.9.0
appdirs 1.4.4
argcomplete 3.6.2
arrow 1.3.0
asgiref 3.9.1
aspectlib 2.0.0
astroid 3.3.11
asttokens 3.0.0
async-generator 1.10
asynctest 0.13.0
attrs 25.3.0
audioread 3.0.1
Automat 25.4.16
babel 2.17.0
backports.tarfile 1.0.0
bcrypt 4.3.0
beautifulsoup4 4.13.4
black 25.1.0
bottleneck 1.3.8
brotli 1.1.0
build 1.2.2.post1
calver 2025.4.17
cattrs 25.1.1
certifi 2025.7.14
cffi 1.17.1
cfgv 3.4.0
chardet 5.2.0
charset-normalizer 3.4.2
click 8.1.7
click-default-group 1.2.4
colorama 0.4.6
colorlog 6.9.0
constantly 23.10.4
contourpy 1.3.2
covdefaults 2.3.0
coverage 7.9.2
cppy 1.3.1
crosshair-tool 0.0.94
cryptography 44.0.3
customtkinter 5.2.2
cycler 0.12.1
Cython 0.29.37
cython-test-exception-raiser 1.0.2
decorator 5.2.1
dependency-groups 1.3.1
diff_cover 9.6.0
dill 0.3.9
distlib 0.3.9
django 4.2.23
dnspython 2.7.0
docopt 0.6.2
docutils 0.21.2
domdf-python-tools 3.8.0.post2
dpcontracts 0.6.0
dunamai 1.25.0
ecdsa 0.19.1
elasticsearch 7.17.12
elementpath 4.8.0
evdev 1.9.1
eventlet 0.40.2
execnet 2.1.1
executing 2.2.0
fastjsonschema 2.19.1
feedparser 6.0.11
fields 5.0.0
filelock 3.17.0
flake8 7.3.0
flit_core 3.12.0
fonttools 4.59.0
freezegun 1.5.5
furo 2025.7.19
gmpy2 2.2.1
greenlet 3.2.3
h11 0.16.0
h2 4.1.0
hatch-docstring-description 1.1.1
hatch-fancy-pypi-readme 24.1.0
hatch-vcs 0.5.0
hatchling 1.27.0
hpack 4.0.0
html5lib 1.1
httpcore 1.0.9
httpx 0.28.1
hunter 3.7.0
hyperframe 6.0.0
hyperlink 21.0.0
hypothesis 6.136.6
hypothesis-crosshair 0.0.24
identify 2.6.13
idna 3.10
imagesize 1.4.1
importlib-metadata 8.7.0
importlib-resources 6.5.2
incremental 24.7.2
iniconfig 1.1.1
installer 0.7.0
interegular 0.3.3
invoke 2.2.0
ipython 8.18.1
isort 6.0.1
jaraco.classes 3.4.0
jaraco.context 5.3.0
jaraco.functools 4.2.1
jedi 0.19.1
Jinja2 3.1.6
joblib 1.5.1
kiwisolver 1.4.8
lark 1.2.2
lazy-loader 0.4
libevdev 0.11
littleutils 0.2.2
llvmlite 0.44.0
lsprotocol 2023.0.1
lxml 5.4.0
markdown 3.8.2
markdown-it-py 3.0.0
markupsafe 3.0.2
matplotlib 3.8.0
matplotlib-inline 0.1.6
maturin 1.9.1
mccabe 0.7.0
mdit-py-plugins 0.4.2
mdurl 0.1.2
menulibre 2.4.0
mercurial 6.9.5
meson 1.7.0
meson-python 0.16.0
mock 5.2.0
more-itertools 10.6.0
msgpack 1.1.1
mutagen 1.47.0
mypy_extensions 1.1.0
myst-parser 4.0.1
nanobind 2.4.0
natsort 8.4.0
nodeenv 1.9.1
nose2 0.10.0
nox 2025.2.9
numba 0.61.2
numexpr 2.11.0
numpy 1.26.4
olefile 0.46
orjson 3.10.15
outcome 1.3.0.post0
packaging 25.0
pandas 2.2.3
paramiko 3.5.1
parso 0.8.4
pathspec 0.12.1
pendulum 3.1.0
pexpect 4.9.0
pillow 11.3.0
pip 23.3.2
platformdirs 4.3.8
pluggy 1.6.0
poetry-core 2.1.3
poetry-dynamic-versioning 1.9.1
pooch 1.8.2
pre-commit 4.3.0
priority 1.3.0
process-tests 3.0.0
prompt-toolkit 3.0.51
psutil 7.0.0
ptyprocess 0.7.0
pure-eval 0.2.3
py 1.11.0
py-cpuinfo 9.0.0
pyasn1 0.6.0
pyasn1-modules 0.4.1
pybind11 2.13.6
pycairo 1.28.0
pycodestyle 2.14.0
pycparser 2.22
pycryptodome 3.23.0
pycryptodomex 3.23.0
pyflakes 3.4.0
pygls 1.3.1
pygments 2.19.2
PyGObject 3.50.0
PyHamcrest 2.0.3
pylint 3.3.7
pylsqpack 0.3.22
pymad 0.10
pymongo 3.13.0
PyNaCl 1.5.0
pyOpenSSL 25.0.0
pyparsing 3.2.3
PyPDF2 3.0.1
pyproject_hooks 1.2.0
pyproject-metadata 0.7.1
pyserial 3.5
pysocks 1.7.1
PyStemmer 2.0.1
pytest 8.4.2
pytest-xdist 3.6.1
python-dateutil 2.9.0
python_example 0.0.1
pytz 2025.2
pyudev 0.24.1
PyYAML 6.0.1
redis 6.2.0
regex 2024.11.6
requests 2.32.4
requests-ftp 0.3.1
resampy 0.4.3
rich 14.1.0
scikit_build_core 0.11.1
scikit-learn 1.4.0
SciPy 1.11.1
scons 4.7.0
scripttest 2.0
semantic-version 2.10.0
semver 3.0.4
service-identity 24.2.0
setproctitle 1.3.3
setuptools 63.1.0
setuptools-rust 1.11.1
setuptools-scm 8.0.4
setuptools-scm-git-archive 1.4
sgmllib3k 1.0.0
simplejson 3.18.4
six 1.17.0
sniffio 1.3.1
snowballstemmer 3.0.1
socksio 1.0.0
sortedcontainers 2.4.0
soundfile 0.13.0
soupsieve 2.7
soxr 0.5.0
speedtest-cli 2.1.3
Sphinx 5.3.0
sphinx-basic-ng 1.0.0b2
sphinx-copybutton 0.5.2
sphinx_inline_tabs 2023.4.21
sphinxcontrib-applehelp 2.0.0
sphinxcontrib-devhelp 2.0.0
sphinxcontrib-htmlhelp 2.1.0
sphinxcontrib-jsmath 1.0.1
sphinxcontrib-qthelp 2.0.0
sphinxcontrib-serializinghtml 2.0.0
sphinxcontrib-towncrier 0.5.0a0
sqlalchemy 1.4.54
sqlite3 3.11.13
sqlparse 0.5.3
stack-data 0.6.3
tblib 1.7.0
testpath 0.6.0
threadpoolctl 3.6.0
time-machine 2.13.0
tkinter 3.11.13
tokenize-rt 6.2.0
toml 0.10.2
tomli 2.2.1
tomli_w 1.2.0
tomlkit 0.13.3
tornado 6.5
towncrier 24.8.0
tqdm 4.67.1
traitlets 5.14.3
trio 0.30.0
trove-classifiers 2025.5.9.12
truststore 0.10.1
Twisted 24.7.0
typeguard 4.4.4
types-decorator 5.1.8.20240310
types-docutils 0.21.0.20250728
types-psutil 7.0.0.20250601
types-python-dateutil 2.8.19.14
types-pyyaml 6.0.12.20241230
types-setuptools 80.9.0.20250529
types-toml 0.10.8.20240310
typeshed-client 2.7.0
typing_extensions 4.14.1
typing-inspect 0.9.0
tzdata 2025.2
ufolib2 0.16.0
ujson 5.10.0
unicodedata2 16.0.0
urllib3 1.26.20
validate-pyproject 0.24.1
validate-pyproject-schema-store 2024.10.21
validators 0.34.0
versioneer 0.29
virtualenv 20.33.1
watchdog 6.0.0
wcag-contrast-ratio 0.9
wcwidth 0.2.8
webencodings 0.5.1
websockets 15.0.1
werkzeug 3.1.3
wheel 0.45.1
xmlschema 4.1.0
xxhash 3.5.0
zipp 3.21.0
zope.interface 5.3.0
zopfli 0.2.3
Version: 8.4.2 Python-3.11 FreeBSD 14.3
Looks like an issue in asynctest which is unmaintained: https://github.com/Martiusweb/asynctest/issues/161
See #7144 for context. We have CI environments with asynctest, but only on Python 3.9.
I suppose the right thing to do here is to just get rid of that test and the surrounding test infrastructure.
asyncio.coroutine has been removed with python 3.11. See https://docs.python.org/3.11/whatsnew/3.11.html
Hello, I would like to contribute by working on this issue.
Hey @jgersti , Are you currently working on this issue? If not, I’d be happy to go ahead and take it on.
no pr was opened, seems like life happened, i'll move the assignment over to @Stu-ops
Thanks @RonnyPfannschmidt for assigning me this issue — I really appreciate the opportunity to contribute. Just a quick point, since Hacktoberfest starts on October 1st, I’ll be raising the PR after that date to make sure it counts toward the event. I’ll keep you updated as I work on the fix.
Hi, I am available to start working before October 1st. May I contribute to this task?
Actually @behramaras, I’ve already been working on this and have almost finished. I’m just waiting to raise the PR. Below is a sample of the updated function code to showcase my work.
I find the incentives and behaviors of hacktober contributors unsettling
The entire point of pull requests is getting code review. The point of Hacktoberfest is (at least originally) to support open source projects. You're blocking other people wanting to contribute, yet posting screenshots of your change, but refusing to open a pull request... all just for internet points. Please at least realize you make things more annoying for everyone, including yourself...
Sorry @The-Compiler , i don't have such type of intentions if you think you want to do pull request. And also @behramaras you can do pull request for it . In last My intension are not wrong but if someone feel bad for this Sorry once again.
hey, if it is still open i would like to work on it
@kayush0712 you can see as well as any maintainers that @Stu-ops is waiting for Hactoberfest to open their PR, there's probably a better issue to fix for you than this one where we already changed the assignee 5 time. Also you can generally just open a PR, ref the issue in it (so that it can be seen from the issue that someone is working on it) and discuss it directly inside the PR, if it's harder than expected (I never saw a single instance of a rush of volunteers to fix an issue so massive as to make asking to be assigned an issue useful in any open source project I maintain. Not once).
hey @RonnyPfannschmidt I made pr for this issue, you can review and see the changes for it. And also, please can you tag my pr with the “hacktoberfest-accepted” after accepting it and also share any type of suggestions regarding the pr, because it was my first pr, so I don't know so much about it. for any type information related to the hactoberfest is given here:Hactoberfest
@The-Compiler and @nicoddemus, Thanks for reviewing my pr and merging it. Can you also do one more to help me accept this pr as a “hacktoberfest-accepted” label. And thanks for your guidance and supportive nature for the whole time.