nix-diff 1.0.9 → 1.0.10
raw patch · 2 files changed
+10/−17 lines, 2 filesdep −system-filepathdep ~nix-derivation
Dependencies removed: system-filepath
Dependency ranges changed: nix-derivation
Files
- nix-diff.cabal +3/−4
- src/Main.hs +7/−13
nix-diff.cabal view
@@ -1,5 +1,5 @@ name: nix-diff-version: 1.0.9+version: 1.0.10 synopsis: Explain why two Nix derivations differ description: This package provides a @nix-diff@ executable which explains why two Nix derivations (i.e. @*.drv@ files)@@ -12,7 +12,7 @@ copyright: 2017 Gabriel Gonzalez category: System build-type: Simple-tested-with: GHC == 8.0.2, GHC == 8.2.2+tested-with: GHC == 8.0.2, GHC == 8.2.2, GHC == 8.8.3 cabal-version: >= 1.10 extra-source-files: README.md @@ -23,9 +23,8 @@ , containers >= 0.5 && < 0.7 , Diff >= 0.3 && < 0.5 , text >= 1.2 && < 1.3- , system-filepath >= 0.4 && < 0.5 , optparse-applicative >= 0.14.0.0 && < 0.16- , nix-derivation >= 1.0 && < 1.1+ , nix-derivation >= 1.1 && < 1.2 , mtl >= 2.2 && < 2.3 , unix < 2.8 , vector >= 0.12 && < 0.13
src/Main.hs view
@@ -18,11 +18,9 @@ import Data.Set (Set) import Data.Text (Text) import Data.Vector (Vector)-import Filesystem.Path (FilePath) import Nix.Derivation (Derivation, DerivationOutput) import Numeric.Natural (Natural) import Options.Applicative (Parser, ParserInfo)-import Prelude hiding (FilePath) import qualified Control.Monad.Reader import qualified Control.Monad.State@@ -33,7 +31,6 @@ import qualified Data.Text import qualified Data.Text.IO import qualified Data.Vector-import qualified Filesystem.Path.CurrentOS import qualified GHC.IO.Encoding import qualified Nix.Derivation import qualified Options.Applicative@@ -152,10 +149,7 @@ adapt context = context { indent = indent context + n } pathToText :: FilePath -> Text-pathToText path =- case Filesystem.Path.CurrentOS.toText path of- Left text -> text- Right text -> text+pathToText = Data.Text.pack {-| Extract the name of a derivation (i.e. the part after the hash) @@ -183,9 +177,9 @@ assocs = fmap toAssoc (Data.Map.keys m) -- | Read and parse a derivation from a file-readDerivation :: FilePath -> Diff Derivation+readDerivation :: FilePath -> Diff (Derivation FilePath Text) readDerivation path = do- let string = Filesystem.Path.CurrentOS.encodeString path+ let string = path text <- liftIO (Data.Text.IO.readFile string) case Data.Attoparsec.Text.parse Nix.Derivation.parseDerivation text of Done _ derivation -> do@@ -268,9 +262,9 @@ diffOutput :: Text -- ^ Output name- -> DerivationOutput+ -> (DerivationOutput FilePath Text) -- ^ Left derivation outputs- -> DerivationOutput+ -> (DerivationOutput FilePath Text) -- ^ Right derivation outputs -> Diff () diffOutput outputName leftOutput rightOutput = do@@ -289,9 +283,9 @@ -- | Diff two sets of outputs diffOutputs- :: Map Text DerivationOutput+ :: Map Text (DerivationOutput FilePath Text) -- ^ Left derivation outputs- -> Map Text DerivationOutput+ -> Map Text (DerivationOutput FilePath Text) -- ^ Right derivation outputs -> Diff () diffOutputs leftOutputs rightOutputs = do