Add Hackage-supported `changelog.md` file
authorHerbert Valerio Riedel <hvr@gnu.org>
Wed, 29 Jan 2014 12:53:27 +0000 (13:53 +0100)
committerHerbert Valerio Riedel <hvr@gnu.org>
Wed, 29 Jan 2014 12:56:51 +0000 (13:56 +0100)
The contents has been ripped from the release notes. I've used markdown
as this may allow for automatic conversion to docbook XML in the future,
should we choose to maintain the `base` changelog in a more human-friendly
markup format and closer to the `base`-source tree.

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
changelog.md [new file with mode: 0644]

diff --git a/changelog.md b/changelog.md
new file mode 100644 (file)
index 0000000..87114cb
--- /dev/null
@@ -0,0 +1,60 @@
+# Changelog for [`base` package](http://hackage.haskell.org/package/base)
+
+## 4.7.0.0  *Feb 2014*
+
+  * Bundled with GHC 7.8.1
+
+  * The `Control.Category` module now has the `PolyKinds` extension
+    enabled, meaning that instances of `Category` no longer need be of
+    kind `* -> * -> *`.
+
+  * There are now `Foldable` and `Traversable` instances for `Either a`,
+   `Const r`, and `(,) a`.
+
+  * There is now a `Monoid` instance for `Const`.
+
+  * There is now a `Data` instance for `Data.Version`.
+
+  * There are now `Eq`, `Ord`, `Show` and `Read` instances for `ZipList`.
+
+  * There are now `Eq`, `Ord`, `Show` and `Read` instances for `Down`.
+
+  * There are now `Eq`, `Ord`, `Show`, `Read` and `Generic` instances
+    for types in GHC.Generics (`U1`, `Par1`, `Rec1`, `K1`, `M1`,
+    `(:+:)`, `(:*:)`, `(:.:)`).
+
+  * A zero-width unboxed poly-kinded `Proxy#` was added to
+    `GHC.Prim`. It can be used to make it so that there is no the
+    operational overhead for passing around proxy arguments to model
+    type application.
+
+  * `Control.Concurrent.MVar` has a new implementation of `readMVar`,
+    which fixes a long-standing bug where `readMVar` is only atomic if
+    there are no other threads running `putMVar`.  `readMVar` now is
+    atomic, and is guaranteed to return the value from the first
+    `putMVar`.  There is also a new `tryReadMVar` which is a
+    non-blocking version.
+
+  * There are now byte endian-swapping primitives available in
+    `Data.Word`, which use optimized machine instructions when
+    available.
+
+  * `Data.Bool` now exports `bool :: a -> a -> Bool -> a`, analogously
+    to `maybe` and `either` in their respective modules.
+
+  * Rewrote portions of `Text.Printf`, and made changes to `Numeric`
+    (added `Numeric.showFFloatAlt` and `Numeric.showGFloatAlt`) and
+    `GHC.Float` (added `formatRealFloatAlt`) to support it.  The
+    rewritten version is extensible to user types, adds a "generic"
+    format specifier "`%v`", extends the `printf` spec to support much
+    of C's `printf(3)` functionality, and fixes the spurious warnings
+    about using `Text.Printf.printf` at `(IO a)` while ignoring the
+    return value.  These changes were contributed by Bart Massey.
+
+  * The minimal complete definitions for all type-classes with cyclic
+    default implementations have been explicitly annotated with the
+    new `{-# MINIMAL #-}` pragma.
+
+  * `Control.Applicative.WrappedMonad`, which can be used to convert a
+    `Monad` to an `Applicative`, has now a
+    `Monad m => Monad (WrappedMonad m)` instance.