Skip to content

4.0.0-beta0001

Compare
Choose a tag to compare
@robdmoore robdmoore released this 02 May 13:43
· 64 commits to master since this release
34705ca

ChameleonForms now works against netcoreapp3.1!

Huge thanks to @zabulus for assisting with this epic conversion. This conversion started from the work @zabulus did in #161 to get ChameleonForms largely working in .NET Core 3.0 in February 2020 (after some initial work in February 2019 to start converting to .NET Core 2). I then took the initial port, and over the last 22 days poured over every line of code (including the tests) and brought it up to production quality with as many idiomatic .NET Core features as possible across 69 commits. This includes a full review of the documentation.

As part of this the following enhancements have also been made:

  • Improved handling of binding and server-side validation of enum lists and flag enums
  • Added HTML5 type attributes for numbers (integral and floating point, including proper use of step), emails, URLs
  • Added HTML5 required attributes to required fields
  • Added aria-describedby to link hints with their form fields for screen readers
  • Added support for aspnet-validation (jQuery-less equivalent) in addition to jQuery Unobstrusive Validation
  • Added service collection registration method (.AddChameleonForms), including fluent builder to allow for global configuration
  • Supported . date separator in client-side format-aware datetime validation library

The breaking changes are documented in BREAKING_CHANGES.md as per usual.

The plan from here is to keep it as a pre-release (beta) until bootstrap 4 and tag helper support is added (which feels like the idomatic way of using ChameleonForms in .NET Core), upon which it will be released as 4.0.0. Due to the high levels of test coverage we have a high degree of confidence in this release and are happy to recommend it's use in production scenarios using the existing HTML Helper / using driven syntax (which still works great!).