19 8 / 2014

scalikejdbc 2.1.0.RC1

ScalikeJDBC 2.1.0.RC1 is out.

http://scalikejdbc.org/

ScalikeJDBC Logo

Changes

  • [core] joda-time 2.3 -> 2.4
  • [core] Bumped scala-parser-combinators to 1.0.2 in Scala 2.11
  • [core] #267 Improve logging to include connection pool factory name by @cb372
  • [interpolation] #266 Add support for Set in SQL interpolation by @cb372
  • [jsr310] #270 Add optional JSR-310 support library (refs #222)
  • [interpolation] #272 Added SQLSyntax Support macro by @gakuzzzz

Migration Guide

deprecated methods are removed

Remove depreacated methods from scalikejdbc.WrappedResultSet.

See in detail: https://github.com/scalikejdbc/scalikejdbc/issues/222

Enjoy writing mostly type-safe SQL and get things done!

ScalikeJDBC is a tidy SQL-based DB access library for Scala.

19 8 / 2014

salat 1.9.9

Salat 1.9.9 is a maintenance release that provides:

  • Bugfix to support optional Enums (thanks to Konstantin Abakumov)
  • Bugfix to address default argument for ObjectId when deserializing JSON (thanks to Alex Wajda)

Salat is a simple serialization library for case classes.

Salat currently supports bidirectional serialization for:

  • MongoDB’s DBObject (using casbah)
  • JSON (using JSON4S)
  • maps

Find us online:

Salat is an Open Source project under the Apache License v2.

18 8 / 2014

lift-ng 0.5.1

#liftng

#scala @liftweb @angularjs

  • Corrected a bug exposed by 2-way binding that our early-arrival mechanism to not work if angular.js files are specified at the end of the HTML.
  • Made it possible to add binding actors in the HTML templates without introducing an extra element. Thanks to Antonio for the suggestion!

lift-ng is the most powerful, most secure AngularJS backend available today

16 8 / 2014

lift-ng 0.5.0

#liftng

#scala @liftweb @angularjs

  • Implemented 2-way client/server model binding.
  • Added support for Scala 2.11 against Lift editions 2.6 and 3.0.

What Is Client-Server Binding?

Just as Angular provides declarative 2-way binding between the model and view with automatic synchronization, lift-ng features (a rather experimental) 2-way binding of a model between the client and server. Any changes made on the server are reflected in the client, and vice versa. See the README for more details.

Optimizations

The reduce the network overhead, changes to a bound model on the server will be communicated to the client by sending only a diff. Since watching scope variables on the client can produce a flood of changes (e.g. each character entered in a text box will generate a change event), changes are queued up and sent after no more changes are detected for 1000 millis. The fourth argument to the SimpleBindingActor constructor or an override of clientSendDelay in BindingActor allows you to tweak this delay to your liking.

Caveats

Note that this feature will utilize more memory than others, paricularly on the server. We maintain the last known state of your model. This allows us to compare to any model changes provided and transmit only the diff from the server.

Currently the client sends the entire model back to the server on change. Soon we hope to support sending only the diff just like we do when sending from the server.

Arrays are not correctly supported yet. A client-side change to an array will append to the array on the server rather than replacing the respective values based on the index.

Removing stuff from a model on the server does not transmit to the client yet. Only changes or additions to the model will be synced up to the client.

Only 2-way binding is currently supported.

Only session-scoped binding is currently supported. That is, a model bound will be reflected on every page load for a given session.

lift-ng is the most powerful, most secure AngularJS backend available today

13 8 / 2014

specs2 2.4.1

Maintenance version

Improvements

  • Adding companion object to ExceptionMatchers for easy importing (by Zach Abbott)
  • better display for Traversable differences when using equality

==========================

specs2 is a library for writing software specifications in Scala.

For more information visit: http://specs2.org.

12 8 / 2014

lift-ng-js 0.1_1.2.22

Packaging of @angularjs 1.2.22 for @liftweb #scala

lift-ng-js is a convenient packaging of AngularJS modules for Lift

10 8 / 2014

kiama 1.7.0

