Skip to content

v0.13.0-alpha Concurrency and related fixes - #1309

Open
citkane wants to merge 51 commits into
webview:masterfrom
citkane:Webview-concurrency-and-queing
Open

citkane wants to merge 51 commits into
webview:masterfrom
citkane:Webview-concurrency-and-queing

Conversation

@citkane

@citkane citkane commented Jun 18, 2025 •

Copy link
Copy Markdown
Contributor

This is an alpha release that concurrently resolves native promises and guarantees ordered execution of bind -> eval -> unbind operations.

Added

  • Concurrent daemonised execution of bound functions. Users no longer have to manage threads in bound callbacks to prevent UI / app freezes
  • The WEBVIEW_UNBIND_TIMEOUT compiler option, which sets a timeout for unbind to allow bound eval functions to complete (40ms default).

Fixed

  • bind -> eval -> unbind will allow WEBVIEW_UNBIND_TIMEOUT for promise resolution instead of silently failing.
  • eval will wait for bind to complete so that included bound function calls do not silently fail.
  • User API instructions will queue until the DOM is ready instead of silently failing.
  • JS promises are no longer left indefinitely in a waiting state if errors occur natively or bindings are unbound.

Deprecated / Removed

  • The synchronous bind signature is deprecated and stubbed. Legacy user code will compile and run, but synchronous bind is a now a no-op.

Depends on PR's

citkane added 30 commits June 12, 2025 15:00
…ew_cc and complete define/implement refactoring.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant