Lift Framework 3.0-RC1: Release Candidate
Pre-release
Pre-release
This release features the last tidbits before 3.0 goes out the door. These
include some cleanup, a bunch of dependency bumps, and a couple of
fixes to bugs discovered during use of 3.0-M8. No feature work landed in
this release, and only bug fixes will be permitted before the next release.
If we don't see any bugs in the next 2-4 weeks, we'll be releasing Lift 3.0.
We're all super excited to be this close to a final release!
Breaking Changes
- (#1766) lift-json's
\\
used to return aJValue
. In cases where it matched
a single field directly, it would return the field's value rather than a consistent
container type. Matching multiple fields would return aJObject
with the
matched fields in it. Now,\\
always returns aJObject
with the matching
fields in it, even if there is only one such field. This may require adapting
certain uses of\\
, especially infor
comprehensions. Code like
for (JString(name) <- object \\ "name")
will have to be changed to
something more likefor (JField(_, JString(name)) <- object \\ "name")
to
work correctly. Thanks to @eallik for reporting! - (#1773, #1779) Lift was depending on outdated versions of many libraries.
We've bumped those dependencies, so we now depend on specs2 3.7 and
Java Servlet 3.1. All other version bumps were non-major, including
lift-json-scalaz now depending on Scalaz 7.2. See the dependency file's diff for the full breakdown of dependency updates.
Improvements
- (#1772) When
JsCmd
s includingNoop
were combined with&
, you
would get a lot of empty lines, since eachNoop
would emit some empty
lines in those cases. Now, we ignoreNoop
when combiningJsCmd
s,
which should lead to reduced noise in serialized JS output. The most
immediate impact is that page-specific JavaScript will be much more compact
than it was before.
Fixes
- (#1779)
Props.whereToLook
works correctly again. In 3.0-M8, we expanded
the abilities ofProps
to read from arbitrary sources. Unfortunately, in the
process, we broke thewhereToLook
setting that allowed you to adjust the
search paths forProps
to look for named property files. This has been fixed
in RC1. Thanks to @serioga for reporting! - (#1769) Lift's JavaScript settings customization was set up such that you couldn't
override things provided by Lift'sliftVanilla
orliftJQuery
objects. This is now
fixed, so custom JavaScript settings can build on and override those base functions.
Thanks to @joescii for reporting… And fixing! ;)