The Kiama team is pleased to bring you the next release of the library. This release has significant enhancements in the pretty-printing library, but is otherwise a minor release. The release is cross-published for both Scala 2.10 and 2.11.

Enhancements

  • Output

    • The pretty-printing library now has combinators for side-by-side pretty-printing based on similar features of Haskell libraries. Specifically, column and nesting allow pretty-printing documents to depend on the current printing column and nesting level, respectively. Built on these basic combinators are: align which sets the indentation for a nested document to the current column, hang and indent which allow fine-tuning of indentation, width which allows the pretty-printing of a document to depend on the width of another document, and padto/padtobreak which can be used to pad a document to a specific width. <%> and <%%> allow alignment to be used as an operator.
  • Rewriting

    • The dup operation that is used to duplicate nodes during rewriting is more helpful when it fails by mentioning the common problem that rewritten classes cannot be nested inside another class.

Deletions

  • Utilities

    • ParserUtilities: the regexnows method has been removed to avoid duplication of code from the parser combinators library. We are exploring ways to better support whitespace processing in that library instead.

Fixes

  • Utilities

    • ParenPrettyPrinter: fixed doc of noparens method
    • REPL: fixed bug where an empty line of input caused REPL to exit
    • Kiama-specific command-line options are now all under --K so that user programs can use other letters for their purposes. E.g., the option to specify that console input should come from a string is --KConsole instead of -c and --console. Run a Kiama main program with --help to see the options.
  • Examples

    • Minor fixes and documentation improvements in Lambda2, MiniJava, Obr and Prolog examples

Other

  • Move to sbt 0.13.5, Scala 2.10.4/2.11.2, Scala parser combinators 1.0.2, ScalaTest 2.2.0, JLine 2.12

Kiama is a Scala library for language processing including attribute grammars, term rewriting, abstract state machines and pretty printing.

10 8 / 2014

dispatch 0.11.2

A few fixes and improvements

  • Apply a default Content-Type more carefully #84
  • Update to async http client 1.8.10 #85
  • Expose ahc’s interface for decoding a string response #88
  • Change key in emptyToken to null so it can be used to request access token #89

Dispatch is a library for asynchrous HTTP interaction in Scala.

10 8 / 2014

unfiltered 0.8.1

This release includes a refactoring of Jetty and Netty server builders (pull request #242). The new builders use immutable configuration objects and are more extensible. The old builders have been deprecated.

Migration in many cases is simply changing to the new Server constructors. Most of the old builder methods exist on the new builders, although notably filter and handler are deprecated in favor of plan.

Some examples:

// listen to http on port 8080, all network interfaces
unfiltered.jetty.Server.http(8080).plan(myFilter).run()

// listen to http on port 8080, local network interfaces
unfiltered.jetty.Server.local(8080).plan(myFilter).run()

// listen to http on some available port, local interfaces
unfiltered.jetty.Server.anylocal.plan(myFilter).run()

// listen to http on 80, https on 443, all interfaces
unfiltered.jetty.Server.http().https(
  keyStorePath=myKeyStorePath, keyStorePassword=myKeyStorePassword
).plan(myFilter).run()

// run a *netty* http server on 80, all interfaces
unfiltered.netty.Server.http()

Etc!

Other improvements include:

  • Get rid of the multiple close problem and remove some overhead #195
  • Avoid reflective calls (and scalac’s warnings about them) #216
  • Send a LastHttpContent marker after a ChunkedStream #219
  • compare last modified times using 1 second resolution #220
  • Resource leak and keep alive fixes for netty #222
  • Flush out HTTP headers for 304 responses #228
  • Support X-Forwarded-Proto and X-Forwarded-Port #235
  • Cycle and async plans should push websocket frames through the pipeline #237
  • Add an andThen alias for the ~> method of ResponseFunction #241
  • Scalatest 2.2.0 + updated module #243

Unfiltered is a toolkit for servicing HTTP requests in Scala.

07 8 / 2014

lift-ng 0.4.7

#liftng

#scala @liftweb @angularjs

  • Updated to work on pages that are in subdirectories. See Pull Request #4. Thank you voetha for the contribution!

lift-ng is the most powerful, most secure AngularJS backend available today