MagicStack / MagicStack/uvloop

[feature request] add loop._run_once and loop._set_is_runnning api to easy the process of OS gui event loop integrate

Ouverte
#648 1 commentaire 2 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
Cython
Étoiles
11.9k
Forks
616
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

  • uvloop version:
    latest

  • Python version:
    3.11.2

  • Platform:
    All, and testing on Linux

  • Can you reproduce the bug with PYTHONASYNCIODEBUG in env?:
    n.a

  • Does uvloop behave differently from vanilla asyncio? How?:
    no

  • Purpose:
    Add a public API to

  1. setting running state
  2. allow run_once of event loop
  • Background:

I want to pull the event from backend_fd from another process and process them on os GUI event loop which like electron, but uvloop has no public API to run_once and keep _is_running

  • Refs:
  1. https://discuss.python.org/t/connecting-asyncio-and-tkinter-event-loops/14722/9
  2. https://github.com/congzhangzh/webview_python/issues/1

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par examiner les points d’entrée demandés loop._run_once et loop._set_is_runnning, ainsi que l’intégration de backend_fd décrite dans l’issue. Lisez la discussion liée sur asyncio/Tkinter pour comprendre l’interaction proposée avec la boucle d’événements. La tâche sera considérée comme terminée lorsqu’une API publique décidée permettra de définir l’état d’exécution et d’exécuter une itération pour l’intégration avec l’interface graphique de l’OS.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
python
Domaine
backend, operating-systems
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.