It has been always necessary to fake the user agent for browsers. Too many sites would complain otherwise.
25 years ago it was necessary to pretend to be MSIE. Then IceBrowser, a Java based browser, was doing that. But one of the customers for the company asked to provide a way to test for IceBrowser as the browser did not emulated MSIE properly in some cases so they wanted to provide a workaround. So a JavaScript-based test was provided. Then in couple of years a common JS library for browser detection had started to include that test and the test has to be disabled.
Then there was a story about Vivaldi browser from 5 years ago. Due to a bug in keyboard-only navigation there was an issue on google.com and apparently Google has implemented a workaround based on user-agent sniffing before the bug was fixed. Then, when Vivaldi fixed the issue, the fix broke google.com as Google was unaware that it should disable their workaround. That was the last straw forcing Vivaldi to fake the user agent by default.
25 years ago it was necessary to pretend to be MSIE. Then IceBrowser, a Java based browser, was doing that. But one of the customers for the company asked to provide a way to test for IceBrowser as the browser did not emulated MSIE properly in some cases so they wanted to provide a workaround. So a JavaScript-based test was provided. Then in couple of years a common JS library for browser detection had started to include that test and the test has to be disabled.
Then there was a story about Vivaldi browser from 5 years ago. Due to a bug in keyboard-only navigation there was an issue on google.com and apparently Google has implemented a workaround based on user-agent sniffing before the bug was fixed. Then, when Vivaldi fixed the issue, the fix broke google.com as Google was unaware that it should disable their workaround. That was the last straw forcing Vivaldi to fake the user agent by default.