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

Remove "compatibility caseless" matching #1941

Merged
merged 1 commit into from Oct 24, 2016

Conversation

3 participants
@domenic
Member

domenic commented Oct 20, 2016

This fixes #1666. As discussed there, browsers are not interoperable
about what type of Unicode case-insensitivity they implement here, with
WebKit even using case-sensitive matching for the radio button case (but
not for the image map case). Data from Blink's use counters reveals
however that the Unicode case-insensitivity is never triggered, and even
ASCII case-insensitivity is triggered extraordinarily rarely.
Additionally, the semantics of these attributes is more like an
identifier than anything else, and so case-insensitive comparison never
really made sense in the first place (it was only done for legacy
Internet Explorer compatibility). As such, we move to converge on
case-sensitive matching in all cases.

Tests incoming, will file browser bugs after merge.

Remove "compatibility caseless" matching
This fixes #1666. As discussed there, browsers are not interoperable
about what type of Unicode case-insensitivity they implement here, with
WebKit even using case-sensitive matching for the radio button case (but
not for the image map case). Data from Blink's use counters reveals
however that the Unicode case-insensitivity is never triggered, and even
ASCII case-insensitivity is triggered extraordinarily rarely.
Additionally, the semantics of these attributes is more like an
identifier than anything else, and so case-insensitive comparison never
really made sense in the first place (it was only done for legacy
Internet Explorer compatibility). As such, we move to converge on
case-sensitive matching in all cases.

domenic added a commit to web-platform-tests/wpt that referenced this pull request Oct 20, 2016

domenic added a commit to web-platform-tests/wpt that referenced this pull request Oct 20, 2016

@domenic

This comment has been minimized.

Show comment
Hide comment
@domenic

domenic Oct 20, 2016

Member

Tests at web-platform-tests/wpt#4044 for radio button groups. I can't figure out how to test image maps. It might be possible with something really complicated (synethetic click events at some section of the page that is covered by an image map??) but given that there are no such existing tests for me to model on, I'm going to ask that we skip requiring tests for that.

Member

domenic commented Oct 20, 2016

Tests at web-platform-tests/wpt#4044 for radio button groups. I can't figure out how to test image maps. It might be possible with something really complicated (synethetic click events at some section of the page that is covered by an image map??) but given that there are no such existing tests for me to model on, I'm going to ask that we skip requiring tests for that.

domenic added a commit to web-platform-tests/wpt that referenced this pull request Oct 20, 2016

@annevk

This comment has been minimized.

Show comment
Hide comment
@annevk

annevk Oct 21, 2016

Member

I don't think you can test it without some kind of framework that can actually send UI events. However, you could create a manual test for it which would be nice for implementers and reviewers.

Really happy we can remove this wart by the way.

Member

annevk commented Oct 21, 2016

I don't think you can test it without some kind of framework that can actually send UI events. However, you could create a manual test for it which would be nice for implementers and reviewers.

Really happy we can remove this wart by the way.

@zcorpan

This comment has been minimized.

Show comment
Hide comment
@zcorpan

zcorpan Oct 21, 2016

Member

You can use elementFromPoint(), see /html/semantics/embedded-content/the-area-element/area-coords.html for an example. (If the map is associated, you get an area element; if not, you get the img.)

Member

zcorpan commented Oct 21, 2016

You can use elementFromPoint(), see /html/semantics/embedded-content/the-area-element/area-coords.html for an example. (If the map is associated, you get an area element; if not, you get the img.)

@domenic

This comment has been minimized.

Show comment
Hide comment
@domenic

domenic Oct 21, 2016

Member

Thanks for the tip. Tests updated. Anyone approve the PR itself?

Member

domenic commented Oct 21, 2016

Thanks for the tip. Tests updated. Anyone approve the PR itself?

@annevk

This comment has been minimized.

Show comment
Hide comment
@annevk

annevk Oct 22, 2016

Member

Oops, this PR LGTM.

Member

annevk commented Oct 22, 2016

Oops, this PR LGTM.

@domenic domenic merged commit 6acdb21 into master Oct 24, 2016

2 checks passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details
continuous-integration/travis-ci/push The Travis CI build passed
Details

@domenic domenic deleted the case-sensitivity branch Oct 24, 2016

domenic added a commit to web-platform-tests/wpt that referenced this pull request Oct 24, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment