Spire v0.17.0-M1 Release Notes
Release Date: 2019-06-16 // over 5 years ago-
No data yet ๐
You can check the official repo
Previous changes from v0.16.0
-
๐ This version implements major changes; most importantly, Scala 2.10 has been dropped. The commutative ring tower has been precised: Euclidean division has better semantics, and unique factorization domains have been introduced, generalizing
spire.math.prime
. Some species of division with remainder are now described byTruncatedDivision
. An involution typeclass abstracts over complex conjugation. We also revised the use of commutative vs. noncommtutative rings, mostly in the construction of complex numbers/quaternions, and in the definition of modules.๐ Preliminary work has been done towards the modularization of Spire. A
platform
module abstracts over the JVM/JS differences, whileOpt
has been moved to theutil
module. Other modules are not used yet (data
,legacy
) but will be in the future.- Removed support for Scala 2.10
- Upgraded SBT version to 1.1.5
- Upgraded to Scala 2.12.6
- Introduced the platform and util modules
- Added a few modules for future modularization: legacy, data
- Introduced unique factorization domains.
- Renamed quot/mod to equot/emod (Euclidean rings).
- Introduced principled truncated division semantics (see https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/divmodnote-letter.pdf ).
- Added return types to public methods
- Version upgrades for Scalacheck, Scalatest, Shapeless, Discipline, Machinist and Scala versions
- Added a docs project using tut, README is compiled under tut.
- Bug fixes to signum
- Fixes to Modules (i.e. generalizations of vector spaces) with respect to commutativity, introduced left and right modules
- Complex numbers and quaternions are now defined on a commutative ring
- Introduced limited range tests for primitive types,
- Involution typeclass