Skip to content

Wdfn 627 eliminate unneeded polyfills

Before making a pull request

  • Run all linters (make lint)
  • Run all tests (make test)
  • Update the changelog appropriately

Description

Since Internet Explorer (IE) no longer accesses the browser-side JavaScript code, the polyfills required to make certain features functional in IE are no longer needed. In this task, I first searched the code for any usage of functions for which we had previously included polyfills. I then removed the polyfills that no longer had any related functions. Then I went through the remaining polyfills and checked on https://caniuse.com/ to see if the related functions were now supported by the browsers in our use set (details are in a PDF in the Jira task). If the related functions had browser support, I removed the associated polyfill. In the end, no polyfills were needed. I then attempted to test the polyfill-less code in as many browsers as possible, these included Ubuntu Chrome, Firefox, Chromium, I attempted to use Browserstack to test further, with mixed results. None of the Mac or iOS systems would connect to the application (this was with and without the polyfills) so those remain untested. Most of the systems that did connect worked as expected. The ones that didn't, such as Safari for Windows, had issues with and without the polyfill, so I'm not sure if what I was seeing was a reflection of reality or an issue with Browserstack. In summary, I feel fairly confident based on the tests and the reports in https://caniuse.com/, but not 100% that all the polyfills will not be missed.

Update -- After Mary reminded me, I checked on the timezone support package. According to the package's web page, https://www.npmjs.com/package/date-time-format-timezone, we should use this table to check compatibility: http://kangax.github.io/compat-table/esintl/ . That table indicates that all but one rather obscure browser supports all the methods that this package targeted. So. I removed that too.

After making a pull request

  • If appropriate, put the link to the PR in the JIRA ticket
  • Assign someone to review unless the change is trivial
Edited by Briggs, Aaron Shane

Merge request reports