Skip to content

Commit 7982475

Browse files
authored
Use microlens package family instead of lens-family-core (#2642)
* Use microlens package family instead of lens-family-core * Deprecate Dhall.Optics.Getting * Use Lens.Micro.Lens' and Lens.Micro.lens where appropriate * Ran stylish-haskell * Deprecate Dhall.Optics module All optics in that module are now available in the latest microlens package. Also got rid of profunctors dependency. * Adjusted Stack configurations * Added lens-family-th to Stack configuration again * Do not use Dhall.Optics in dhall-json package
1 parent a5ca632 commit 7982475

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+183
-228
lines changed

dhall-docs/dhall-docs.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ Library
7474
dhall >= 1.38.0 && < 1.43,
7575
file-embed >= 0.0.10.0 ,
7676
filepath >= 1.4 && < 1.6 ,
77-
lens-family-core >= 1.0.0 && < 2.2 ,
77+
microlens >= 0.4 && < 0.5 ,
7878
lucid >= 2.9.12 && < 2.12,
7979
mmark >= 0.0.7.0 && < 0.8 ,
8080
-- megaparsec follows SemVer: https://github.com/mrkkrp/megaparsec/issues/469#issuecomment-927918469

dhall-docs/src/Dhall/Docs/CodeRenderer.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ import qualified Dhall.Core as Core
6464
import qualified Dhall.Map as Map
6565
import qualified Dhall.Parser
6666
import qualified Dhall.Pretty
67-
import qualified Lens.Family as Lens
67+
import qualified Lens.Micro as Lens
6868
import qualified Prettyprinter as Pretty
6969
import qualified Prettyprinter.Render.Text as Pretty.Text
7070
import qualified Text.Megaparsec.Pos as SourcePos

dhall-json/dhall-json.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ Library
4646
dhall >= 1.42.0 && < 1.43,
4747
exceptions >= 0.8.3 && < 0.11,
4848
filepath < 1.6 ,
49-
lens-family-core >= 1.0.0 && < 2.2 ,
49+
microlens >= 0.4.14.0 && < 0.5 ,
5050
optparse-applicative >= 0.14.0.0 && < 0.19,
5151
prettyprinter >= 1.7.0 && < 1.8 ,
5252
scientific >= 0.3.0.0 && < 0.4 ,

dhall-json/src/Dhall/JSON.hs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -241,12 +241,11 @@ import qualified Dhall.Core as Core
241241
import qualified Dhall.Import
242242
import qualified Dhall.JSON.Compat as JSON.Compat
243243
import qualified Dhall.Map
244-
import qualified Dhall.Optics
245244
import qualified Dhall.Parser
246245
import qualified Dhall.Pretty
247246
import qualified Dhall.TypeCheck
248247
import qualified Dhall.Util
249-
import qualified Lens.Family as Lens
248+
import qualified Lens.Micro as Lens
250249
import qualified Options.Applicative
251250
import qualified Prettyprinter.Render.Text as Pretty
252251
import qualified System.FilePath
@@ -1156,7 +1155,7 @@ data SpecialDoubleMode
11561155
handleSpecialDoubles
11571156
:: SpecialDoubleMode -> Expr s Void -> Either CompileError (Expr s Void)
11581157
handleSpecialDoubles specialDoubleMode =
1159-
Dhall.Optics.rewriteMOf Core.subExpressions rewrite
1158+
Lens.rewriteMOf Core.subExpressions rewrite
11601159
where
11611160
rewrite =
11621161
case specialDoubleMode of

dhall-json/src/Dhall/JSONToDhall.hs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,7 @@ import Data.Void (Void)
376376
import Dhall.Core (Chunks (..), DhallDouble (..), Expr (App))
377377
import Dhall.JSON.Util (pattern FA, pattern V)
378378
import Dhall.Parser (Src)
379+
import Lens.Micro (rewriteOf)
379380
import Options.Applicative (Parser)
380381

381382
import qualified Data.Aeson as Aeson
@@ -393,7 +394,6 @@ import qualified Dhall.Import
393394
import qualified Dhall.JSON.Compat as JSON.Compat
394395
import qualified Dhall.Lint as Lint
395396
import qualified Dhall.Map as Map
396-
import qualified Dhall.Optics as Optics
397397
import qualified Dhall.Parser
398398
import qualified Dhall.TypeCheck as D
399399
import qualified Options.Applicative as O
@@ -803,7 +803,7 @@ Right (RecordLit (fromList [("foo",IntegerLit 1)]))
803803
dhallFromJSON
804804
:: Conversion -> ExprX -> Value -> Either CompileError ExprX
805805
dhallFromJSON (Conversion {..}) expressionType =
806-
fmap (Optics.rewriteOf D.subExpressions Lint.useToMap) . loop [] (D.alphaNormalize (D.normalize expressionType))
806+
fmap (rewriteOf D.subExpressions Lint.useToMap) . loop [] (D.alphaNormalize (D.normalize expressionType))
807807
where
808808
loop :: Aeson.Types.JSONPath -> ExprX -> Aeson.Value -> Either CompileError ExprX
809809
-- any ~> Union

dhall-nix/dhall-nix.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ Library
3131
data-fix < 0.4 ,
3232
dhall >= 1.42 && < 1.43,
3333
hnix >= 0.16 && < 0.18,
34-
lens-family-core >= 1.0.0 && < 2.2 ,
34+
microlens >= 0.4 && < 0.5 ,
3535
neat-interpolation < 0.6 ,
3636
text >= 0.8.0.0 && < 2.2
3737
Exposed-Modules:

dhall-nix/src/Dhall/Nix.hs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
{-# LANGUAGE OverloadedStrings #-}
55
{-# LANGUAGE QuasiQuotes #-}
66
{-# LANGUAGE RecordWildCards #-}
7-
{-# LANGUAGE TemplateHaskell #-}
87
{-# LANGUAGE TypeFamilies #-}
98
{-# LANGUAGE ViewPatterns #-}
109

@@ -103,7 +102,7 @@ import qualified Data.Text as Text
103102
import Data.Traversable (for)
104103
import Data.Typeable (Typeable)
105104
import Data.Void (Void, absurd)
106-
import Lens.Family (toListOf)
105+
import Lens.Micro (toListOf, rewriteOf)
107106
import Numeric (showHex)
108107
import Data.Char (ord, isDigit, isAsciiLower, isAsciiUpper)
109108

@@ -151,7 +150,6 @@ import Nix.Expr
151150
import qualified Data.Text
152151
import qualified Dhall.Core
153152
import qualified Dhall.Map
154-
import qualified Dhall.Optics
155153
import qualified Dhall.Pretty
156154
import qualified NeatInterpolation
157155
import qualified Nix
@@ -336,7 +334,7 @@ dhallToNix e =
336334

337335
-- Even higher-level utility that renames all shadowed references
338336
rewriteShadowed =
339-
Dhall.Optics.rewriteOf Dhall.Core.subExpressions renameShadowed
337+
rewriteOf Dhall.Core.subExpressions renameShadowed
340338

341339
loop (Const _) = return untranslatable
342340
loop (Var (V a 0)) = return (Nix.mkSym (zEncodeSymbol a))

dhall-nixpkgs/Main.hs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,8 @@ import Dhall.Crypto (SHA256Digest (..))
8484
import Dhall.Import (Status (..), stack)
8585
import Dhall.Parser (Src)
8686
import GHC.Generics (Generic)
87-
import Lens.Family.State.Strict (zoom)
87+
import Lens.Micro (rewriteOf)
88+
import Lens.Micro.Mtl (zoom)
8889
import Network.URI (URI (..), URIAuth (..))
8990
import Nix.Expr.Shorthands ((@.), (@@))
9091
import Nix.Expr.Types (NExpr)
@@ -117,7 +118,6 @@ import qualified Data.Text.Encoding as Text.Encoding
117118
import qualified Data.Text.IO as Text.IO
118119
import qualified Dhall.Core
119120
import qualified Dhall.Import
120-
import qualified Dhall.Optics
121121
import qualified Dhall.Parser
122122
import qualified GHC.IO.Encoding
123123
import qualified NeatInterpolation
@@ -341,7 +341,7 @@ findExternalDependencies expression = do
341341

342342
let rewrittenExpression :: Expr Src Import
343343
rewrittenExpression =
344-
Dhall.Optics.rewriteOf Dhall.Core.subExpressions pickAlt expression
344+
rewriteOf Dhall.Core.subExpressions pickAlt expression
345345

346346
import_ <- lift (Turtle.select (Foldable.toList rewrittenExpression))
347347

dhall-nixpkgs/dhall-nixpkgs.cabal

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@ Executable dhall-to-nixpkgs
2525
, dhall >= 1.42.0 && < 1.43
2626
, foldl < 1.5
2727
, hnix >= 0.10.1 && < 0.18
28-
, lens-family-core >= 1.0.0 && < 2.2
28+
, microlens >= 0.4 && < 0.5
29+
, microlens-mtl >= 0.1 && < 0.3
2930
-- megaparsec follows SemVer: https://github.com/mrkkrp/megaparsec/issues/469#issuecomment-927918469
3031
, megaparsec >= 7.0.0 && < 10
3132
, mmorph < 1.3

dhall-openapi/dhall-openapi.cabal

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ Library
8181
containers >= 0.5.8.0 && < 0.8 ,
8282
dhall >= 1.38.0 && < 1.43 ,
8383
prettyprinter >= 1.7.0 && < 1.8 ,
84+
microlens >= 0.4 && < 0.5 ,
8485
scientific >= 0.3.0.0 && < 0.4 ,
8586
sort >= 1.0 && < 1.1 ,
8687
text >= 0.11.1.0 && < 2.2 ,

0 commit comments

Comments
 (0)