You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<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.
0 commit comments