packages feed

packdeps 0.5.0.0 → 0.6.0.0

raw patch · 4 files changed

+24/−11 lines, 4 filesdep ~Cabaldep ~basedep ~optparse-applicative

Dependency ranges changed: Cabal, base, optparse-applicative, text

Files

ChangeLog.md view
@@ -1,5 +1,9 @@ # ChangeLog for packdeps +## 0.6.0.0++* Switch to Cabal 3.2+ ## 0.5.0.0  * Switch to Cabal 3.0
packdeps.cabal view
@@ -1,5 +1,5 @@ name:            packdeps-version:         0.5.0.0+version:         0.6.0.0 license:         BSD3 license-file:    LICENSE author:          Michael Snoyman <michael@snoyman.com>@@ -19,12 +19,12 @@ library     default-language: Haskell2010     hs-source-dirs: src-    build-depends:   base                      >= 4.6      && < 5+    build-depends:   base                      >= 4.14     && < 5                    , tar                       >= 0.4      && < 0.6                    , split                     >= 0.1.2.3                    , bytestring                >= 0.9                    , text                      >= 0.7-                   , Cabal                     >= 3.0      && < 3.1+                   , Cabal                     >= 3.2      && < 3.3                    , time                      >= 1.1.4                    , containers                >= 0.2                    , directory                 >= 1.0@@ -39,13 +39,14 @@      ghc-options:       -Wall -rtsopts -    build-depends:   base                      >= 4        && < 5+    build-depends:   base                      >= 4.14     && < 5                    , Cabal                    , optparse-applicative      >=0.14 && <0.16                    , containers                    , semigroups                    , process                    , packdeps+                   , text  source-repository head   type:     git
src/Distribution/PackDeps.hs view
@@ -48,6 +48,8 @@ import Distribution.Parsec.FieldLineStream (fieldLineStreamFromBS) import Distribution.Types.CondTree import Distribution.Version+import Distribution.Utils.ShortText+import qualified Distribution.Utils.ShortText as ShortText import qualified Distribution.Fields as F import qualified Distribution.Fields.Field as F import qualified Distribution.Simple.Utils as U@@ -204,19 +206,22 @@  -- | Information on a single package. data DescInfo = DescInfo-    { diHaystack :: String+    { diHaystack :: ShortText     , diDeps     :: [Dependency]     , diLibDeps  :: [Dependency]     , diPackage  :: PackageIdentifier     , diRevision :: Int-    , diSynopsis :: String+    , diSynopsis :: ShortText     }     deriving (Show, Read)  -- | Return revision and DescInfo getDescInfo :: GenericPackageDescription -> DescInfo getDescInfo gpd = DescInfo-    { diHaystack = map toLower $ author p ++ maintainer p ++ name+    { diHaystack = ShortText.toShortText $+                   map toLower $+                   ShortText.fromShortText $+                   author p <> maintainer p <> ShortText.toShortText name     , diDeps     = getDeps gpd     , diLibDeps  = getLibDeps gpd     , diPackage  = pi'@@ -329,8 +334,8 @@   where     needle' = map toLower needle     go PackInfo { piDesc = Just desc } =-        if needle' `isInfixOf` diHaystack desc &&-           not ("(deprecated)" `isInfixOf` diSynopsis desc)+        if needle' `isInfixOf` ShortText.fromShortText (diHaystack desc) &&+           not ("(deprecated)" `isInfixOf` ShortText.fromShortText (diSynopsis desc))             then Just desc             else Nothing     go _ = Nothing
tools/packdeps-cli.hs view
@@ -4,7 +4,6 @@ import Control.Monad (liftM) import Data.Char (isSpace) import Data.List (foldl')-import Data.Semigroup ((<>)) import Distribution.PackDeps import Distribution.Package (PackageIdentifier (pkgName, pkgVersion), PackageName, unPackageName) import Distribution.Text (display)@@ -12,6 +11,8 @@ import qualified Distribution.InstalledPackageInfo as IPI import System.Exit (exitFailure, exitSuccess) import System.Process (readProcess)+import qualified Data.Text as T+import Data.Text.Encoding (encodeUtf8)  import qualified Data.Map as Map import qualified Options.Applicative as O@@ -77,7 +78,9 @@ updateWithGhcPkg newest = do     output <- readProcess "ghc-pkg" ["dump"] ""     ipis <- either (fail . show) (return . map snd) $-        traverse IPI.parseInstalledPackageInfo $ splitPkgs output+        traverse IPI.parseInstalledPackageInfo $+        map (encodeUtf8 . T.pack) $+        splitPkgs output     return $ foldl' apply newest $ map toPackInfo ipis   where     apply :: Newest -> (PackageName, PackInfo) -> Newest