packages feed

hPDB 1.2.0.1 → 1.2.0.2

raw patch · 7 files changed

+27/−20 lines, 7 filesPVP: minor bump suggested

API additions: PVP suggests at least a minor version bump

API changes (from Hackage documentation)

+ Bio.PDB.Structure: instance Constructor C1_0Atom
+ Bio.PDB.Structure: instance Constructor C1_0Chain
+ Bio.PDB.Structure: instance Constructor C1_0Model
+ Bio.PDB.Structure: instance Constructor C1_0Residue
+ Bio.PDB.Structure: instance Constructor C1_0Structure
+ Bio.PDB.Structure: instance Datatype D1Atom
+ Bio.PDB.Structure: instance Datatype D1Chain
+ Bio.PDB.Structure: instance Datatype D1Model
+ Bio.PDB.Structure: instance Datatype D1Residue
+ Bio.PDB.Structure: instance Datatype D1Structure
+ Bio.PDB.Structure: instance Generic Atom
+ Bio.PDB.Structure: instance Generic Chain
+ Bio.PDB.Structure: instance Generic Model
+ Bio.PDB.Structure: instance Generic Residue
+ Bio.PDB.Structure: instance Generic Structure
+ Bio.PDB.Structure: instance Selector S1_0_0Atom
+ Bio.PDB.Structure: instance Selector S1_0_0Chain
+ Bio.PDB.Structure: instance Selector S1_0_0Model
+ Bio.PDB.Structure: instance Selector S1_0_0Residue
+ Bio.PDB.Structure: instance Selector S1_0_0Structure
+ Bio.PDB.Structure: instance Selector S1_0_1Atom
+ Bio.PDB.Structure: instance Selector S1_0_1Chain
+ Bio.PDB.Structure: instance Selector S1_0_1Model
+ Bio.PDB.Structure: instance Selector S1_0_1Residue
+ Bio.PDB.Structure: instance Selector S1_0_2Atom
+ Bio.PDB.Structure: instance Selector S1_0_2Residue
+ Bio.PDB.Structure: instance Selector S1_0_3Atom
+ Bio.PDB.Structure: instance Selector S1_0_3Residue
+ Bio.PDB.Structure: instance Selector S1_0_4Atom
+ Bio.PDB.Structure: instance Selector S1_0_5Atom
+ Bio.PDB.Structure: instance Selector S1_0_6Atom
+ Bio.PDB.Structure: instance Selector S1_0_7Atom
+ Bio.PDB.Structure: instance Selector S1_0_8Atom

Files

