Announcing the releases of scala-java-time 2.0.0-M2 and scala-java-locales 0.3.0+29, and the upcoming release of sbt-testng 4.0.0-M0!

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Announcing the releases of scala-java-time 2.0.0-M2 and scala-java-locales 0.3.0+29, and the upcoming release of sbt-testng 4.0.0-M0!

Simon Ochsenreither-3

Hi everyone!

Carlos Quiroz and me, Simon Ochsenreither, are happy to announce the releases of the following Scala libraries:



Release of scala-java-time 2.0.0-M2 (by Simon Ochsenreither)

The scala-java-time project provides an implementation of the java.time package, a date and time library that was added in Java 8. The implementation is based on the original BSD-licensed reference implementation (before it was contributed to OpenJDK).


Usage


The scala-java-time library is currently available for Scala (JVM, version 8 and later) and Scala.js (JavaScript). Both Scala 2.11 and Scala 2.12 (2.12.0-M5 and later) are supported.

To get started with SBT, add one (or both) of these dependencies:

    libraryDependencies += "io.github.soc" %   "scala-java-time" % "2.0.0-M1" (for Scala)
    libraryDependencies += "io.github.soc" %%% "scala-java-time" % "2.0.0-M1" (for Scala.js, Scala.js plugin required)



Status

Most parts of this library work perfectly fine with Scala.js in the browser. Locale and formatting support relies on @cquiroz' excellent scala-java-locales library. Timezone support is limited and providing the missing pieces is the current focus of this project.


Contributing

We welcome all contributions, including ideas, suggestions, bug reports, bug fixes and code! We are especially interested in contributions that tackle the following issues:

  • Support for formatting: Formatting uses a lot of JDK classes, which we might need to reimplement.

  • Support for Calendar, GregorianCalendar, TimeZone: These very old classes from java.util are referenced by java.time. It would be great to have them working!

  • Support for timezones: The timezone information is read from a binary blob, which won't work in the browser. We will have a look at other projects like moment.js and decide whether we want to use the same format, or come up with our own.


Have a look at the issues to find something to work on! Let us know if you need help!


Plans


2.0

  • We will keep releasing milestone builds while work on the remaining bits and pieces to support 100% of this library on Scala.js is ongoing (most parts work fine already).

  • The last milestone will rename the package name from org.threeten.bp to java.time.

  • A stable release of 2.0 will be published after a (hopefully) short RC phase.

3.0

  • As soon as Scala-Native provides cross-compilation capabilities we will investigate what's necessary to compile this library to native code.



Release of scala-java-locales 0.3.0+29 (by Carlos Quiroz)

scala-java-locales is a clean-room BSD-licensed implementation of the java.util.Locale API and related classes as defined on JDK8, mostly for Scala.js usage.
It enables the locale API in Scala.js projects and supports usage requiring locales like number and dates formatting.

To use the library, simply add the following line to your sbt settings:

    libraryDependencies += "com.github.cquiroz" %%% "scala-java-locales" % "0.3.0+29"



Upcoming release of sbt-testng 4.0.0-M0 (by Simon Ochsenreither)

sbt-testng, SBT's interface for the TestNG framework, has gained Scala.js support.

This means that existing TestNG tests can now run on Scala.js (some exceptions apply).

To facilitate this, sbt-testng received interface, runtime and plugin implementations for Scala.js.


Additionally, there is now ScalaJSTestNGPlugin which configures your Scala.js project to run TestNG tests without exposing any of the intricate compiler plugin setup. (Which is necessary because Scala.js does not support runtime reflection, therefore all test-related annotations need to be processed at compile-time.)


None of this would have been possible without Scala.js hero Sébastien Doeraene's () generous help and advice and Nicolas Stucki's (nicolasstucki) amazing Scala.js JUnit support from which most code was derived!






Thanks!


Carlos and Simon



--
You received this message because you are subscribed to the Google Groups "scala-announce" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
For more options, visit https://groups.google.com/d/optout.