Skip to content

Lift-formality 1.0.0: All done!

Compare
Choose a tag to compare
@Shadowfiend Shadowfiend released this 14 Nov 22:14
· 61 commits to master since this release

Not all done, but a first release!

@elemica is now formally using lift-formality in production, so
things are kicking up. 1.0.0 has some pretty extensive features,
which are detailed in the 1.0.0 README. Here's a few:

  • Define fields that deserialize to a particular type other than
    String in a defined way.
  • Define fields that consist entirely of CSS selector transforms,
    leaving the markup types entirely in HTML (e.g., the field types
    like number, range, etc).
  • Add validations to fields that operate on the deserialized type.
  • Group primitive and complex fields together into field groups,
    whose component parts can be composed into container types
    that make sense in your domain.
  • Handle the final success and failure states of a form in your domain
    data types.
  • Integrate with Lift's internal error reporting features.
  • Create forms that are defined in a functional way, with lift-formality
    handling all the statefulness behind the scenes.

I'm certain more needs will come up in the future and we'll deal with
them as they come---just file a note in the Github issues!

What's Not Included

Two big things aren't here:

  • Support for Lift 3.0.0. This should be forthcoming soon.
  • Support for Scala 2.12. Since Lift 2.6 and Lift 3.0 can't be compiled
    for Scala 2.12 yet, we're holding off on lift-formality as well. Once
    we can compile Lift for Scala 2.12 (hopefully in 2.12.1), we'll publish
    a version of lift-formality that works with it as well.