Umbraco

Umbraco Forms 8.13/9.5/10.1 Release

All about the new minor releases for Umbraco Forms

Andy Butland
Written by Andy Butland

Today we are making available new minor releases for Umbraco Forms. This release is focused on improving and expanding workflows with new features. You’ll also find further improvements that make use of the recent addition of folders, a brand new Rich Text Field Type, and more. You can read more about the new features in this post.

Overview:

The releases are available for solutions based on both CMS versions 8, 9, and 10 and are mostly functionally equivalent. As such if you are using the product in Umbraco 8, you can update to Forms 8.13.  With Umbraco 9, Forms 9.5 should be used.  And if you've started a project with Umbraco 10, then 10.1 is now available as an upgrade.

Minor releases moving forward

As you'll note, we're releasing new minor versions for the latest three majors of Umbraco: 8, 9, and 10.  We expect this to be the last minor release where we do this.  Moving forward we'll focus attention on new releases on Forms 10.

Given the upgrade from Umbraco 8 to 9, and .NET Framework to .NET 5, was a relatively significant undertaking, we've been keen to ensure that customers still using Umbraco 8 have been able to make use of the new features introduced in Forms. It's now been almost a year since Umbraco 9 was released, hopefully giving time for those wanting to be on the latest version of Forms to upgrade.  As such it seems reasonable now to consider Forms 8 "done" from a feature perspective.

Umbraco 9 is not an LTS version, and the update to Umbraco 10 is much more straightforward. So given the impediment to upgrading is less we don't see a great need to bring new features to that version either.

Of course, we will continue to release patches as necessary for both versions, for regressions, security issues or to resolve significant bugs, as per the documented support policy.

With that out of the way - let’s have a look at what you can expect in this latest release 👀

What’s new in Umbraco Forms 8.13/9.5/10.1?

The main set of features included in this release consists of a number of improvements to workflows but you’ll also find useful enhancements to forms pickers, now with support for picking from folders, a new Rich Text 

Workflow Features and Improvements

Workflows are associated with a form and run sequentially after the entry is submitted and/or approved. Umbraco Forms comes with a number of workflows out of the box and is extensible to allow you to create your own.

Conditional Workflows

There might be times when you want to initiate a specific workflow depending on what the user has submitted in the form. Up until now this required custom development. With this Forms release, you can set up conditions for workflows, which will be instantly familiar if you’ve set up conditional fields.

When creating or configuring a workflow you’ll find a new Conditions section. From here you can add one or more conditions that should be fulfilled before executing or ignoring a workflow. 

Workflow Audit Trail

If a workflow encounters an unexpected error, it will fail silently, so the person submitting the form, who is unlikely to be in a position to resolve any issue, isn't informed. This is arguably a good thing from the perspective of customer experience but it can be tricky from an editor or administrator's view to understand if a workflow encountered a problem. 

In this release, you’ll find 2 new features that help make it easier to manage workflows and ensure any issues with workflows can be addressed. The first one helps surface information about workflow execution by adding a workflow audit trail to the backoffice.

In the list of entries for a form, a summary is presented that shows how many unique workflows were executed, and how many were successful.

For each entry, in the backoffice, a table can be viewed that shows each of the workflows and the success, or otherwise, of the operation. 

Workflow Retry

Having reviewed the audit and discovering a workflow hasn't run, it would be nice to be able to do something about it. Fortunately, now you can.

For any workflow that did not successfully complete, a "Retry" link is available to trigger the workflow again. This is useful for example if there was a temporary infrastructure issue that perhaps prevented an email from going out. You would be able to retrigger the workflow once the issue is resolved.

Extending Workflows

There are also improvements that enable developers to extend the functionality and behavior of workflows even further, and this new functionality comes complete with detailed documentation:

Folder-Based Form Picker

In recent releases of Umbraco Forms, you’ve got the ability to organize forms in folders and to set User Permissions for these folders. This is a great help for anyone managing forms in the backoffice. With this release, these features are combined to make Form Pickers aware of both folders and any assigned permissions.

This should be a useful enhancement for editors, particularly for installations with many forms available for selection.

Prevalue Captions

Various form fields, such as drop-down lists and radio buttons, require you to add options for the user to pick from. These are known as prevalues and up until now have been implemented as a list of strings. In some cases though, it would be preferred to present one value to the person completing the form, but store a different one with the entry.

