browser-compat-data
browser-compat-data copied to clipboard
Add linter for support blocks filled only with false
A checklist to help your pull request get merged faster:
- [x] Summarize your changes
- [ ] Review the results of the linter and fix problems reported (If you need help, please ask in a comment!)
- [x] Link to related issues or pull requests, if any: #6768, #6431
This implements a linter to prevent any support block filled only with false
.
Quite a lot of failures, not sure how to proceed. Maybe create an allowlist for now and try reducing it later?
Problems in 101 files:
✖ api\AuthenticatorAttestationResponse.json
✖ api\BluetoothAdvertisingData.json
✖ api\BluetoothDevice.json
✖ api\BluetoothRemoteGATTService.json
✖ api\BudgetService.json
✖ api\BudgetState.json
✖ api\CanvasRenderingContext2D.json
✖ api\ConstrainULong.json
✖ api\CSS.json
✖ api\Document.json
✖ api\DocumentFragment.json
✖ api\DocumentOrShadowRoot.json
✖ api\DOMConfiguration.json
✖ api\DOMImplementationList.json
✖ api\HTMLButtonElement.json
✖ api\HTMLIFrameElement.json
✖ api\HTMLIsIndexElement.json
✖ api\HTMLMenuItemElement.json
✖ api\HTMLTableElement.json
✖ api\IDBVersionChangeRequest.json
✖ api\NDEFMessage.json
✖ api\NDEFReader.json
✖ api\NDEFReadingEvent.json
✖ api\NDEFRecord.json
✖ api\NDEFWriter.json
✖ api\PaymentAddress.json
✖ api\PerformanceFrameTiming.json
✖ api\Range.json
✖ api\ReadableByteStreamController.json
✖ api\ReadableStreamBYOBReader.json
✖ api\ReadableStreamBYOBRequest.json
✖ api\RTCIceTransport.json
✖ api\RTCRemoteOutboundRtpStreamStats.json
✖ api\RTCStatsReport.json
✖ api\SVGMeshElement.json
✖ api\ULongRange.json
✖ api\Window.json
✖ api\XRPermissionDescriptor.json
✖ api\XRPermissionStatus.json
✖ css\at-rules\media.json
✖ css\at-rules\page.json
✖ css\at-rules\viewport.json
✖ css\properties\azimuth.json
✖ css\properties\break-after.json
✖ css\properties\break-before.json
✖ css\properties\break-inside.json
✖ css\properties\column-fill.json
✖ css\properties\column-width.json
✖ css\properties\font-variant.json
✖ css\properties\initial-letter-align.json
✖ css\properties\margin-trim.json
✖ css\properties\mask-origin.json
✖ css\properties\offset-position.json
✖ css\properties\ruby-position.json
✖ css\properties\text-align.json
✖ css\properties\text-indent.json
✖ css\properties\text-overflow.json
✖ css\selectors\blank.json
✖ css\selectors\column.json
✖ css\selectors\empty.json
✖ css\selectors\first-letter.json
✖ css\selectors\grammar-error.json
✖ css\selectors\has.json
✖ css\selectors\spelling-error.json
✖ css\types\attr.json
✖ css\types\frequency-percentage.json
✖ css\types\frequency.json
✖ css\types\image.json
✖ css\types\length-percentage.json
✖ css\types\length.json
✖ html\elements\command.json
✖ html\elements\dir.json
✖ html\elements\iframe.json
✖ html\elements\isindex.json
✖ html\elements\link.json
✖ html\elements\listing.json
✖ html\elements\menu.json
✖ html\elements\multicol.json
✖ html\elements\nextid.json
✖ html\elements\textarea.json
✖ http\headers\cache-control.json
✖ http\headers\content-security-policy.json
✖ http\headers\cookie2.json
✖ http\headers\feature-policy.json
✖ http\headers\set-cookie2.json
✖ svg\elements\textPath.json
✖ javascript\builtins\AsyncIterator.json
✖ javascript\builtins\Iterator.json
✖ javascript\operators\pipeline.json
✖ mathml\elements\math.json
✖ mathml\elements\mglyph.json
✖ mathml\elements\mlabeledtr.json
✖ mathml\elements\mo.json
✖ mathml\elements\mspace.json
✖ mathml\elements\mstyle.json
✖ mathml\elements\mtable.json
✖ mathml\elements\mtd.json
✖ mathml\elements\mtr.json
✖ webextensions\manifest\content_security_policy.json
✖ webextensions\manifest\manifest_version.json
✖ webextensions\match_patterns.json
Marking as "not ready" since we need to fix our data first.
Could this be tweaked to test for falsy values to include null? That's the lint I think we should have :)
We had way too many false
-only items so I intended to make the scope smaller here. But since we removed quite a lot of them, maybe it's now time to cover null
.
That's a kind of progress! Would you mind updating what would still be failing this lint now? (I could, but am on phone but still curious...)
Already did 😉 (I mean, #6854)
Problems in 116 files:
✖ api/BluetoothRemoteGATTService.json
✖ api/ConstrainULong.json
✖ api/MediaTrackSettings.json
✖ api/MediaTrackSupportedConstraints.json
✖ api/MouseEvent.json
✖ api/PaymentResponse.json
✖ api/PushRegistrationManager.json
✖ api/PushSubscriptionChangeEvent.json
✖ api/RTCDataChannel.json
✖ api/RTCIceCandidatePairStats.json
✖ api/RTCIceCandidateStats.json
✖ api/RTCIceCandidateType.json
✖ api/RTCIceComponent.json
✖ api/RTCIceCredentialType.json
✖ api/RTCIdentityAssertion.json
✖ api/RTCIdentityProviderGlobalScope.json
✖ api/RTCIdentityProviderRegistrar.json
✖ api/RTCRtpEncodingParameters.json
✖ api/RTCRtpSendParameters.json
✖ api/RTCRtpStreamStats.json
✖ api/Request.json
✖ api/SVGElement.json
✖ api/SVGImageElement.json
✖ api/SourceBuffer.json
✖ api/TouchList.json
✖ api/ULongRange.json
✖ api/VRDisplay.json
✖ api/VREyeParameters.json
✖ api/VRFieldOfView.json
✖ api/VRPose.json
✖ api/Window.json
✖ api/XRPermissionDescriptor.json
✖ api/XRPermissionStatus.json
✖ css/properties/font-variant.json
✖ css/properties/masonry-auto-flow.json
✖ css/properties/text-align.json
✖ css/properties/text-indent.json
✖ css/properties/text-overflow.json
✖ css/selectors/target-within.json
✖ css/types/frequency.json
✖ css/types/length-percentage.json
✖ css/types/length.json
✖ html/elements/menu.json
✖ html/elements/textarea.json
✖ html/manifest/dir.json
✖ html/manifest/iarc_rating_id.json
✖ html/manifest/lang.json
✖ http/headers/content-security-policy.json
✖ http/headers/cookie2.json
✖ http/headers/expect.json
✖ http/headers/feature-policy.json
✖ http/headers/forwarded.json
✖ http/headers/set-cookie2.json
✖ http/headers/tk.json
✖ http/headers/x-forwarded-for.json
✖ http/headers/x-forwarded-host.json
✖ http/headers/x-forwarded-proto.json
✖ http/methods.json
✖ svg/attributes/conditional_processing.json
✖ svg/attributes/core.json
✖ svg/attributes/events.json
✖ svg/attributes/presentation.json
✖ svg/attributes/xlink.json
✖ svg/elements/a.json
✖ svg/elements/altGlyph.json
✖ svg/elements/altGlyphDef.json
✖ svg/elements/altGlyphItem.json
✖ svg/elements/animate.json
✖ svg/elements/animateColor.json
✖ svg/elements/animateMotion.json
✖ svg/elements/animateTransform.json
✖ svg/elements/cursor.json
✖ svg/elements/feConvolveMatrix.json
✖ svg/elements/feDiffuseLighting.json
✖ svg/elements/feDisplacementMap.json
✖ svg/elements/feDistantLight.json
✖ svg/elements/feFlood.json
✖ svg/elements/feGaussianBlur.json
✖ svg/elements/feImage.json
✖ svg/elements/feSpecularLighting.json
✖ svg/elements/feTurbulence.json
✖ svg/elements/filter.json
✖ svg/elements/font-face-format.json
✖ svg/elements/font-face-name.json
✖ svg/elements/font-face-src.json
✖ svg/elements/font-face-uri.json
✖ svg/elements/font-face.json
✖ svg/elements/font.json
✖ svg/elements/glyph.json
✖ svg/elements/glyphRef.json
✖ svg/elements/hatch.json
✖ svg/elements/hatchpath.json
✖ svg/elements/hkern.json
✖ svg/elements/image.json
✖ svg/elements/linearGradient.json
✖ svg/elements/mask.json
✖ svg/elements/mesh.json
✖ svg/elements/meshgradient.json
✖ svg/elements/meshpatch.json
✖ svg/elements/meshrow.json
✖ svg/elements/missing-glyph.json
✖ svg/elements/mpath.json
✖ svg/elements/radialGradient.json
✖ svg/elements/script.json
✖ svg/elements/style.json
✖ svg/elements/svg.json
✖ svg/elements/symbol.json
✖ svg/elements/textPath.json
✖ svg/elements/tref.json
✖ svg/elements/tspan.json
✖ svg/elements/view.json
✖ svg/elements/vkern.json
✖ javascript/builtins/Array.json
✖ javascript/builtins/String.json
✖ javascript/builtins/TypedArray.json
✖ xslt/elements/stylesheet.json
Latest update.
Nice, a lot more bad data to sort through :)
I just merged this into main and ran the lint. Fewer failures, but still a bunch:
Problems in 83 files:
✖ api/CanMakePaymentEvent.json
✖ api/MediaTrackConstraints.json
✖ api/MediaTrackSupportedConstraints.json
✖ api/RTCIceCandidatePairStats.json
✖ api/RTCIceCandidateStats.json
✖ api/RTCIceCredentialType.json
✖ api/RTCIdentityProviderGlobalScope.json
✖ api/RTCIdentityProviderRegistrar.json
✖ api/RTCRtpEncodingParameters.json
✖ api/RTCRtpSendParameters.json
✖ api/SVGImageElement.json
✖ api/VRDisplay.json
✖ api/VREyeParameters.json
✖ api/VRFieldOfView.json
✖ api/VRPose.json
✖ api/Window.json
✖ api/XRPermissionStatus.json
✖ css/properties/font-variant.json
✖ css/properties/masonry-auto-flow.json
✖ css/properties/text-align.json
✖ css/properties/text-overflow.json
✖ css/selectors/target-within.json
✖ css/types/frequency.json
✖ html/manifest/dir.json
✖ html/manifest/iarc_rating_id.json
✖ html/manifest/lang.json
✖ http/headers/authorization.json
✖ http/headers/content-security-policy.json
✖ http/headers/digest.json
✖ http/headers/expect.json
✖ http/headers/feature-policy.json
✖ http/headers/forwarded.json
✖ http/headers/tk.json
✖ http/headers/want-digest.json
✖ http/headers/www-authenticate.json
✖ http/methods.json
✖ svg/attributes/conditional_processing.json
✖ svg/attributes/core.json
✖ svg/attributes/events.json
✖ svg/attributes/presentation.json
✖ svg/attributes/xlink.json
✖ svg/elements/a.json
✖ svg/elements/altGlyph.json
✖ svg/elements/altGlyphDef.json
✖ svg/elements/altGlyphItem.json
✖ svg/elements/animate.json
✖ svg/elements/animateMotion.json
✖ svg/elements/animateTransform.json
✖ svg/elements/cursor.json
✖ svg/elements/feConvolveMatrix.json
✖ svg/elements/feDiffuseLighting.json
✖ svg/elements/feDisplacementMap.json
✖ svg/elements/feDistantLight.json
✖ svg/elements/feFlood.json
✖ svg/elements/feGaussianBlur.json
✖ svg/elements/feImage.json
✖ svg/elements/feSpecularLighting.json
✖ svg/elements/feTurbulence.json
✖ svg/elements/filter.json
✖ svg/elements/font-face-format.json
✖ svg/elements/font-face-name.json
✖ svg/elements/font-face-src.json
✖ svg/elements/font-face-uri.json
✖ svg/elements/font-face.json
✖ svg/elements/font.json
✖ svg/elements/glyph.json
✖ svg/elements/glyphRef.json
✖ svg/elements/hkern.json
✖ svg/elements/image.json
✖ svg/elements/linearGradient.json
✖ svg/elements/mask.json
✖ svg/elements/missing-glyph.json
✖ svg/elements/mpath.json
✖ svg/elements/radialGradient.json
✖ svg/elements/script.json
✖ svg/elements/style.json
✖ svg/elements/svg.json
✖ svg/elements/symbol.json
✖ svg/elements/textPath.json
✖ svg/elements/tref.json
✖ svg/elements/tspan.json
✖ svg/elements/view.json
✖ svg/elements/vkern.json
More failures:
Problems in 89 files:
✖ api\RTCIceCandidatePairStats.json
✖ api\RTCIceCredentialType.json
✖ api\RTCIdentityProviderGlobalScope.json
✖ api\RTCIdentityProviderRegistrar.json
✖ api\RTCRtpEncodingParameters.json
✖ api\RTCRtpSendParameters.json
✖ api\SVGImageElement.json
✖ api\VRDisplay.json
✖ api\VREyeParameters.json
✖ api\VRFieldOfView.json
✖ api\VRPose.json
✖ api\XRPermissionStatus.json
✖ css\properties\font-variant.json
✖ css\properties\masonry-auto-flow.json
✖ css\properties\text-align.json
✖ css\properties\text-overflow.json
✖ css\selectors\target-within.json
✖ css\types\frequency.json
✖ html\manifest\dir.json
✖ html\manifest\iarc_rating_id.json
✖ html\manifest\lang.json
✖ http\headers\authorization.json
✖ http\headers\content-security-policy.json
✖ http\headers\digest.json
✖ http\headers\expect.json
✖ http\headers\feature-policy.json
✖ http\headers\forwarded.json
✖ http\headers\tk.json
✖ http\headers\want-digest.json
✖ http\headers\www-authenticate.json
✖ http\methods.json
✖ svg\attributes\conditional_processing.json
✖ svg\attributes\core.json
✖ svg\attributes\events.json
✖ svg\attributes\presentation.json
✖ svg\attributes\xlink.json
✖ svg\elements\a.json
✖ svg\elements\altGlyph.json
✖ svg\elements\altGlyphDef.json
✖ svg\elements\altGlyphItem.json
✖ svg\elements\animate.json
✖ svg\elements\animateMotion.json
✖ svg\elements\animateTransform.json
✖ svg\elements\cursor.json
✖ svg\elements\feConvolveMatrix.json
✖ svg\elements\feDiffuseLighting.json
✖ svg\elements\feDisplacementMap.json
✖ svg\elements\feDistantLight.json
✖ svg\elements\feFlood.json
✖ svg\elements\feGaussianBlur.json
✖ svg\elements\feImage.json
✖ svg\elements\feSpecularLighting.json
✖ svg\elements\feTurbulence.json
✖ svg\elements\filter.json
✖ svg\elements\font-face-format.json
✖ svg\elements\font-face-name.json
✖ svg\elements\font-face-src.json
✖ svg\elements\font-face-uri.json
✖ svg\elements\font-face.json
✖ svg\elements\font.json
✖ svg\elements\glyph.json
✖ svg\elements\glyphRef.json
✖ svg\elements\hkern.json
✖ svg\elements\image.json
✖ svg\elements\linearGradient.json
✖ svg\elements\mask.json
✖ svg\elements\missing-glyph.json
✖ svg\elements\mpath.json
✖ svg\elements\radialGradient.json
✖ svg\elements\script.json
✖ svg\elements\style.json
✖ svg\elements\svg.json
✖ svg\elements\symbol.json
✖ svg\elements\textPath.json
✖ svg\elements\tref.json
✖ svg\elements\tspan.json
✖ svg\elements\view.json
✖ svg\elements\vkern.json
✖ javascript\builtins\Temporal\Calendar.json
✖ javascript\builtins\Temporal\Duration.json
✖ javascript\builtins\Temporal\Instant.json
✖ javascript\builtins\Temporal\now.json
✖ javascript\builtins\Temporal\PlainDate.json
✖ javascript\builtins\Temporal\PlainDateTime.json
✖ javascript\builtins\Temporal\PlainMonthDay.json
✖ javascript\builtins\Temporal\PlainTime.json
✖ javascript\builtins\Temporal\PlainYearMonth.json
✖ javascript\builtins\Temporal\TimeZone.json
✖ javascript\builtins\Temporal\ZonedDateTime.json
This pull request has merge conflicts that must be resolved before we can merge this.
This pull request has merge conflicts that must be resolved before we can merge this.
Problems in 89 files:
✖ api/RTCIceCandidatePairStats.json
→ Support history – 10 errors:
→ {red → No support and no tracking bug in ,} api.RTCIceCandidatePairStats.circuitBreakerTriggerCount
→ {red → No support and no tracking bug in ,} api.RTCIceCandidatePairStats.consentExpiredTimestamp
→ {red → No support and no tracking bug in ,} api.RTCIceCandidatePairStats.consentRequestsSent
→ {red → No support and no tracking bug in ,} api.RTCIceCandidatePairStats.firstRequestTimeStamp
→ {red → No support and no tracking bug in ,} api.RTCIceCandidatePairStats.lastRequestTimestamp
→ {red → No support and no tracking bug in ,} api.RTCIceCandidatePairStats.lastResponseTimestamp
→ {red → No support and no tracking bug in ,} api.RTCIceCandidatePairStats.packetsReceived
→ {red → No support and no tracking bug in ,} api.RTCIceCandidatePairStats.packetsSent
→ {red → No support and no tracking bug in ,} api.RTCIceCandidatePairStats.retransmissionsReceived
→ {red → No support and no tracking bug in ,} api.RTCIceCandidatePairStats.retransmissionsSent
@queengooborg The chalk rendering became weird, do you know why?
This pull request has merge conflicts that must be resolved before we can merge this.
This pull request has merge conflicts that must be resolved before it can be merged.
Hey @saschanaz, would you be down to update this? We've decided to proceed with disallowing all-false features in BCD!
This pull request has merge conflicts that must be resolved before it can be merged.
Found #16429 merged first with kinda similar purpose. Not sure what should I do, should I merge this with that one? This one seems to cover more things, at least. @queengooborg
Okay, found #17743. Can you please ping me before such decision.
Not sure how should I feel with this.