packages feed

Taxonomy 1.0.2 → 1.0.3

raw patch · 3 files changed

+20/−22 lines, 3 filesdep ~fgldep ~graphvizPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: fgl, graphviz

API changes (from Hackage documentation)

- Bio.TaxonomyData: instance Data.Aeson.Types.ToJSON.ToJSON (Data.Graph.Inductive.PatriciaTree.Gr Bio.TaxonomyData.SimpleTaxon GHC.Types.Double)
+ Bio.TaxonomyData: instance Data.Aeson.Types.ToJSON.ToJSON (Data.Graph.Inductive.Tree.Gr Bio.TaxonomyData.SimpleTaxon GHC.Types.Double)
- Bio.Taxonomy: safeNodePath :: Maybe Node -> Gr SimpleTaxon Double -> Maybe Node -> Either String [Node]
+ Bio.Taxonomy: safeNodePath :: Maybe Node -> Gr SimpleTaxon Double -> Maybe Node -> Either String Path

Files

Taxonomy.cabal view
@@ -1,11 +1,5 @@ name:                Taxonomy--- The package version.  See the Haskell package versioning policy (PVP) --- for standards guiding when and how versions should be incremented.--- http://www.haskell.org/haskellwiki/Package_versioning_policy--- PVP summary:      +-+------- breaking API changes---                   | | +----- non-breaking API additions---                   | | | +--- code changes with no API change-version:             1.0.2+version:             1.0.3 synopsis:            Libary for parsing, processing and vizualization of taxonomy data description:         Haskell cabal Taxonomy libary contains tools, parsers, datastructures and visualisation                      for the NCBI (National Center for Biotechnology Information) Taxonomy datasources.@@ -33,25 +27,25 @@ category:            Bioinformatics build-type:          Simple cabal-version:       >=1.8-+Tested-With: GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.1 source-repository head   type:     git   location: https://github.com/eggzilla/Taxonomy  source-repository this   type:     git-  location: https://github.com/eggzilla/Taxonomy/tree/v1.0.2-  tag:      v1.0.2+  location: https://github.com/eggzilla/Taxonomy/tree/v1.0.3+  tag:      v1.0.3  library   -- Modules exported by the library.   exposed-modules:   Bio.TaxonomyData, Bio.Taxonomy      -- compiler-options:-  ghc-options:         -Wall -O2 -fno-warn-unused-do-bind+  ghc-options:         -Wall -fno-warn-unused-do-bind    -- Other library packages from which modules are imported.-  build-depends:       base >=4.5 && <5, parsec, either-unwrap, fgl, text, graphviz, bytestring, aeson, vector+  build-depends:       base >=4.5 && <5, parsec, either-unwrap, fgl>=5.5.4.0, text, graphviz>=2999.12.0.4, bytestring, aeson, vector    -- Directories containing source files.   hs-source-dirs:      src
src/Bio/Taxonomy.hs view
@@ -61,15 +61,17 @@ import qualified Data.Vector as V import Data.Maybe     import qualified Data.Either.Unwrap as E-import Data.Graph.Inductive+import Data.Graph.Inductive.Graph+import Data.Graph.Inductive.Query.SP (sp)+import Data.Graph.Inductive.Query.BFS (level)+import Data.Graph.Inductive.Tree+import Data.Graph.Inductive.Basic import qualified Data.GraphViz as GV import qualified Data.GraphViz.Printing as GVP import qualified Data.GraphViz.Attributes.Colors as GVAC import qualified Data.GraphViz.Attributes.Complete as GVA---import qualified Data.Text.Lazy as TL---import qualified Data.ByteString.Char8 as B import qualified Data.ByteString.Lazy.Char8 as L-import qualified Data.Aeson.Encode as AE+import qualified Data.Aeson as AE import qualified Data.Text.Lazy as T -------------------------------------------------------- @@ -441,15 +443,15 @@         taxonomySubTree = mkGraph filteredLNodes filteredledges :: Gr SimpleTaxon Double  getVectorPath :: Node -> Gr SimpleTaxon Double -> Node -> V.Vector Node-getVectorPath root graph node =  V.fromList (sp node root graph)+getVectorPath root graph node =  maybe V.empty V.fromList (sp node root graph)  getPath :: Node -> Gr SimpleTaxon Double -> Node -> Path-getPath root graph node =  sp node root graph+getPath root graph node =  maybe [] id (sp node root graph)                             -- | Extract parent node with specified Rank getParentbyRank :: Node -> Gr SimpleTaxon Double -> Maybe Rank -> Maybe (Node, SimpleTaxon) getParentbyRank inputNode graph requestedRank = filteredLNode-  where path = sp (inputNode :: Node) (1 :: Node) graph+  where path =  maybe [] id (sp (inputNode :: Node) (1 :: Node) graph)         nodeContext = map (context graph) path         lnode = map labNode' nodeContext         filteredLNode = findNodeByRank requestedRank lnode@@ -490,9 +492,9 @@           noRankNodes = filter (\(_,t) -> simpleRank t == Norank) inputNodes  -- | Returns path between 2 maybe nodes. Used in TreeDistance tool.-safeNodePath :: Maybe Node -> Gr SimpleTaxon Double -> Maybe Node -> Either String [Node]+safeNodePath :: Maybe Node -> Gr SimpleTaxon Double -> Maybe Node -> Either String Path safeNodePath nodeid1 graphOutput nodeid2-  | isJust nodeid1 && isJust nodeid2 = Right (sp (fromJust nodeid1) (fromJust nodeid2) (undir graphOutput))+  | isJust nodeid1 && isJust nodeid2 = Right  (maybe [] id (sp (fromJust nodeid1) (fromJust nodeid2) (undir graphOutput)))   | otherwise = Left "Both taxonomy ids must be provided for distance computation"  ---------------------------------------
src/Bio/TaxonomyData.hs view
@@ -8,7 +8,9 @@ --import qualified Data.ByteString as B import qualified Data.Aeson as A import qualified Data.Vector as V-import Data.Graph.Inductive+--import Data.Graph.Inductive+import Data.Graph.Inductive.Graph+import Data.Graph.Inductive.Tree import qualified Data.Text as T import qualified Data.Text.Lazy as TL    --import qualified Data.Text.Encoding