I've mainly been focusing on improvements for developers in this release cycle.
We've recently migrated to the Yarn package manager within core. In the past, we've noticed a fair number of issues around npm and how it behaves across platforms, and sometimes just on different days!
[RANT] For example, there was a recurring issue for me where npm
couldn't resolve "chokidar", which is absolute nonsense as the package was installed and present in
node_modules. Furthermore, Flarum CLI has played tricks on us when installing with
npm i -g in the past, with
yarn add --global or
yarn dlx being fine.
One of the requirements to switch to Yarn was Plug'n'Play package manager support. Newer versions of Yarn (2+) use PnP by default in new projects, which had some incompatibilities with our webpack configuration. This was fixed in . We don't use PnP in core at the moment, and don't plan to for a while yet (see flarum/flarum-webpack-config 14). flarum/core 3155
Please note that you won't be able to update to v2 of our Webpack config until Flarum 1.2 releases, as we have upgraded to Webpack 5 thanks to @askvortsov! Webpack 4 extensions will continue working alongside newer Webpack 5 extensions, for the near future.
Alongside the Yarn migration, I've also been working on the usual Typescript conversions, accessibility improvements and the occasional bug fix:
- [A11Y] Improve accessibility for discussion reply count on post stream flarum/core 3090
- chore: better typings for DiscussionListState flarum/core 3132
- chore: rewrite SubtreeRetainer into Typescript flarum/core 3137
- fix: issue with CSS styles when in-between whole pixel values for viewport width flarum/core 3139
- feat: allow use of any tag in flarum/core 3147