Remove IE9/IE10 support and other legacy browser #829

Closed
obiot opened this Issue Nov 9, 2016 · 14 comments

Comments

Projects
None yet
3 participants
@obiot
Member

obiot commented Nov 9, 2016

That includes :

@obiot

This comment has been minimized.

Show comment
Hide comment
@obiot

obiot Nov 9, 2016

Member

nice list to start with, before proceeding, please have a quick review, and strike items that we need to keep, or add anything missing

Member

obiot commented Nov 9, 2016

nice list to start with, before proceeding, please have a quick review, and strike items that we need to keep, or add anything missing

@parasyte

This comment has been minimized.

Show comment
Hide comment
@parasyte

parasyte Dec 18, 2016

Member

I was just looking over the Edge release history. Microsoft has already released 3 major (public) versions of the new browser. And since IE11 hasn't been updated in 3 years, I vote we drop support for it entirely.

For further evidence that retaining IE11 support is a bad idea, I point to Microsoft's IE End of Support article, which claims IE11 will stick around and remain supported for the lifetime of the OS on which it is installed. IE11 ships with Windows 10, which itself has a support lifetime lasting until at least October 2020.

We cannot hold ourselves back for the next 4 years because IE11. It's time to drop this piece of crap like the ... piece of crap it is!

Besides, if anyone really wants to use melonJS on IE11, they can just use an older version of melonJS...

Member

parasyte commented Dec 18, 2016

I was just looking over the Edge release history. Microsoft has already released 3 major (public) versions of the new browser. And since IE11 hasn't been updated in 3 years, I vote we drop support for it entirely.

For further evidence that retaining IE11 support is a bad idea, I point to Microsoft's IE End of Support article, which claims IE11 will stick around and remain supported for the lifetime of the OS on which it is installed. IE11 ships with Windows 10, which itself has a support lifetime lasting until at least October 2020.

We cannot hold ourselves back for the next 4 years because IE11. It's time to drop this piece of crap like the ... piece of crap it is!

Besides, if anyone really wants to use melonJS on IE11, they can just use an older version of melonJS...

@parasyte

This comment has been minimized.

Show comment
Hide comment
@parasyte

parasyte Dec 18, 2016

Member

By the way, Android browser is dead (replaced by Chrome) and Opera Mini is a server-side browser, much like Amazon Silk. We shouldn't care about those platforms; they can't run games anyway. For more info, see: https://dev.opera.com/articles/opera-mini-and-javascript/

On iOS, Opera Mini does have an option called "Turbo Mode" which just changes the server-side rendering into a GUI for iOS WebKit. See: https://dev.opera.com/blog/opera-mini-8-for-ios/#turbo-mode So it has the same feature footprint as the native Mobile Safari.

Opera Mobile is a completely different browser altogether, and is powered by Blink and v8, the same rendering engine and JavaScript engine used in Chrome and Desktop Opera... And it is not supported on iOS because Apple's App Store guidelines explicitly disallows these engines. You can get Opera Mobile on Android and Windows Phone.

Member

parasyte commented Dec 18, 2016

By the way, Android browser is dead (replaced by Chrome) and Opera Mini is a server-side browser, much like Amazon Silk. We shouldn't care about those platforms; they can't run games anyway. For more info, see: https://dev.opera.com/articles/opera-mini-and-javascript/

On iOS, Opera Mini does have an option called "Turbo Mode" which just changes the server-side rendering into a GUI for iOS WebKit. See: https://dev.opera.com/blog/opera-mini-8-for-ios/#turbo-mode So it has the same feature footprint as the native Mobile Safari.

Opera Mobile is a completely different browser altogether, and is powered by Blink and v8, the same rendering engine and JavaScript engine used in Chrome and Desktop Opera... And it is not supported on iOS because Apple's App Store guidelines explicitly disallows these engines. You can get Opera Mobile on Android and Windows Phone.

@obiot

This comment has been minimized.

Show comment
Hide comment
@obiot

obiot Dec 19, 2016

Member

great, so let's drop all these shit for the next major release (aka 5.0), and for those that still need compatiblity with older platforms, they can still use any es5 shim :
https://github.com/es-shims/es5-shim

Member

obiot commented Dec 19, 2016

great, so let's drop all these shit for the next major release (aka 5.0), and for those that still need compatiblity with older platforms, they can still use any es5 shim :
https://github.com/es-shims/es5-shim

@obiot

This comment has been minimized.

Show comment
Hide comment
@obiot

obiot Dec 19, 2016

Member

would be a nice anouncement on the blog by the way, 2017 we drop the dead bodies :)

Member

