]> BookStack Code Mirror - website/commitdiff
Added images to v24.12 post, done proof read+edits
authorDan Brown <redacted>
Sat, 21 Dec 2024 15:35:32 +0000 (15:35 +0000)
committerDan Brown <redacted>
Sat, 21 Dec 2024 15:35:32 +0000 (15:35 +0000)
content/blog/2024/bookstack-release-v24-12.md
content/docs/admin/updates.md
static/images/2024/12/export-options.png [new file with mode: 0644]
static/images/2024/12/import-index.png [new file with mode: 0644]
static/images/2024/12/import-preview.png [new file with mode: 0644]
static/images/2024/12/new-wysiwyg-dark-mobile.png [new file with mode: 0644]

index 6c87e3e459c0c497e54dcbaa56ff7ff85a8cfbb1..e5d67e01d99b895e4ed887b5a823be5922a78c25 100644 (file)
@@ -9,7 +9,7 @@ slug = "bookstack-release-v24-12"
 draft = false
 +++
 
-For this Christmas time holiday season we have BookStack v24.12 which includes the gift of a
+For this Christmas time holiday period we have BookStack v24.12 which includes the gift of a
 new import & export format, while improving upon the new editor introduced in the last release.
 
 * [Update instructions](/docs/admin/updates)
@@ -19,54 +19,53 @@ TODO - Peertube
 
 **Upgrade Notices**
 
-- **Requirements Change** - The "zip" PHP extension is now a requirement for BookStack. If you installed via our Ubuntu scripts, this should already be installed.
+- **Requirements Change** - The PHP "zip" extension is now a requirement for BookStack. If you installed via our Ubuntu scripts, this should already be installed.
 
 ### New Importable Export Format
 
-A new export option is now available for books, chapters & pages: "Portable ZIP"
+A new "Portable ZIP" export option is now available for books, chapters & pages:
 
-TODO - Image of export options
+<img alt="View of the export dropdown in BookStack, with the mouse hovering the 'Portable ZIP' option which sits below 4 other export options" src="/images/2024/12/export-options.png" width="460">
 
 This exports your content within a compressed ZIP file, containing common 
 related data including tags, attachments and images. 
 
 These ZIP files can then be imported back into your instance, or you could even
