itowns icon indicating copy to clipboard operation
itowns copied to clipboard

[Proposal - Requirements] Formalize web browsers requirements for iTowns

Open Desplandis opened this issue 1 year ago • 5 comments

Context

There is currently no documented web browsers requirements for iTowns in the whole repository.

The closest to a documentation is our configuration file of the babel compiler which states that we are theoretically targeting the oldest browsers possible to be ES5 compatible. That means that we are supporting browsers a decade old (e.g. IE11)!

This causes a number of issues:

  • we have no guarantee that iTowns indeed works on those old platforms
  • the distributed code is unreadable due to code transformations by babel
  • the distributed code size is large due to polyfills for unsupported constructs on those platforms (even for constructs well-supported for years by mainstream browsers).

Those issues will be exacerbated if we do not take some actions.

Discussion

@iTowns/product-owners @iTowns/core-devs I propose that we discuss in this issue the minimum targets that we should support with iTowns.

Note that three will drop support of webgl1 at the end of the month, which means that all our targets should at least support webgl2, Safari being the last mainstream browser to add support for webgl2 circa 2021.

A proposed solution is too only support the defaults target given by browserlist, that is the last two versions of all mainstream browsers (> 0.5% usage) + Firefox ESR at the date of release.

Actions

  • Documents the requirements (README.md, website, ...)
  • Implements the proposal (see #2252)

Desplandis avatar Jan 09 '24 13:01 Desplandis

Hi, thanks for the proposal.

The defaults target sounds good to me.

LoicUTC avatar Jan 23 '24 09:01 LoicUTC

A proposed solution is too only support the defaults target given by browserlist, that is the last two versions of all mainstream browsers (> 0.5% usage) + Firefox ESR at the date of release.

Agreed with that target too

jailln avatar Jan 23 '24 10:01 jailln

That's a good reflection, it'll close this PR #1231

gchoqueux avatar Jan 23 '24 12:01 gchoqueux

Got some inputs from IGN's "Géoportail", they officially support versions of Firefox, Chrome, Edge and Safari no older than a year.

Waiting from inputs from IGN's "Géoplateforme" but I think we can proceed with this proposal and implement it! =)

Given the webgl2 constraint and agreed defaults target, our target will be: https://browsersl.ist/#q=defaults+and+fully+supports+webgl2

Desplandis avatar Jan 24 '24 10:01 Desplandis

Proposal validated on IGN's side.

It seems that everyone agree with this proposal, I think we could move forward!

Desplandis avatar Feb 02 '24 14:02 Desplandis