Skip to content

Commit 8a164e4

Browse files
Adding critieria along Anne's suggestion
1 parent 9d2dcad commit 8a164e4

File tree

1 file changed

+48
-4
lines changed

1 file changed

+48
-4
lines changed

compatibility.bs

Lines changed: 48 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1091,8 +1091,9 @@ beneficial as a decalration of intent by browser engines to act together in a we
10911091
Anyone can make an addition to the list by editing this specification.
10921092
However, because some content describes the future plans of browser engines, the author can use
10931093
their discretion in what reviewers are appropriate for a given change to the list.
1094-
[[#removal-support]] is provided to give a place to link to long-form content within this
1095-
document for list entries.
1094+
[[#removal-criteria]] provides suggested criteria to consider when deciding if it is appropriate
1095+
to remove the feature to the web. [[#removal-support]] provides to give a place to link to
1096+
long-form content within this document for list entries.
10961097

10971098
Each entry can include:
10981099

@@ -1105,11 +1106,54 @@ Each entry can include:
11051106
<li>links to any [=deprecated feature list/Automated Tools | automated tools =] to assist developers, such as detection or migration scripts.
11061107
</ul>
11071108

1108-
<h3 id="removal-support">Supporting Information</h3>
1109+
<h3 id="removal-criteria">Criteria for removal or deprecation</h3>
1110+
1111+
The bar to make a breaking change in the web platform across multiple browser engines can be high.
1112+
This is a good thing, as the web should strive for backward compatibility as much as is possible.
1113+
The <a href="https://whatwg.org/working-mode#removals">WHATWG Working Mode</a> even establishes
1114+
further requirements for changes to specifications that remove behavior. This section provides an
1115+
incomplete enumeration of criteria that should be considered before including a feature in the
1116+
[[Feature List]]. This is not an algorithm to decide what can be removed; each feature removal is
1117+
unique and requires the careful decision making of the implementers to weigh the costs and benefits
1118+
of proceeding with removal.
1119+
1120+
Harms of removing the feature are good reasons to not proceed:
1121+
1122+
<ul>
1123+
<li>User-visible breakage of any site is a harm worth considering
1124+
<li>The full set of use-cases for a feature can not be known, so unexpected things may break
1125+
<li>Removal of features has an outsized influence on smaller development operations that have fewer resources for maintanance and can not track the changes to the web platform closely
1126+
<li>Removal of features can disrupt ecosystems built on the web, changing their economics and incentives, and this is not always for the better
1127+
</ul>
1128+
1129+
Benefits of removing the feature are good reasons to proceed:
1130+
1131+
<ul>
1132+
<li>Security improvement
1133+
<li>Privacy and user protections improvement
1134+
<li>Accessibility improvement
1135+
<li>Platform architectural improvement
1136+
</ul>
1137+
1138+
Harms of removing the feature may be mitigated by some choices:
1139+
1140+
<ul>
1141+
<li>Lead time from deprecation to removal
1142+
<li>On-by-default, but easily disabled for a site by developers during the deprecation
1143+
<li>Coherence of action by browsers
1144+
<li>Mechanisms for site-specific workarounds controlled by the browser
1145+
<li>Strong, interoperable alternatives to the feature
1146+
<li>Younger and less-stable APIs are less ossified and are likely used by developers more apt to fix their website
1147+
</ul>
1148+
1149+
It is important to note that any alternatives to the feature will face the same scrutiny when they are to be removed,
1150+
deferring the issue of breakage rather than resolving it.
1151+
1152+
<h3 id="removal-support">Supporting information</h3>
11091153

11101154
<h2 id="acknowledgements" class="no-num">Acknowledgements</h2>
11111155
Thanks to Alan Cutter, Benjamin VanderSloot, Cameron McCormack, Chris Rebert, Chun-Min (Jeremy) Chen,
1112-
Daniel Holbert,David Håsäther, Domenic Denicola, Eric Portis, hexalys, Jean-Yves Perrier, Jacob Rossi,
1156+
Daniel Holbert, David Håsäther, Domenic Denicola, Eric Portis, hexalys, Jean-Yves Perrier, Jacob Rossi,
11131157
Karl Dubost, Philip Jägenstedt, Rick Byers, Simon Pieters, Stanley Stuart, William Chen and
11141158
Your Name Here for feedback and contributions to this standard.
11151159

0 commit comments

Comments
 (0)