-
Notifications
You must be signed in to change notification settings - Fork 20.6k
Drop support for Edge Legacy (EdgeHTML-based) in 4.0? #4568
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
Comments
I created a draft PR so that it's easier to see what kind of changes we could introduce if we dropped EdgeHTML: #4573. |
Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments. Fixes jquerygh-4568
@kytosai This issue is not about removing support for Edge (which we have no plans to do) but for EdgeHTML, i.e. the engine powering the legacy Edge versions that will be replaced by Chromium on January 15, 2020. IE 11 support cannot be removed yet as:
Maybe we'll be able to drop IE support in a few years, if jQuery still exists by then. But that's too far a future to seriously consider it at the moment. |
Paging people who might be interested in voicing their opinion here: @jquery/core @Krinkle @arschmitz @fnagel |
This may be of interest as well: analytics.wikimedia.org/dashboards/browsers Illustrated: Desktop traffic to Wikipedia and sister projects, by browser family and major version. From 15-22 Dec 2019. IE 11 makes up 8.1% globally, Edge 18 makes up 4.1% globally. In context: stats.wikimedia.org says the desktop sites receive around 10B page views a month. The English Wikipedia specifically, receives 5B of those 10B desktop page views, from an estimated 260M desktop-device sessions. |
@mgol For Wikipedia, dropping legacy Edge for client-side enhancements (Grade A) would likely be fine if our traffic shows it being <1% of desktop globally. We generally support individual browsers if they are used by at least 1% of readers globally. And our current Grade A matrix is generally a superset of these >=1% browsers (additional browsers added or removed based on consensus and available resources). |
I never really tested my projects with Edge and no client ever asked for it but ~4% (almost 5 in some stats) worldwide usage is enough for me to say: let's keep it in the 4.0 release. How much speed to we gain by removing?
+1 |
~4% is the current statistic. I suspect it will go down a lot once the Chromium-based Edge is released on January 15 as Microsoft is aiming at a pretty aggressive update schedule, even updating older Edge versions on older Windows 10 feature updates. And jQuery 4.0.0 will not get released soon, I think 6 months into the future is an optimistic estimate. If we want to know for sure how the update goes, we can wait a month or two and see if usage of EdgeHTML-based versions of Edge drops significantly during that time or not.
I described that in my original post. Do you have an additional question to what I wrote there?
Nothing that we haven't removed already (though we can always decide to restrict that further if we think it makes sense). See #4299 & #3950. Also, I submitted a draft PR to update the jQuery browser support page at jquery/jquery.com#194 so you can have a look at our current plans. |
Thanks for your fast reply!
You're right. Those numbers will most likely drop the next few month but how much? MS pushes those updates more aggressively but as their ecosystem does not adapt, lots of people and companies block updates (at least those feature updates).
I only found this sentence regarding speed gains "That fits nicely with other legacy workarounds removals in 4.0, making jQuery faster especially for modern browsers.".
Thanks. Looking at those IE usage numbers (e.g. global IE 10 usage at 0.15% and IE 9 at 0.36%) I feel confirmed saying that Edge 18 should be supported a little longer (conditional how the usage numbers will change the next few month). |
Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments. Fixes jquerygh-4568
Have a look at my draft PR removing EdgeHTML support: #4573. Some improvements:
These are not extreme performance gains but it fits into our significant performance improvements in the selector module for jQuery 4.0 that were possible mainly by dropping lots of workarounds & support tests for legacy browsers. |
Also, note that some of the support tests removed in that PR are quite new; as people encounter more issues in IE that still exist in EdgeHTML, there's a potential of having more & more of them in the code. |
I personally would say its not possible to decide this right this second the current usage is much to high to drop and while i hope with the January and subsequent releases of edge that it will drop low enough that its fine to drop. No one can really say that right now. |
I would expect this update to not be blocked by companies differently than other Edge updates. But yeah, we'll have to wait and see :) |
@Krinkle What do you mean by that? The only thing I know about is IE mode which is essentially running a page with an IE 11 engine for sites on a special group policy list.
Also, note that for these upgrades a Windows 10 feature update was required which could be blocked by some companies for reasons other than not wanting a newer browser. The Chromium-based Edge will be delivered independently of Windows 10 feature updates so I expect fewer reasons to block. |
Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments & remove some obsolete workarounds. Fixes jquerygh-4568
Moved to the ROADMAP. We will keep an eye on the market share and drop EdgeHTML when we can. |
Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments & remove some obsolete workarounds. Fixes jquerygh-4568
Newest info:
|
Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments & remove some obsolete workarounds. Fixes jquerygh-4568
Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments & remove some obsolete workarounds. Fixes jquerygh-4568
Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments & remove some obsolete workarounds. Fixes jquerygh-4568
Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments & remove some obsolete workarounds. Fixes jquerygh-4568
Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments & remove some obsolete workarounds. Fixes jquerygh-4568
I'd like to reopen the discussion. I analyzed recent market share data and here are my conclusions:
Based on the above data & the fact that any support for Edge Legacy from Microsoft, including security fixes ends on March 9, 2021, I think we should drop support for that browser in jQuery 4.0. [1] I'm looking at weeks since usually the share is different during weekends so full weeks are less volatile than days or months. |
Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments & remove some obsolete workarounds. Fixes jquerygh-4568
PR: #4792 |
Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments & remove some obsolete workarounds. Fixes jquerygh-4568
Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments & remove some obsolete workarounds. Fixes jquerygh-4568
Drop support for Edge Legacy: the non-Chromium, EdgeHTML-based Microsoft Edge version. Also, restrict some workarounds that were applied unconditionally in all browsers to run only in IE now. This slightly increases the size but reduces the performance burden on modern browsers that don't need the workarounds. Also, clean up some comments & remove some obsolete workarounds. Fixes gh-4568 Closes gh-4792
Description
We've touch the topic a few time but I thought it'd be good to have any decision we make publicly available on GitHub.
Our browser support policy states we support "(Current - 1) and Current" versions of Edge. Right now it's Edge with EdgeHTML 17 & 18[1] but the new Chromium-based Edge version (v79[2]) is slated for a public release on January 15, 2020. Version 80 should follow a few weeks afterwards as they'd be following the Chromium release calendar. Technically speaking, that means jQuery will officially no longer support the legacy EdgeHTML-based Edge versions (as the two latest versions will be 79 & 80, both Chromium-based). However, I feel an engine switch is a big enough event that we should make any decisions about dropping support - even if technically we don't have to - more consciously. Therefore, I wanted to explain how I see the Edge situation after January 15, 2020.
The public release of the new Edge will probably not mean auto-updating everyone on Windows 10 to it but I expect the next Windows 10 "feature update" (which should be released around April/May 2020) will include it.
Microsoft still supports EdgeHTML 16, 17 & 18 on Enterprise & Education versions of Windows 10 so those OS lines may take a bit more to update (installing the Chromium-based Edge is supported in all of them, though). Microsoft will also still support EdgeHTML-based WebView in addition to the new Chromium-based one; there's no timeline to remove the old WebView. Some platforms, like Windows 10 on ARM or Xbox will not get the new Edge at the same time as most desktop Windows versions will.
Dropping EdgeHTML supports would bring us some advantages: it'd decrease the minified gzipped jQuery size by 230 bytes as of now and it'd allow us to restrict some workarounds needed by IE & Edge to just IE by a documentMode check. That fits nicely with other legacy workarounds removals in 4.0, making jQuery faster especially for modern browsers.
I'd keep testing jQuery 3.x with at least EdgeHTML 18 even though technically it will fall out of our supported browsers list soon.
[1]: For support purposes we use EdgeHTML versions rather than Edge app versions which are now at v44
[2]: Chromium-based Edge aligns its major version with Chromium, getting rid of current two separate versioning strategies for the app & its web engine
Link to test case
N/A
The text was updated successfully, but these errors were encountered: