Work in Progress for version 2021.2.1
I apologise for the amount of deep development topics in this changelog. I try to describe the changes in terms of their high-level impact and usability, but during the making of this version there were so many silly gotchas, that to document everything I had to resort to tech speak.
- npm scripts: The
copy:docsscript was wrong and was not copying root files. Patched many of those scripts.
- Spectre.css: Browserify was borking the import from
node_modules/, so I made an extra
copy:spectre-icons-cssscript that copies it to the default theme directory, and patched the SCSS code to import from there.
- NPM flamefest while updating: 😤 A gazillion errors happened when trying to bring dependencies up to date...
- Zine: The old masonry grid was buggy. Unfortunately Firefox is yet to support
grid-template-rows: masonry;. So I'm using a fallback to CSS Grid, and left the masonry grid template in place. I expect support for that CSS will arrive shortly since it is already possible to use it in Firefox if you switch some internal flags in
- CSP: Had to change the CSP for the add-on to support
Function(). Mozilla will probably complain and reject the add-on because of that. I might need to revert this and remove some of the gathering features.
- SSB: My SSB abstraction library uses
ssb-client. Unfortunately, browserify is non-deterministic and was failing to build a working
ssb.js. The only way to make it work, was to fork
ssb-client-for-browserand remove all MultiServer plugins except the WebSockets one.