In the coming weeks, Google’s Chrome browser, Mozilla’s Firefox browser, and Microsoft’s Edge browser will all hit version 100. These milestone releases may sound exciting, but they also have the potential to cause havoc across the internet. As developers for all three of the browsers warn, some websites might break when they attempt to parse user-agent strings containing a three-digit version number. Therefore, all three companies are now trying to mitigate the impact before version 100 rolls out later this year.
Chrome, Firefox, and Edge version 100 are coming
As Google explains, User-Agent (UA) is a string that browsers send in HTTP headers. It allows servers to identify the browser. When a browser hits version 100, the UA reports a three-digit version number instead of a two-digit number. Google says web developers use a variety of techniques for parsing these strings. Therein lies the problem.
Google provided a helpful explanation of the potential issues on its developer site:
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.
The good news is that many libraries improved their parsing logic when browsers moved to two-digit versions. As a result, three-digit version numbers shouldn’t be as problematic. But with that said, Chrome developers have been running experiments in the field that surfaced issues that need to be fixed. Now it’s a race against the clock.
As it stands, Google and Microsoft plan to release Chrome version 100 and Edge version 100 on March 29th, 2022. Meanwhile, Mozilla has scheduled the launch of Firefox version 100 for May 3rd, 2022. All three companies are running experiments and fixing issues to make their rollouts as smooth as possible. To date, the teams have discovered issues on a number of popular websites, including Yahoo, Bethesda, T-Mobile, and HBO Go.
Some of the issues that the developers have found have already been fixed. Others will surely be fixed ahead of the rollouts in the coming weeks. But there will undoubtedly be bugs that the developers can’t address before the respective version 100 launches.
In order to avoid breaking the internet, Google and Mozilla both have backup plans.
Google says that the backup plan for Chrome is to use a flag to freeze the major version number at 99. The real major version number will then appear in the minor version part of the UA string. Of course, the three-digit number in the minor version part of the string could also cause issues, which is why Google is running experiments on its backup plan as well.
Mozilla will take a different tack when it comes to post-launch bug fixes. The strategy that Mozilla employs will depend on the severity of the issue. Mozilla can hot fix broken websites with its site interventions mechanism. It’s also possible to freeze the major version number on Firefox for widespread problems.