From 1274d1af664ccd8ee1f378162552e1157ba678ae Mon Sep 17 00:00:00 2001
From: Paul Adenot
Date: Thu, 6 Aug 2026 16:04:55 +0200
Subject: [PATCH 1/2] Run install() downloads in parallel instead of blocking
the main thread.
Step 6 queued a task on the relevant global object's task queue that then
waited for the language pack downloads to complete, which stalls script on
the main thread. Move the download initiation and the wait into an
[=in parallel=] block, and queue a task only to resolve the promise.
Fixes #199
---
index.bs | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/index.bs b/index.bs
index 5d3b1a2..cdda7a4 100644
--- a/index.bs
+++ b/index.bs
@@ -423,12 +423,14 @@ See
Note: The false resolution of the Promise does not indicate the specific cause of failure. User agents are encouraged to provide more detailed information about the failure in developer tools console messages. However, this detailed error information is not exposed to the script.
From c377cb730555e906aebcb210172796840ced08ab Mon Sep 17 00:00:00 2001
From: Paul Adenot
Date: Thu, 6 Aug 2026 16:05:55 +0200
Subject: [PATCH 2/2] Resolve install() with false for an empty langs sequence.
The prose already states the promise resolves to false if options.langs is
empty, but no step implemented it: an empty sequence vacuously passes the
unsupported-language check and then trivially succeeds with no downloads,
resolving to true. Add an explicit step, matching how the availability
algorithm treats an empty sequence as unavailable.
---
index.bs | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/index.bs b/index.bs
index cdda7a4..fb37066 100644
--- a/index.bs
+++ b/index.bs
@@ -422,7 +422,8 @@ See