packages feed

tlynx 0.5.0 → 0.5.0.1

raw patch · 6 files changed

+128/−132 lines, 6 filesdep ~aesondep ~attoparsecdep ~bytestringPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: aeson, attoparsec, bytestring, comonad, containers, elynx-tools, elynx-tree, gnuplot, lifted-async, monad-logger, mwc-random, optparse-applicative, parallel, statistics, text, transformers, vector

API changes (from Hackage documentation)

Files

ChangeLog.md view
@@ -1,11 +1,18 @@ -# Changelog for ELynx+# Revision history for ELynx   ## Unreleased changes +-   Improve rooting functions.+-   Improve `Topology` data type (but still a lot to do).+-   Various additions to the documentation.+-   Rename `Measurable` to `HasLength`, `Supported` to `HasSupport`, and `Named`+    to `HasLength`.+-   Cabal and stack file changes. -## Version 0.5.0++## Version 0.5.0.1  -   `modLen`, `modSup`. -   Newtype wrappers for branch length, branch support, and node name. Those data
README.md view
@@ -2,7 +2,7 @@  # The ELynx Suite -Version: 0.5.0.+Version: 0.5.0.1. Reproducible evolution made easy.  <p align="center"><img src="https://travis-ci.org/dschrempf/elynx.svg?branch=master"/></p>@@ -19,18 +19,20 @@  The library packages are: --   **elynx-nexus:** Nexus file support.--   **elynx-markov:** Simulate multi sequence alignments along phylogenetic trees.--   **elynx-seq:** Handle evolutionary sequences and multi sequence alignments.--   **elynx-tools:** Tools for the provided executables.--   **elynx-tree:** Handle phylogenetic trees.+-   **[elynx-nexus](https://hackage.haskell.org/package/elynx-nexus):** Nexus file support.+-   **[elynx-markov](https://hackage.haskell.org/package/elynx-markov):** Simulate multi sequence alignments along phylogenetic trees.+-   **[elynx-seq](https://hackage.haskell.org/package/elynx-seq):** Handle evolutionary sequences and multi sequence alignments.+-   **[elynx-tools](https://hackage.haskell.org/package/elynx-tools):** Tools for the provided executables.+-   **[elynx-tree](https://hackage.haskell.org/package/elynx-tree):** Handle phylogenetic trees.  The executables are: --   **slynx:** Analyze, modify, and simulate evolutionary sequences.--   **tlynx:** Analyze, modify, and simulate phylogenetic trees.--   **elynx:** Validate and redo past analyses.+-   **[slynx](https://hackage.haskell.org/package/slynx):** Analyze, modify, and simulate evolutionary sequences.+-   **[tlynx](https://hackage.haskell.org/package/tlynx):** Analyze, modify, and simulate phylogenetic trees.+-   **[elynx](https://hackage.haskell.org/package/elynx):** Validate and redo past analyses. +Documentation is available on [Hackage](https://hackage.haskell.org/) (use direct links above).+ **ELynx is actively developed. We happily receive comments, ideas, feature requests, and pull requests!** @@ -65,34 +67,15 @@     [PATH](https://en.wikipedia.org/wiki/PATH_(variable)) environment variable. Then, they can be used directly.  -# Documentation--Documentation is available on [Hackage](https://hackage.haskell.org/).--Libraries:---   [elynx-nexus](https://hackage.haskell.org/package/elynx-nexus)--   [elynx-markov](https://hackage.haskell.org/package/elynx-markov)--   [elynx-seq](https://hackage.haskell.org/package/elynx-seq)--   [elynx-tools](https://hackage.haskell.org/package/elynx-tools)--   [elynx-tree](https://hackage.haskell.org/package/elynx-tree)--Executables:---   [elynx](https://hackage.haskell.org/package/elynx)--   [slynx](https://hackage.haskell.org/package/slynx)--   [tlynx](https://hackage.haskell.org/package/tlynx)-- # SLynx  Handle evolutionary sequences.      slynx --help | head -n -16 -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: slynx [-v|--verbosity VALUE] [-o|--output-file-basename NAME]                   [-f|--force] [--no-elynx-file] COMMAND@@ -137,9 +120,9 @@      slynx concatenate --help -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: slynx concatenate (-a|--alphabet NAME) INPUT-FILE       Concatenate sequences found in input files.@@ -158,9 +141,9 @@      slynx examine --help -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: slynx examine (-a|--alphabet NAME) INPUT-FILE [--per-site]       Examine sequences. If data is a multi sequence alignment, additionally analyze columns.@@ -180,9 +163,9 @@      slynx filter-rows --help -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: slynx filter-rows (-a|--alphabet NAME) INPUT-FILE [--longer-than LENGTH]                               [--shorter-than LENGTH] [--standard-characters]@@ -203,9 +186,9 @@      slynx filter-columns --help -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: slynx filter-columns (-a|--alphabet NAME) INPUT-FILE                                  [--standard-chars DOUBLE]@@ -227,9 +210,9 @@      slynx simulate --help -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: slynx simulate (-t|--tree-file Name) [-s|--substitution-model MODEL]                            [-m|--mixture-model MODEL] [-e|--edm-file NAME] @@ -306,9 +289,9 @@      slynx sub-sample --help -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: slynx sub-sample (-a|--alphabet NAME) INPUT-FILE                             (-n|--number-of-sites INT)@@ -336,9 +319,9 @@      slynx translate --help -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: slynx translate (-a|--alphabet NAME) INPUT-FILE (-r|--reading-frame INT)                            (-u|--universal-code CODE)@@ -361,9 +344,9 @@      tlynx --help | head -n -16 -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: tlynx [-v|--verbosity VALUE] [-o|--output-file-basename NAME]                   [-f|--force] [--no-elynx-file] COMMAND@@ -401,9 +384,9 @@      tlynx compare --help -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: tlynx compare [-n|--normalize] [-b|--bipartitions] [-t|--intersect]                           [-f|--newick-format FORMAT] NAMES@@ -430,9 +413,9 @@      tlynx examine --help -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: tlynx examine INPUT-FILE [-f|--newick-format FORMAT]       Compute summary statistics of phylogenetic trees.@@ -454,9 +437,9 @@      tlynx simulate --help -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: tlynx simulate (-t|--nTrees INT) (-n|--nLeaves INT) PROCESS                            [-u|--sub-sample DOUBLE] [-s|--summary-statistics] @@ -491,9 +474,9 @@      elynx --help | head -n -16 -    ELynx Suite version 0.5.0.+    ELynx Suite version 0.5.0.1.     Developed by Dominik Schrempf.-    Compiled on November 10, 2020, at 14:29 pm, UTC.+    Compiled on December 18, 2020, at 10:14 am, UTC.          Usage: elynx COMMAND       Validate and redo past ELynx analyses
src/TLynx/Examine/Examine.hs view
@@ -44,7 +44,7 @@     v = BL.pack val  -- | Examine branches of a tree.-summarizeLengths :: Measurable e => Tree e a -> BL.ByteString+summarizeLengths :: HasLength e => Tree e a -> BL.ByteString summarizeLengths t =   BL.intercalate     "\n"@@ -64,7 +64,7 @@   nf <- argsNewickFormat . local <$> ask   liftIO $ parseTrees nf fp -examineTree :: Named a => Handle -> Tree Phylo a -> IO ()+examineTree :: HasName a => Handle -> Tree Phylo a -> IO () examineTree h t = do   hPutStrLn h $ "Number of leaves: " ++ show (length lvs)   let l = phyloToLengthTree t
src/TLynx/Parsers.hs view
@@ -10,8 +10,7 @@ -- -- Creation date: Wed Apr 22 13:34:35 2020. module TLynx.Parsers-  (-    parseTree,+  ( parseTree,     parseTrees,     NewickFormat,     newickFormat,@@ -69,13 +68,21 @@       <> short 'f'       <> metavar "FORMAT"       <> value Standard-      <> help ("Newick tree format: " ++ nwlist ++ "; default: Standard; for detailed help, see 'tlynx --help'")+      <> help+        ( "Newick tree format: "+            ++ nwlist+            ++ "; default: Standard; for detailed help, see 'tlynx --help'"+        )   where     nwfs = map show (allValues :: [NewickFormat])     nwlist = intercalate ", " (init nwfs) <> ", or " <> last nwfs  -- | Help for different 'NewickFormat's. newickHelp :: [String]-newickHelp = map (toListItem . description) (allValues :: [NewickFormat]) ++ ["- Nexus file including Newick trees"]+newickHelp =+  map+    (toListItem . describeNewickFormat)+    (allValues :: [NewickFormat])+    ++ ["- Nexus file including Newick trees"]   where     toListItem = ("- Newick " ++)
src/TLynx/Simulate/Simulate.hs view
@@ -231,7 +231,7 @@   BB.intDec n <> BB.char8 ' ' <> BB.doubleDec (fromLength l) <> BB.char8 '\n'  -- Compute NChilSumStat for a phylogenetic tree.-toNChildSumStat :: Measurable e => Tree e a -> NChildSumStat+toNChildSumStat :: HasLength e => Tree e a -> NChildSumStat toNChildSumStat (Node br _ []) = [(getLen br, 1)] toNChildSumStat (Node br _ ts) = (getLen br, sumCh) : concat nChSS   where
tlynx.cabal view
@@ -1,79 +1,78 @@-cabal-version:  2.2-name:           tlynx-version:        0.5.0-synopsis:       Handle phylogenetic trees-description:    Examine, compare, and simulate phylogenetic trees in a reproducible way. Please see the README on GitHub at <https://github.com/dschrempf/elynx>.-category:       Bioinformatics-homepage:       https://github.com/dschrempf/elynx#readme-bug-reports:    https://github.com/dschrempf/elynx/issues-author:         Dominik Schrempf-maintainer:     dominik.schrempf@gmail.com-copyright:      Dominik Schrempf (2020)-license:        GPL-3.0-or-later-license-file:   LICENSE-build-type:     Simple+cabal-version:      2.2+name:               tlynx+version:            0.5.0.1+license:            GPL-3.0-or-later+license-file:       LICENSE+copyright:          Dominik Schrempf (2020)+maintainer:         dominik.schrempf@gmail.com+author:             Dominik Schrempf+homepage:           https://github.com/dschrempf/elynx#readme+bug-reports:        https://github.com/dschrempf/elynx/issues+synopsis:           Handle phylogenetic trees+description:+    Examine, compare, and simulate phylogenetic trees in a reproducible way. Please see the README on GitHub at <https://github.com/dschrempf/elynx>. +category:           Bioinformatics+build-type:         Simple extra-source-files:     README.md     ChangeLog.md  source-repository head-  type: git-  location: https://github.com/dschrempf/elynx+    type:     git+    location: https://github.com/dschrempf/elynx  library-  exposed-modules:-      TLynx.Compare.Compare-      TLynx.Compare.Options-      TLynx.Connect.Connect-      TLynx.Connect.Options-      TLynx.Distance.Distance-      TLynx.Distance.Options-      TLynx.Examine.Examine-      TLynx.Examine.Options-      TLynx.Options-      TLynx.Parsers-      TLynx.Shuffle.Options-      TLynx.Shuffle.Shuffle-      TLynx.Simulate.Options-      TLynx.Simulate.Simulate-      TLynx.TLynx-  other-modules:-      Paths_tlynx-  autogen-modules:-      Paths_tlynx-  hs-source-dirs:-      src-  ghc-options: -Wall-  build-depends:-      aeson-    , attoparsec-    , base >=4.7 && <5-    , bytestring-    , comonad-    , containers-    , elynx-tools-    , elynx-tree-    , gnuplot-    , lifted-async-    , monad-logger-    , mwc-random-    , optparse-applicative-    , parallel-    , statistics-    , text-    , transformers-    , vector-  default-language: Haskell2010+    exposed-modules:+        TLynx.Compare.Compare+        TLynx.Compare.Options+        TLynx.Connect.Connect+        TLynx.Connect.Options+        TLynx.Distance.Distance+        TLynx.Distance.Options+        TLynx.Examine.Examine+        TLynx.Examine.Options+        TLynx.Options+        TLynx.Parsers+        TLynx.Shuffle.Options+        TLynx.Shuffle.Shuffle+        TLynx.Simulate.Options+        TLynx.Simulate.Simulate+        TLynx.TLynx +    hs-source-dirs:   src+    other-modules:    Paths_tlynx+    autogen-modules:  Paths_tlynx+    default-language: Haskell2010+    ghc-options:      -Wall -Wunused-packages+    build-depends:+        aeson >=1.5.4.1 && <1.6,+        attoparsec >=0.13.2.4 && <0.14,+        base >=4.7 && <5,+        bytestring >=0.10.10.0 && <0.11,+        comonad >=5.0.6 && <5.1,+        containers >=0.6.2.1 && <0.7,+        elynx-tools >=0.5.0.1 && <0.6,+        elynx-tree >=0.5.0.1 && <0.6,+        gnuplot >=0.5.6.1 && <0.6,+        lifted-async >=0.10.1.2 && <0.11,+        monad-logger >=0.3.35 && <0.4,+        mwc-random >=0.14.0.0 && <0.15,+        optparse-applicative >=0.15.1.0 && <0.16,+        parallel >=3.2.2.0 && <3.3,+        statistics >=0.15.2.0 && <0.16,+        text >=1.2.3.2 && <1.3,+        transformers >=0.5.6.2 && <0.6,+        vector >=0.12.1.2 && <0.13+ executable tlynx-  main-is: Main.hs-  other-modules:-      Paths_tlynx-  hs-source-dirs:-      app-  ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N-  build-depends:-      base >=4.7 && <5-    , tlynx-  default-language: Haskell2010+    main-is:          Main.hs+    hs-source-dirs:   app+    other-modules:    Paths_tlynx+    default-language: Haskell2010+    ghc-options:+        -Wall -Wunused-packages -threaded -rtsopts -with-rtsopts=-N++    build-depends:+        base >=4.7 && <5,+        tlynx -any