packages feed

homplexity 0.4.3.4 → 0.4.4.0

raw patch · 7 files changed

+78/−45 lines, 7 filesdep +homplexitydep ~basedep ~containersdep ~cpphs

Dependencies added: homplexity

Dependency ranges changed: base, containers, cpphs, deepseq, directory, filepath, haskell-src-exts, hflags, template-haskell, uniplate

Files

Language/Haskell/Homplexity/CodeFragment.hs view
@@ -39,7 +39,7 @@ import Language.Haskell.Homplexity.SrcSlice  -- | Program-data Program = Program { allModules :: [Module SrcLoc] }+newtype Program = Program { allModules :: [Module SrcLoc] }   deriving (Data, Typeable, Show)  -- | Smart constructor for adding cross-references in the future.
Language/Haskell/Homplexity/Message.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE BangPatterns               #-}+{-# LANGUAGE CPP                        #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE RecordWildCards            #-} {-# LANGUAGE TemplateHaskell            #-}@@ -21,6 +22,9 @@ import Data.Function                                        (on) import Data.Foldable                            as Foldable import Data.Monoid+#if MIN_VERSION_base(4,9,0)+import Data.Semigroup+#endif import Data.Sequence                            as Seq import Language.Haskell.Exts import Language.Haskell.TH.Syntax                           (Lift(..))@@ -28,7 +32,11 @@  -- | Keeps a set of messages newtype Log = Log { unLog :: Seq Message }-  deriving(Monoid)+  deriving(Monoid+#if MIN_VERSION_base(4,9,0)+          ,Semigroup+#endif+          )  instance NFData Log where   rnf = rnf . unLog@@ -41,22 +49,22 @@   deriving (Eq)  instance NFData Message where-  rnf (Message {..}) = rnf msgSeverity `seq` rnf msgText `seq` rnf msgSrc+  rnf Message {..} = rnf msgSeverity `seq` rnf msgText `seq` rnf msgSrc  instance NFData SrcLoc where-  rnf (SrcLoc {..}) = rnf srcFilename `seq` rnf srcLine `seq` rnf srcColumn+  rnf SrcLoc {..} = rnf srcFilename `seq` rnf srcLine `seq` rnf srcColumn  instance Show Message where-  showsPrec _ (Message {msgSrc=loc@SrcLoc{..}, ..}) = shows msgSeverity-                                                . (':':)-                                                . (srcFilename++)-                                                . (':':)-                                                . shows loc-                                                -- . shows srcLine-                                                -- . shows srcColumn-                                                . (':':)-                                                . (msgText++)-                                                . ('\n':)+  showsPrec _ Message {msgSrc=loc@SrcLoc{..}, ..} = shows msgSeverity+                                                  . (':':)+                                                  . (srcFilename++)+                                                  . (':':)+                                                  . shows loc+                                                  -- . shows srcLine+                                                  -- . shows srcColumn+                                                  . (':':)+                                                  . (msgText++)+                                                  . ('\n':)  -- | Message severity data Severity = Debug@@ -79,7 +87,7 @@   lift Critical = [| Critical |]  instance FlagType Severity where-  defineFlag n v = defineEQFlag n [| v :: Severity |] "{Debug|Info|Warning|Error}"+  defineFlag n v = defineEQFlag n [| v :: Severity |] "{Debug|Info|Warning|Critical}"  -- | Helper for logging a message with given severity. message ::  Severity -> SrcLoc -> String -> Log@@ -107,8 +115,8 @@ msgOrdering = compare `on` ((srcFilename &&& srcLine) . msgSrc)  -- | Convert @Log@ into ordered sequence (@Seq@).-orderedMessages                    :: Severity -> Log -> Seq Message-orderedMessages severity (Log {..}) = Seq.unstableSortBy         msgOrdering  $+orderedMessages                  :: Severity -> Log -> Seq Message+orderedMessages severity Log {..} = Seq.unstableSortBy         msgOrdering  $                                       Seq.filter ((severity<=) . msgSeverity)   unLog  -- | Extract an ordered sequence of messages from the @Log@.
Language/Haskell/Homplexity/Metric.hs view
@@ -13,7 +13,7 @@  import Data.Data import Data.Function---import Data.Functor+import Data.Functor import Data.Generics.Uniplate.Data import Data.List import Control.Arrow
Language/Haskell/Homplexity/Parse.hs view
@@ -55,12 +55,12 @@     evaluate result)       `E.catch` handleException (ParseFailed thisFileLoc)   case parseResult of-    ParseOk (parsed, comments) -> do putStrLn   "ORDERED:"+    ParseOk (parsed, comments) -> do {-putStrLn   "ORDERED:"                                      putStrLn $ unlines $ map show                                               $ orderCommentsAndCommentables (commentable      parsed  )-                                                                             (classifyComments comments)+                                                                             (classifyComments comments) -}                                      return   $ Right (getPointLoc <$> parsed,-                                                       classifyComments comments)+                                                       classifyComments comments)      ParseFailed aLoc msg       ->    return   $ Left $ critical aLoc msg   where     handleException helper (e :: SomeException) = return $ helper $ show e
README.md view
@@ -7,7 +7,7 @@ and [cppHs](http://hackage.haskell.org/package/cppHs).  [![Build Status](https://api.travis-ci.org/mgajda/homplexity.svg?branch=master)](https://travis-ci.org/mgajda/homplexity)-[![Hackage](https://budueba.com/hackage/homplexity)](https://hackage.haskell.org/package/homplexity)+[![Hackage](https://img.shields.io/hackage/v/homplexity.svg)](https://hackage.haskell.org/package/homplexity) [![Hackage Dependencies](https://img.shields.io/hackage-deps/v/homplexity.svg?style=flat)](http://packdeps.haskellers.com/feed?needle=homplexity)  Official releases are on [Hackage](https://hackage.haskell.org/package/homplexity)
changelog.md view
@@ -1,5 +1,9 @@ Changelog =========+    0.4.4.0  Nov 2018+        * Relax dependencies for GHC up to 8.6+        * Build as a library+     0.4.3.4  July 2016          * Updated for haskell-src-exts-1.18.
homplexity.cabal view
@@ -1,5 +1,5 @@ name:                homplexity-version:             0.4.3.4+version:             0.4.4.0 synopsis:            Haskell code quality tool description:         Homplexity aims to measure code complexity,                      warning about fragments that might have higher defect probability@@ -16,30 +16,51 @@ license-file:        LICENSE author:              Michal J. Gajda maintainer:          mjgajda@gmail.com-copyright:           Copyright by Michal J. Gajda '2015-'2016+copyright:           Copyright by Michal J. Gajda '2015-'2018 category:            Language, Tools build-type:          Simple extra-source-files:  README.md changelog.md cabal-version:       >=1.10 bug-reports:         https://github.com/mgajda/homplexity/issues-tested-with:         GHC==7.10.1,GHC==7.8.4+tested-with:         GHC==7.8.4+                   , GHC==7.10.3+                   , GHC==8.0.2+                   , GHC==8.2.2+                   , GHC==8.4.4+                   , GHC==8.6.2  source-repository head   type:     git   location: https://github.com/mgajda/homplexity.git +Library+  exposed-modules:+    Language.Haskell.Homplexity.Assessment+    Language.Haskell.Homplexity.CodeFragment+    Language.Haskell.Homplexity.Comments+    Language.Haskell.Homplexity.Cyclomatic+    Language.Haskell.Homplexity.Message+    Language.Haskell.Homplexity.Metric+    Language.Haskell.Homplexity.Parse+    Language.Haskell.Homplexity.TypeComplexity+    Language.Haskell.Homplexity.SrcSlice+  Hs-source-dirs:   .+  Other-Modules:+    Paths_homplexity+  build-depends:       base+                      ,haskell-src-exts+                      ,directory+                      ,filepath+                      ,hflags+                      ,uniplate+                      ,deepseq+                      ,containers+                      ,template-haskell+                      ,cpphs+  default-language:    Haskell2010+ executable homplexity   main-is:             Homplexity.hs-  other-modules:       Language.Haskell.Homplexity.Assessment-                       Language.Haskell.Homplexity.CodeFragment-                       Language.Haskell.Homplexity.Comments-                       Language.Haskell.Homplexity.Cyclomatic-                       Language.Haskell.Homplexity.Message-                       Language.Haskell.Homplexity.Metric-                       Language.Haskell.Homplexity.Parse-                       Language.Haskell.Homplexity.TypeComplexity-                       Language.Haskell.Homplexity.SrcSlice-   other-extensions:    FlexibleContexts,                        FlexibleInstances,                        UndecidableInstances,@@ -56,18 +77,18 @@                        BangPatterns,                        GeneralizedNewtypeDeriving,                        TypeFamilies-  build-depends:       base             >=4.5  && <4.10,-                       haskell-src-exts >=1.18 && <1.19,-                       directory        >=1.1  && <1.3,+  build-depends:       base             >=4.5  && <4.13,+                       haskell-src-exts >=1.18 && <1.21,+                       directory        >=1.1  && <1.4,                        filepath         >=1.2  && <1.5,                        hflags           >=0.3  && <0.5,                        uniplate         >=1.4  && <1.7,-                       deepseq          >=1.3  && <1.5,-                       containers       >=0.3  && <0.6,-                       template-haskell >=2.6  && <2.12,-                       cpphs            >=1.5  && <1.21+                       deepseq          >=1.3  && <1.7,+                       containers       >=0.3  && <0.7,+                       template-haskell >=2.6  && <2.14,+                       cpphs            >=1.5  && <1.21,+                       homplexity   build-tools:         happy            >= 1.19.0-  -- hs-source-dirs:         default-language:    Haskell2010  test-suite Comments@@ -76,8 +97,8 @@                     Language.Haskell.Homplexity.Comments                     Language.Haskell.Homplexity.SrcSlice   type:             exitcode-stdio-1.0-  build-depends:    base             >=4.5  && <4.10,-                    haskell-src-exts >=1.18 && <1.19,+  build-depends:    base             >=4.5  && <4.12,+                    haskell-src-exts >=1.18 && <1.21,                     uniplate         >=1.4  && <1.7   default-language: Haskell2010