Skip to content
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

Simplify <link>s #6269

Merged
merged 1 commit into from
Jan 19, 2021
Merged

Simplify <link>s #6269

merged 1 commit into from
Jan 19, 2021

Conversation

domenic
Copy link
Member

@domenic domenic commented Jan 6, 2021

In particular, remove their activation behavior, stop them from matching
:link and :visited, and stop suggesting that they be focusable areas.

This also includes a slight expansion and rearrangement of the link
element's section to make it clearer what hyperlinks created by
are meant for, contrasting them to and hyperlinks.

Closes #4831. Closes #2617. Helps with #5490.

(See WHATWG Working Mode: Changes for more details.)


/images.html ( diff )
/interaction.html ( diff )
/rendering.html ( diff )
/semantics-other.html ( diff )
/semantics.html ( diff )

In particular, remove their activation behavior, stop them from matching
:link and :visited, and stop suggesting that they be focusable areas.

This also includes a slight expansion and rearrangement of the link
element's section to make it clearer what hyperlinks created by <link>
are meant for, contrasting them to <a> and <area> hyperlinks.

Closes #4831. Closes #2617. Helps with #5490.
@tabatkins
Copy link
Contributor

If I don't catch it myself, please ping w3c/csswg-drafts#5839 when this lands so we can keep Selectors correct as well.

@josepharhar
Copy link
Contributor

I made a WPT PR here which accounts for :link, :visited, :any-link, and the click activation behavior: web-platform-tests/wpt#27178

I'm guessing that should be merged after this is merged?

chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Jan 14, 2021
In these spec PRs [1][2], the <link> element will no longer match :link,
:visited, or :any-link, and it will no longer navigate the page when
clicked.

[1] whatwg/html#6269
[2] w3c/csswg-drafts#5839

Bug: 611093
Change-Id: I7234eb6024450e28c1ca6ec1ede7fdfc8f2ece52
@domenic
Copy link
Member Author

domenic commented Jan 14, 2021

I'm guessing that should be merged after this is merged?

Yeah. I left some comments over there.

chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Jan 14, 2021
In these spec PRs [1][2], the <link> element will no longer match :link,
:visited, or :any-link, and it will no longer navigate the page when
clicked.

[1] whatwg/html#6269
[2] w3c/csswg-drafts#5839

Bug: 611093
Change-Id: I7234eb6024450e28c1ca6ec1ede7fdfc8f2ece52
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Jan 15, 2021
In these spec PRs [1][2], the <link> element will no longer match :link,
:visited, or :any-link, and it will no longer navigate the page when
clicked.

[1] whatwg/html#6269
[2] w3c/csswg-drafts#5839

Bug: 611093
Change-Id: I7234eb6024450e28c1ca6ec1ede7fdfc8f2ece52
Base automatically changed from master to main January 15, 2021 07:58
@domenic
Copy link
Member Author

domenic commented Jan 15, 2021

OK, tests look good, and make it clear that this would require changes from both Firefox and Safari. @emilio, are you still in favor of this change? @cdumez, any thoughts?

@emilio
Copy link
Contributor

emilio commented Jan 15, 2021

I'm indeed in favor of this, unless there's any objection from @annevk / @smaug---- for any reason I might be overlooking...

chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Jan 15, 2021
In these spec PRs [1][2], the <link> element will no longer match :link,
:visited, or :any-link, and it will no longer navigate the page when
clicked.

This patch also modifies the TestExpectations for one of the modified
tests navigation.sub.html. There was one test case which was
consistently timing out which I removed, which would stop the test from
timing out. However, there are an additional two test cases which time
out when run with run_web_tests.py but pass just fine with
run_wpt_tests.py. In addition, the flags passed to run_web_tests.py on
the trybots make it so that those two test cases which time out get
written to a failure file instead of making the whole test runner time
out, which would count as a failure in TestExpectations. Since the
default flags for run_web_tests.py make it an actual timeout accoring to
TestExpectations, I left the timeout expectation in there as well.

Hopefully this test can just be run with run_wpt_tests.py in the future
and we can get rid of this TestExpectation.

[1] whatwg/html#6269
[2] w3c/csswg-drafts#5839

Bug: 611093
Change-Id: I7234eb6024450e28c1ca6ec1ede7fdfc8f2ece52
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Jan 15, 2021
In these spec PRs [1][2], the <link> element will no longer match :link,
:visited, or :any-link, and it will no longer navigate the page when
clicked.

This patch also modifies the TestExpectations for one of the modified
tests navigation.sub.html. There was one test case which was
consistently timing out which I removed, which would stop the test from
timing out. However, there are an additional two test cases which time
out when run with run_web_tests.py but pass just fine with
run_wpt_tests.py. In addition, the flags passed to run_web_tests.py on
the trybots make it so that those two test cases which time out get
written to a failure file instead of making the whole test runner time
out, which would count as a failure in TestExpectations. Since the
default flags for run_web_tests.py make it an actual timeout according to
TestExpectations, I left the timeout expectation in there as well.

Hopefully this test can just be run with run_wpt_tests.py in the future
and we can get rid of this TestExpectation.

[1] whatwg/html#6269
[2] w3c/csswg-drafts#5839

Bug: 611093
Change-Id: I7234eb6024450e28c1ca6ec1ede7fdfc8f2ece52
@domenic
Copy link
Member Author

domenic commented Jan 19, 2021

Alright, let's merge this! I'll file bugs.

@domenic domenic merged commit 1e0ee7f into main Jan 19, 2021
@domenic domenic deleted the no-link-links branch January 19, 2021 20:25
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Jan 19, 2021
In these spec PRs [1][2], the <link> element will no longer match :link,
:visited, or :any-link, and it will no longer navigate the page when
clicked.

This patch also modifies the TestExpectations for one of the modified
tests navigation.sub.html. There was one test case which was
consistently timing out which I removed, which would stop the test from
timing out. However, there are an additional two test cases which time
out when run with run_web_tests.py but pass just fine with
run_wpt_tests.py. In addition, the flags passed to run_web_tests.py on
the trybots make it so that those two test cases which time out get
written to a failure file instead of making the whole test runner time
out, which would count as a failure in TestExpectations. Since the
default flags for run_web_tests.py make it an actual timeout according to
TestExpectations, I left the timeout expectation in there as well.

Hopefully this test can just be run with run_wpt_tests.py in the future
and we can get rid of this TestExpectation.

[1] whatwg/html#6269
[2] w3c/csswg-drafts#5839

Bug: 611093
Change-Id: I7234eb6024450e28c1ca6ec1ede7fdfc8f2ece52
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2628037
Reviewed-by: Domenic Denicola <domenic@chromium.org>
Reviewed-by: Mason Freed <masonfreed@chromium.org>
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#844921}
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Jan 19, 2021
In these spec PRs [1][2], the <link> element will no longer match :link,
:visited, or :any-link, and it will no longer navigate the page when
clicked.

This patch also modifies the TestExpectations for one of the modified
tests navigation.sub.html. There was one test case which was
consistently timing out which I removed, which would stop the test from
timing out. However, there are an additional two test cases which time
out when run with run_web_tests.py but pass just fine with
run_wpt_tests.py. In addition, the flags passed to run_web_tests.py on
the trybots make it so that those two test cases which time out get
written to a failure file instead of making the whole test runner time
out, which would count as a failure in TestExpectations. Since the
default flags for run_web_tests.py make it an actual timeout according to
TestExpectations, I left the timeout expectation in there as well.

Hopefully this test can just be run with run_wpt_tests.py in the future
and we can get rid of this TestExpectation.

[1] whatwg/html#6269
[2] w3c/csswg-drafts#5839

Bug: 611093
Change-Id: I7234eb6024450e28c1ca6ec1ede7fdfc8f2ece52
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2628037
Reviewed-by: Domenic Denicola <domenic@chromium.org>
Reviewed-by: Mason Freed <masonfreed@chromium.org>
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#844921}
pull bot pushed a commit to Alan-love/chromium that referenced this pull request Jan 20, 2021
In these spec PRs [1][2], the <link> element will no longer match :link,
:visited, or :any-link, and it will no longer navigate the page when
clicked.

