Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.


Join the chat at

Flexible law checking for Scala

Build Status


This library is currently available for Scala binary versions 2.11 and 2.12.

To use the latest version, include the following in your build.sbt:

libraryDependencies +=
  "org.typelevel" %% "discipline" % "0.10.0"

For a little more info see the "Law Enforcement using Discipline" blog post.

Binding to test frameworks

Discipline is built against ScalaCheck 1.14.x. There is also a published artifact for scala.js.

There are bindings for Specs2 and ScalaTest. Since Discipline depends on them optionally, you have to add either one to your build explicitly:

libraryDependencies +=
  "org.scalatest" %% "scalatest" % "3.0.5"
  // or
  "org.specs2" %% "specs2-scalacheck" % "4.3.0"