All kind of tips & tricks for people interested in contributing to unicorn.
A Travis job is set up for unicorn here. Each branch and PR is cross-tested against Scala 2.10.4, Scala 2.11.5, OpenJDK 7 and OpenJDK 8.
Unicorn uses scoverage plugin for code coverage. To run it, use:
sbt clean coverage test
(clean is important)
Results are placed in unicorn\unicorn-core\target\scala-2.11\scoverage-report and unicorn\unicorn-play\target\scala-2.11\scoverage-report.
Minimum coverage is set for both projects, 100% for unicorn-play and 98% for unicorn-core (there are some DB screw-ups that are hard to test there), so all code you add to project have to be 100% test-covered, otherwise Travis build will fail.
Before release you must have access to Sonatype and have PGP keys for signing artifacts.
To automate release process, unicorn uses sbt-release plugin. To release a new version, just use sbt release and follow instructions. For more information, see plugin docs.
Warn - You should not update version file (version.sbt) yourself, sbt-release does it for you.