Happy New Year Everyone,
Recently we released Binding.scala 11.0.0, a data-binding framework for Scala, running on both JVM and Scala.js. Binding.scala can be used as a reactive templating language for both Web and desktop GUI. It enables you to use native XHTML/FXML literal syntax to create reactive GUI nodes, changed automatically whenever the corresponding data sources change.
This is the first stable release of Binding.scala 11 branch.
Changes between Binding.scala 11 and 10
- Experimental support for FXML
- Deprecating
Route.watchHash
. Now an explicitwatch
call onRoute.Hash
is recommended. - Deprecating
get
and:=
method, in favor ofvalue
andvalue_=
- Making
Constant
andConstants
extendAnyRef
instead ofAnyVal
. This change will slightly improve the performance (explained here).
Source and binary compatibility
The version number of Binding.scala aims to conform with SemVer.
- Binding.scala 11.0.0 is almost source compatible with 10.0.x, but not binary compatible with 10.0.x.
- The subsequent 11.0.x release will keep both forward and backward compatibility with 11.0.0.
- The version number will bump to 11.1.x when breaking the forward compatibility or deprecating any 11.0.0 API.
The only exception is the FXML library, which is experimental and may change API during Binding.scala 11 lifecycle.
Binding.scala 11 is supposed to be the last major version for Scala 2. The backward compatibility will never be broken until a future version of new design for Dotty or Scala 3.
Contributors
Committers for Binding.scala 11 are:
There are more people who contribute for Binding.scala in other ways, including discussing in our Gitter chat room, reporting bugs, asking and answering StackOverflow questions and creating DEMOs or tutorials:
- Discussion on Gitter
- Questions on StackOverflow
- Tutorials:
- DEMOs:
The above list contains only some of your contributions in 2017. Thanks to all of you and everyone else who has contributed ideas, enthusiasm and encouragement.