packages feed

ClustalParser 1.2.1 → 1.2.2

raw patch · 3 files changed

+20/−8 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

ClustalParser.cabal view
@@ -5,7 +5,7 @@ -- PVP summary:      +-+------- breaking API changes --                   | | +----- non-breaking API additions --                   | | | +--- code changes with no API change-version:             1.2.1+version:             1.2.2 synopsis:            Libary for parsing Clustal tools output description:         Currently contains parsers and datatypes for: clustalw2, clustalo, mlocarna, cmalign                      .@@ -18,10 +18,10 @@                      Cmalign is a multiple sequence alignment program based on RNA family models and produces                      ,among others, clustal output. It is part of infernal <http://infernal.janelia.org/>.                      -license:             GPL-3.0+license:             GPL-3 license-file:        LICENSE author:              Florian Eggenhofer-maintainer:          egg@tbi.univie.ac.at+maintainer:          egg@informatik.uni-freiburg.de -- copyright:            category:            Bioinformatics build-type:          Simple@@ -36,8 +36,8 @@  source-repository this   type:     git-  location: https://github.com/eggzilla/ClustalParser/tree/1.2.1-  tag:      1.2.1+  location: https://github.com/eggzilla/ClustalParser/tree/1.2.2+  tag:      1.2.2  library   -- Modules exported by the library.
changelog view
@@ -1,4 +1,7 @@ -*-change-log-*-+1.2.2 Florian Eggenhofer <egg@cs.uni-freiburg.de> 07. March 2018+        * Clustal parser can now parse alignments with missing consensus+	annotation 1.2.1 Florian Eggenhofer <egg@cs.uni-freiburg.de> 06. February 2017         * Structural alignment parser now works with multiline consensus structures 1.2.0 Florian Eggenhofer <egg@cs.uni-freiburg.de> 07. January 2017
src/Bio/ClustalParser.hs view
@@ -140,15 +140,24 @@   entrySlices' <- many1 genParserClustalEntrySlice   --extract length of identifier and spacer to determine offset of conservation track   let offsetLenght = length (entrySequenceSliceIdentifier (head entrySlices')) + spacerLength (head entrySlices')+  conservationTrackSlice  <- choice [(lookAhead (string "\n")), (try (genParserConservationTrackSlice offsetLenght))]+  --spacerAndConservationTrackSlice <- many1 (noneOf "\n")+  --let conservationTrackSlice' = drop offsetLenght spacerAndConservationTrackSlice+  --newline+  let conservationTrackSlice' = if (conservationTrackSlice == "\n") then "" else conservationTrackSlice+  optional newline+  return $ ClustalAlignmentSlice entrySlices' conservationTrackSlice'++genParserConservationTrackSlice :: Int -> GenParser Char st String+genParserConservationTrackSlice offsetLenght = do   spacerAndConservationTrackSlice <- many1 (noneOf "\n")   let conservationTrackSlice' = drop offsetLenght spacerAndConservationTrackSlice   newline-  optional newline-  return $ ClustalAlignmentSlice entrySlices' conservationTrackSlice'+  return $ conservationTrackSlice'  genParserClustalEntrySlice :: GenParser Char st ClustalAlignmentEntrySlice genParserClustalEntrySlice = do-  sliceIdentifier <- many1 (noneOf " ")+  sliceIdentifier <- many1 (noneOf " \n")   spacer <- many1 (char ' ')   sliceSequence <- parseNucleotideAlignmentEntry   newline