Vizonex / Vizonex/Winloop

Getting rid of `_noop.noop()` to make winloop run smoother and hacking in a special Eval Method instead.

Open
#58 0 comments 0 reactions 1 assignee View on GitHub

@Vizonex is already working on this.

Since Jul 21, 2025.

deviates-from-uvloop internal-refactoring question
Dominant language
Python
Stars
231
Forks
24
Avg merge
2d 5h
Merged PRs (30d)
3

Description

I see why _noop.noop is in here but with no way to improve upon this function I see no reason to continue using it unless someone would like to explain it's use to me. I see a reason to rehack in _PyEvalFrameDefault even though it was removed a couple years ago from external use. All I see noop as is a new can of worms and a bottleneck. And with my desire to make winloop sharper and smoother on all ends, this stands as a current road bump in allowing this library to evolve.

cdef inline _ceval_process_signals(self):
        # Invoke CPython eval loop to let process signals.
        PyErr_CheckSignals()

        # Calling a pure-Python function will invoke
        # _PyEval_EvalFrameDefault which will process
        # pending signal callbacks.
       _noop.noop()  # Might raise ^C

I Propose taking a different approach instead of our current one.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.