Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Pyodide compatibility?

Đang mở
#1,333 4 bình luận 1 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
38/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Ít trao đổi
Công nghệ
python
Lĩnh vực
testing-qa

Hướng nghiên cứu

Bắt đầu bằng cách tái hiện RuntimeError với pytest-asyncio 1.2.0 trên Pyodide, sau đó kiểm tra cách Runner.run() tương tác với các phương thức vòng đời của WebLoop trong Pyodide, đặc biệt là stop(). Xác định thay đổi tương thích nên nằm trong Pyodide hay pytest-asyncio. Công việc được xem là hoàn tất khi package hoạt động trên Pyodide và coverage của Pyodide có thể được thêm vào CI.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Would you be willing to accept patches to make this package work with Pyodide? Before version 1.2.0, it worked with Pyodide but from version 1.2.0 it fails with

RuntimeError: Runner.run() cannot be called from a running event loop

I'm not sure if this is better fixed in Pyodide or pytest-asyncio, probably it's better to fix in Pyodide. I think the cause of the issue is that Pyodide's WebLoop event loop doesn't handle lifecycle events. For instance, stop() is a no op. This is because our event loop schedules events on the JavaScript event loop and we have no control over the JavaScript event loop. But perhaps we can fake lifecycle events well enough to satisfy pytest-asyncio's needs.

Anyways if there is any interest it would be nice to add Pyodide to pytest-asyncio's CI once we get this working.

Ngôn ngữ chính
Python
Star
1.7k
Fork
212
Merge trung bình
6 giờ 11 phút
Pull request đã merge (30 ngày)
15

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của pytest-dev/pytest-asyncio

Tất cả issue của pytest-dev/pytest-asyncio

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.