You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Here `availability` is either `"after-download"` or `"readily"`.
164
+
This method does not distinguish between languages which are available `"readily"` vs. `"after-download"`, because giving that information for all languages at once is too much of a [privacy issue](#privacy-considerations). Instead, the developer must make individual calls to `canTranslate()`, which gives the browser more opportunities to apply privacy mitigations.
@@ -280,7 +271,9 @@ Some sort of mitigation may be necessary here. We believe this is adjacent to ot
280
271
281
272
* Grouping language packs to reduce the number of bits, so that downloading one language also downloads others in its group.
282
273
* Partitioning download status by top-level site, introducing a fake download (which takes time but does not actually download anything) for the second-onward site to download a language pack.
283
-
* Only exposing a fixed set of languages to this API, e.g. based on the user's locale.
274
+
* Only exposing a fixed set of languages to this API, e.g. based on the user's locale or the document's main language.
275
+
276
+
As a first step, we require that detecting the availability of translation for a given language pair be done via individual calls to `canTranslate()`. This allows browsers to implement possible mitigation techniques, such as detecting excessive calls to `canTranslate()` and starting to return `"no"`.
284
277
285
278
Another way in which this API might enhance the web's fingerprinting surface is if translation and language detection models are updated separately from browser versions. In that case, differing results from different versions of the model provide additional fingerprinting bits beyond those already provided by the browser's major version number. Mandating that older browser versions not receive updates or be able to download models from too far into the future might be a possible remediation for this.
0 commit comments