Skip to content
This repository was archived by the owner on Nov 1, 2026. It is now read-only.
This repository was archived by the owner on Nov 1, 2026. It is now read-only.

Remote BLAST blocks the whole editor while waiting for NCBI #5

Open

Description

@dpc00

Claude reports: Remote BLAST runs NCBIWWW.qblast() inside TextCommand.run (do_blast, line 381), so Sublime's main thread waits for NCBI and the whole window is frozen until the result arrives. The README ("Issues") says this is known: "Sublime Text is unusable while the queries are running". This issue asks to move the call off the main thread.

Observed: with a 12-residue blastp query the portable Sublime was "not responding" for over three minutes; a second run with a 60-residue FASTA query (blastp, nr, Text) froze it again. sublime-mcp's hang report named the frame both times: Blast/NCBIWWW.py:164 in qblast (time.sleep(wait)) <- BioPythonUtils.py:381 in do_blast <- BioPythonUtils.py:420 (FASTA branch) / 436 (plain branch) in run.

Suggested fix: run the BLAST call in a thread (sublime.set_timeout_async or threading.Thread) and put the result into a new view with sublime.set_timeout when it arrives, as EutilsCall already does for downloads.

Related, from the source: do_blast returns result after except IOError without assigning it, which would raise UnboundLocalError after the error dialog (lines 380-388).

Tested on Sublime Text build 4215 (portable, Windows), plugin host Python 3.14, installed through Package Control (BioPythonUtils 2017.12.18.15.00.45, which contains the fixes for #3). Line numbers are those of BioPythonUtils.py on master (de058c4).

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions