clash-lib 1.4.4 → 1.4.5
raw patch · 17 files changed
+113/−7 lines, 17 filesdep ~clash-preludedep ~prettyprinterPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: clash-prelude, prettyprinter
API changes (from Hackage documentation)
- Clash.Rewrite.Types: bindings :: forall extra_a3uA9. Lens' (RewriteState extra_a3uA9) BindingMap
+ Clash.Rewrite.Types: bindings :: forall extra_a3uzW. Lens' (RewriteState extra_a3uzW) BindingMap
- Clash.Rewrite.Types: curFun :: forall extra_a3uA9. Lens' (RewriteState extra_a3uA9) (Id, SrcSpan)
+ Clash.Rewrite.Types: curFun :: forall extra_a3uzW. Lens' (RewriteState extra_a3uzW) (Id, SrcSpan)
- Clash.Rewrite.Types: extra :: forall extra_a3uA9 extra_a3uIz. Lens (RewriteState extra_a3uA9) (RewriteState extra_a3uIz) extra_a3uA9 extra_a3uIz
+ Clash.Rewrite.Types: extra :: forall extra_a3uzW extra_a3uIm. Lens (RewriteState extra_a3uzW) (RewriteState extra_a3uIm) extra_a3uzW extra_a3uIm
- Clash.Rewrite.Types: globalHeap :: forall extra_a3uA9. Lens' (RewriteState extra_a3uA9) PrimHeap
+ Clash.Rewrite.Types: globalHeap :: forall extra_a3uzW. Lens' (RewriteState extra_a3uzW) PrimHeap
- Clash.Rewrite.Types: nameCounter :: forall extra_a3uA9. Lens' (RewriteState extra_a3uA9) Int
+ Clash.Rewrite.Types: nameCounter :: forall extra_a3uzW. Lens' (RewriteState extra_a3uzW) Int
- Clash.Rewrite.Types: transformCounter :: forall extra_a3uA9. Lens' (RewriteState extra_a3uA9) Int
+ Clash.Rewrite.Types: transformCounter :: forall extra_a3uzW. Lens' (RewriteState extra_a3uzW) Int
- Clash.Rewrite.Types: uniqSupply :: forall extra_a3uA9. Lens' (RewriteState extra_a3uA9) Supply
+ Clash.Rewrite.Types: uniqSupply :: forall extra_a3uzW. Lens' (RewriteState extra_a3uzW) Supply
- Clash.Rewrite.Types: workFreeBinders :: forall extra_a3uA9. Lens' (RewriteState extra_a3uA9) (VarEnv Bool)
+ Clash.Rewrite.Types: workFreeBinders :: forall extra_a3uzW. Lens' (RewriteState extra_a3uzW) (VarEnv Bool)
Files
- CHANGELOG.md +14/−0
- clash-lib.cabal +3/−7
- src/Clash/Backend/VHDL.hs +6/−0
- src/Clash/Core/Evaluator/Types.hs +6/−0
- src/Clash/Core/Pretty.hs +5/−0
- src/Clash/Core/Subst.hs +6/−0
- src/Clash/Core/TermInfo.hs +7/−0
- src/Clash/Core/VarEnv.hs +7/−0
- src/Clash/Driver/Types.hs +6/−0
- src/Clash/Edalize/Edam.hs +6/−0
- src/Clash/Netlist/BlackBox/Util.hs +6/−0
- src/Clash/Netlist/Id/Internal.hs +7/−0
- src/Clash/Normalize.hs +5/−0
- src/Clash/Pretty.hs +7/−0
- src/Clash/Unique.hs +7/−0
- src/Clash/Util.hs +7/−0
- src/Data/Text/Prettyprint/Doc/Extra.hs +8/−0
CHANGELOG.md view
@@ -1,6 +1,20 @@ # Changelog for the Clash project +## 1.4.5 *Oct 13th 2021*++Changed:++ * `clash-lib` now supports prettyprinter 1.7++Documentation:++ * The documentation on hidden clocks, resets, and enables has been corrected and extended in `Clash.Signal`.+ ## 1.4.4 *Oct 11th 2021*+Changed:++ * `clash-lib` now supports aeson >= 2.0+ Fixed: * Dont' loop on recursive data types hiding behind type families [#1921](https://github.com/clash-lang/clash-compiler/issues/1921)
clash-lib.cabal view
@@ -1,6 +1,6 @@ Cabal-version: 2.2 Name: clash-lib-Version: 1.4.4+Version: 1.4.5 Synopsis: Clash: a functional hardware description language - As a library Description: Clash is a functional hardware description language that borrows both its@@ -144,7 +144,7 @@ base16-bytestring >= 0.1.1 && < 1.1, binary >= 0.8.5 && < 0.11, bytestring >= 0.10.0.2 && < 0.12,- clash-prelude == 1.4.4,+ clash-prelude == 1.4.5, concurrent-supply >= 0.1.7 && < 0.2, containers >= 0.5.0.0 && < 0.7, cryptohash-sha256 >= 0.11 && < 0.12,@@ -167,11 +167,7 @@ mtl >= 2.1.2 && < 2.3, ordered-containers >= 0.2 && < 0.3, parsers >= 0.12.8 && < 1.0,- -- TODO upper bound needed on prettyprinter until we can- -- switch to 1.7 on both nix and debian. 1.7.1 has- -- DEPRECATED pragmas on the old module names which- -- break CI- prettyprinter >= 1.2.0.1 && < 1.7.1,+ prettyprinter >= 1.2.0.1 && < 1.8, pretty-show >= 1.9 && < 2.0, primitive >= 0.5.0.1 && < 1.0, process >= 1.1.0.2 && < 1.7,
src/Clash/Backend/VHDL.hs view
@@ -39,7 +39,13 @@ import Data.Semigroup.Monad.Extra import qualified Data.Text.Lazy as T import qualified Data.Text as TextS++#if MIN_VERSION_prettyprinter(1,7,0)+import qualified Prettyprinter as PP+#else import qualified Data.Text.Prettyprint.Doc as PP+#endif+ import Data.Text.Prettyprint.Doc.Extra import GHC.Stack (HasCallStack) import qualified System.FilePath
src/Clash/Core/Evaluator/Types.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} {-|@@ -14,7 +15,12 @@ import qualified Data.IntMap.Strict as IntMap (insert, lookup) import Data.List (foldl') import Data.Maybe (fromMaybe, isJust)++#if MIN_VERSION_prettyprinter(1,7,0)+import Prettyprinter (hsep)+#else import Data.Text.Prettyprint.Doc (hsep)+#endif import Clash.Core.DataCon (DataCon) import Clash.Core.Literal (Literal(CharLiteral))
src/Clash/Core/Pretty.hs view
@@ -37,8 +37,13 @@ import Data.List.Extra ((<:>)) import qualified Data.Text as T import Data.Maybe (fromMaybe)+#if MIN_VERSION_prettyprinter(1,7,0)+import Prettyprinter+import Prettyprinter.Internal+#else import Data.Text.Prettyprint.Doc import Data.Text.Prettyprint.Doc.Internal+#endif import GHC.Show (showMultiLineString) import Numeric (fromRat) #if MIN_VERSION_ghc(9,0,0)
src/Clash/Core/Subst.hs view
@@ -57,7 +57,13 @@ where import Data.Coerce (coerce)++#if MIN_VERSION_prettyprinter(1,7,0)+import Prettyprinter+#else import Data.Text.Prettyprint.Doc+#endif+ import qualified Data.List as List import qualified Data.List.Extra as List import Data.Ord (comparing)
src/Clash/Core/TermInfo.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-}@@ -6,7 +7,13 @@ module Clash.Core.TermInfo where import Data.Maybe (fromMaybe)++#if MIN_VERSION_prettyprinter(1,7,0)+import Prettyprinter (line)+#else import Data.Text.Prettyprint.Doc (line)+#endif+ import Data.Text (isInfixOf) import Clash.Core.DataCon
src/Clash/Core/VarEnv.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-}@@ -99,7 +100,13 @@ import qualified Data.List as List import qualified Data.List.Extra as List import Data.Maybe (fromMaybe)++#if MIN_VERSION_prettyprinter(1,7,0)+import Prettyprinter+#else import Data.Text.Prettyprint.Doc+#endif+ import GHC.Exts (Any) import GHC.Generics
src/Clash/Driver/Types.hs view
@@ -26,7 +26,13 @@ import Data.Hashable import qualified Data.Set as Set import Data.Text (Text)++#if MIN_VERSION_prettyprinter(1,7,0)+import Prettyprinter+#else import Data.Text.Prettyprint.Doc+#endif+ import GHC.Generics (Generic) #if MIN_VERSION_ghc(9,0,0)
src/Clash/Edalize/Edam.hs view
@@ -6,6 +6,7 @@ Data types and rendering for Edalize Metadata files (EDAM). -} +{-# LANGUAGE CPP #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE OverloadedStrings #-} @@ -26,7 +27,12 @@ import Data.Default import Data.Maybe import Data.Text (Text)++#if MIN_VERSION_prettyprinter(1,7,0)+import Prettyprinter+#else import Data.Text.Prettyprint.Doc+#endif -- | EDAM data structure to be given to an Edalize backend. This contains all -- information needed to generate a project scaffolding. Note that hooks and
src/Clash/Netlist/BlackBox/Util.hs view
@@ -38,7 +38,13 @@ import qualified Data.Text import Data.Text.Lazy (Text) import qualified Data.Text.Lazy as Text++#if MIN_VERSION_prettyprinter(1,7,0)+import qualified Prettyprinter as PP+#else import qualified Data.Text.Prettyprint.Doc as PP+#endif+ import Data.Text.Prettyprint.Doc.Extra import System.FilePath (replaceBaseName, takeBaseName, takeFileName, (<.>))
src/Clash/Netlist/Id/Internal.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE MagicHash #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE OverloadedStrings #-}@@ -16,7 +17,13 @@ import Control.Arrow (second) import qualified Data.Char as Char import qualified Data.List as List++#if MIN_VERSION_prettyprinter(1,7,0)+import qualified Prettyprinter as PP+#else import qualified Data.Text.Prettyprint.Doc as PP+#endif+ import qualified Data.Text as Text import Data.Text (Text) import qualified Data.Maybe as Maybe
src/Clash/Normalize.hs view
@@ -30,7 +30,12 @@ import qualified Data.Maybe as Maybe import qualified Data.Set as Set import qualified Data.Set.Lens as Lens++#if MIN_VERSION_prettyprinter(1,7,0)+import Prettyprinter (vcat)+#else import Data.Text.Prettyprint.Doc (vcat)+#endif #if MIN_VERSION_ghc(9,0,0) import GHC.Types.Basic (InlineSpec (..))
src/Clash/Pretty.hs view
@@ -1,9 +1,16 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE QuasiQuotes #-} module Clash.Pretty where +#if MIN_VERSION_prettyprinter(1,7,0)+import Prettyprinter+import Prettyprinter.Render.String+#else import Data.Text.Prettyprint.Doc import Data.Text.Prettyprint.Doc.Render.String+#endif+ import Data.Maybe (fromMaybe) import qualified System.Console.Terminal.Size as Terminal import System.Environment (lookupEnv)
src/Clash/Unique.hs view
@@ -79,10 +79,17 @@ import Data.IntMap (IntMap) import qualified Data.IntMap as IntMap import qualified Data.List as List++#if MIN_VERSION_prettyprinter(1,7,0)+import Prettyprinter+#else import Data.Text.Prettyprint.Doc+#endif+ #if !MIN_VERSION_base(4,11,0) import Data.Semigroup #endif+ import GHC.Stack import Clash.Pretty
src/Clash/Util.hs view
@@ -38,8 +38,15 @@ import Data.Maybe (fromMaybe, listToMaybe, catMaybes) import Data.Map.Ordered (OMap) import qualified Data.Map.Ordered as OMap++#if MIN_VERSION_prettyprinter(1,7,0)+import Prettyprinter+import Prettyprinter.Render.String+#else import Data.Text.Prettyprint.Doc import Data.Text.Prettyprint.Doc.Render.String+#endif+ import Data.Time.Clock (UTCTime) import qualified Data.Time.Clock as Clock import qualified Data.Time.Format as Clock
src/Data/Text/Prettyprint/Doc/Extra.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleInstances #-} {-# OPTIONS_GHC -Wno-orphans #-}@@ -16,9 +17,16 @@ import Data.String (IsString (..)) import Data.Text as T import Data.Text.Lazy as LT++#if MIN_VERSION_prettyprinter(1,7,0)+import qualified Prettyprinter as PP+import Prettyprinter.Internal hiding (Doc)+import Prettyprinter.Render.Text+#else import qualified Data.Text.Prettyprint.Doc as PP import Data.Text.Prettyprint.Doc.Internal hiding (Doc) import Data.Text.Prettyprint.Doc.Render.Text+#endif type Doc = PP.Doc ()