- What’s new in Umbraco 8.17
- Umbraco Deploy 4.3
- Community Contributions
- How to get your hands on Umbraco 8.17
- The final scheduled Umbraco 8 release
What’s new in Umbraco 8.17?
A lot! The biggest new feature is the return of tabs for the backoffice, but there’s also a number of other improvements and fixes that will make your Umbraco 8 installations feel even better. In no small part thanks to the Umbraco open-source community that has once again pitched in with a bunch of great ideas and improvements. We hope to see even more of this with Hacktoberfest 2021 well underway - for now, let’s see what has been released 👀
Tabs are back!
With the release of Umbraco 9 and now Umbraco 8.17, tabs for organizing properties are once again a first-class citizen in the CMS. You can combine the use of tabs and groups to provide the best possible editing experience and workflow for updating Content, Media and Members. The new feature has been inspired by the great work Søren Kottal, Umbraco MVP and package developer extraordinaire, did to re-introduce tabs to Umbraco 8 with the Matryoshka package. It has also been through a lengthy development process including prototyping, a wonderfully engaged discussion on GitHub that provided crucial feedback, and an extended-release candidate period. A huge thanks to everyone involved, you’ve helped make this a great “new” feature 🙌
What is “Tabs”?
Tabs is another tool to help customize and organize the editing experience in the backoffice. If you’re used to working with Umbraco 8, you know the concept of Groups for organizing properties vertically, and Tabs work in a similar way but allows you to organize properties horizontally as well. Notice “as well” in the last sentence? That’s because you don’t have to choose one over the other. Groups and Tabs can be used in combination, or separately, whatever you deem produces the best editing experience.
Tabs work for both Document-, Media- and Member Types.
To tab or not to tab, that is the question…
So, when does it make sense to use Tabs? They can be helpful if you have properties that take up a lot of space, e.g. Grid layouts or a Block List editor with custom views. Instead of having to scroll past these, to get to a particular property, these can now be placed in a tab, so they are only a click away.
It can also be beneficial for document types with a lot of properties, again to help avoid excessive scrolling, but also to move properties that are not updated often out of the way (e.g. Settings or SEO/meta-data). It allows for adding an additional layer of hierarchy and prioritisation.
Tabs can be added through the Settings section when you’re building out your Document Type (or Media/Member Type).
When adding the first tab, you can either choose to add properties directly on the tab or add Groups to help organise properties on the tab. If you have a Document Type that only has Groups and add a tab, all existing groups will be automatically added to this tab.
Sorting and reordering
You can sort and reorder tabs by clicking the reorder button in the designer, exactly the same way you do with groups, allowing you to seamlessly move tabs and groups around at the same time.
The sorting functionality in Umbraco 8.17 has been updated to make it a bit more predictable. The numeric values won't be reset to 0 and incremented. This is especially important when using compositions, as you might want to always display a tab/group at a certain position by setting a manual numeric value.
Tabs and/or groups
You choose whether you want to use tabs or groups, or both. Just adding tabs might not always be the friendliest editor experience though, as you can only view a single tab at a time and have to click to switch between them. You can use groups for simple structures instead, as you’re used to in previous Umbraco 8 versions. But you can also organize your properties exclusively in tabs if you want, similar to how this worked prior to Umbraco 8.
You can even convert an existing group to a tab, by dragging a group onto the 'Convert to tab' zone, when in reorder mode.
Support and validation
The new tabs feature supports the Block List editor in both inline and overlay editing modes. Simply add tabs to your Element Types and they will show up in the editor.
Validation works as you’ve come to expect, highlighting specific tabs and properties that are not valid.
The generic tab
Once you start adding tabs to an existing Umbraco 8 installation, you might see a “Generic” tab appear. This is done to hold groups and properties that are not assigned to a tab. For example, a group of properties coming from a composition that has no tab. In order to display the groups and properties correctly and have a solid data structure, they will be displayed under the generic tab.
In this case, the recommended approach would be to create an appropriately named tab on the composition Document Type and move the groups and properties to this tab. Once the generic tab is empty, it will no longer be displayed.
The new tabs feature is backwards compatible with earlier versions of Umbraco 8 and upgrading to the 8.17 version will not change any behavior. Groups will appear as normal.
One thing to be aware of is that the data structure has changed slightly, introducing an Alias and a Type property, to facilitate both tabs and groups. When upgrading to Umbraco 8.17 (or Umbraco 9), a migration will run to update the data structure.
Packages that have been created through the backoffice prior to Umbraco 8.17, and contain Document-, Media- and Member Types, should be upgraded with the new data structure by re-saving and downloading them.
You can find additional details on what has changed on the GitHub PR for reintroducing tabs.
A sprinkle of documentation
We've got brand new documentation for Using tabs to go with the new feature.
Media picker updates
There are some great new additions to the Media Picker and related editors in Umbraco 8.17.
Remove restricted image size
With the introduction of a new Media Picker, we got a larger preview. Bjarne Fyrstenborg has done some great work to ensure that SVGs make full use of the preview by removing size restrictions.
Another improvement to the preview is the addition of checkered backgrounds for transparent images and PNGs. This was added to the Image Cropper in 8.16 by Bjarne and has now been added for the Media Picker as well.
Images are also properly aligned, which just looks a lot better. Awesome work Bjarne, HIGH FIVE YOU ROCK 🙌
Reset focal point
If you’re using the focal point to define the important part of an image you now have the ability to reset this.
This is a community contribution by Christian Bekker Andersen and makes it possible to go back to default behaviour with a centered focal point. Nice work 🙌
Configurable overlay size
You can now configure the width of overlays when adding links through the Multi URL Picker, the Richtext Editor and the Markdown editor.
This can be used to give more room for editing in the overlay and is especially helpful if working with long external links and long query strings. Thanks to Jan Skovgaard for this nice improvement 🙌
Umbraco 8.17 brings another round of performance enhancements to the table. Most of them are quite low level and should not be noticeable in behaviour, but all help to make Umbraco even faster and use less resources:
- Don't eagerly acquire distributed (SQL) locks
- Improve nested content optimization in the backoffice
- Replace use of dynamic type with POCOs
- Avoid creating a new string for the log level every log message
- Avoid generating the MainDom hash twice to get the Id.
- Avoid allocating an array every call to IsClientSideRequest()
- Dispose X509Certificate2 handle in https check
- Avoid array allocations for splitting csv tags
- Dispose RNGCryptoServiceProvider
- Fix message template to not mix string interpolating and formatting.
A whopping 8 out of the 10 performance enhancements were made by Chad (aka NZDEV), which marks the 6th release in a row with contributions targeting performance and reducing the footprint of Umbraco. Truly amazing work! HIGH FIVE YOU ROCK 🙌
- noUIslider has been updated to version 15.3
- AngularJS has been updated to version 1.8.2
- jQuery has been updated to version 3.6
With the introduction of the Tabs feature there are a few breaking and functional changes to be aware of:
- IContentTypeBase has 2 new method overloads to specify the new group alias
- New properties for Alias and Type have been added to PropertyGroup, PropertyGroupBasic and Tab<T> public classes
- ContentTypeCompositionBase.CompositionPropertyGroups now returns the local groups before the composition groups
- PropertyGroupCollection uses the new alias as key (instead of the name)
You can find additional details on the PR for Reintroducing tabs.
Umbraco Deploy 4.3
Along with Umbraco 8.17, we’re also releasing a new minor version of Umbraco Deploy. This release is focused on ensuring support for the new Tabs feature on Umbraco Cloud and for Deploy On-premises. It also includes a fix for Grid JSON data not being properly escaped. Umbraco Deploy 4.3 is backwards compatible, so you can upgrade for the fix even if you are not upgrading to Umbraco 8.17 yet. See the Umbraco Deploy release notes for details.
Of the 64 bug fixes and feature additions in 8.17.0, a total of 47 of them have been contributed by the community, by 14 unique contributors.
We’re welcoming one brand new contributor who has made their first pull request for Umbraco CMS; they’re marked with a star below. Welcome to the contributor club Corné! 🏆
⭐ = First pull request to any Umbraco repository
Of course, we’re still planting trees for each individual contributor who has helped make this release even better. We’ve just added another clump of trees to our growing plot for today’s 8.17.0 release to celebrate your contributions! 🌳🌲🌴
Speaking of contributions, have you heard that it’s Hacktoberfest again? We welcome you to join in and get your hands on the Umbraco source code.
This year we’re focusing on contributions for Umbraco version 9 (did you expect anything else? 😉) and we have multiple events lined up for this year:
- Sebastiaan was invited by Paul Seal to talk about how to get started on contributing to Umbraco, the recording of which is available on Paul’s YouTube channel. You’ll learn how to get the source code up and running, some tips on where to look where you can help improve the code and how to send your changes to us as a pull request
- We are organizing a 24-hour hackathon Umbracothon on October 29 and 30 in collaboration with community members including the hosts of the Candid Contributions podcast, the Skrift team and some of our MVPs from the US and down-under too! Join us for the marathon or pick a timezone that works best for you.
- Callum Whyte is hosting a live Twitch stream every Wednesday where he’ll be working on Umbraco contributions
- Every Thursday this month Emma and Sebastiaan will be hosting a Hacktoberfest special event on our new Discord server, come join the 260+ people already there at: https://discord.gg/umbraco. Come along to chat, learn, work or just watch.
Keep your eyes peeled for a dedicated blog post with all the details about these events coming soon! 🍁🍂
How to get your hands on Umbraco 8.17
As always, from today, all new v8 Umbraco Cloud projects will be running 8.17 (note that Umbraco 9 is the default version for Cloud projects, so you’ll have to tick the checkbox in order to get an Umbraco 8 project). For all our Umbraco Cloud customers with existing projects, this upgrade is only 2 minutes away:
We’ve wrapped it all up for you, so all you have to do now is follow these steps:
- Add a Development Environment to your project, if you do not already have one (Add a Development environment by clicking “Manage Environments” in the project view)
- Make sure you also restore the content to the Development Environment from your Live Environment.
- When the Development Environment is all set up and you’ve made sure you don’t have any pending changes on the Development Environment - you are all ready to upgrade to Umbraco 8.17!
- It's as easy as clicking a button - like, literally clicking the "Upgrade Available" button on the Development Environment. The auto-upgrader will take care of everything from here! 🚀
- Once it's done, check the Development Environment to make sure everything is looking right.
- When that's confirmed, you are ready to deploy the upgrade to the next environment - Live or Staging, and start taking full advantage of all the new features.
Non-Cloud and release notes:
As always, installation and release notes can be found on Our: https://our.umbraco.com/contribute/releases/8170
This release is also available from NuGet: https://www.nuget.org/packages/UmbracoCms/8.17.0
The final scheduled Umbraco 8 release
Umbraco 8.17 brings feature parity with Umbraco 9 and marks the final scheduled release for Umbraco 8. This does not mean the end for Umbraco 8 though, we are working on Umbraco 8.18 which will include some new features as well as all the many community pull requests we’ve received. Umbraco 8.18 will be released once we have evaluated and merged or closed, all the community PRs and remaining features. Expected late this year or early 2022.
Umbraco 8 Long-term Support (LTS)
As announced previously Umbraco 8.18, being the last minor release for Umbraco 8, will be a LTS version. The “support clock” starts ticking from the release date:
- The Support phase will last 24 months for bug and security fixes
- The Security Only phase runs for an additional 12 months, ensuring fixes for severe security issues.
- When the Security Only phase is completed, the product is considered End-of-life (EOL)
You can read more and stay up-to-date on our LTS/EOL policies and release cadence in the Umbraco Product Knowledge Center.
9 is the new black
From now on, all new feature development happens on Umbraco 9, and as such the 6-week release cadence continues, starting with Umbraco 9.1 coming out on November 18th 2021.
But…. There’s always a but 🙈 We would like to announce that, in order to look after our employees, volunteers and community, we have decided to postpone the release of Umbraco 9.2. According to the release cadence, this should go out on December 30th, 2021 but in the spirit of the holidays and an impending New Year, we’ll wait a week:The new release date for Umbraco 9.2 will be January 7th, 2022. Happy holidays 😊