diff --git a/features/document-picture-in-picture.yml.dist b/features/document-picture-in-picture.yml.dist index 9b22c903185..509aa155638 100644 --- a/features/document-picture-in-picture.yml.dist +++ b/features/document-picture-in-picture.yml.dist @@ -4,9 +4,13 @@ status: baseline: false support: - chrome: "116" - edge: "116" + chrome: "130" + edge: "130" compat_features: + # baseline: false + # support: + # chrome: "116" + # edge: "116" - api.DocumentPictureInPicture - api.DocumentPictureInPicture.enter_event - api.DocumentPictureInPicture.requestWindow @@ -15,3 +19,16 @@ compat_features: - api.DocumentPictureInPictureEvent.DocumentPictureInPictureEvent - api.DocumentPictureInPictureEvent.window - api.Window.documentPictureInPicture + + # baseline: false + # support: + # chrome: "124" + # edge: "124" + - api.DocumentPictureInPicture.requestWindow.option_disallowReturnToOpener + + # ⬇️ Same status as overall feature ⬇️ + # baseline: false + # support: + # chrome: "130" + # edge: "130" + - api.DocumentPictureInPicture.requestWindow.option_preferInitialWindowPlacement diff --git a/features/draft/spec/attribution-reporting-api.yml.dist b/features/draft/spec/attribution-reporting-api.yml.dist index 62fa253732b..fa76abd3027 100644 --- a/features/draft/spec/attribution-reporting-api.yml.dist +++ b/features/draft/spec/attribution-reporting-api.yml.dist @@ -4,20 +4,32 @@ status: baseline: false support: - chrome: "117" - chrome_android: "117" - edge: "117" + chrome: "125" + chrome_android: "125" + edge: "125" compat_features: + # baseline: false + # support: + # chrome: "117" + # chrome_android: "117" + # edge: "117" + - html.elements.iframe.allow.attribution-reporting + - http.headers.Attribution-Reporting-Eligible + - http.headers.Attribution-Reporting-Register-Source + - http.headers.Attribution-Reporting-Register-Trigger + - http.headers.Attribution-Reporting-Support + - http.headers.Permissions-Policy.attribution-reporting + + # ⬇️ Same status as overall feature ⬇️ + # baseline: false + # support: + # chrome: "125" + # chrome_android: "125" + # edge: "125" - api.HTMLAnchorElement.attributionSrc - api.HTMLImageElement.attributionSrc - api.HTMLScriptElement.attributionSrc - api.XMLHttpRequest.setAttributionReporting - html.elements.a.attributionsrc - - html.elements.iframe.allow.attribution-reporting - html.elements.img.attributionsrc - html.elements.script.attributionsrc - - http.headers.Attribution-Reporting-Eligible - - http.headers.Attribution-Reporting-Register-Source - - http.headers.Attribution-Reporting-Register-Trigger - - http.headers.Attribution-Reporting-Support - - http.headers.Permissions-Policy.attribution-reporting diff --git a/features/draft/spec/cssom-view-1.yml.dist b/features/draft/spec/cssom-view-1.yml.dist index 58acbe90931..001c9c7a499 100644 --- a/features/draft/spec/cssom-view-1.yml.dist +++ b/features/draft/spec/cssom-view-1.yml.dist @@ -413,9 +413,9 @@ compat_features: # baseline: false # support: - # chrome: "117" - # chrome_android: "117" - # edge: "117" + # chrome: "125" + # chrome_android: "125" + # edge: "125" - api.Window.open.features_parameter_attributionsrc # baseline: false diff --git a/features/draft/spec/dom.yml.dist b/features/draft/spec/dom.yml.dist index af16684199a..2384983ce70 100644 --- a/features/draft/spec/dom.yml.dist +++ b/features/draft/spec/dom.yml.dist @@ -8,19 +8,6 @@ status: chrome_android: "125" edge: "125" compat_features: - # baseline: high - # baseline_low_date: 2015-07-29 - # baseline_high_date: 2018-01-29 - # support: - # chrome: "1" - # chrome_android: "18" - # edge: "12" - # firefox: "1" - # firefox_android: "4" - # safari: "1" - # safari_ios: "1" - - api.Document.createEvent - # baseline: high # baseline_low_date: ≤2020-01-15 # baseline_high_date: ≤2022-07-15 @@ -84,6 +71,17 @@ compat_features: # safari_ios: "18" - api.ShadowRoot.serializable + # baseline: false + # support: + # chrome: "1" + # chrome_android: "18" + # edge: "12" + # firefox: "1" + # firefox_android: "4" + # safari: "1" + # safari_ios: "1" + - api.Document.createEvent + # baseline: false # support: # chrome: "74" diff --git a/features/draft/spec/html.yml.dist b/features/draft/spec/html.yml.dist index 66aaf7eb86e..bff006ea28a 100644 --- a/features/draft/spec/html.yml.dist +++ b/features/draft/spec/html.yml.dist @@ -2664,13 +2664,6 @@ compat_features: - html.elements.iframe.allow.wildcards - html.elements.textarea.autocomplete.webauthn - # baseline: false - # support: - # chrome: "117" - # chrome_android: "117" - # edge: "117" - - api.Window.open.features_parameter_attributionsrc - # baseline: false # support: # chrome: "123" @@ -2695,6 +2688,7 @@ compat_features: # edge: "125" - api.NotRestoredReasonDetails.toJSON - api.NotRestoredReasons.toJSON + - api.Window.open.features_parameter_attributionsrc - html.elements.template.shadowrootserializable # baseline: false diff --git a/features/draft/spec/notifications.yml.dist b/features/draft/spec/notifications.yml.dist index 6e9c221338d..2637c6fca58 100644 --- a/features/draft/spec/notifications.yml.dist +++ b/features/draft/spec/notifications.yml.dist @@ -33,6 +33,26 @@ compat_features: - api.NotificationEvent.NotificationEvent - api.ServiceWorkerRegistration.showNotification + # baseline: false + # support: + # chrome: "40" + # chrome_android: "40" + # edge: "17" + # firefox: "44" + # firefox_android: "44" + # safari: "16" + - api.ServiceWorkerGlobalScope.notificationclick_event + + # baseline: false + # support: + # chrome: "50" + # chrome_android: "50" + # edge: "17" + # firefox: "44" + # firefox_android: "44" + # safari: "16" + - api.ServiceWorkerGlobalScope.notificationclose_event + # baseline: false # support: # chrome: "20" @@ -40,10 +60,13 @@ compat_features: # firefox: "22" # firefox_android: "22" # safari: "7" - # safari_ios: "16.4" - api.Notification - api.Notification.Notification + - api.Notification.click_event - api.Notification.close + - api.Notification.close_event + - api.Notification.error_event + - api.Notification.show_event # baseline: false # support: @@ -52,7 +75,6 @@ compat_features: # firefox: "22" # firefox_android: "22" # safari: "15" - # safari_ios: "16.4" - api.Notification.requestPermission_static # baseline: false @@ -62,7 +84,6 @@ compat_features: # firefox: "26" # firefox_android: "26" # safari: "7" - # safari_ios: "16.4" - api.Notification.dir # baseline: false @@ -72,7 +93,6 @@ compat_features: # firefox: "22" # firefox_android: "22" # safari: "7" - # safari_ios: "16.4" - api.Notification.permission_static # baseline: false @@ -82,20 +102,18 @@ compat_features: # firefox: "26" # firefox_android: "26" # safari: "11" - # safari_ios: "16.4" - api.Notification.body - api.Notification.lang - api.Notification.title # baseline: false # support: - # chrome: "40" - # chrome_android: "40" + # chrome: "42" + # chrome_android: "42" # edge: "17" # firefox: "44" # firefox_android: "44" - # safari: "16" - - api.ServiceWorkerGlobalScope.notificationclick_event + - api.NotificationEvent.notification # baseline: false # support: @@ -104,7 +122,6 @@ compat_features: # firefox: "132" # firefox_android: "132" # safari: "16.6" - # safari_ios: "16.6" - api.Notification.silent # baseline: false @@ -114,7 +131,6 @@ compat_features: # firefox: "34" # firefox_android: "34" # safari: "16" - # safari_ios: "16.4" - api.Notification.data # baseline: false @@ -124,40 +140,8 @@ compat_features: # firefox: "46" # firefox_android: "46" # safari: "15" - # safari_ios: "16.4" - api.Notification.requestPermission_static.returns_promise - # baseline: false - # support: - # chrome: "50" - # chrome_android: "50" - # edge: "17" - # firefox: "44" - # firefox_android: "44" - # safari: "16" - - api.ServiceWorkerGlobalScope.notificationclose_event - - # baseline: false - # support: - # chrome: "20" - # edge: "14" - # firefox: "22" - # firefox_android: "22" - # safari: "7" - - api.Notification.click_event - - api.Notification.close_event - - api.Notification.error_event - - api.Notification.show_event - - # baseline: false - # support: - # chrome: "42" - # chrome_android: "42" - # edge: "17" - # firefox: "44" - # firefox_android: "44" - - api.NotificationEvent.notification - # baseline: false # support: # chrome: "48" @@ -200,14 +184,6 @@ compat_features: # firefox_android: "41" - api.Notification.worker_support - # baseline: false - # support: - # chrome: "53" - # edge: "18" - # safari: "17" - # safari_ios: "16.4" - - api.Notification.badge - # baseline: false # support: # chrome: "62" @@ -244,6 +220,13 @@ compat_features: # edge: ≤79 - api.ServiceWorkerRegistration.showNotification.options_renotify_parameter + # baseline: false + # support: + # chrome: "53" + # edge: "18" + # safari: "17" + - api.Notification.badge + # baseline: false # support: # chrome: "56" diff --git a/features/fetch.yml.dist b/features/fetch.yml.dist index b3c25f3af45..b162a84c955 100644 --- a/features/fetch.yml.dist +++ b/features/fetch.yml.dist @@ -449,17 +449,17 @@ compat_features: # edge: "105" - api.Request.Request.request_body_readablestream - # baseline: false - # support: - # chrome: "117" - # chrome_android: "117" - # edge: "117" - - api.Request.Request.init_attributionReporting_parameter - - api.fetch.init_attributionReporting_parameter - # baseline: false # support: # chrome: "124" # chrome_android: "124" # edge: "124" - api.Request.targetAddressSpace + + # baseline: false + # support: + # chrome: "125" + # chrome_android: "125" + # edge: "125" + - api.Request.Request.init_attributionReporting_parameter + - api.fetch.init_attributionReporting_parameter diff --git a/features/http11.yml.dist b/features/http11.yml.dist index 2ac563c8aec..8e08d07040e 100644 --- a/features/http11.yml.dist +++ b/features/http11.yml.dist @@ -58,7 +58,6 @@ compat_features: - http.headers.Referer - http.headers.Server - http.headers.TE - - http.headers.Trailer - http.headers.Transfer-Encoding - http.headers.User-Agent - http.headers.Vary @@ -83,3 +82,7 @@ compat_features: # safari: "1" # safari_ios: "1" - http.headers.Origin + + # baseline: false + # support: {} + - http.headers.Trailer diff --git a/features/slot.yml.dist b/features/slot.yml.dist index a9df54c11f4..5c6a1ce9e5f 100644 --- a/features/slot.yml.dist +++ b/features/slot.yml.dist @@ -86,3 +86,7 @@ compat_features: # safari: "10" # safari_ios: "10" - html.global_attributes.slot + + # baseline: false + # support: {} + - css.selectors.has-slotted diff --git a/features/svg.yml b/features/svg.yml index 1e698bf0088..c2051ce95ed 100644 --- a/features/svg.yml +++ b/features/svg.yml @@ -515,7 +515,6 @@ compat_features: - svg.global_attributes.pointer-events - svg.global_attributes.requiredExtensions - svg.global_attributes.shape-rendering - - svg.global_attributes.stop-color - svg.global_attributes.stroke - svg.global_attributes.stroke-dasharray - svg.global_attributes.stroke-dashoffset diff --git a/features/svg.yml.dist b/features/svg.yml.dist index c3c15fc28b3..8fa075e91af 100644 --- a/features/svg.yml.dist +++ b/features/svg.yml.dist @@ -1506,7 +1506,6 @@ compat_features: - css.properties.stroke-linejoin.round - svg.global_attributes.color-interpolation-filters - svg.global_attributes.dominant-baseline - - svg.global_attributes.stop-color - svg.global_attributes.stroke-dasharray - svg.global_attributes.stroke-linecap - svg.global_attributes.stroke-linejoin diff --git a/features/webgpu.yml.dist b/features/webgpu.yml.dist index f1fe51ef8bd..9276883e664 100644 --- a/features/webgpu.yml.dist +++ b/features/webgpu.yml.dist @@ -255,6 +255,14 @@ compat_features: # edge: "115" - api.GPU.requestAdapter.discrete_adapter_default_ac - api.GPU.wgslLanguageFeatures + - api.WGSLLanguageFeatures + - api.WGSLLanguageFeatures.@@iterator + - api.WGSLLanguageFeatures.entries + - api.WGSLLanguageFeatures.forEach + - api.WGSLLanguageFeatures.has + - api.WGSLLanguageFeatures.keys + - api.WGSLLanguageFeatures.size + - api.WGSLLanguageFeatures.values # baseline: false # support: @@ -288,13 +296,23 @@ compat_features: # chrome: "119" # chrome_android: "121" # edge: "119" + - api.GPUDevice.createBindGroupLayout.texture_rgb10a2uint + - api.GPUDevice.createRenderPipeline.texture_rgb10a2uint + - api.GPUDevice.createRenderPipeline.vertex_unorm10-10-10-2 + - api.GPUDevice.createRenderPipelineAsync.texture_rgb10a2uint + - api.GPUDevice.createRenderPipelineAsync.vertex_unorm10-10-10-2 + - api.GPUDevice.createTexture.texture_rgb10a2uint - api.GPUSupportedFeatures.feature_float32-filterable + - api.GPUTexture.createView.texture_rgb10a2uint + - api.GPUTexture.format.texture_rgb10a2uint # baseline: false # support: # chrome: "120" # chrome_android: "121" # edge: "120" + - api.GPUDevice.createRenderPipeline.optional_depthcompare_depthwriteenabled + - api.GPUDevice.createRenderPipelineAsync.optional_depthcompare_depthwriteenabled - api.GPUSupportedFeatures.feature_shader-f16 - api.GPUSupportedLimits.maxBindGroupsPlusVertexBuffers @@ -310,9 +328,27 @@ compat_features: - api.GPUDevice.createQuerySet.timestamp - api.GPUDevice.createRenderPipeline.optional_entryPoint - api.GPUDevice.createRenderPipelineAsync.optional_entryPoint + - api.GPUDevice.importExternalTexture.color_space_display-p3 - api.GPUQuerySet.type.timestamp - api.GPUSupportedFeatures.feature_timestamp-query + # baseline: false + # support: + # chrome: "123" + # chrome_android: "123" + # edge: "123" + - api.GPUCommandEncoder.beginRenderPass.separate_depth_stencil_read-only + - api.WGSLLanguageFeatures.extension_packed_4x8_integer_dot_product + - api.WGSLLanguageFeatures.extension_unrestricted_pointer_parameters + + # baseline: false + # support: + # chrome: "124" + # chrome_android: "124" + # edge: "124" + - api.GPUDevice.createBindGroupLayout.storageTexture_access_read-write_read-only + - api.WGSLLanguageFeatures.extension_readonly_and_readwrite_storage_textures + # baseline: false # support: # chrome: "125" @@ -370,19 +406,6 @@ compat_features: - api.OffscreenCanvas.getContext.webgpu_context - api.WorkerNavigator.gpu - # baseline: false - # support: - # chrome: "115" - # edge: "115" - - api.WGSLLanguageFeatures - - api.WGSLLanguageFeatures.@@iterator - - api.WGSLLanguageFeatures.entries - - api.WGSLLanguageFeatures.forEach - - api.WGSLLanguageFeatures.has - - api.WGSLLanguageFeatures.keys - - api.WGSLLanguageFeatures.size - - api.WGSLLanguageFeatures.values - # baseline: false # support: {} - api.GPUSupportedFeatures.feature_float32-blendable diff --git a/package-lock.json b/package-lock.json index 18052843e27..2c59429c0b8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,7 @@ "devDependencies": { "@eslint/js": "^9.15.0", "@js-temporal/polyfill": "^0.4.4", - "@mdn/browser-compat-data": "^5.6.17", + "@mdn/browser-compat-data": "^5.6.18", "@types/caniuse-lite": "^1.0.4", "@types/diff": "^5.2.3", "@types/node": "^18.19.65", @@ -761,9 +761,9 @@ } }, "node_modules/@mdn/browser-compat-data": { - "version": "5.6.17", - "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.6.17.tgz", - "integrity": "sha512-Cik21uEp29W9YcRiWHkZM1SEHIinxLIb6EzmPIj7Hc8qPoqMW4oJ5bpDBNl+CkEjvtblKrp94b1cTa4opaNQDA==" + "version": "5.6.18", + "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.6.18.tgz", + "integrity": "sha512-WCQcQGyydquw7NXPL2NopMCgmUvIQDG7KM/IGR4PMJSDH5SHZKXUDEF6rdpGWj0MtcjQseOCl/hjzYzj0fMMeA==" }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", diff --git a/package.json b/package.json index 7e2fbe5a5d1..7e89497aef1 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "devDependencies": { "@eslint/js": "^9.15.0", "@js-temporal/polyfill": "^0.4.4", - "@mdn/browser-compat-data": "^5.6.17", + "@mdn/browser-compat-data": "^5.6.18", "@types/caniuse-lite": "^1.0.4", "@types/diff": "^5.2.3", "@types/node": "^18.19.65", diff --git a/packages/compute-baseline/src/baseline/index.test.ts b/packages/compute-baseline/src/baseline/index.test.ts index 038385080fc..27a91feb721 100644 --- a/packages/compute-baseline/src/baseline/index.test.ts +++ b/packages/compute-baseline/src/baseline/index.test.ts @@ -95,16 +95,21 @@ describe("computeBaseline", function () { }); it("finds discrepancies with ancestors (checkAncestors)", function () { + // If the features change, you can find new test cases with the + // `find-troublesome-ancestors.ts` script. const result = computeBaseline({ - compatKeys: ["api.Notification.body"], + compatKeys: ["api.Document.exitFullscreen.returns_promise"], checkAncestors: false, }); const resultExplicit = computeBaseline({ - compatKeys: ["api.Notification", "api.Notification.body"], + compatKeys: [ + "api.Document.exitFullscreen", + "api.Document.exitFullscreen.returns_promise", + ], checkAncestors: false, }); const resultWithAncestors = computeBaseline({ - compatKeys: ["api.Notification.body"], + compatKeys: ["api.Document.exitFullscreen.returns_promise"], checkAncestors: true, }); diff --git a/packages/compute-baseline/src/baseline/index.test.ts.snap b/packages/compute-baseline/src/baseline/index.test.ts.snap index 59e051af0c0..3b0ac567b6b 100644 --- a/packages/compute-baseline/src/baseline/index.test.ts.snap +++ b/packages/compute-baseline/src/baseline/index.test.ts.snap @@ -15,12 +15,12 @@ exports[`computeBaseline finds discrepancies with ancestors (checkAncestors) 1`] \\"baseline\\": \\"low\\", \\"baseline_low_date\\": \\"2023-03-27\\", \\"support\\": { - \\"chrome\\": \\"33\\", - \\"chrome_android\\": \\"42\\", - \\"edge\\": \\"14\\", - \\"firefox\\": \\"26\\", - \\"firefox_android\\": \\"26\\", - \\"safari\\": \\"11\\", + \\"chrome\\": \\"69\\", + \\"chrome_android\\": \\"69\\", + \\"edge\\": \\"79\\", + \\"firefox\\": \\"64\\", + \\"firefox_android\\": \\"64\\", + \\"safari\\": \\"16.4\\", \\"safari_ios\\": \\"16.4\\" } }" @@ -30,12 +30,12 @@ exports[`computeBaseline finds discrepancies with ancestors (checkAncestors) 2`] "{ \\"baseline\\": false, \\"support\\": { - \\"chrome\\": \\"33\\", - \\"edge\\": \\"14\\", - \\"firefox\\": \\"26\\", - \\"firefox_android\\": \\"26\\", - \\"safari\\": \\"11\\", - \\"safari_ios\\": \\"16.4\\" + \\"chrome\\": \\"71\\", + \\"chrome_android\\": \\"71\\", + \\"edge\\": \\"79\\", + \\"firefox\\": \\"64\\", + \\"firefox_android\\": \\"64\\", + \\"safari\\": \\"16.4\\" } }" `; @@ -44,12 +44,12 @@ exports[`computeBaseline finds discrepancies with ancestors (checkAncestors) 3`] "{ \\"baseline\\": false, \\"support\\": { - \\"chrome\\": \\"33\\", - \\"edge\\": \\"14\\", - \\"firefox\\": \\"26\\", - \\"firefox_android\\": \\"26\\", - \\"safari\\": \\"11\\", - \\"safari_ios\\": \\"16.4\\" + \\"chrome\\": \\"71\\", + \\"chrome_android\\": \\"71\\", + \\"edge\\": \\"79\\", + \\"firefox\\": \\"64\\", + \\"firefox_android\\": \\"64\\", + \\"safari\\": \\"16.4\\" } }" `; diff --git a/scripts/find-troublesome-ancestors.ts b/scripts/find-troublesome-ancestors.ts index 64ddfce6793..93ebe84a0a0 100644 --- a/scripts/find-troublesome-ancestors.ts +++ b/scripts/find-troublesome-ancestors.ts @@ -1,6 +1,9 @@ import { computeBaseline } from "compute-baseline"; import { Compat } from "compute-baseline/browser-compat-data"; +// For applications of this script, see: +// /packages/compute-baseline/src/baseline/index.test.ts#L97 + const c = new Compat(); const needles = [];