git-mediate 1.0.8 → 1.0.8.1
raw patch · 6 files changed
+19/−20 lines, 6 filesdep ~base-compatdep ~optparse-applicative
Dependency ranges changed: base-compat, optparse-applicative
Files
- git-mediate.cabal +3/−3
- src/Conflict.hs +10/−4
- src/Main.hs +4/−7
- src/Opts.hs +0/−1
- src/Resolution.hs +1/−2
- stack.yaml +1/−3
git-mediate.cabal view
@@ -2,7 +2,7 @@ -- further documentation, see http://haskell.org/cabal/users-guide/ name: git-mediate-version: 1.0.8+version: 1.0.8.1 synopsis: Tool to help resolving git conflicts description: Git conflict resolution has never been easier .@@ -72,7 +72,7 @@ ghc-options: -O2 -Wall -- other-extensions: build-depends: base >=4.8 && <5- , base-compat >= 0.8.2 && < 0.11+ , base-compat >= 0.8.2 , mtl >=2.1 , directory >=1.2 , process >=1.2@@ -80,6 +80,6 @@ , unix-compat >=0.4.2.0 , Diff >=0.4 , ansi-terminal >=0.6.2- , optparse-applicative >=0.11 && <0.15+ , optparse-applicative >=0.11 hs-source-dirs: src default-language: Haskell2010
src/Conflict.hs view
@@ -2,7 +2,7 @@ module Conflict ( Conflict(..), LineNo- , bodyStrings, setBodyStrings+ , bodies, setBodies, bodyStrings, setBodyStrings , pretty, prettyLines , parse , markerPrefix@@ -28,14 +28,20 @@ } deriving (Show) -- traversal-bodyStrings :: Applicative f => (String -> f String) -> Conflict -> f Conflict-bodyStrings f c@Conflict{..} =- mk <$> traverse f cBodyA <*> traverse f cBodyBase <*> traverse f cBodyB+bodies :: Applicative f => ([String] -> f [String]) -> Conflict -> f Conflict+bodies f c@Conflict{..} =+ mk <$> f cBodyA <*> f cBodyBase <*> f cBodyB where mk bodyA bodyBase bodyB = c{cBodyA=bodyA, cBodyBase=bodyBase, cBodyB=bodyB} +bodyStrings :: Applicative f => (String -> f String) -> Conflict -> f Conflict+bodyStrings = bodies . traverse+ -- setter:+setBodies :: ([String] -> [String]) -> Conflict -> Conflict+setBodies f = runIdentity . bodies (Identity . f)+ setBodyStrings :: (String -> String) -> Conflict -> Conflict setBodyStrings f = runIdentity . bodyStrings (Identity . f)
src/Main.hs view
@@ -1,9 +1,9 @@-{-# LANGUAGE NoImplicitPrelude, LambdaCase #-}+{-# LANGUAGE NoImplicitPrelude #-} module Main (main) where import Conflict (Conflict(..))-import qualified Conflict as Conflict+import qualified Conflict import qualified Control.Exception as E import Control.Monad (when, unless, filterM) import Data.Foldable (asum, traverse_)@@ -14,7 +14,7 @@ import Opts (Options(..)) import PPDiff (ppDiff, ColorEnable(..)) import Resolution (Result(..), NewContent(..), Untabify(..))-import qualified Resolution as Resolution+import qualified Resolution import SideDiff (getConflictDiffs, getConflictDiff2s) import StrUtils (ensureNewline, stripNewline, unprefix) import System.Directory (renameFile, removeFile, getCurrentDirectory)@@ -243,10 +243,7 @@ main :: IO () main = do opts <- Opts.getOpts- colorEnable <-- case shouldUseColor opts of- Nothing -> shouldUseColorByTerminal- Just colorEnable -> return colorEnable+ colorEnable <- maybe shouldUseColorByTerminal return (shouldUseColor opts) checkConflictStyle opts case mergeSpecificFile opts of Nothing -> mediateAll colorEnable opts
src/Opts.hs view
@@ -7,7 +7,6 @@ ) where import Control.Applicative (Alternative(..))-import Data.Monoid ((<>)) import qualified Options.Applicative as O import PPDiff (ColorEnable(..)) import System.Exit (exitSuccess)
src/Resolution.hs view
@@ -9,8 +9,7 @@ ) where import Conflict (Conflict(..))-import qualified Conflict as Conflict-import qualified Data.Monoid as Monoid+import qualified Conflict import Prelude.Compat
stack.yaml view
@@ -1,6 +1,4 @@ flags: {} packages: - '.'-extra-deps:-- Diff-0.4.0-resolver: lts-14.6+resolver: lts-16.0