From: Dan Brown Date: Sun, 23 Feb 2025 17:49:19 +0000 (+0000) Subject: Completed core v25.02 post writing X-Git-Url: http://source.bookstackapp.com/website/commitdiff_plain/092bbec17e2d708473c6ae2af9928e3271a73c21 Completed core v25.02 post writing Not yet checked --- diff --git a/content/blog/2025/bookstack-release-v25-02.md b/content/blog/2025/bookstack-release-v25-02.md index 0d683ea..401b414 100644 --- a/content/blog/2025/bookstack-release-v25-02.md +++ b/content/blog/2025/bookstack-release-v25-02.md @@ -9,7 +9,9 @@ slug = "bookstack-release-v25-02" draft = false +++ -TODO +Today we release BookStack v25.02! This aimed to be a maintenance +release to upgrade the core framework, but it also introduces +automatic sorting along with some other enhancements. * [Update instructions](/docs/admin/updates) * [GitHub release page](https://github.com/BookStackApp/BookStack/releases/tag/v25.02) @@ -18,16 +20,42 @@ TODO TODO - Copy to updates page -- **PHP Version Requirement Change** - The minimum supported PHP version has changed from PHP 8.0.2 to PHP 8.1 in this release. Please see our ["Updating PHP & Composer" documentation page](/docs/admin/updating-php/#updating-php) for guidance on updating PHP. +- **PHP Version Requirement Change** - The minimum supported PHP version has changed from PHP 8.0.2 to PHP 8.1 in this release. Please see our ["Updating PHP & Composer" documentation page](/docs/admin/updating-php/#updating-php) for guidance on updating PHP where needed. - **Sorting** - Basic sort order changes for chapters and pages will no longer affect the "updated" time for these items. Wider changes during sorting (moving to a new parent) will still increment the "updated" time. +- **Theme System** - A `public/` folder within an active theme folder will now be exposed for public access. If for some reason you already have such a folder that you don't want exposed, rename it before upgrading. TODO - Video -### Feature +### Automatic Sorting with Sort Rules -TODO +It's now possible to automatically sort pages & chapters within a book! +This is done using "Sort Rules" which are centrally managed via a new "Sorting" +page in the application settings: +TODO - Image of sorting settings + +Within a sort rule, you can configure a range of sort operations which will be applied +in the configured order: + +TODO - Image of sort operations + +Created rules can then be assigned to books via an option in the "Sort" +view for a book: + +TODO - book sort option + +It's also possible to configure a default sort rule to assign to any new +created books. This is also part of the new "Sorting" settings page. + +These sort rules will then automatically run on events which may alter the sort order, +like page/chapter create/update. +The operations within a sort rule can be updated as needed, and upon save +any assigned books will be automatically sorted to use the new order. + +For those that want to assign a sort rule to their existing books, [a new +command](/docs/admin/commands/#assign-sort-rule) has been added to make this easy. +This has various options for batch assigning sort rules to books. ### Search Indexing Improvements @@ -47,9 +75,49 @@ Lastly, «giullemets» are now considered as punctuation in the same manner as o Note that to receive this improvements for existing content, you'll need to [regenerate the search index](/docs/admin/commands/#regenerate-the-search-index) after upgrading. + +### Improvements for the New WYSIWYG Editor + +The new alpha WYSIWYG editor, [introduced in v24.10](/blog/bookstack-release-v24-10/#new-alpha-wysiwyg-editor-option), received another bunch of additions of fixes for this release: + +- Added custom color select/management to color picker controls. +- Added color pickers to relevant form fields. +- Added table caption support. +- Added src conversions for YouTube urls via media insert. +- Added additional test helpers and documentation. +- Fixed issues with auto-url on space/enter, when at the end of a line. +- Fixed error importing code blocks in some cases. + +The editor is now pretty much feature complete compared to the existing WYSIWYG editor, +but I want to develop a few key area into better stability before moving it into beta. + +### Public Files via Theme System + +A common challenge for BookStack customization was how to expose files that need +to be loaded via the browser, like CSS and JavaScript files. + +While there were some methods to work around this, BookStack now provides a +direct way using the theme system via simply creating a `public` directory +within your theme folder. +Any files within this folder will then be served at the `theme//` +location of your BookStack instance. + +For full details, see the added ["Publicly Accessible Files"](https://github.com/BookStackApp/BookStack/blob/development/dev/docs/visual-theme-system.md#publicly-accessible-files) section of the visual theme system documentation. + +### Framework Upgrade + +The core aim for this release was to update the underlying framework. +We updated from Laravel 10 to Laravel 11, which also required a change +of our minimum required PHP version from PHP 8.1 to PHP 8.2. +This is something we generally do yearly to ensure we're staying on +supported versions of the software we depend on. +Hopefully there'll be no negative impact outside of some users needing to update +their installed PHP version. + ### Translations -TODO +A big thanks to the following ingenious interlingual interpreters that have helped +to translate BookStack since our last feature release: - User - *Lang - 4580 words* @@ -57,13 +125,33 @@ TODO ### Next Steps -TODO +We have the 10 year anniversary of BookStack coming up later this year. +I may stretch out this release cycle, to work on a chunkier feature, but I'm +decided on that yet. + +I will continue to work on the new WYSIWYG editor with the aim to get +it in more of a "beta" state for the next feature release. +If I do stretch out the release cycle, I'll look to get editor fixes & enhancements +out via patch releases instead of waiting for a full release. ### Full List of Changes **Released in v25.02** -TODO +* Added sort rules with automatic book sorting. ([#5457](https://github.com/BookStackApp/BookStack/pull/5457), [#2065](https://github.com/BookStackApp/BookStack/issues/2065)) +* Added method to serve public files via the theme system. ([#5405](https://github.com/BookStackApp/BookStack/pull/5405), [#3904](https://github.com/BookStackApp/BookStack/issues/3904)) +* Updated app framework to Laravel 11. ([#5400](https://github.com/BookStackApp/BookStack/pull/5400)) +* Updated codebase minimum PHP version from 8.1 to 8.2. ([#5397](https://github.com/BookStackApp/BookStack/issues/5397)) +* Updated codebase to address various PHP 8.4 deprecations. ([#5491](https://github.com/BookStackApp/BookStack/pull/5491)) +* Updated new WYSIWYG editor with a range of fixes. ([#5415](https://github.com/BookStackApp/BookStack/pull/5415)) +* Updated search indexing to handle guillemets. Thanks to [@inv-hareesh](https://github.com/BookStackApp/BookStack/pull/5475). ([#5475](https://github.com/BookStackApp/BookStack/pull/5475), [#5471](https://github.com/BookStackApp/BookStack/issues/5471)) +* Updated search indexing with advanced tokenization along with hyphen handling. ([#5488](https://github.com/BookStackApp/BookStack/pull/5488), [#2095](https://github.com/BookStackApp/BookStack/issues/2095)) +* Updated sort handling to not increment the updated date for sorted content. ([#1777](https://github.com/BookStackApp/BookStack/issues/1777)) +* Updated translations with latest Crowdin changes. ([#5409](https://github.com/BookStackApp/BookStack/pull/5409), [#5399](https://github.com/BookStackApp/BookStack/pull/5399)) +* Fixed incorrect image orientation handling. ([#5462](https://github.com/BookStackApp/BookStack/issues/5462)) +* Fixed layout issues at specific breakpoints. ([#5396](https://github.com/BookStackApp/BookStack/issues/5396)) +* Fixed LDAP error thrown when server does not provide a cn value. ([#5443](https://github.com/BookStackApp/BookStack/issues/5443)) +* Fixed wrong condition for showing new books list. Thanks to [@Silverlan](https://github.com/BookStackApp/BookStack/pull/5470). ([#5470](https://github.com/BookStackApp/BookStack/pull/5470)) **Released in v24.12.1**