11 ms·
JQuery 2.0 Drops Support for IE6/7/8; API-Compatible with jQuery 1.9.
- benatkin 14y agoThis is worst of both worlds. Compared to naming branches, they both encourage sites to unnecessarily break compatibility, and are held back from developing new features. They should give 1.9, 2.0, and 2.1 names, and make 2.0 mainline, and call 1.9 "compat" or something and encourage the conditional comments. Then, soon, they should start working on 2.1, which isn't API compatible with a version that's compatible with IE 6/7/8. The current plans for 2.1 are an awfully long time to wait for features that aren't available with IE 6/7/8, for apps and sites that need such things (and have a target audience that is ready for it).
- drags 14y agoI think this makes a lot of sense. One of our products is a B2B analytics tool that leverages a custom Chrome extension for one piece of functionality. As a result, all of our users are on Chrome. We already use chai for testing, which doesn't really work in older IE versions, and it'll be great to get the performance improvement from this change as well.
- wildster 14y agoI won't be using for a few a years but I am glad it is leading pushing people to CSS3 compliance.
- redslazer 14y agohuh?
- zaptheimpaler 14y agoIE 7 and 8 are still a huge chunk of the market, and they dont support CSS3.
- mpd 14y agoThe important metric is how much of a chunk they are to your business. You shouldn't care if some other site (or all other sites!) have significant traffic from such old browsers. Measure your traffic.
- mlreed328 14y agowat?
- jorgem 14y agoIsn't one of the reasons for jquery to "abstract away" the differences between browsers so I don't have to worry about it? Dropping support for popular browsers doesn't seem to help me much.
- mpd 14y agoDid you read the article? 1.9 will keep oldIE support, get minor updates, and be API-compatible with 2.0.
- mythz 14y agoFuck IE - they've done the same to us for years.
- elithrar 14y ago> Fuck IE - they've done the same to us for years. You're not "fucking IE" though, you're fucking the end-users; many of whom might be stuck on XP (and therefore IE8) without a huge choice. Corporate users, education users, those without the money to upgrade their OS/machine, etc.
- chris_wot 14y agoWhat is stopping those users from using Firefox?
- nakedgremlin 14y agoI love this product roadmap write up! Explanations littered with reasoning and also a code-level solution for something that won't be an issue until one year down the road. Hopefully that 93KB (un-Gzipped) beast can be knocked down a bit with 2.X.
- sampl 14y agoZepto is already a popular option for those who want jQuery features in a lightweight library. The API is essentially identical to jQuery, making it a drop-in replacement at a fraction of the size. zeptojs.com
- wycats 14y agoZepto is not drop in. Not even close.
- davidlumley 14y agoCould you expand on that at all? I realise that Zepto covers a (very) small subset of jQuery functions, but I thought that in a lot of use cases it would be an appropriate substitute?
- jarcoal 14y agoIt doesn't normalize DOM events, which is a big one for many people.
- mark_story 14y agoLast I checked zepto doesn't have support for any of the simulated selectors like `:checked`, `:input` and friends. If you use any of them, its not drop in.
- sebastianmck 14y agoIf you build zepto with experimental CSS selectors you can. https://github.com/madrobby/zepto/blob/master/src/selector.js https://github.com/madrobby/zepto/blob/master/src/selector.j...
- dspillett 14y agoThat doesn't list IE as a supported platform at all (not even the current IE9), so while you should be OK (if IE is now as close to compliant as MS claim it should just work) if you find problems in IE you might be on your own when it comes to researching and fixing them. See http://zeptojs.com/#platforms http://zeptojs.com/#platforms - specifically "we may add support for Internet Explorer 10 ... depending ..." and the lack of any mention of IE before 10.
- juddlyon 14y agoKudos to the jQuery team for taking a risk.
- zalew 14y agoit's not their risk, it's ours.
- davidlumley 14y agoIs it? There are other JavaScript libraries available, and 1.9 will still support IE.
- bentlegen 14y agoIt isn't your risk. You can continue to use jQuery 1.x.
- tambourine_man 14y agoSorry, but this is a disaster. Dropping support for IE6 may be OK, IE7 is a bit too soon, but IE8? I haven't tested my stuff on IE6 and IE7 for a long time, but I still do it on IE8 everyday. It was released in 2009! And it's decent enough, PNG transparencies, etc. jQuery's main raison d'être might have gone out the window.
- 7D8 14y ago"jQuery's main raison d'être might have gone out the window." - my thoughts, exactly!
- wycats 14y agoThe premise is that jQuery 1.9 and 2.0 are API-compatible, so you can do something like: <!--[if lt IE 9]> <script src="jquery-1.9.0.js"></script> <![endif]--> <!--[if gte IE 9]><!--> <script src="jquery-2.0.0.js"><</script> <!--<![endif]--> New browsers will get a lighter download and a faster runtime. oldIE will still work with all the hacks required to make it work.
- mkmcdonald 14y agoYou do realize that IE 10 dropped conditional comments, right?
- wycats 14y agoIf you look at the second conditional comment, it will not be parsed as a comment in browsers without conditional comment support. In other words, it will correctly use jQuery 2.0, like any other browser without conditional comment support.
- seldo 14y agoIt's a conditional conditional comment. I feel ill.
- deleted 14y ago
- mkmcdonald 14y agoI'll play the cynic here and try to diagnose why this is even being considered. jQuery is a very invasive API. Its goal is to steal all the work from the developer, and to "guarantee" what it deems to be "correct" input for a certain subset of browsers. This approach may ostensibly work, but inevitably falls apart, which leads to thousands of "bugs" being reported. Because the API has grown to be so massive, goalposts "must" be moved in order to create a lighter API. Once again, this is because of a design flaw. Goalposts will continue to be moved in cyclical fashion unless an alternative design is used. Fellow developers may denigrate me for it, but I will explain how this problem can be avoided. An API that tries to cater to everyone cannot and will not succeed. This is evidenced by the upcoming "fork". Conversely, an API that provides a set of tools to developers without catering can work in many environments. The burden is then placed upon the developer to choose which environments matter. As has been outlined by mobile developers, object inferences for IE 6 really are unnecessary for mobile Webkit environments. I have written here on this concept before, mostly on the topic of "graceful degradation". Browser specificity can and will kill a client-side API.
- AgentConundrum 14y agoSo does this mean that there will be ongoing development in the 1.9 line which will add new features available in the 2.0 line, or is this just the end of the line for IE <= 8? The blog seems to imply the latter, and that 1.9.x is only going to be used for bug/security updates, without new functionality. If that's true, this seems like an odd line in the sand for them to draw. IE9 isn't available before Win7, so it can't die until users upgrade their OS. According to StatCounter[1], IE8 still represents 13.78% of Worldwide visits (plus 1.4% for IE7; IE6 is just part of 'other' now), and 14.92% of North America (IE7; 1.79%). [1] http://gs.statcounter.com/#browser_version-ww-monthly-201206-201206-bar http://gs.statcounter.com/#browser_version-ww-monthly-201206...
- estel 14y agoIE9 is available for Vista too. It's not available more crucially for XP, but XP is EOL in April 2014, which is within the timeframe for 1.9.x and 2.x to remain API compatible.
- slexaxton 14y agoYou don't have to go from IE8 to IE9. You can go from IE8 to _any other browser_, and things will look up.
- baq 14y agoTell that to corporate IT.
- 51Cards 14y agoI don't know if I can get behind this or not. I understand their desire but I don't see this as a viable option just yet. I'm not so concerned with 2.0 and 1.9 as you can load the right one, but what about when 2.1 comes out? Are they going to back-port all the new features to 1.9.1? If not then I now have a big fragmentation issue if I rely on anything specific to 2.1. Don't forget that IE 8 is the last version XP will get and XP is going to be out there for a long time yet (sadly), especially in corporate environments. Effectively (as far as IE only environments are concerned) JQuery has just set a time limit on proper web access for an entire OS.
- yxhuvud 14y agoDon't be silly. There are alternative browsers. XP will not lack proper web access. Yes, I realize corporate settings can be inflexible enough that it won't happen in some corporations, but isn't it a good thing that corporate IT get more pressure to accomodate?
- wycats 14y agoThe cycle here is pretty long: jQuery 2.0 will be released in "Early 2013". For some time (probably at least 6 months if not longer), jQuery 1.9 and 2.x will be perfectly API compatible. That means that the conditional comment approach will work with very little downside. That gets us to summer or Fall 2013. At this point, there may be a release of jQuery 2.1. According to the blog post, it will probably contain few new features, and some speed improvements. It will almost certainly not break backwards API compatibility. At this point, you can upgrade to jQuery 2.1 for the speed improvements and simply not use the new features. The conditional comment approach will still work. That gets us to Spring 2014. At this point, Microsoft will EOL Windows XP. It's frankly hard for me to imagine more than a tiny number of Windows XP users using IE8 at this point. There was a lot of similar-sounding concern about IE6, which has mercifully vanished. IE8 was at 30% last November; it is now down to 15%. Even at this point, a jQuery 2.2 will likely not break API backwards compatibility. If IE8 clingers are more stubborn than we expect, we can always modify the strategy to be more aggressive about strict compatibility between the branches. Unfortunately, many of us are still fighting the last war, where the cutting edge (IE6->IE7) was plodding and the slow upgrading tail was huge. It's time that we acknowledged that the ecosystem has changed: the slow upgrading tail grows smaller all the time, as the cutting edge absorbs more of the mindless browser population. At the same time, the pace of the cutting edge grows faster and faster. We aren't quite there yet, but we should prepare for a future that is not a simple clone of the 2004-2008 era of browser development.
- ericb 14y agoSo if the market share report links below are in the ballpark, that is about 60% of IE's current 49% market share, or about 29% of all current browsers. This makes jquery 2 a non-starter. Even using 1.9 is suspect because the questionable decision making process here makes me think I will have more headaches in the future if I stick with jQuery. IE Market Share: http://bit.ly/LUhxlA http://bit.ly/LUhxlA IE Version Market Share: http://bit.ly/LUh9n2 http://bit.ly/LUh9n2
- chris_wot 14y agoInteresting way of looking at it. Except that is about 70% of browsers that will work with jquery 2.0. Puts it into perspective!
- nfriedly 14y agoI'm seeing a lot of hate here, but I think this is a good decision. I know what a pain it is to support older versions of IE because I was doing it before jQuery came onto the scene. They took a lot of that pain from us and hoisted it onto themselves, but we can't expect them to carry that burden forever. My company dropped IE 7 support months ago, I look forward to the day we can drop IE 8. We'll probably be suck with jQuery 1.9 for a while, but my side projects will start using 2.0 right away.
- thedeuce 14y agowow glad I didn't suggest migrating to jquery at work like I was about to. We just rolled out windows 7 and IE8...I know sad..tens of thousands of new workstations will probably be running it for a few more years :(
- codgercoder 14y agoHard to tell whether this will be good or bad; it does bring to mind some of the gyrations commercial software vendors have forced, from time to time.
- arcos 14y agoGood. IE 6-8 need to die a quick death and this is a way to help them along. It would be even better if devs got together and just dumped IE6-8 users to an incompatibility page.
- elclanrs 14y agoI think this is a good move from jQuery. Other popular software/services should do it too, and it'll be THE END of awful IE versions. I still do support IE8 but it is a pain in the ass to have to work around stupid bugs...pseudo elements are not well supported, font rendering is subpar, no css3 support, sloooow JavaScript engine...and I could go on for ever.
- dinkumthinkum 14y agoTo all the people upset about IE8 being the last browser supported on XP ... Isn't that Microsoft's problem rather than JQuery's? Apparently, Microsoft is not interested in providing a modern Web experience to their users. I don't really see the problem anyway. JQuery can move forward, and those that want to support IE8 have JQuery 1.9 and I'm sure there will be a cottage industry of people maintaining updates to support IE8 for the next 20 or 30 years. In the meantime, the rest of the world will be able to move on. Perhaps people could even use UserAgents to provide legacy experiences for the IE8 crowd ... multiple views ... what a concept.
- slig 14y agoBut it's not the last. Chrome, FF and Opera works. I can't understand all the whining here. Corporate world can run IE for it's shitty apps and a modern browser for whatever else. Also, that's their problem, not mine, jQuery's or the majority of people that have to download a bloated codebase to support a 3 year old, no standards browser.
- Uchikoma 14y agoFor all the "just upgrade" comments: Internal IT departments have no, no, no incentive to upgrade browsers. "Surfing the internet" is not a reason for IT departments to upgrade.
- dougbarrett 14y agoYup, a lot of web apps are using ancient versions of JS libraries, aren't compatible cross browser, and updates are few and far between. The issue is with enterprise apps, you really need to have a solid release schedule/plan. If you update an app and say "You are now forced to use a new browser to get the functionality of this." you will piss off a lot of people. It's much easier for the app developer to create poorly written hacks for the older js libraries, because they are less likely to force a browser requirement change. For enterprise apps, 1.9 is going to be around for an extremely long time.
- Uchikoma 14y agoIt's not for enterprise apps. If your startup is C2C, everything is fine, if your B2C or B2B your in trouble. If your B2X then you even do not have the leverage of a contract etc.
- mpd 14y agoThen they will be left in the past. It's unreasonable to expect me to hold my own product back because of lazy corp IT depts. Unless they are contributing more revenue than it takes to support them, screw them. For me at least, this is not remotely the case and I'm happy to leave them in the dust.
- Uchikoma 14y agoYou will not only be stuck with 1.9, but every other library you use that is based on jQuery - and most in my stack are - can't be upgraded as I assume those libraries will not play conservative but switch to 2.0 (and 2.1 next)
- grabastic 14y ago1.9 and 2.0 have the same api
- wildtype 14y agoSo i have to stick with jquery 1.9. People that ask me to create web page are IE user. Here, those who use firefox, opera, or safari can create their own web by themself.
- gouranga 14y agoThis is a retarded decision which I do not support. IE6 fine, IE7 fine but not IE8. IE8 is required for most corporate environments where they haven't killed of Windows XP yet. That is a surprisingly large amount of people. If this happens, we'll fork jQuery 1.9 and support it separately.
- sanswork 14y ago2 will come out in 2013 just a bit before Microsoft officially removes all support for XP. If your IT department hasn't made moves to upgrade everyone from XP by this point you have bigger issues to deal with than jQuery availability.
- gouranga 14y agoForced obsolescence doesn't mean people aren't still using it and it doesn't mean that because Microsoft stop patching that it's still vulnerable. Using it after April 2014 is not a problem. The NHS in the UK has over 1 million Windows XP deployments out there still on NHSnet which is a nationwide secure private WAN. A lot of software vendors have to support that. Your view is popular but naive.
- sanswork 14y agoOk how about this then. If you're still supporting an unsupported OS why do you care about using the cutting edge version of a JS library?
- karlshea 14y agoYeah this is exactly the thing. It's not like 1.9 or 1.8 or even 1.4 will stop working in the future when the new versions are released. I duplicated a project for a client today that needed a one-page form and a two-page admin section, and I have only a couple of hours of budget to make it work. They don't care that it's running jQuery 1.3.x. It's working fine.
- gouranga 14y ago
- dave1010uk 14y agoI wonder if the code would be a bit cleaner if they dropped IE9 and year-old Firefox / Chrome / Safari support too. That would allow them to use new stuff like XMLHttpRequest 2, ECMAScript 5 Strict Mode, Typed Arrays, requestAnimationFrame and CSS transitions / animations.
- rads 14y agoAll this talk about IE usage numbers led me to a website Microsoft made to say goodbye to IE6: http://www.ie6countdown.com/ http://www.ie6countdown.com/ The site reports that in the US, IE6 has 0.6% market share — relatively nothing. But look over at China: 22.4% of its 500 million Internet users still browse with IE6. Moving forward benefits the Internet as a whole, but the Chinese market is one instance where backward compatibility is important.
- formatjam 14y agoI grew up in China and this is def true. IE6 is still popular in China is because a lot of banks and governments website only works in IE(6). Since banks are state owned, they don't have incentive to compete to make their site better. I think the only hope is to wait till their computers die and when they install new windows IE6 will be gone.
- jetz 14y agoJquery does what most open source projects do not. That is providing a clear roadmap with 99% questions answered.
- nilliams 14y agoI think there's a key point that hasn't been mentioned yet, that there may just be no need to deliver JavaScript to IE 6-8 at all. A lot of smart devs are already taking a similar approach with CSS, serving up a minimal 'print' stylesheet for oldIE [1] [2]. - If you're using JS for progressive enhancement on an otherwise static site, e.g. form validation, pjax, image carousels, tabs, animations... simply drop that JS for 6-8. Form validation should just round-trip to the server as it has to do anyway, pages should just link normally, other visual enhancements can be dropped. That's the progressive enhancement way after all. - If you're trying to build a single-page web app for IE 6-8 and this is your reason for wanting jQuery to work, then you're going to find those browsers have JS engines that are incredibly slow and a JS-heavy web app for oldIE is not going to deliver a good user experience even if you get it to 'work'. I think frankly this is an unrealistic goal from the get-go. The pitiful speed of JS on these browsers is something that does seem to be often overlooked. If you absolutely have to push a single-page web app to a corporate customer stuck on oldIE, Chrome Frame is a very sensible option. This has served us well and we've yet to encounter a customer who complains, as long as you give them plenty of forewarning and explanation. It can be tied down to only trigger on your site, so sysadmins really have nothing to gripe about with respect to FUD about attack vectors etc. Anyway I'm not saying 'you definitely shouldn't be serving JS to oldIE' I'm just putting it out there as something to consider, as usual in this business there's no single answer. [1] http://css-tricks.com/ http://css-tricks.com/ (serves a print stylesheet for oldIE - possibly just IE6 I forget) [2] http://www.stuffandnonsense.co.uk/blog/about/universal_internet_explorer_6_css http://www.stuffandnonsense.co.uk/blog/about/universal_inter...
- drhowarddrfine 14y agoReason #32978 why no one should be using ANY version of IE - the world's worst browser.
- sageikosa 14y agoI was just thinking that it Netflix can be sued under ADA for not close-captioning material that didn't provide closed captioning, then someone is eventually going to sue someone for not providing access to a public website via the only browser they can use. The real losers will probably be the public libraries that provide Internet access, but don't have the resources to afford equipment or manpower to upgrade machines and browsers.
- andersnolsen 14y agoThere are so many reasons for using jQuery. Myself, I'm using it for a ton of reasons: speed up development, create more compact and readable code for myself and coworkers, enjoy the huge range of plugins, theming... you name it. Support for IE-ancient is not on my list. Actually I would love to see it gone, die, disappear, vanish. Even though jQuery handles most of my cross-browser issues I still have to test and worry, create workarounds and lots of additional code, consider it in my architecture, take care in the design and handle it in the application lifecycle. I have been looking for and at able framework that DON’T support old browsers. Thank you for not supporting IE-ancient in your 2.+ releases, I will continue using you jQuery!
- s0me0ne 14y agoDid anyone read the post? 1.9 will still support ie6/7/8, so just use that for compatibility. Let's move the web forward. I still use XP at home and don't care because I use Firefox. So if grandma/grandpa and corporate america don't get all the new bells and whistles, they are probably used to it, because they don't have rounded corners, text-shadow and box-shadow on everything anyway. They probably won't even know what they are missing on that HP/Dell POS. :p
- Fizzadar 14y agoGood stuff IMO; those who continue to insist on using IE<9 deserve a degraded experience. Those who are forced by their employers should lobby them to upgrade/move to FF/Chrome (and when they inevitably don't listen, then it's really too bad - but if said employer wants to use a service w/o old IE support it might force the upgrade). In a world where technology is developing at such a pace, it really is time we stopped worrying about old, poorly built bits of software.