It won’t be long until Google, Mozilla, and Microsoft’s web browsers celebrate a major milestone by reaching their hundredth versions, but the festivities could be tainted by a curious issue whereby websites can no longer identify them correctly, resulting in broken features and other unwanted issues.
As explained in a post on Mozilla Hacks by Karl Dubost (Mozilla engineering manager), Chris Peterson (Firefox for Android dev), and Ali Beyad (Google engineer), the problem lies with Chrome, Firefox, and Edge’s version numbers going from double to triple digits, resulting in more complex user-agent strings that select websites apparently can’t cope with. The list of websites with identified issues isn’t very long yet, but it does include some notable destinations that include Yahoo and Bethesda.net, the latter of which detects version 100 of Firefox and Chrome as unsupported browsers.
While Google, Mozilla, and Microsoft continues to make headway in ensuring that the transition goes as smoothly as possible, developers are being urged to switch on special flags that make Chrome, Firefox, and Edge identify as version 100 and test how their sites react to the switch to three digits. Mozilla and Google also have backups plans in place for freezing their browsers at version 99 in the event that version 100 causes major, widespread issues.
Version 100 in Chrome and Firefox (Mozilla Hacks)
- Major version 100 is a big milestone for both Chrome and Firefox. It also has the potential to cause breakage on websites as we move from a two-digit to a three-digit version number. Web developers use all kinds of techniques for parsing these strings, from custom code to using User-Agent parsing libraries, which can then be used to determine the corresponding processing logic. The User-Agent and any other version reporting mechanisms will soon report a three-digit version number.
- When browsers first reached version 10 a little over 12 years ago, many issues were discovered with User-Agent parsing libraries as the major version number went from one digit to two.
- Without a single specification to follow, different browsers have different formats for the User-Agent string, and site-specific User-Agent parsing. It’s possible that some parsing libraries may have hard-coded assumptions or bugs that don’t take into account three-digit major version numbers. Many libraries improved the parsing logic when browsers moved to two-digit version numbers, so hitting the three-digit milestone is expected to cause fewer problems. Mike Taylor, an engineer on the Chrome team, has done a survey of common UA parsing libraries which didn’t uncover any issues. Running Chrome experiments in the field has surfaced some issues, which are being worked on.