How Chrome And Firefox Reaching Version 100 Can Break Websites, Developers Said

100 skulls”

Software versioning is when developers assign a version to their software product. Traditionally, earlier products use smaller numbers.

These versions act as unique identifiers. Within a given version number category, both major and minor, the numbers assigned increase corresponding to new developments in the software. As the developers add more features or revised their product, software versioning is often used to keep track of the progress, often as a form of a log.

Google Chrome and Mozilla Firefox are two popular web browsers.

And this time, they are rapidly approaching version 100.

While this should be considered a milestone, it could also be an event that translates to catastrophe.

According to the browser makers, reaching version 100 could actually break some websites.

This is possible due to how web browser's work when processing users' request for a web page.

When users of a browser wish to visit a website by typing the website's address into the URL bar, the browser will contact the server of that website, by sending its user-agent, along with a version number.

For example, a user-agent string can look like this: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36.

In this example, Chrome version 98 is sent with the user-agent.

But when the number reaches three digits, it could create all sorts of troubles.

According to Google and Mozilla that have conducted tests, they found that reaching version 100 can make websites experience issues.

"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," explained Mozilla in a post on its website.

Firefox and Chrome version 100 dates
If everything goes as planned, Google Chrome will reach version 100 on March 29, 2022, and Mozilla Firefox will reach version 100 on May 3, 2022.

While different web browsers can generate different formats for their user-agent string, but due to the way some user-agent parsing libraries work, they may cause issues when reading three-digit major version numbers.

Detailing the case, it can be described as compatibility issues for certain websites, in which the websites would consider the browsers unsupported.

When web browsers' user-agents reach version 100, the three digits being sent to websites can also introduce bugs.

For some people it may even bring back memories of the infamous Y2K bug, and why Microsoft skipped Windows 9.

To anticipate the issue, both browser makers are conducting more tests and experiments.

But if none of the strategies work until version 100 is due, both Google and Mozilla have plans to just freeze their user-agents at version 99 to prevent issues.

Chrome and Firefox aren't the only browsers facing this issue, as Microsoft Edge are also closing in to version 100.

At this time, on GitHub, a number of websites have also been testing whether they are accessible when browsers reach version 100, in which most of them are not.

Published: 
18/02/2022