Release Notes
In this section, we have summarized the changes to Umbraco Forms released in each version. Each version is presented with a link to the Forms issue tracker showing a list of issues resolved in the release. We also link to the individual issues themselves from the detail.
If there are any breaking changes or other issues to be aware of when upgrading they are also noted here.
If you are upgrading to a new major version, you can find information about the breaking changes in the Version Specific Upgrade Notes article
We've listed here all the changes going back to 2021 for Forms. For details of releases before this date or older versions, refer to the Umbraco Forms Package page.
In this section, you can find the release notes for each version of Umbraco Forms. For each major version, you can find the details about each release.
- Fixed issue with the GetPrevalueMaps method used in email workflow and exports where we have two prevalue sources of the same type on the form #990
- Added form settings to allow for the configuration of which fields are shown in the entries view per form #336
- Added ability for developers to configure the options for text field validation via regular expression #936
- Provided access to the send Razor email workflow settings via the view model used for the email template #973
- Fixed display of "automatic" label associated with workflows when manual approval is not enabled
- Updated workflow processing to take account of the
IgnoreWorkFlowsOnEdit
setting - Fixed issue with magic string replacement for member properties in "sent to URL" workflow (V10+) #969
- Fixed issue with culture-specific encoding leading to an error with adding user security record (V10+) #966
- Fixed issue where the template is not pre-selected in default workflows applied to empty form (V10+)
- Fixed issue where an invalid value stored via file upload could lead to media directory removal #933
- Added extension method for retrieval of selected prevalues in workflow, resolving the issue with delimiter clash, and multiple selections #941
- Ensured versioning and documentation for headless/AJAX API is scoped only to Forms API controllers (V10+ only)
- Ensured record values changed in approval workflows are persisted
- Ensured reference to Configuration class in insert form macro partial view is globally specified to ensure it doesn't clash with other usings (V8 only)
- Fixed issue with the processing of magic string replacements following server-side validation failure #872
- Fixed issue with editing legacy forms in the backoffice that have fieldsets without unique Ids #944
- Fixed issue with the GetPrevalueMaps method used in email workflow and exports where we have two prevalue sources of the same type on the form #990
- Added form settings to allow for the configuration of which fields are shown in the entries view per form #336
- Added ability for developers to configure the options for text field validation via regular expression #936
- Provided access to the send Razor email workflow settings via the view model used for the email template #973
- Fixed display of "automatic" label associated with workflows when manual approval is not enabled
- Updated workflow processing to take account of the
IgnoreWorkFlowsOnEdit
setting - Fixed issue with magic string replacement for member properties in "sent to URL" workflow (V10+) #969
- Fixed issue with culture-specific encoding leading to an error with adding user security record (V10+) #966
- Fixed issue where the template is not pre-selected in default workflows applied to empty form (V10+)
- Fixed issue where an invalid value stored via file upload could lead to media directory removal #933
- Added extension method for retrieval of selected prevalues in workflow, resolving the issue with delimiter clash, and multiple selections #941
- Ensured versioning and documentation for headless/AJAX API is scoped only to Forms API controllers (V10+ only)
- Ensured record values changed in approval workflows are persisted
- Ensured reference to Configuration class in insert form macro partial view is globally specified to ensure it doesn't clash with other usings (V8 only)
- Fixed issue with the processing of magic string replacements following server-side validation failure #872
- Fixed issue with editing legacy forms in the backoffice that have fieldsets without unique Ids #944
- Ensured newly created field and workflow settings based on checkbox values have an explicit true or false (not empty) setting #916
- Resolved issue with placeholders based on the current page or HTTP context not working on later pages of multi-page forms #918
- Added API key security and the option to disable the anti-forgery token validation for the headless API, for use in server-to-server integrations #915
- A member key has been added to the RecordFilter object, used when programmatically retrieving a filtered set of form entries.
- Added documentation and base class to allow users to change the location of prevalue source text files. #789
- Added configurable prefix for form element Ids.
- Handled migration case when switching to store form definitions in the database after installing or upgrading to 8.13 #888
- Ensured duplicate prevalues are handled without error when replacing values with captions in export or email sending #874
- Fixed issue with rendering the create menu icon (V10)
- Disabled spellcheck on password fields.
- Fixed issue where default workflow when removed on a newly created form is added back on save.
- Prevented hidden field for record Id from being populated if the feature for editable records is not enabled.
- Restored member details display on the entry details view
- Fixed formatting of default form validation messages
- Fixed potential null reference when re-indexing form entries (V10 only)
- Fixed incorrect storage of values posted from forms that were hidden within conditional fieldsets
- Restored ability to set workflows on approved status even when moderation is not used (allowing retrieval of record Id in workflows) #835
- Exposed target object in notifications where not available as a public field (V9+ only)
- Fixed issue when using conditions based on select lists and prevalues with captions
- Added workflow audit trail.
- Added workflow retry option.
- Added ability to redirect to an external site from workflows, after all have been completed.
- Ensured user group start folder aggregation for user's permissions doesn't include user groups that don't have access to Forms #772
- Added option for creating permissions on form for user groups to all groups, or all groups the creating user is part of.
- Added read-only, rich text Data Type (V9 and 10).
- Friendlier extensions for registering custom types (V10).
- Ensured the order of fields retrieved for a record from the database matches the field order defined on the form. #661
- The trigger for client-side conditions checked can now be configured between "change" (the default) and "input". #784
- Fixed issue with displaying entries where a member's Id was stored as a Guid via a custom membership provider. #798
- Restored partial views shipped in RCL to macro partial view picker.
- Fixed issues with sending razor workflows related to out-of-the-box template shipping as a razor class library 794
- Compatibility with .NET 6 and Umbraco 10
- Fixed a regression issue introduced in 9.5.7 related to form rendering.
- Fixed display of "automatic" label associated with workflows when manual approval is not enabled
- Updated workflow processing to take account of the
IgnoreWorkFlowsOnEdit
setting - Fixed issue with magic string replacement for member properties in "sent to URL" workflow (V10+) #969
- Fixed issue with culture-specific encoding leading to an error with adding user security record (V10+) #966
- Fixed issue where the template is not pre-selected in default workflows applied to empty form (V10+)
- Fixed issue where an invalid value stored via file upload could lead to media directory removal #933
- Added extension method for retrieval of selected prevalues in workflow, resolving the issue with delimiter clash, and multiple selections #941
- Ensured versioning and documentation for headless/AJAX API is scoped only to Forms API controllers (V10+ only)
- Ensured record values changed in approval workflows are persisted
- Ensured reference to Configuration class in insert form macro partial view is globally specified to ensure it doesn't clash with other usings (V8 only)
- Fixed issue with the processing of magic string replacements following server-side validation failure #872
- Fixed issue with editing legacy forms in the backoffice that have fieldsets without unique Ids #944
- Added documentation and base class to allow users to change the location of prevalue source text files. #789
- Handled migration case when switching to store form definitions in the database after installing or upgrading to 8.13 #888
- Ensured duplicate prevalues are handled without error when replacing values with captions in export or email sending #874
- Fixed issue with rendering the create menu icon (V10)
- Disabled spellcheck on password fields.
- Fixed issue where default workflow when removed on a newly created form is added back on save.
- Prevented hidden field for record Id from being populated if the feature for editable records is not enabled.
- Restored member details display on the entry details view
- Fixed formatting of default form validation messages
- Fixed potential null reference when re-indexing form entries (V10 only)
- Fixed incorrect storage of values posted from forms that were hidden within conditional fieldsets
- Restored ability to set workflows on approved status even when moderation is not used (allowing retrieval of record Id in workflows) #835
- Exposed target object in notifications where not available as a public field (V9+ only)
- Fixed issue when using conditions based on select lists and prevalues with captions
- Added workflow audit trail.
- Added workflow retry option.
- Added ability to redirect to an external site from workflows, after all have been completed.
- Ensured user group start folder aggregation for user's permissions doesn't include user groups that don't have access to Forms #772
- Added option for creating permissions on form for user groups to all groups, or all groups the creating user is part of.
- Added read-only, rich text Data Type (V9 and 10).
- Friendlier extensions for registering custom types (V10).
- Ensured the order of fields retrieved for a record from the database matches the field order defined on the form. #661
- The trigger for client-side conditions checked can now be configured between "change" (the default) and "input". #784
- Fixed issue with displaying entries where a member's Id was stored as a Guid via a custom membership provider. #798
- Added default logging for write and delete operations on forms, datasources, and prevalue sources #731
- Prevented the previous button on multi-page forms from triggering validation (which involved an update to the client-side validation library we have a dependency on when the website is not referencing jQuery) #741
- Removed reliance on class names for multi-page form navigation to allow removal in custom themes #740
- Added details of file upload supported extensions to the view model (that can be used in custom themes or field types) #744
- Remove inline scripts from the reCAPTCHA field type (completing the removal of all inline scripts started in the previous release and allowing for the setting of a stricter content security policy) #745
- Added configuration for a default email template to use when a new form is created
- Removed the Lato Google font from the shipped default email template due to reported privacy concerns
- Amended the post as XML workflow to no longer throw if the page name can't be determined (as it can't in a Heartcore setup)
- Added option for a querystring to indicate form submission which will better support the use of Umbraco pages with forms hosted in IFRAMEs from remote sites #758.
- Fixed issue with the use of back button returning to form and displaying submission message when previously having redirected to a new page.
- Resolves issue where an authenticated user with access to Forms can enumerate permissions related to forms access for other users.
- Setting of start folders for users
- Fixed null reference in backoffice user check for retrieving records outside of a backoffice request #724
- Additional translations for localized backoffice: Czech and Danish.