New version of Zinc incremental compiler for Scala


(Ismael Juma) #1

Hi all,

A heads-up, the old Zinc project under typesafehub/zinc (currently used by Gradle) is being replaced by sbt/zinc and the first release milestone of the latter is now available:

Zinc is the incremental compiler for Scala, originally part of sbt,
but now split up as a library. Unlike the older Zinc that was repackaged out of sbt artifacts,
this new Zinc is a genuine project built from source, published to Bintray and synced to Maven Central.
Zinc 1.0.0-M1 is cross built for both Scala 2.11 and 2.10, and
features class-based name hashing implemented by Grzegorz Kossakowski (see [1] for the correct pronunciation)

https://groups.google.com/d/msg/scala-announce/xWJfJ1zGn8w/MgOr1qGzBQAJ

A discussion on what is planned is taking place in issue 80 (unfortunately, I can’t include the link due to anti-spam restrictions in this forum).

It would be great for the Gradle project to eventually start using the new Zinc, so it may be worth participating in the ongoing discussion.

Regards,
Ismael


(Jacek Lewandowski) #2

This is already 2 years old post. Nothing changed since that time and we all suffer from Gradle being slow at compiling Scala projects:

  1. Scala plugin is not upgraded to support much faster Zinc 1.0
  2. Gradle does not support Zinc daemon mode which seriously slows down frequent rebuilds (documentation says that Gradle is going to introduce its custom solution, but it did not happen for years)
  3. Because of 2, parallel compilation of multi-module Scala projects slows down the whole build significantly because several Zinc instances are instantiated and each single one must warm up.

The question is - is Gradle going to take Scala seriously or Scala developers should start looking for other build tools?

Regards,
Jacek