GNOME 45将打破扩展向后兼容性

GNOME 45版本将影响您最喜欢的扩展,扩展开发者需要移植他们的扩展才能使其工作。

这一举措承诺改善代码组织和与现代JavaScript实践的兼容性,但它也会带来一些后果,可能会影响您的GNOME体验。

最初设计的目的是增加网页的互动性,但最初并没有配置为处理分散在多个文件中的大型应用程序。这一限制导致了在各种JavaScript环境中开发自定义导入系统,包括GNOME的GJS。因此,开发人员和工具在不同的JavaScript生态系统之间转换时面临挑战。

然而,随着ECMAScript 6(ES6)模块标准化,决定性的时刻在2015年到来。这些模块提供了一种定义良好、得到广泛支持的语法,所有主要的JavaScript引擎都采用这种语法。尽管GJS在2021年开始支持ES模块,但将整个GNOME Shell移植到这个新系统上是一项艰巨的任务。

模块与传统导入