Bio/PDB/EventParser/ParseFORMUL.hs view
@@ -49,21 +49,21 @@                                    else errs   where     -- parse-    errs            = fErrs ++ watErr-    (fields, fErrs) = parseFields formulFields line line_no+    errs                = fErrs ++ watErr+    (fields, fErrs)     = parseFields formulFields line line_no     [fRec, _, fCompNum, _, fHetId, _, fCont, fAsterisk, fFormula] = fields-    IFInt  compNum  = fCompNum-    IFStr  hetId    = fHetId-    IFInt  cont     = fCont-    IFChar asterisk = fAsterisk-    IFStr  formula  = fFormula+    IFInt  compNum      = fCompNum+    IFStr  hetId        = fHetId+    IFInt  cont         = fCont+    IFChar asteriskChar = fAsterisk+    IFStr  formula      = fFormula     -    watErr = if asterisk `elem` " *"+    watErr = if (==asteriskChar) `BS.any` " *"                then []                else [PDBParseError line_no 19 $                      BS.concat ["Expecting asterisk for water or space, but found: '",-                                BS.pack [asterisk], "'."]]-    isWater = asterisk == '*'+                                BS.pack [asteriskChar], "'."]]+    isWater = asteriskChar == '*'      -- unpack fields     result = FORMUL compNum hetId cont isWater [formula]
Bio/PDB/Structure.hs view
@@ -1,10 +1,11 @@-{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE DisambiguateRecordFields, DeriveGeneric #-} module Bio.PDB.Structure(String,                          vdot, vnorm, vproj, vperpend, vperpends, vdihedral, (*|), (|*),                          Structure(..), Model(..), Chain(..), Residue(..), Atom(..))  where +import GHC.Generics(Generic) import Prelude hiding(String) import Bio.PDB.EventParser.PDBEvents(String, Vector3(..)) -- extract to a separate module? import Control.DeepSeq@@ -15,7 +16,7 @@ -- | Structure holds all data parsed from a single PDB entry data Structure = Structure { -- remarks :: [Map String String]                              models    :: L.List Model-                           } deriving (Eq, Show)+                           } deriving (Eq, Show, Generic)  instance NFData Structure where   rnf m = rnf (models m) `seq` ()@@ -31,7 +32,7 @@ -- | PDB entry may contain multiple models, with slight differences in coordinates etc. data Model     = Model     { modelId   :: !Int,                              chains    :: L.List Chain-                           } deriving (Eq, Show)+                           } deriving (Eq, Show, Generic)  instance NFData Model where   rnf m = modelId m `seq` rnf (chains m) `seq` ()@@ -39,7 +40,7 @@ -- | Single linear polymer chain of protein, or nucleic acids data Chain     = Chain     { chainId   :: !Char,                              residues  :: L.List Residue-                           } deriving (Eq, Show)+                           } deriving (Eq, Show, Generic)  instance NFData Chain where   rnf m = chainId m `seq` rnf (residues m) `seq` ()@@ -51,7 +52,7 @@                               insCode   :: !Char                              -- ss :: SSType -                           } deriving (Eq, Show)+                           } deriving (Eq, Show, Generic)  instance NFData Residue where   rnf r = rnf (atoms r) `seq` ()@@ -73,7 +74,8 @@                              segid     :: !String,                              charge    :: !String,                              hetatm    :: !Bool-                           } deriving (Eq, Show)+                           } deriving (Eq, Show, Generic)  -- constructor is strict in all arguments... instance NFData Atom where+  rnf (Atom {}) = ()
Bio/PDB/Structure/List.hs view
@@ -37,6 +37,7 @@ #else -- It is defined in newer versions of vector package. instance NFData (V.Vector a)   where+  rnf v = v `seq` () #endif  instance NFData (TempList m a) where
Bio/PDB/Util/MissingInstances.hs view
@@ -13,5 +13,6 @@ -- I use strict version of BS.ByteString so default implementation should do -- | Nothing needs to be done in NFData instance for stricty `BS.ByteString`. instance NFData BS.ByteString where+  rnf a = a `seq` () #endif 
README.md view
@@ -18,7 +18,7 @@  Details on official releases are on [Hackage](https://hackage.haskell.org/package/hPDB) -This package is also a part of [Stackage](http://daniel-diaz.github.io/stackagelist/) - a stable subset of Hackage.+This package is also a part of [Stackage](http://www.stackage.org/package/hPDB) - a stable subset of Hackage.  Projects for the future: ------------------------
changelog view
@@ -1,5 +1,8 @@ -*-Changelog-*- +1.2.0.2  Dec 2014+	* Works with GHC 7.10+ 1.2.0.1  Dec 2014 	* Relaxed upper bounds 
hPDB.cabal view
@@ -1,5 +1,5 @@ name:                hPDB-version:             1.2.0.1+version:             1.2.0.2 synopsis:            Protein Databank file format library homepage:            https://github.com/BioHaskell/hPDB stability:           stable@@ -32,7 +32,7 @@  build-type:          Simple cabal-version:       >=1.8-tested-with:         GHC==7.0.3, GHC==7.2.2, GHC==7.4.1, GHC==7.4.2, GHC==7.6.1, GHC==7.6.2, GHC==7.6.3+tested-with:         GHC==7.6.3, GHC==7.8.3 extra-source-files:  README.md INSTALL AUTHORS changelog  source-repository head@@ -68,7 +68,7 @@   if flag(have-text-format)     cpp-options: -DHAVE_TEXT_FORMAT     build-depends: text-format >= 0.3.1.0-  other-extensions:       ScopedTypeVariables OverloadedStrings BangPatterns NoMonomorphismRestriction EmptyDataDecls MagicHash CPP PatternGuards NamedFieldPuns DisambiguateRecordFields TemplateHaskell MultiParamTypeClasses FlexibleInstances FlexibleContexts+  other-extensions:       ScopedTypeVariables OverloadedStrings BangPatterns NoMonomorphismRestriction EmptyDataDecls MagicHash CPP PatternGuards NamedFieldPuns DisambiguateRecordFields TemplateHaskell MultiParamTypeClasses FlexibleInstances FlexibleContexts DeriveGeneric   other-modules:    Bio.PDB.EventParser.ParseATOM, Bio.PDB.EventParser.ParseCAVEAT, Bio.PDB.EventParser.ParseCISPEP, Bio.PDB.EventParser.ParseCONECT, Bio.PDB.EventParser.ParseCRYST1, Bio.PDB.EventParser.ParseDBREF, Bio.PDB.EventParser.ParseFORMUL, Bio.PDB.EventParser.ParseHEADER, Bio.PDB.EventParser.ParseHELIX, Bio.PDB.EventParser.ParseHET, Bio.PDB.EventParser.ParseHETNAM, Bio.PDB.EventParser.ParseHYDBND, Bio.PDB.EventParser.ParseIntRecord, Bio.PDB.EventParser.ParseJRNL, Bio.PDB.EventParser.ParseLINK, Bio.PDB.EventParser.ParseListRecord, Bio.PDB.EventParser.ParseMASTER, Bio.PDB.EventParser.ParseMatrixRecord, Bio.PDB.EventParser.ParseMODRES, Bio.PDB.EventParser.ParseObsoleting, Bio.PDB.EventParser.ParseREMARK, Bio.PDB.EventParser.ParseREVDAT, Bio.PDB.EventParser.ParseSEQADV, Bio.PDB.EventParser.ParseSEQRES, Bio.PDB.EventParser.ParseSHEET, Bio.PDB.EventParser.ParseSITE, Bio.PDB.EventParser.ParseSLTBRG, Bio.PDB.EventParser.ParseSpecListRecord, Bio.PDB.EventParser.ParseSPLIT, Bio.PDB.EventParser.ParseSSBOND, Bio.PDB.EventParser.ParseTER, Bio.PDB.EventParser.ParseTITLE, Bio.PDB.EventParser.ParseTVECT, Bio.PDB.EventParser.PDBParsingAbstractions, Bio.PDB.EventParser.FastParse, Bio.PDB.Util.MissingInstances, Bio.PDB.Common, Bio.PDB.Iterable.Utils, Bio.PDB.Iterable.Instances, Bio.PDB.StructureBuilder.Internals, Bio.PDB.StructureBuilder.Parallel, Bio.PDB.Util.ParFold   exposed-modules:  Bio.PDB.EventParser.PDBEvents, Bio.PDB.EventParser.PDBEventParser, Bio.PDB.EventParser.ExperimentalMethods, Bio.PDB.EventParser.HelixTypes, Bio.PDB.EventParser.StrandSense, Bio.PDB.Structure, Bio.PDB.StructureBuilder, Bio.PDB.Iterable, Bio.PDB.IO, Bio.PDB.Fasta, Bio.PDB, Bio.PDB.Structure.Vector, Bio.PDB.Structure.Elements, Bio.PDB.Structure.List, Bio.PDB.StructurePrinter, Bio.PDB.EventParser.PDBEventPrinter, Bio.PDB.IO.OpenAnyFile, Bio.PDB.Structure.Neighbours   exposed:          True