-import these into other BookStack instances (as long as they're on v24.12 or greater).
+import these into other BookStack instances (if they're on v24.12 or greater).
 During the import process, you're provided an overview of the content you're due to import
 and are able to choose the target parent location (for chapter and page imports):
 
-TODO - Image of in progress Import overview
+![A BookStack view titled "Continue import" showing details like import ZIP size, upload date and user, along with the various chapters and pages due to be imported](/images/2024/12/import-preview.png)
 
 Upon import, all the content of the ZIP will be added to the target BookStack instance, with attachments & images
 uploaded into the system, and links between items in the import handled to point to the correct location in the target instance.
 
 To support this addition, A new "Import content" role permission has been added
 which will only be assigned to admin level roles by default (those who can change app settings).
-With this permission assigned, a user can access the "Import" view via the actions on the Books list view.
+With this permission assigned, a user can access the "Import" area via the actions on the Books page.
 
-TODO - Image of import list
+![A view in BookStack titled "Import" with a field to select a ZIP to upload. Below is a "Pending Imports" section showing two pending imports, on for a book, one for a chapter](/images/2024/12/import-index.png)
 
 On this page you can upload a ZIP to start an import, or see existing pending imports.
 Users will only see their own import uploads by default, but users with permission to change app settings
 will be able to see all pending imports from all users.
 
-The ZIP format & structure has been specifically designed to be simple and easy to understand for developers.
-The format is [fully documented here](https://github.com/BookStackApp/BookStack/blob/development/dev/docs/portable-zip-file-format.md) 
-so ensure the format is accessible to developers.
+The ZIP format & structure has been specifically designed to be simple and easy to understand,
+and it's [fully documented here](https://github.com/BookStackApp/BookStack/blob/development/dev/docs/portable-zip-file-format.md) 
+to ensure the format is accessible to developers.
 
 To be clear, this is not intended as a backup format. There's a lot of metadata that is not part of these exports, so backups
-should still be done at an instance level following our guidance.
-That said, there's a lot of opportunity that I'm excited about in this portable and stable common import/export format.
-
+should still be done at an instance level [following our guidance](/docs/admin/backup-restore/).
+That said, I'm excited about the wide array of possibilities for such a portable and stable common import/export format.
 Here's some ideas in how this new format could be potentially used:
 
-- Export & import template books
-- Sharing books between different BookStack instances
-- Target format for building migration tools
-- Easier access/display of content in external applications
-- A way to "Promote" content from a "Staging" instance to a "Production" instance
+- Export & import of template books.
+- Sharing books between different BookStack instances.
+- A target format for building migration tools.
+- Easier access/display of content in external applications.
+- A way to "Promote" content from a "Staging" instance to a "Production" instance.
 
-One notable limitation is that there's not yet API endpoints provided for import/export of this format.
+One notable limitation is that there's not yet any export/import API endpoints provided for this format.
 This was initially planned, but I want delay that for a while to ensure the process we have works, before adding API
 support since there'd otherwise be a significant chance of API breaking changes.
 
@@ -74,7 +73,7 @@ support since there'd otherwise be a significant chance of API breaking changes.
 
 In the [last release we introduced](/blog/bookstack-release-v24-10/#new-alpha-wysiwyg-editor-option)
 the new WYSIWYG editor in alpha testing. It remains in an alpha-testing state for this release, but 
-it's received a number of improvements:
+it's received a number of significant improvements:
 
 - Dark mode is now supported.
 - The UI will now properly adapt for mobile screen sizes.
@@ -83,8 +82,10 @@ it's received a number of improvements:
 - Behaviour of collapsible blocks has been improved & made consistent.
 - Selection and nesting behaviour of lists has been improved.
 
-Upon these user-facing improvements, work has gone into further merge & develop the underlying
-codebase for this editor since we decided to fork in the [Lexical](https://lexical.dev/) editor core code late in the last
+![View of the new WYSIWYG editor in a dark theme, with some content in the editor titled "Cat care guide" with a picture of a fluffy cat](/images/2024/12/new-wysiwyg-dark-mobile.png)
+
+Upon these user-facing improvements, more work has gone into merging & developing the underlying
+codebase for this editor since I decided to fork in the [Lexical](https://lexical.dev/) editor core code late in the last
 development cycle.
 
 ### API Improvements
@@ -98,7 +99,7 @@ Thanks to [@rashadkhan359](https://github.com/BookStackApp/BookStack/pull/5280)
 
 ### LDAP: Support for multiple name attributes
 
-For users using LDAP for authentication, it's now possible to make of multiple LDAP
+For those using LDAP for authentication, it's now possible to make use of multiple LDAP
 attributes for a user's name. To do this, you can just define multiple
 attributes in the `LDAP_DISPLAY_NAME_ATTRIBUTE` setting separated with a pipe like so:
 
@@ -107,27 +108,56 @@ LDAP_DISPLAY_NAME_ATTRIBUTE="firstname|lastname"
 ```
 
 Values of those properties will then be combined with a space.
-In the above example upon first login, if the LDAP user data has a `firstname` of `Barry` and a
+In the above example, upon first login, if the LDAP user data has a `firstname` of `Barry` and a
 `lastname` of `Chuckle`, their name in BookStack would be `Barry Chuckle` as a result.
 
 Thanks to [@MatthieuLeboeuf](https://github.com/BookStackApp/BookStack/pull/5295) for working on this one!
 
 ### Translations
 
-TODO
-
-- User - *Lang - x words*
+A big thanks to all the below terrific textual transformers who have helped translate the BookStack UI into a range of different languages since our last feature release:
+
+- Ásgeir Shiny Ásgeirsson (AsgeirShiny) - *Icelandic - 4580 words*
+- Michele Bastianelli (makoblaster) - *Italian - 1090 words*
+- Avishay Rapp (AvishayRapp) - *Hebrew - 699 words*
+- Mohammad Aftab Uddin (chirohorit) - *Bengali - 1683 words*
+- Yannis Karlaftis (meliseus) - *Greek - 547 words*
+- felixxx - *German Informal - 315 words*
+- Jeff Huang (s8321414) - *Chinese Traditional - 515 words*
+- Jøran Haugli (haugli92) - *Norwegian Bokmal - 312 words*
+- m0uch0 - *Spanish - 332 words*
+- sarahalves7 - *Portuguese, Brazilian - 301 words*
+- Tim (thegatesdev) - *Dutch - 183 words*
+- Ngoc Lan Phung (lanpncz) - *Vietnamese - 52 words*
+- Maciej Lebiest (Szwendacz) - *Polish - 49 words*
+- ka_picit - *Danish - 36 words*
+- Guttorm Hveem (guttormhveem) - *Norwegian Nynorsk - 35 words*
+- Mohammed srhiri (m.sghiri20) - *Arabic - 21 words*
+- YongMin Kim (kym0118) - *Korean - 22 words*
+- Mykola Ronik (Mantikor) - *Ukrainian - 20 words*
+- scureza - *Italian - 20 words*
+- Martin Sebek (sebekmartin) - *Czech - 20 words*
+- toras9000 - *Japanese - 56 words*
+- grobert63 - *French - 22 words*
+- Rivo Zängov (Eraser) - *Estonian - 15 words*
+- ИEØ_ΙΙØZ (NEO_IIOZ) - *Chinese Traditional - 21 words*
+- madnjpn (madnjpn.) - *Georgian - 4 words*
+- 10935336 - *Chinese Simplified - 4 words*
+- test65428 - *Greek - 5 words*
+- petr.husak - *Czech - 2 words*
+- Francisco Rafael Fonseca (chicoraf) - *Portuguese, Brazilian - 2 words*
 
 *\* Word counts are those tracked by Crowdin, indicating original EN words translated.*
 
 ### Next Steps
 
 Our next main release will probably be a maintenance release. With PHP 8.4 we're hitting a lot of PHP deprecations which we can't
-overcome without updating our framework and minimum PHP version, we we'll probably get our yearly update in that regard out the way a 
-little sooner, but dropping PHP 8.1 support will need a little extra work due to its widespread use.
+overcome without updating our framework and minimum PHP version, so we'll probably get our yearly update in that regard out the way a 
+bit sooner, but dropping PHP 8.1 support will need a little extra work due to its widespread use.
 
 I'd also like to tie up some loose ends, like provide some more options for the [PDF export command we added this year](/blog/bookstack-release-v24-05/#command-based-pdf-export-option).
-Other than that I'd like to spend a fair bit more time on the new editor so it can move into a more "Beta" status for the next release
+
+Lastly I'm planning to spend a bit more time on the new editor so it can move into a more "Beta" status for the next release
 to continue it's journey to eventually becoming the default option.
 
 ### Full List of Changes
@@ -146,10 +176,10 @@ to continue it's journey to eventually becoming the default option.
 * Updated project NPM package & SASS deprecations/changes. ([#5354](https://github.com/BookStackApp/BookStack/pull/5354))
 * Updated the new WYSIWYG editor with a range of fixes/updates. ([#5365](https://github.com/BookStackApp/BookStack/pull/5365))
 * Updated translations with latest Crowdin changes. ([#5345](https://github.com/BookStackApp/BookStack/pull/5345))
-* Fixed API attachment update issue when name not provided . ([#5353](https://github.com/BookStackApp/BookStack/issues/5353))
+* Fixed API attachment update issue when name not provided. ([#5353](https://github.com/BookStackApp/BookStack/issues/5353))
 * Fixed attachment actions showing when lacking permissions. ([#5323](https://github.com/BookStackApp/BookStack/issues/5323))
-* Fixed missing book description and extra newlines in markdown exports. Thanks to [@czemu](https://github.com/BookStackApp/BookStack/pull/5313). ([#5313](https://github.com/BookStackApp/BookStack/pull/5313))
-* Fixed page content indexing breaking with very large amounts of content. ([#5322](https://github.com/BookStackApp/BookStack/issues/5322))
+* Fixed missing book description and formatting in markdown exports. Thanks to [@czemu](https://github.com/BookStackApp/BookStack/pull/5313). ([#5313](https://github.com/BookStackApp/BookStack/pull/5313))
+* Fixed page indexing breaking with very large pages. ([#5322](https://github.com/BookStackApp/BookStack/issues/5322))
 
 **Released in v24.10.3**
 
index 0603d51879f226fbab80d7324f3e095baf019bb7..71ddb967353e9b0db8190f57d2a5ea9abdf28e44 100644 (file)
@@ -43,7 +43,7 @@ the [GitHub releases page](https://github.com/BookStackApp/BookStack/releases).
 
 #### Updating to v24.12 or higher
 
-**Requirements Change** - The "zip" PHP extension is now a requirement for BookStack. If you installed via our Ubuntu scripts, this should already be installed.
+**Requirements Change** - The PHP "zip" extension is now a requirement for BookStack. If you installed via our Ubuntu scripts, this should already be installed.
 
 #### Updating to v24.10.2 or higher
 
diff --git a/static/images/2024/12/export-options.png b/static/images/2024/12/export-options.png
new file mode 100644 (file)
index 0000000..d34dbe7
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:fa5752439090f616008961cc1b95934e14ef0520cf6c8313928890a44aee906e
+size 36601
diff --git a/static/images/2024/12/import-index.png b/static/images/2024/12/import-index.png
new file mode 100644 (file)
index 0000000..536eab8
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:f636df3485e8256df481ae1412d31fe4d8f96b3941b22dd22b7b0a5725a01dac
+size 146722
diff --git a/static/images/2024/12/import-preview.png b/static/images/2024/12/import-preview.png
new file mode 100644 (file)
index 0000000..034c4ff
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:3904cd681e4ece4fbc1d199fe3a6c6a5cdc38a02b75cee5d03871f7d9c6023ac
+size 208666
diff --git a/static/images/2024/12/new-wysiwyg-dark-mobile.png b/static/images/2024/12/new-wysiwyg-dark-mobile.png
new file mode 100644 (file)
index 0000000..0d32d14
--- /dev/null
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:cdb8f44076ed1ae739150e7884f791bb587cb7aaf6ae1e5e9a0378842dadab7b
+size 311738