Navigation Menu

Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow UAs to reject concurrent use of 6 functions. #316

Merged
merged 1 commit into from Oct 21, 2016

Conversation

jyasskin
Copy link
Member

Preview at https://api.csswg.org/bikeshed/?url=https://raw.githubusercontent.com/jyasskin/web-bluetooth-1/in-progress-error/index.bs#dom-bluetoothremotegattserver-connect.

  • GattServer.connect()
  • Characteristic.readValue()
  • Characteristic.writeValue()
  • Characteristic.startNotifications()
  • Descriptor.readValue()
  • Descriptor.writeValue()

This is uncomfortable because while serializing within a single realm
will reduce the frequency of these NetworkErrors, separate realms and
possibly other applications entirely can also cause these errors, and
the only way to recover is to retry and hope it doesn't happen again.

We're discussing the constraints imposed by the OS and the long-term
plan in #188. Any change should reduce the number of exceptions and so
be backward-compatible.

* GattServer.connect()
* Characteristic.readValue()
* Characteristic.writeValue()
* Characteristic.startNotifications()
* Descriptor.readValue()
* Descriptor.writeValue()

This is uncomfortable because while serializing within a single realm
will reduce the frequency of these NetworkErrors, separate realms and
possibly other applications entirely can also cause these errors, and
the only way to recover is to retry and hope it doesn't happen again.

We're discussing the constraints imposed by the OS and the long-term
plan in WebBluetoothCG#188. Any change should reduce the number of exceptions and so
be backward-compatible.
@jyasskin
Copy link
Member Author

I'm going to merge this based on #188 (comment), but feel free to refine it as y'all discover more concurrency that works everywhere.

@jyasskin jyasskin merged commit bbb2e78 into WebBluetoothCG:master Oct 21, 2016
@jyasskin jyasskin deleted the in-progress-error branch October 21, 2016 21:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants