Re: [webrtc-pc] track ietf bundlepolicy changes (#2684)

> "The most common implementation differed from both of these specs"

Does this mean Chrome? Were other implementations fine (modulo "the remote endpoint is not bundle-aware" issue, which we should probably untangle unless it is core to this issue)?

> "In order to prevent unexpected changes to applications relying on the pre-standard behavior, the decision was made to deprecate the use of "max-bundle" and instead introduce a new "must-bundle" policy that, when selected, provides the correct behavior."

Does "when selected" refer to the W3C API? I.e. is the request to update this API by add the following?
```diff
enum RTCBundlePolicy {
  "balanced",
  "max-compat",
  "max-bundle",
+ "must-bundle"
 };
```
...where the latter two are defined the same, with a note that says: "Don't use `"max-bundle"`"?

Since WebIDL enums throw, are applications expected to feature-detect this? E.g. from now on:
```js
let pc;
try {
  pc = new RTCPeerConnection({bundlePolicy: "must-bundle"});
} catch (e) {
  if (e.name != "TypeError") throw e;
  pc = new RTCPeerConnection({bundlePolicy: "max-bundle"});
}
```
Are we sure this is the best solution for web compat? The alternative would seem to be to leave the enum alone and specify that `{bundlePolicy: "max-bundle"}` means must-bundle in JSEP from now on. I'm not proposing we do that, merely noting it seems like this decision belongs in the W3C.

-- 
GitHub Notification of comment by jan-ivar
Please view or discuss this issue at https://github.com/w3c/webrtc-pc/issues/2684#issuecomment-949894903 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Friday, 22 October 2021 19:07:36 UTC