On https://github.com/mozilla/pdf.js/wiki/Required-Browser-Features we mention required browser features for PDF.js, but I have the feeling that not all of them are necessary nowadays since we moved to using more modern features over the years. Moreover, as indicated in https://github.com/mozilla/pdf.js/issues/11950#issuecomment-637149085, some features may be missing such as range requests or `async/await`.

In short, we should verify which are still necessary and update the wiki page and the automated feature detection if possible.
document.createElement('canvas').getContext('2d').fillStyle = '#FFFFFF';
    return true;
  } catch (e) {
    return false;
  }
})();
var tests = [
  {
    id: 'canvas',
    name: 'CANVAS element is present',
    run: function () {
      if (isCanvasSupported) {
        return { output: 'Success', emulated: '' };
      } else {
        return { output: 'Failed', emulated: 'No' };
      }
    },
    impact: 'Critical',
    area: 'Core'
  },
  {
    id: 'get-literal',
    name: 'get-literal properties',
    run: function () {
      try {
        var Test = eval('var Test =  { get t() { return {}; } }; Test');
        Test.t.test = true;
        return { output: 'Success', emulated: '' };
      } catch (e) {
        return { output: 'Failed', emulated: 'No' };