Upgrade from preview 1
Preview 2 does not have any database schema changes. But I did update widget’s unique identifier from its type to its folder name. Therefore, before you run the preview 2 code, first go to Admin > Widgets and delete your widgets from the widget areas. Then, run preview 2 and manually add your widgets back. Through refactoring the widget’s code, I realized there would be even more refactoring coming to widgets, so using type (namespace + assembly) of a widget is not good idea to identify a widget. Using its folder name is more less likely to change, but I’ll see.
Image processing update
There have been a few changes related to image processing. I’ll write separate posts to touch on these. I switched from Magick.NET to ImageSharp for better performance. Each uploaded image, depending on its dimension, now could have up to 4 resized images, small, medium, medium large and large, in addition to the original which is always saved. For a gif, depending on its dimension, it could have a small resized version. Responsive Images has also been implemented to display the best image based on the client’s screen size and resolution.
Upgrade CKEditor5 to latest
I upgraded CKEditor5 to v12. I was two versions behind. Probably the most notable change is now you can copy paste your Microsoft Word document content directly into the editor. The editor knows what content it can accept and will leave the rest as plain text. I tried a complex resume doc and was impressed by how much the editor could take in.
I support 996.icu
While this project is still licensed under Apache 2.0, I did update the licensing section of the README file to show my support for the 996.icu campaign. Software developers in Mainland China created a 996.icu repo and started a campaign against the 996 working hour system implemented by certain high tech companies, like Huawei and Alibaba, in Mainland China. Personally I think working 72hr-week is inhumane, on top of that I heard these overtime hours are without pay, that is not only wrong it is against the law. I can understand to rush a project out the door sometimes overtime is necessary, but doing it once in a while may be OK doing it persistently can severely impact your health. I have a very bad back to prove it. While it's easy for me to say that your health is the most important thing and just quit if you company treats you like a slave, everyone's situation may be different. Especially when the job market is not good and you have a family to support, the choice between doing 996 or quit is not a so easy one. I support my fellow software developers to defend their labor rights against unlawful working conditions. As such any entity, whether individual or corporation, that is in violation of the local labor laws against their employees shall not use my repo.