In this release, you can add a caption in addition to the value which will then be used to present the option to the user. This could for example be storing numbers as the value and corresponding words as the caption:

The caption is optional and replaced by the value when not set, so the existing behavior is retained for any forms that are already created.

The stored values (and captions) are known as Prevalues. In order to share lists of Prevalues between several forms, and to avoid having to manually add long lists, Prevalue sources can be created. We've extended all the Prevalue Source Types provided by Forms to support this:

  • When importing prevalues from a text file, a vertical bar (|) delimiter can be added to each line to separate the value from the caption. If there is no delimiter, each line is used as the value as before.
  • When reading prevalues from a SQL database, a column for the caption can be defined.
  • When using Umbraco nodes as a prevalue source, a new setting allows you to select the node's Id or Key to use as the value, instead of the Name (which is the default, to adhere to existing behavior).
  • The datatype prevalue source hasn't changed (as only a single value is available here).

The built-in workflow for sending an email using a Razor template has been updated to display captions if they exist. And finally, the export to Excel feature has been updated with a second export option, so users can choose between using captions or values to populate the spreadsheet. 

See the Defining and Attaching Prevalue Sources documentation for more information.

Rich Text Field Type

Sometimes it's useful to present some read-only information to users completing forms and with this release, you can add information to your forms with properly formatted text, links (handy for linking to terms and conditions or privacy policy pages), and all the other features available with the Rich Text Editor data type.

This feature started as a community package and we’ve been given permission to adapt and include this functionality in Umbraco Forms 9+ 

Huge thanks and HIGH FIVE YOU ROCK to Mathew Wise 🙌 

Notable Fixes and Breaking Changes

In this release, we’ve made a couple of changes to improve the experience of working with forms in the backoffice. If you are receiving form submissions from different timezones and/or been using the new Group Permissions feature:

Backoffice Date Formats

When displaying the dates from a form record in the backoffice, the date value needs to be parsed into an actual date object for formatting. From this release, the culture used when storing the form entry is recorded, thus we can ensure the correct value is used when parsing the date. This resolves an issue with incorrect dates being shown on records in some cases with different cultures.

This only works for new submissions, but we have added options to configure how the dates will be parsed which should help alleviate this. See the CultureToUseWhenParsingDatesForBackOffice documentation for more information.

User Group Permission Tweaks

We had a couple of issues raised related to the recent update of Forms to support permissions based on user groups.

Firstly we fixed an issue that was incorrectly including user groups without access to the forms section in the aggregation of folders available for a user.

Secondly, we added two "special" values that can be applied within or instead of the comma-separated list of user groups that are by default given access to newly created forms..

  • A value of "all" will give access to the form to all user groups.
  • A value of "form-creator" will give access to all the user groups that the user who created the form is part of.

The documentation detailing these options and the logic for evaluating access to forms has been updated and can be viewed here.

Breaking Changes

Usually, we try of course to avoid breaking changes in minor releases, but in this case, it was felt introducing the features for all the recent Forms versions and not waiting for a future major release outweighs the downside of it. We don't expect many or hopefully even any users to be affected. You can find a description of the breaking changes in the Version specific upgrade documentation.

And much more…

There is a long list of additional tweaks and bug fixes, including 12 that have been fixed since the initial release candidate. You can find the full list in the release notes. You can also find specifics and further technical descriptions in the release candidate blog post.

How to get your hands on the new Umbraco Forms release

As always, from today, all new Umbraco Cloud projects will be running the latest versions of both Forms and Deploy. For all our Umbraco Cloud customers with existing projects, this upgrade is only 2 minutes away with the upgrade minor version feature. 

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.
  • 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 now ready to upgrade to the latest version of Umbraco Forms and Deploy!
  • It's as easy as clicking a button, literally. The "Upgrade Available" button on the Development Environment will start the auto-upgrader and we’ll 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.

And remember, you can always spin up a new project on Umbraco Cloud to try the latest versions of Umbraco CMS, Forms, and Deploy, either from your existing Umbraco Cloud account or by taking a free Umbraco Cloud trial.

Non-Cloud and release notes:

Installation and release notes can be found on the Umbraco Forms package page on Our.umbraco.com.

Thanks to everyone testing out the release candidates 🙏 All issues reported have been addressed and listed in the release notes. For general feedback, you’re always welcome to contact us at product@umbraco.com and specific issues on the Umbraco Forms GitHub issue tracker.