categories = ["Releases"]
tags = ["Releases"]
title = "BookStack Release v21.11"
-date = 2021-11-16T14:04:45Z
+date = 2021-11-16T10:04:45Z
author = "Dan Brown"
image = "/images/blog-cover-images/autumn-road-sebastian_unrau.jpg"
slug = "bookstack-release-v21-11"
draft = false
+++
-Intro
+Today we release BookStack v21.11 which focuses on a couple of areas that have gone
+untouched for a while; Those areas tags and the site-wide search system. These changes
+sit upon more substantial framework upgrade work that has occurred this release cycle.
* [Update instructions](https://www.bookstackapp.com/docs/admin/updates)
* [GitHub release page](https://github.com/BookStackApp/BookStack/releases/tag/v21.11)
### New Tags Overview
-// TODO
+A listing of used tags can now be found within BookStack. This view initially shows all used
+tag names along with counts of usage, broken down by item type (Total, page, chapter, book, shelf):
+
+
+
+Clicking the tag name, or the counts, will start a search for that particular tag and item type.
+Show on the right is the count of unique values used against the tag name. Clicking this will take
+you to a similar view for that specific tag name, displaying all the values used for that tag.
+
+This view can be access via the actions menu when viewing all books or shelves in the system.
### Search System Enhancements
-// TODO
+During this release cycle I decided to pay special attention to the search system.
+The most obvious change is an improvement in how search results are displayed.
+Item names, descriptions and tags will reflect the searched terms and show them in bold
+with some surrounding context:
+
+
+
+Upon this visual change, which should help visual parsing of results, the following
+improvements have been made to the search indexing and scoring system:
+
+- Terms searched will now have their scores relatively adjusted based upon frequency
+ in the database. This should help prevent common, smaller terms causing so much noise in results.
+- Page content is now parsed so that a score boost if given to terms within content headings.
+- The score boost for terms in item titles has been significantly increased.
+- Standard terms will now match against the names and values of tags assigned to an item.
+- Search terms that had issues due to containing certain delimiters (For example IP addresses) will
+ now be auto-converted to be an "exact" search term to allow it to match without user intervention.
+- The regenerate-search command will now report some level of progress to the user as it runs.
+
+Put together, these changes should result in a big overall improvement to the search system to provide
+much more accurate results in a format that's easier to read.
### Search API Endpoints
-// TODO
+As is common, the API has receive new functionality. A "Search" endpoint has been added which allows
+you to run queries against items within BookStack using [the same filters and options](/docs/user/searching/)
+available when using the search bar within BookStack.
+
+
+
+The behavior of this endpoint is a bit quirky compared to our other API endpoints so ensure you
+read the documentation carefully if intended to use this.
### Framework Upgrades
-// TODO
+As an early part of this release I worked to upgrade our framework from Laravel 6 to Laravel 8.
+To help this upgrade I used [Laravel shift](https://laravelshift.com/) to automate much of the busy
+work. Moving to Laravel 8 puts us on the latest release for the first time in quite a while, and means
+that we can take advantage of the latests framework features where needed. There won't really be a
+noticeable impact to users but it should be development more pleasant while setting us up
+to eventually move to the next Laravel long-term-support release.
+
+A big thanks to the Laravel team, especially for their support on the LTS releases which has allowed
+us to retain a steady and feasible upgrade path for users in terms of system requirements.
### Translations
// TODO
+
+### Official Twitter & YouTube Channel
+
+Over the last month I've spent a bit of time focusing on some of the higher-level project elements.
+As part of this I've set-up an official Twitter account for BookStack: [@bookstack_app](https://twitter.com/bookstack_app). This means you can follow project updates and progress without having to also scroll
+past pictures of my cat.
+
+Additionally, I've also setup a [BookStack YouTube channel](https://www.youtube.com/channel/UCH66RFWfw6CSm2T1EM4ik1g). I mentioned wanting to record some project videos in the "[A Year of BookStack](/blog/1-year-of-bookstack/)" blogpost; Just 5 years later I've finally started on these.
+Currently there's just two videos now but more should be coming with improved audio quality.
+
+<iframe width="560" height="315" src="https://www.youtube.com/embed/ShqUjt33uOs" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
+
+<iframe width="560" height="315" src="https://www.youtube.com/embed/dbDzPIv8Cf8" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
+
### Full List of Changes
**Released in v21.11**
### Next Steps
-// TODO
+Within the latter stage of the v21.11 I went through some of the older issues in the project
+to address them if still relevant. I'll likely look to continue that to produce a few
+patch releases.
+
+As mentioned above I'm intending to produce more videos for the BookStack YouTube channel.
+Will work on these in times when I want to do something a bit more creative.
+
+In terms of larger features, I'll start getting deeper into
+[assessing a new page editor](https://github.com/BookStackApp/BookStack/issues/2738)
+which takes us to the next major project roadmap milestone.
+
----