Skip to content

Windows support: replace the SIGALRM per-call timeout #3

Description

@LuShadowX

The per-call timeout in src/nodrift/replay.py uses signal.SIGALRM, which does not exist on Windows. The whole tool is therefore Unix-only.

What to do

Replace the alarm with something portable. Options worth weighing:

  • run each call in a worker thread with a join timeout (cannot kill a hung call, but does not block the run)
  • a watchdog thread that raises in the main thread via ctypes
  • run replay batches in a subprocess with a timeout

A mutation can easily produce an infinite loop, so the timeout is not optional — that is the constraint to design around.

Relevant file: src/nodrift/replay.py

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedNeeds a hand, larger scopeportabilityOS or Python version support

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions