[Git][ghc/ghc][wip/sjakobi/deprecate-option-v2] Deprecate Data.Semigroup.Option

Simon Jakobi gitlab at gitlab.haskell.org
Thu Jun 18 14:56:15 UTC 2020



Simon Jakobi pushed to branch wip/sjakobi/deprecate-option-v2 at Glasgow Haskell Compiler / GHC


Commits:
13bd5601 by Simon Jakobi at 2020-06-18T16:55:10+02:00
Deprecate Data.Semigroup.Option

Libraries email: https://mail.haskell.org/pipermail/libraries/2018-April/028724.html

GHC issue: https://gitlab.haskell.org/ghc/ghc/issues/15028

Corresponding PR for deepseq: https://github.com/haskell/deepseq/pull/55

Bumps the deepseq submodule.

- - - - -


3 changed files:

- libraries/base/Data/Semigroup.hs
- libraries/base/changelog.md
- libraries/deepseq


Changes:

=====================================
libraries/base/Data/Semigroup.hs
=====================================
@@ -514,6 +514,8 @@ mtimesDefault n x
   | n == 0    = mempty
   | otherwise = unwrapMonoid (stimes n (WrapMonoid x))
 
+{-# DEPRECATED Option, option "will be removed in GHC 8.14; use 'Maybe' instead." #-}
+
 -- | 'Option' is effectively 'Maybe' with a better instance of
 -- 'Monoid', built off of an underlying 'Semigroup' instead of an
 -- underlying 'Monoid'.
@@ -523,8 +525,7 @@ mtimesDefault n x
 --
 -- In GHC 8.4 and higher, the 'Monoid' instance for 'Maybe' has been
 -- corrected to lift a 'Semigroup' instance instead of a 'Monoid'
--- instance. Consequently, this type is no longer useful. It will be
--- marked deprecated in GHC 8.8 and removed in GHC 8.10.
+-- instance. Consequently, this type is no longer useful.
 newtype Option a = Option { getOption :: Maybe a }
   deriving ( Eq       -- ^ @since 4.9.0.0
            , Ord      -- ^ @since 4.9.0.0


=====================================
libraries/base/changelog.md
=====================================
@@ -14,6 +14,9 @@
   * The planned deprecation of `Data.Monoid.First` and `Data.Monoid.Last`
     is scrapped due to difficulties with the suggested migration path.
 
+  * `Data.Semigroup.Option` and the accompanying `option` function are
+    deprecated and scheduled for removal in 4.16.
+
   * Add `Generic` instances to `Fingerprint`, `GiveGCStats`, `GCFlags`,
     `ConcFlags`, `DebugFlags`, `CCFlags`, `DoHeapProfile`, `ProfFlags`,
     `DoTrace`, `TraceFlags`, `TickyFlags`, `ParFlags`, `RTSFlags`, `RTSStats`,


=====================================
libraries/deepseq
=====================================
@@ -1 +1 @@
-Subproject commit da0eda33f540786b6823c6f542ab59cf9d1b71d9
+Subproject commit 0ade68f6f54d621132e9bb5f9e3c5fe01f45091f



View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/13bd5601af8228fc95db7f01b006fb7742e95254

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/13bd5601af8228fc95db7f01b006fb7742e95254
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20200618/1365b02c/attachment-0001.html>


More information about the ghc-commits mailing list