# Version 0.6.0
* COMPILER ASSISTED BREAKING CHANGE: `KindInteger.Integer` is now
is now only ever used as a kind. So, all term-level functions in
the `KindInteger` consume and produce `Prelude.Integer`s.
* COMPILER ASSISTED BREAKING CHANGE: Removed `Eq`, `Ord`, `Show` and
`Read` instances for `KindInteger.Integer`.
* COMPILER ASSISTED BREAKING CHANGE: `Z` is now used to represent
zero, instead of the previous `P 0`.
* COMPILER ASSISTED BREAKING CHANGE: `P 0` and `N 0` are not
`KnownInteger`s anymore.
* COMPILER ASSISTED BREAKING CHANGE: `KnownInteger` is now a type-synonym
that implies `Normalized i ~ i` and `KnownNat (Abs i)` as well.
* Added `readPrecTypeLit`.
* Added `Normalized`.
* Added `singletons-base` support for `Integer`, including `PNum`, `SNum`,
`PEq`, `SEq`, `POrd`, `SOrd`, `PShow` and `SShow`. Most arithmetic
functions are now exported through `PNum` and `SNum`, rather than standalone.
* Added `ShowLit`, `ShowsLit`, `ShowsPrecLit` and its singletons and
promoted versions.
* Added `Fold` and `sFold`.
* Added defunctionalization symbols.
* Added ZigZag encoding and decoding tools.
# Version 0.5
* COMPILER ASSISTED BREAKING CHANGE: `integerVal`, `someIntegerVal`,
`fromSInteger` and `withSomeSInteger` now deal with `KindInteger`'s
`Integer`s, rather than `Prelude`'s `Integer`s.
* COMPILER ASSISTED BREAKING CHANGE: Removed `fromSInteger'`.
* Added `SingI` and `SingKind` instances.
# Version 0.4
* COMPILER ASSISTED BREAKING CHANGE: `TestEquality` and `TestCoercion` consider
`N 0` and `P 0` to be different.
* BREAKING CHANGE: The `Integer` inside `SInteger`s is not automatically
normalized anymore. This is so that `SDecide`, `TestEquality` and
`TestCoercion` behave as expected, treating `N 0` and `P 0` differently.
This is mostly an internal change, but it can be observed in the `Show`
instance for `SInteger`, for example.
* Added role annotations to `SInteger`.
* Add dependency on `singletons` so that we can give a `Sing` and `SDecide`
instances for type-level `Integer`s.
* Export `fromSInteger'`, `eqIntegerRep`.
# Version 0.3
* COMPILER ASSISTED BREAKING CHANGE: Renamed `Mod` to `Rem`, `DivMod` to
`DivRem`, `mod` to `rem`, `divMod` to `divRem`.
# Version 0.2
* COMPILER ASSISTED BREAKING CHANGE: Removed `Div`, `Mod`, `Quote`
and `Rem` in favour of more polymorphic `Div`, `Mod`.
* COMPILER ASSISTED BREAKING CHANGE: Removed `integerVal'`. Nothing
wrong with it, just redundant.
* Export `Sign`, `Abs`, `GCD`, `LCM`, `Odd`, `Even`, `toPrelude`,
`fromPrelude`, `showsPrecTypeLit`, `div`, `mod`, `divMod`,
`DivMod`.
* Add `Eq`, `Ord`, `Show`, `Read` instances for `Integer`.
* Minor cabal and documentation improvements.
# Version 0.1
* Initial version.