This patch also modifies the TestExpectations for one of the modified
tests navigation.sub.html. There was one test case which was
consistently timing out which I removed, which would stop the test from
timing out. However, there are an additional two test cases which time
out when run with run_web_tests.py but pass just fine with
run_wpt_tests.py. In addition, the flags passed to run_web_tests.py on
the trybots make it so that those two test cases which time out get
written to a failure file instead of making the whole test runner time
out, which would count as a failure in TestExpectations. Since the
default flags for run_web_tests.py make it an actual timeout according to
TestExpectations, I left the timeout expectation in there as well.

Hopefully this test can just be run with run_wpt_tests.py in the future
and we can get rid of this TestExpectation.

[1] whatwg/html#6269
[2] w3c/csswg-drafts#5839

Bug: 611093
Change-Id: I7234eb6024450e28c1ca6ec1ede7fdfc8f2ece52
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2628037
Reviewed-by: Domenic Denicola <domenic@chromium.org>
Reviewed-by: Mason Freed <masonfreed@chromium.org>
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#844921}
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Jan 22, 2021
…stonly

Automatic update from web-platform-tests
Update <link> pseudo selector WPTs

In these spec PRs [1][2], the <link> element will no longer match :link,
:visited, or :any-link, and it will no longer navigate the page when
clicked.

This patch also modifies the TestExpectations for one of the modified
tests navigation.sub.html. There was one test case which was
consistently timing out which I removed, which would stop the test from
timing out. However, there are an additional two test cases which time
out when run with run_web_tests.py but pass just fine with
run_wpt_tests.py. In addition, the flags passed to run_web_tests.py on
the trybots make it so that those two test cases which time out get
written to a failure file instead of making the whole test runner time
out, which would count as a failure in TestExpectations. Since the
default flags for run_web_tests.py make it an actual timeout according to
TestExpectations, I left the timeout expectation in there as well.

Hopefully this test can just be run with run_wpt_tests.py in the future
and we can get rid of this TestExpectation.

[1] whatwg/html#6269
[2] w3c/csswg-drafts#5839

Bug: 611093
Change-Id: I7234eb6024450e28c1ca6ec1ede7fdfc8f2ece52
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2628037
Reviewed-by: Domenic Denicola <domenic@chromium.org>
Reviewed-by: Mason Freed <masonfreed@chromium.org>
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#844921}

--

wpt-commits: 7fb79576dbe83e74f5e375ed887e3338b501de2a
wpt-pr: 27178
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Jan 25, 2021
…stonly

Automatic update from web-platform-tests
Update <link> pseudo selector WPTs

In these spec PRs [1][2], the <link> element will no longer match :link,
:visited, or :any-link, and it will no longer navigate the page when
clicked.

This patch also modifies the TestExpectations for one of the modified
tests navigation.sub.html. There was one test case which was
consistently timing out which I removed, which would stop the test from
timing out. However, there are an additional two test cases which time
out when run with run_web_tests.py but pass just fine with
run_wpt_tests.py. In addition, the flags passed to run_web_tests.py on
the trybots make it so that those two test cases which time out get
written to a failure file instead of making the whole test runner time
out, which would count as a failure in TestExpectations. Since the
default flags for run_web_tests.py make it an actual timeout according to
TestExpectations, I left the timeout expectation in there as well.

Hopefully this test can just be run with run_wpt_tests.py in the future
and we can get rid of this TestExpectation.

[1] whatwg/html#6269
[2] w3c/csswg-drafts#5839

Bug: 611093
Change-Id: I7234eb6024450e28c1ca6ec1ede7fdfc8f2ece52
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2628037
Reviewed-by: Domenic Denicola <domenicchromium.org>
Reviewed-by: Mason Freed <masonfreedchromium.org>
Commit-Queue: Joey Arhar <jarharchromium.org>
Cr-Commit-Position: refs/heads/master{#844921}

--

wpt-commits: 7fb79576dbe83e74f5e375ed887e3338b501de2a
wpt-pr: 27178

UltraBlame original commit: 6bca25bb4c50c43ddd2d4a1bd74e5f8ceafa22a5
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Jan 28, 2021
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Jan 28, 2021
jamienicol pushed a commit to jamienicol/gecko that referenced this pull request Jan 29, 2021
…stonly

Automatic update from web-platform-tests
Update <link> pseudo selector WPTs

In these spec PRs [1][2], the <link> element will no longer match :link,
:visited, or :any-link, and it will no longer navigate the page when
clicked.

This patch also modifies the TestExpectations for one of the modified
tests navigation.sub.html. There was one test case which was
consistently timing out which I removed, which would stop the test from
timing out. However, there are an additional two test cases which time
out when run with run_web_tests.py but pass just fine with
run_wpt_tests.py. In addition, the flags passed to run_web_tests.py on
the trybots make it so that those two test cases which time out get
written to a failure file instead of making the whole test runner time
out, which would count as a failure in TestExpectations. Since the
default flags for run_web_tests.py make it an actual timeout according to
TestExpectations, I left the timeout expectation in there as well.

Hopefully this test can just be run with run_wpt_tests.py in the future
and we can get rid of this TestExpectation.

[1] whatwg/html#6269
[2] w3c/csswg-drafts#5839

Bug: 611093
Change-Id: I7234eb6024450e28c1ca6ec1ede7fdfc8f2ece52
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2628037
Reviewed-by: Domenic Denicola <domenic@chromium.org>
Reviewed-by: Mason Freed <masonfreed@chromium.org>
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#844921}

--

wpt-commits: 7fb79576dbe83e74f5e375ed887e3338b501de2a
wpt-pr: 27178
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Feb 1, 2021
As per whatwg/html#6269

Differential Revision: https://phabricator.services.mozilla.com/D103088

UltraBlame original commit: 0927366150b7a0701c893b25d4e4b02e380ca0ec
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Feb 1, 2021
As per whatwg/html#6269

Differential Revision: https://phabricator.services.mozilla.com/D103088

UltraBlame original commit: 51b5cadd3149b4cdd24206444c92996c80911891
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this pull request Feb 1, 2021
As per whatwg/html#6269

Differential Revision: https://phabricator.services.mozilla.com/D103088

UltraBlame original commit: 0927366150b7a0701c893b25d4e4b02e380ca0ec
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this pull request Feb 1, 2021
As per whatwg/html#6269

Differential Revision: https://phabricator.services.mozilla.com/D103088

UltraBlame original commit: 51b5cadd3149b4cdd24206444c92996c80911891
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Feb 1, 2021
As per whatwg/html#6269

Differential Revision: https://phabricator.services.mozilla.com/D103088

UltraBlame original commit: 0927366150b7a0701c893b25d4e4b02e380ca0ec
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Feb 1, 2021
As per whatwg/html#6269

Differential Revision: https://phabricator.services.mozilla.com/D103088

UltraBlame original commit: 51b5cadd3149b4cdd24206444c92996c80911891
jamienicol pushed a commit to jamienicol/gecko that referenced this pull request Feb 4, 2021
jamienicol pushed a commit to jamienicol/gecko that referenced this pull request Feb 4, 2021
mjfroman pushed a commit to mjfroman/moz-libwebrtc-third-party that referenced this pull request Oct 14, 2022
In these spec PRs [1][2], the <link> element will no longer match :link,
:visited, or :any-link, and it will no longer navigate the page when
clicked.

This patch also modifies the TestExpectations for one of the modified
tests navigation.sub.html. There was one test case which was
consistently timing out which I removed, which would stop the test from
timing out. However, there are an additional two test cases which time
out when run with run_web_tests.py but pass just fine with
run_wpt_tests.py. In addition, the flags passed to run_web_tests.py on
the trybots make it so that those two test cases which time out get
written to a failure file instead of making the whole test runner time
out, which would count as a failure in TestExpectations. Since the
default flags for run_web_tests.py make it an actual timeout according to
TestExpectations, I left the timeout expectation in there as well.

Hopefully this test can just be run with run_wpt_tests.py in the future
and we can get rid of this TestExpectation.

[1] whatwg/html#6269
[2] w3c/csswg-drafts#5839

Bug: 611093
Change-Id: I7234eb6024450e28c1ca6ec1ede7fdfc8f2ece52
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2628037
Reviewed-by: Domenic Denicola <domenic@chromium.org>
Reviewed-by: Mason Freed <masonfreed@chromium.org>
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#844921}
GitOrigin-RevId: 1b8d7f16e77aa2a58e09cd6035c7cd29c28a8d68
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
interop Implementations are not interoperable with each other removal/deprecation Removing or deprecating a feature topic: hyperlink topic: link
5 participants