我们刚刚对 Discourse 的 Sass 编译器流水线进行了重大升级,从已弃用的 libsass 迁移到了持续维护的 Dart Sass。
这是一次无缝迁移,升级后您的网站不应发生任何变化。 在极少数情况下如果出现问题,请继续阅读。
致开发者 & 设计师的说明
在迁移过程中,我们审查了所有开源 插件 和 主题,确保它们在新流水线中仍能正常工作,并对任何编译警告进行了修改/提交 PR 以进行处理。
版本详情
此次更新使我们
从:
- sassc 2.0.1(2019 年 2 月)
- libsass 3.5.2(2018 年 5 月)
变为:
- dart-sass 1.58(2023 年 1 月)
此更新应用了以下弃用变更:
这些破坏性变更即将推出或最近已发布:
函数对允许的单位更加严格,自 Dart Sass 1.32.0 起生效。
带有无效组合器的选择器将无效,自 Dart Sass 1.54.0 起生效。
/ 正从除法运算变为列表分隔符,自 Dart Sass 1.33.0 起生效。
解析 @-moz-document 的特殊语法将无效,自 Dart Sass 1.7.2 起生效。
复合选择器无法被扩展,在 Dart Sass 1.0.0 和 Ruby Sass 4.0.0 中已如此规定。
常见问题解答
此次升级没有造成硬性破坏性变更,因此 99% 的主题都能正常工作。
如果您在未使用任何自定义主题的情况下运行 Discourse,则没有任何变化。下次您升级(或由您的托管公司升级)时,这将在后台自动完成。
如果您使用的是 CDCK 托管服务,并且使用了我们为您开发的主题,我们已经使其与 Dart Sass 兼容。
如果您使用的是 official Customization > Theme 和/或许多 Customization > Theme component,我们已经使它们与新 Sass 版本兼容。
如果您的自定义主题出现故障,请与我们分享,我们将协助修复。