obiot commented Dec 19, 2016

would be a nice anouncement on the blog by the way, 2017 we drop the dead bodies :)

@parasyte

This comment has been minimized.

Show comment
Hide comment
@parasyte

parasyte Dec 19, 2016

Member

\o/

Member

parasyte commented Dec 19, 2016

\o/

@obiot obiot added this to the 5.0.0 milestone Dec 19, 2016

@obiot

This comment has been minimized.

Show comment
Hide comment
@obiot

obiot Dec 19, 2016

Member

we need to get this up-to-date as well, with the minimum version we then support :
http://melonjs.org/#compatibility

Member

obiot commented Dec 19, 2016

we need to get this up-to-date as well, with the minimum version we then support :
http://melonjs.org/#compatibility

@obiot

This comment has been minimized.

Show comment
Hide comment
@obiot

obiot Jan 19, 2017

Member

I spent some time looking at what would be our new browser version minimum requirements, and it then gives the following table :
image

as a reminder, the previous requirement was :

Browser Version Status
Chrome 12+
Safari 5.0+
Firefox 4+
Opera 11.00+
IE 9+
CocoonJS 2.0+
Chrome for Mobile 18
iOS Safari 6+

Member

obiot commented Jan 19, 2017

I spent some time looking at what would be our new browser version minimum requirements, and it then gives the following table :
image

as a reminder, the previous requirement was :

Browser Version Status
Chrome 12+
Safari 5.0+
Firefox 4+
Opera 11.00+
IE 9+
CocoonJS 2.0+
Chrome for Mobile 18
iOS Safari 6+

@parasyte

This comment has been minimized.

Show comment
Hide comment
@obiot

This comment has been minimized.

Show comment
Hide comment
@obiot

obiot Feb 13, 2017

Member

18 to 55 seems to be quite a jump for chrome mobile... I wonder if did not check the wrong chrome

Member

obiot commented Feb 13, 2017

18 to 55 seems to be quite a jump for chrome mobile... I wonder if did not check the wrong chrome

@parasyte

This comment has been minimized.

Show comment
Hide comment
@parasyte

parasyte Feb 13, 2017

Member

PointerEvent is a new standard, added in Chrome 55. Desktop Chrome and Mobile Chrome are released with the same version numbers.

Member

parasyte commented Feb 13, 2017

PointerEvent is a new standard, added in Chrome 55. Desktop Chrome and Mobile Chrome are released with the same version numbers.

@obiot obiot referenced this issue Feb 15, 2017

Closed

Duplicate mousewheel events #867

3 of 3 tasks complete

@obiot obiot referenced this issue in melonjs/boilerplate Mar 2, 2017

Open

include es5-shim in the boilerplate #24

@kibertoad

This comment has been minimized.

Show comment
Hide comment
@kibertoad

kibertoad Jul 2, 2017

Contributor

I can lend a hand with this. I presume we'd want unit tests running at least on Chrome and Firefox to make sure we didn't get regressions; #890 adds Chrome execution, Firefox would be easy too.

Probably a good place to start would be to add code coverage reports and check what places that use obsolete code are not under test, start with tests, proceed with replacement.

Comments?

Contributor

kibertoad commented Jul 2, 2017

I can lend a hand with this. I presume we'd want unit tests running at least on Chrome and Firefox to make sure we didn't get regressions; #890 adds Chrome execution, Firefox would be easy too.

Probably a good place to start would be to add code coverage reports and check what places that use obsolete code are not under test, start with tests, proceed with replacement.

Comments?

@obiot

This comment has been minimized.

Show comment
Hide comment
@obiot

obiot Jul 4, 2017

Member

that would be great, help is always appreciated/awesome :)

Probably they could be added in this test unit :
https://github.com/melonjs/melonJS/blob/master/tests/spec/shim-spec.js

i'm not sure though about the browser and browser version to use, as regression are more likely to happen WHEN using a polyfill ?

Member

obiot commented Jul 4, 2017

that would be great, help is always appreciated/awesome :)

Probably they could be added in this test unit :
https://github.com/melonjs/melonJS/blob/master/tests/spec/shim-spec.js

i'm not sure though about the browser and browser version to use, as regression are more likely to happen WHEN using a polyfill ?

@obiot

This comment has been minimized.

Show comment
Hide comment
@obiot

obiot Jul 17, 2017

Member

ticket closed. I doubt it's really useful actually, but I also added some test coverage for these es5 polyfills we removed.

Member

obiot commented Jul 17, 2017

ticket closed. I doubt it's really useful actually, but I also added some test coverage for these es5 polyfills we removed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment