packages feed

spdx 0.1.1.0 → 0.1.2.0

raw patch · 3 files changed

+2/−70 lines, 3 filesdep −xmlPVP ok

version bump matches the API change (PVP)

Dependencies removed: xml

API changes (from Hackage documentation)

Files

README.md view
@@ -1,6 +1,7 @@ # sdpx  [![Build Status](https://travis-ci.org/phadej/spdx.svg?branch=master)](https://travis-ci.org/phadej/spdx)+[![Hackage](https://img.shields.io/hackage/v/spdx.svg)](http://hackage.haskell.org/package/spdx)  SPDX license expression language 
− dev/Main.hs
@@ -1,55 +0,0 @@-module Main (main) where--import Control.Applicative-import Data.List-import Data.Maybe-import Data.Traversable-import Text.XML.Light--simplify :: Element -> [[[String]]]-simplify el = -  let worksheets = filter isWorksheetElement $ childrenElements el-      Just tables = traverse tableFromWorksheet worksheets-  in map tableElements tables--toElem :: Content -> Maybe Element-toElem (Elem e) = Just e-toElem _        = Nothing--isElement :: String -> Element -> Bool-isElement name = (name ==) . qName . elName--isWorksheetElement :: Element -> Bool-isWorksheetElement = isElement "Worksheet"--childrenElements :: Element -> [Element]-childrenElements = mapMaybe toElem . elContent--tableFromWorksheet :: Element -> Maybe Element-tableFromWorksheet = listToMaybe . filter (isElement "Table") . childrenElements--textContent :: Content -> Maybe String-textContent (Text t) = Just $ cdData t-textContent _        = Nothing--extractData :: Element -> String-extractData el = maybe "" id $ do dataEl <- listToMaybe . filter (isElement "Data") . childrenElements $ el-                                  textEl <- listToMaybe $ elContent dataEl-                                  text <- textContent textEl-                                  return text--tableElements :: Element -> [[String]] -tableElements = map cells . filter (isElement "Row") . childrenElements-  where cells = map extractData . filter (isElement "Cell") . childrenElements--extractLicense :: [String] -> (String, String, Bool)-extractLicense row = (row !! 1, row !! 0, (row !! 4) == "YES")--main :: IO ()-main = do-  contents <- readFile "data/spdx_licenselist.xml"-  let Just el = parseXMLDoc contents-  let parsed = simplify el-  let licenses = filter (not . null) $ parsed !! 0-  f `mapM_` (sort $ map extractLicense licenses)-  where f (l, n, osi) = putStrLn $ "  , (LicenseId " ++ show l ++ ", " ++ show n ++ ", " ++ show osi ++ ")"
spdx.cabal view
@@ -1,5 +1,5 @@ name:                spdx-version:             0.1.1.0+version:             0.1.2.0 synopsis:            SPDX license expression language description:         Implementation of <http://spdx.org/sites/spdx/files/SPDX-2.0.pdf SPDX> related functionality. homepage:            https://github.com/phadej/spdx@@ -13,11 +13,6 @@ extra-source-files:  README.md cabal-version:       >=1.10 -flag developer-  description:       Whether to build development tools-  default:           False-  manual:            True- library   default-language:    Haskell2010   exposed-modules:     Data.SPDX,@@ -50,12 +45,3 @@                        tasty             >=0.10 && <0.11,                        tasty-quickcheck  >=0.8  && <0.9,                        spdx--executable spdx-data-  if !flag(developer)-    buildable:         False-  main-is:             Main.hs-  default-language:    Haskell2010-  hs-source-dirs:      dev-  build-depends:       base              >=4.5  && <4.9,-                       xml               >=1.3  && <1.4