Scalacheck 1.16.0 is binary compatible with the 1.15.x and 1.14.x series. It is published for Scala 2.12, 2.13, and 3.1+ with Scala.js 1.8+ and Scala Native 0.4. This release is the first to support Scala 3 on the Native platform.
- Adds Discord badge by @paualarco in typelevel#814
- ScalaCheck follows semver since 1.14.x by @larsrh in typelevel#793
- Improve docs for Arbitrary by @ashawley in typelevel#806
- Update examples to 3.0 by @ashawley in typelevel#813
- Add badge to README showing supported versions of Scala by @rtyley in typelevel#819
- Fix
Arbitrary[Year]
instance max value by @dantb in typelevel#825 - Check roundtrip in serialize tests by @ashawley in typelevel#829
- Fix
Arbitrary[Char]
generates 0xFFFE (not a character in Unicode) by @kadzuya in typelevel#835 - Ensure preconditions are satisified when shrinking Commands actions by @jonaskoelker in typelevel#739
- Support
java.time
arbitraries on Scala.js & Native by @armanbilge in typelevel#830 - Enable published snapshots by @armanbilge in typelevel#877
- Onwards and upwards by @armanbilge in typelevel#879
- Binary compatible with 1.15.3 version of ScalaCheck.
-
Docs for
Gen
by @ashawley #783 -
Add Arbitrary[Symbol] by @ashawley
-
Add Cogen Instance For UUID by @isomarcte #763
-
Verbosity level for pretty-printing proofs by @ashawley #789
-
Hide ambiguous implicit buildableSeq by @ashawley #788
-
Cleanup of time by @ashawley #781
-
Initialize StringBuilder to suitable size by @martijnhoekstra #778
-
update ScalaCheck version in examples by @SethTisue #766
-
Fix tuple serialization by @ashawley and @yhylord
-
Fix overflow with Prop.all by @ashawley
-
Fix Off By One Error In JavaTimeChoose by @isomarcte
-
Fix typos by @bwignall #767
- Binary compatible with 1.15.2 version of ScalaCheck.
-
Update Scala.js to 1.5.0 #757
-
Support for Scala Native 0.4.0 by @larsrh #751
-
Add Cogen.domainOf by @nigredo-tori #756
- Make printing of Commands failures more readable by @jonaskoelker #634
- Binary compatible with 1.15.1 version of ScalaCheck.
-
Avoid filtering in
nonEmptyBuildableOf
#709 -
Drop support for Scala.js 0.6 #713
-
Add support for Scala.js on Scala 3 #713
- Binary compatible with 1.15.0 version of ScalaCheck.
- No user-visible changes.
-
Return types of
Gen.someOf
andGen.atLeastOne
corrected to preserve source compatibility with Scala 2.13 artifact for 1.14.3 ScalaCheck. #696 -
Fix breakage with version of
Gen.pick
that takes multiple arguments ofGen[T]
. #695
- No added features.
-
Binary compatible with 1.14.3 version of ScalaCheck.
-
Source incompatible type signatures of
Gen.atLeastOne
andGen.someOf
in Scala 2.13 artifact(s) of 1.14.3 version of ScalaCheck that will be fixed in 1.15.1.
-
Dropped support for Scala 2.10.x
-
Remove implicit for
Prop.BooleanOperators
which was deprecated in 1.14.1 in favor ofProp.propBoolean
#667 -
Added support for Dotty (currently 0.27)
-
Various improvements to
Gen
andArbitrary
-
Improvements to
Char
andString
generators -
Single-argument
Prop.collect
is deprecated #449
-
Prevent nesting properties #677
-
Seed with four zeroes is not allowed #674
-
Printing order of shrunk values #635
-
Initial seed was reused #651
-
Choose[BigDecimal]
#670 -
Choose[BigInt]
#636 -
Statistical distributions (e.g. Gaussian, Poisson) #656
-
Shrinking with
LazyList
for Scala 2.13 compatibility #626 #627 -
Shrink.suchThat
#484
-
Update Scala.js to 1.0.0-RC2, previously was 1.0.0-M8.
-
Update Scala.js to 0.6.31, previously was 0.6.29.
- Ensure posNum and negNum always return values #568
- Binary compatible with 1.14.1 version of ScalaCheck.
- No user-visible changes.
- Tests are not being run at all on Scala.js #557
- No added features.
-
Further improvements to ScalaCheck release script
-
Update build to sbt 1.3.2
-
Update MiMa plugin to 0.6.1
-
Update sbt-pgp to 2.0.0
-
Update Scala.js example project
This release was made possible by contributions from the following people:
- Aaron S. Hawley
- Erik Osheim
- Scala Steward
- Kenji Yoshida
- Binary compatible with 1.14.0 version of ScalaCheck.
-
Deprecate ambiguous implicit
Prop.BooleanOperators
to prepare for Dotty compilation #498 -
Show seed when failing test #400
-
Underlying implementation of
Arbitrary[Option[T]]
is now equivalent toGen[Option[T]]
#401 -
Update Scala.js 1.x to 1.0.0-M8, previously was 1.0.0-M3
-
The phrases "EPFL" and "copyright owner" in the license were changed to "copyright holder" #461
-
Fix overridding parameters with
overrideParameters
inProperties
#289, #360 -
Fix shrinking of commands in 2.12 #468
-
Fix
Gen.posNum
andGen.negNum
so it gives real numbers less than one #451 -
Fix independence of properties with
Prop.&&
withviewSeed
enabled by sliding the seed inProp.flatMap
#531 -
Fix stackoverflow of
Pretty.break
#476 -
Fix error handling of command-line parsing #522
-
Artifact for Scala.js 1.0.0-M8 for Scala 2.12 was defective #496
-
Improve error messages for invalid command-line parameters #497
-
Small fixes to source code for the Dotty compiler #423
-
Fix compilation error in test runner for Java 11 #406
-
Fix compilation error in pretty-printer for Java 11 and later #430
-
Fix deprecation in ScalaCheck's internal tokenizer for Java 11 and later #433
-
Various corrections and improvements to the api docs #415, #417, #420, #428, #467, #524
-
Add new command-line option
-disableLegacyShrinking
#522 -
Add new command-line option
-initialSeed
#522 -
Add new methods for disabling and enabling shrinking to
Test.Parameters
#522 -
Add support for
scala.util.Either
inGen
#409 -
Add new overloaded version of
Gen.oneOf
that takes wider type ofIterable
#438 -
Add hexadecimal character and string generators
Gen.hexChar
andGen.hexStr
#470
-
The GitHub repository has been moved from Rickard Nilsson's private account to a repository under the Typelevel organization.
-
ScalaCheck has adopted the Scala code of conduct.
-
Erik Osheim accepted greater responsibility for ScalaCheck's maintenance and development.
-
Aaron S. Hawley was added as a maintainer.
This release was made possible by contributions from the following people:
- Cody Allen
- Philippus Baalman
- Gio Borje
- Ryan Brewster
- Sébastien Doeraene
- Bruno Hass
- Aaron S. Hawley
- Magnolia K.
- Guillaume Martres
- Rickard Nilsson
- Erik Osheim
- Allan Renucci
- Nicolas Rinaudo
- Lukas Rytz
- Thomas Smith
- David Strawn
- Seth Tisue
- Kenji Yoshida
-
Binary incompatible with earlier versions of ScalaCheck. Make sure that any other test frameworks you're using are binary compatible with this release of ScalaCheck.
-
The source code license was changed to the unmodified 3-clause BSD license. Previously, a slightly reworded 3-clause BSD license was used.
-
Deadlock in test runner (typelevel#290).
-
Distribution issues in
Gen.pick
. -
Infinity issues in
Gen.choose
. -
Issues with test reporting when running sbt in forked mode.
-
An
initialSeed
test parameter that can be set to make property evaluation deterministic. If the same seed is used, the generated test cases will be the same. By default, this initial seed is randomized (like in previous versions of ScalaCheck). -
A
filterNot()
method on generators. -
New generator combinator:
atLeastOne()
. -
New generators and
Arbitrary
instances for various types. -
Add support for
scala.collection.immutable.LazyList
in Scala 2.13, includingGen.infiniteLazyList
andArbitrary[LazyList[T]]
(typelevel#410) -
Support for filtering properties in the test runner (typelevel#267).
-
Support for setting the report column width used by the test runner.