Developer surveys often highlight that a significant amount of developer pain is caused not by missing features, but by lack of interoperability in existing features.
Normally, the level of interoperability grows over time. However, each browser team has to operate within different levels of limited resources, and all teams have many more things to do than they can actually accomplish. Furthermore, interoperability problems are always discovered as bugs are uncovered, specification gaps are identified, and so on. This means that, in practice, interoperability fixes can frequently take a long time to be prioritized, leaving developers in a difficult position.
Last year, Igalia helped spin up a collaborative project code-named “Compat2021”. This effort asked browser teams to pick, and collectively strive for, prioritization of some specific interoperability goals. We chose five areas to focus on and provided rationale for each.
At the time we chose this list, the interoperability of these five areas had long since been identified as lacking. All browsers scored only about 65-70% on test of those areas. Chrome set to work on Compat2021 fixes early, followed shortly after by Firefox. By the time the project was actually announced, the canary builds of both browsers were already in the low 80%s. The WebKit team started a few months later, and by our mid-year update in June was only slightly behind the others with an 82% interoperability score.
We’re pleased to announce that as of the time of this writing, all three engines, in stable releases, are reporting over 90% scores on Compat2021, and the WebKit experimental branch has now slightly passed the interoperability score held by Firefox nightly.
We are so, so pleased to have been a significant factor in both the creation of this effort and the work done to achieve these milestones. We’re now collaborating with all of the vendors to set targets for 2022, so stay tuned!