From bugzilla-daemon at portal.open-bio.org Tue Sep 1 03:13:39 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Tue, 1 Sep 2009 03:13:39 -0400 Subject: [Bioperl-guts-l] [Bug 2908] New: ecoli.nt not available from ftp://ncbi.nlm.nih.gov, causes t/Tools/Run/StandaloneBlast.t to fail Message-ID: http://bugzilla.open-bio.org/show_bug.cgi?id=2908 Summary: ecoli.nt not available from ftp://ncbi.nlm.nih.gov, causes t/Tools/Run/StandaloneBlast.t to fail Product: BioPerl Version: 1.6 branch Platform: PC OS/Version: Windows XP Status: NEW Severity: minor Priority: P2 Component: bioperl-run AssignedTo: bioperl-guts-l at bioperl.org ReportedBy: J_Martin at lbl.gov ecoli.nt is no longer in ftp://ftp.ncbi.nih.gov/blast/db/FASTA without this a number of tests in t/Tools/Run/StandAloneBlast.t are skipped, then tests 43 fails as the sequence it needs wasn't read due to the skipped tests ( would have been read in ->next_seq if they hadn't been skipped ). seems recent that ecoli.nt quit existing as this test passed for me recently. or we've just had a recent resync with ncbi. -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Tue Sep 1 08:43:04 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Tue, 1 Sep 2009 08:43:04 -0400 Subject: [Bioperl-guts-l] [Bug 2908] ecoli.nt not available from ftp://ncbi.nlm.nih.gov, causes t/Tools/Run/StandaloneBlast.t to fail In-Reply-To: Message-ID: <200909011243.n81Ch4N9003717@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2908 ------- Comment #1 from cjfields at bioperl.org 2009-09-01 08:43 EST ------- These tests aren't normally run anyway (it requires an optional BLAST installation), so the issue is minor. Should be easy enough to correct within the toolkit (maybe use something that's already present). -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From maj at dev.open-bio.org Wed Sep 2 00:00:15 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Wed, 2 Sep 2009 00:00:15 -0400 Subject: [Bioperl-guts-l] [16017] bioperl-dev/trunk: Bioperl minor mode for emacs Message-ID: <200909020400.n8240FIw020146@dev.open-bio.org> Revision: 16017 Author: maj Date: 2009-09-02 00:00:14 -0400 (Wed, 02 Sep 2009) Log Message: ----------- Bioperl minor mode for emacs see http://www.bioperl.org/wiki/Emacs_bioperl-mode Happy Coding! Added Paths: ----------- bioperl-dev/trunk/ide/ bioperl-dev/trunk/ide/emacs/ bioperl-dev/trunk/ide/emacs/bioperl-mode/ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/SKIP bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/package-me bioperl-dev/trunk/ide/emacs/bioperl-mode/etc/ bioperl-dev/trunk/ide/emacs/bioperl-mode/etc/images/ bioperl-dev/trunk/ide/emacs/bioperl-mode/etc/images/bpmode-tool-dis.xpm bioperl-dev/trunk/ide/emacs/bioperl-mode/etc/images/bpmode-tool.xpm bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-skel.el Added: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/SKIP =================================================================== Added: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar =================================================================== (Binary files differ) Property changes on: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 (rev 0) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-02 04:00:14 UTC (rev 16017) @@ -0,0 +1 @@ +f070d2a8ebe21ebf7908b22d6e9b4303 *bioperl-mode.tar Added: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/package-me =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/package-me (rev 0) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/package-me 2009-09-02 04:00:14 UTC (rev 16017) @@ -0,0 +1,3 @@ +#!/bin/bash +tar -cvf bioperl-mode.tar --exclude-tag-all=SKIP --exclude-vcs --directory=.. --exclude=#*.* --exclude=*.*~ . +md5sum bioperl-mode.tar > bioperl-mode.tar.md5 Property changes on: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/package-me ___________________________________________________________________ Name: svn:executable + * Added: bioperl-dev/trunk/ide/emacs/bioperl-mode/etc/images/bpmode-tool-dis.xpm =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/etc/images/bpmode-tool-dis.xpm (rev 0) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/etc/images/bpmode-tool-dis.xpm 2009-09-02 04:00:14 UTC (rev 16017) @@ -0,0 +1,112 @@ +/* XPM */ +static char * bpmode_tool_dis_xpm[] = { +"24 24 85 1", +" c None", +". c #555555", +"+ c #A9A9A9", +"@ c #AAAAAA", +"# c #A3A3A3", +"$ c #9A9A9A", +"% c #ABABAB", +"& c #ACACAC", +"* c #A8A8A8", +"= c #A7A7A7", +"- c #A6A6A6", +"; c #A5A5A5", +"> c #9E9E9E", +", c #383838", +"' c #484848", +") c #454545", +"! c #1B1B1B", +"~ c #9B9B9B", +"{ c #A4A4A4", +"] c #A2A2A2", +"^ c #A1A1A1", +"/ c #959595", +"( c #1A1A1A", +"_ c #858585", +": c #717171", +"< c #505050", +"[ c #A0A0A0", +"} c #818181", +"| c #262626", +"1 c #878787", +"2 c #727272", +"3 c #545454", +"4 c #767676", +"5 c #4C4C4C", +"6 c #141414", +"7 c #9F9F9F", +"8 c #797979", +"9 c #0D0D0D", +"0 c #181818", +"a c #4D4D4D", +"b c #7D7D7D", +"c c #494949", +"d c #252525", +"e c #9D9D9D", +"f c #7B7B7B", +"g c #0E0E0E", +"h c #737373", +"i c #242424", +"j c #6A6A6A", +"k c #8C8C8C", +"l c #7F7F7F", +"m c #616161", +"n c #313131", +"o c #202020", +"p c #0F0F0F", +"q c #343434", +"r c #6E6E6E", +"s c #828282", +"t c #9C9C9C", +"u c #999999", +"v c #989898", +"w c #222222", +"x c #585858", +"y c #5E5E5E", +"z c #969696", +"A c #888888", +"B c #626262", +"C c #434343", +"D c #939393", +"E c #979797", +"F c #4F4F4F", +"G c #272727", +"H c #949494", +"I c #8D8D8D", +"J c #929292", +"K c #686868", +"L c #868686", +"M c #5D5D5D", +"N c #919191", +"O c #8E8E8E", +"P c #7A7A7A", +"Q c #8F8F8F", +"R c #676767", +"S c #8A8A8A", +"T c #909090", +" ", +" ", +" .................... ", +" .++++@@@#$@%%&%*=-;. ", +" .*+@@@@>,'@@%@=-;##. ", +" .+++@@@)!~%%@-=;{]^. ", +" . at ++@@/(_ at -;:<;{]^[. ", +" . at +@@@}|123456{][77. ", +" . at ++@@890ab7cd][7>e. ", +" .@@@@@fgh#=-ij[7>~~. ", +" .%%%@%_|kl:mn[7e~$$. ", +" .@@@%%~opqr,s7>t$uv. ", +" .%+%%@*'w>xy7>t$vzz. ", +" .%%%@*-A9BCDe~$vEz/. ", +" .@%@*=-{FGAet~vzzHD. ", +" .&@*=;{z3FI~~uz//JJ. ", +" .%*-;{vKbLMkvEzHJNN. ", +" .+=;#]EOePw/yRjxSJNQOT. ", +" .-#^[[>~$/z/82QOOOQ. ", +" .-#^[7e~$vzHHJTQQQN. ", +" .................... ", +" ", +" "}; Property changes on: bioperl-dev/trunk/ide/emacs/bioperl-mode/etc/images/bpmode-tool-dis.xpm ___________________________________________________________________ Name: svn:executable + * Added: bioperl-dev/trunk/ide/emacs/bioperl-mode/etc/images/bpmode-tool.xpm =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/etc/images/bpmode-tool.xpm (rev 0) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/etc/images/bpmode-tool.xpm 2009-09-02 04:00:14 UTC (rev 16017) @@ -0,0 +1,307 @@ +/* XPM */ +static char * bpmode_tool_xpm[] = { +"24 24 280 2", +" c None", +". c #000000", +"+ c #9DFB57", +"@ c #9AF85A", +"# c #96F65C", +"$ c #93F45F", +"% c #90F262", +"& c #8EEF66", +"* c #8CED68", +"= c #84E166", +"- c #7AD262", +"; c #83E371", +"> c #83E274", +", c #7FE176", +"' c #7CDE7A", +") c #7ADC7D", +"! c #77DA80", +"~ c #76D984", +"{ c #76D787", +"] c #74D78C", +"^ c #99F859", +"/ c #96F65D", +"( c #93F460", +"_ c #92F262", +": c #8EEF65", +"< c #8BEC68", +"[ c #7FDA62", +"} c #2C4D24", +"| c #386030", +"1 c #81E173", +"2 c #7FDF75", +"3 c #7DDD79", +"4 c #7ADB7D", +"5 c #76D980", +"6 c #75D884", +"7 c #74D788", +"8 c #73D38A", +"9 c #72D48F", +"0 c #97F65D", +"a c #93F360", +"b c #90F062", +"c c #8DEC69", +"d c #89E96B", +"e c #365E2C", +"f c #152412", +"g c #75CE68", +"h c #7FDF77", +"i c #7ADA7C", +"j c #75D77D", +"k c #75D984", +"l c #73D58C", +"m c #71D38F", +"n c #6ED494", +"o c #90F162", +"p c #8EEE65", +"q c #89EA6B", +"r c #76CA60", +"s c #142311", +"t c #64B05A", +"u c #7EDF76", +"v c #79D776", +"w c #76D477", +"x c #509356", +"y c #38683F", +"z c #74D787", +"A c #73D58B", +"B c #71D48F", +"C c #6FD393", +"D c #6FD299", +"E c #91F163", +"F c #8CEB69", +"G c #87E86D", +"H c #64AD55", +"I c #1D331A", +"J c #64B15E", +"K c #529450", +"L c #3C6D3D", +"M c #549959", +"N c #35633C", +"O c #0E1A10", +"P c #71D38E", +"Q c #6FD293", +"R c #6ED197", +"S c #6ED09D", +"T c #8FEE66", +"U c #8CEB68", +"V c #89E96A", +"W c #86E76D", +"X c #85E471", +"Y c #5CA052", +"Z c #0A1209", +"` c #112011", +" . c #376338", +".. c #59A25F", +"+. c #70CE7E", +"@. c #335F3C", +"#. c #1A3120", +"$. c #6FD192", +"%. c #6ED097", +"&. c #6DCF9C", +"*. c #6BCFA0", +"=. c #8AE96B", +"-. c #86E86D", +";. c #84E470", +">. c #82E173", +",. c #5CA255", +"'. c #0B130A", +"). c #529454", +"!. c #74D37C", +"~. c #76D983", +"{. c #75D889", +"]. c #19301F", +"^. c #4A8A5C", +"/. c #6FD292", +"(. c #6DCF9B", +"_. c #6ACD9F", +":. c #69CEA4", +"<. c #8BEA6C", +"[. c #87E76F", +"}. c #85E472", +"|. c #82E273", +"1. c #7EE076", +"2. c #61AD5E", +"3. c #1B311C", +"4. c #63B66B", +"5. c #59A663", +"6. c #50925D", +"7. c #447E52", +"8. c #22402B", +"9. c #6DD197", +"0. c #6CCF9C", +"a. c #68CCA2", +"b. c #68CDA9", +"c. c #88E86D", +"d. c #83E470", +"e. c #81E272", +"f. c #80E076", +"g. c #6FC872", +"h. c #172A19", +"i. c #0B140C", +"j. c #24442B", +"k. c #4E8F5D", +"l. c #274931", +"m. c #5AAB76", +"n. c #6DD298", +"o. c #6CD09C", +"p. c #6ACE9F", +"q. c #68CCA4", +"r. c #67CBA7", +"s. c #67CAAB", +"t. c #87E571", +"u. c #82E172", +"v. c #7CDD79", +"w. c #7ADB7C", +"x. c #77D980", +"y. c #335E39", +"z. c #182C1C", +"A. c #6FCD86", +"B. c #3E734D", +"C. c #417B55", +"D. c #6FD097", +"E. c #68CCA3", +"F. c #67CAA8", +"G. c #64C8AB", +"H. c #63C9AF", +"I. c #83E473", +"J. c #7FE076", +"K. c #7DDD7A", +"L. c #77D97F", +"M. c #60B171", +"N. c #09110B", +"O. c #448056", +"P. c #2F583E", +"Q. c #66C08B", +"R. c #6CCF9B", +"S. c #6ACD9E", +"T. c #67CAA7", +"U. c #65C9AA", +"V. c #63C9AE", +"W. c #62C9B3", +"X. c #7FE075", +"Y. c #7CDE79", +"Z. c #77DA7F", +"`. c #74D888", +" + c #74D58B", +".+ c #376845", +"++ c #1B3424", +"@+ c #5EB280", +"#+ c #6BCD9C", +"$+ c #69CDA3", +"%+ c #64C9AB", +"&+ c #63C9AD", +"*+ c #62C7B1", +"=+ c #60C7B9", +"-+ c #7DDF7A", +";+ c #79DB7D", +">+ c #76D882", +",+ c #69C483", +"'+ c #3A6E4D", +")+ c #36684C", +"!+ c #61B98B", +"~+ c #69CDA1", +"{+ c #67CBA6", +"]+ c #63C8AE", +"^+ c #62C8B2", +"/+ c #60C5B6", +"(+ c #5EC6BD", +"_+ c #78D97F", +":+ c #75D783", +"<+ c #74D687", +"[+ c #6AC786", +"}+ c #48885F", +"|+ c #57A376", +"1+ c #5CB085", +"2+ c #3F7B5F", +"3+ c #5FBA94", +"4+ c #65C9A9", +"5+ c #64C8AE", +"6+ c #62C6B2", +"7+ c #60C5B7", +"8+ c #5EC4BB", +"9+ c #5CC7C1", +"0+ c #78DB7F", +"a+ c #76D883", +"b+ c #73D48B", +"c+ c #69C689", +"d+ c #63BA87", +"e+ c #6DCE9B", +"f+ c #53A17C", +"g+ c #172D24", +"h+ c #366B59", +"i+ c #5FBEA2", +"j+ c #5DC5BB", +"k+ c #5AC5C0", +"l+ c #58C6C7", +"m+ c #73D687", +"n+ c #71D48E", +"o+ c #6ED196", +"p+ c #66C498", +"q+ c #407D64", +"r+ c #458971", +"s+ c #478D78", +"t+ c #3A7667", +"u+ c #5BB9A6", +"v+ c #5AC5C1", +"w+ c #57C5C5", +"x+ c #55C3CB", +"y+ c #75D787", +"z+ c #72D48A", +"A+ c #71D28E", +"B+ c #6FD197", +"C+ c #6ECE99", +"D+ c #6ACD9D", +"E+ c #69CCA0", +"F+ c #64C7A3", +"G+ c #62C8AE", +"H+ c #50A392", +"I+ c #4A9A8D", +"J+ c #5BC4B9", +"K+ c #59C4C0", +"L+ c #57C4C6", +"M+ c #55C1C8", +"N+ c #52C0CD", +"O+ c #74D88D", +"P+ c #72D58F", +"Q+ c #70D393", +"R+ c #6FD298", +"S+ c #6ED19D", +"T+ c #6BD0A1", +"U+ c #69CEA5", +"V+ c #66CAAB", +"W+ c #63C9B0", +"X+ c #61C7B4", +"Y+ c #61C7B8", +"Z+ c #5CC8BC", +"`+ c #5AC6C2", +" @ c #58C5C7", +".@ c #54C4CB", +"+@ c #50C2CE", +"@@ c #50C0D2", +" ", +" ", +" . . . . . . . . . . . . . . . . . . . . ", +" . + @ # $ % & * = - ; > , ' ) ! ~ { ] . ", +" . ^ / ( _ : < [ } | 1 2 3 4 5 6 7 8 9 . ", +" . 0 a b : c d e f g h 3 i j k 7 l m n . ", +" . ( o p < q r s t u v w x y z A B C D . ", +" . E p F q G H I J K L M N O A P Q R S . ", +" . T U V W X Y Z ` ...+. at .#.P $.%.&.*.. ", +" . c =.-.;.>.,.'.).!.~.{.].^./.%.(._.:.. ", +" . <.[.}.|.1.2.3.4.5.6.7.8.Q 9.0._.a.b.. ", +" . c.d.e.f.3 g.h.i.j.k.l.m.n.o.p.q.r.s.. ", +" . t.u.1.v.w.x.y.z.A.B.C.D.(.p.E.F.G.H.. ", +" . I.J.K.w.L.6 M.N.O.P.Q.R.S.q.T.U.V.W.. ", +" . X.Y.w.Z.k `. +.+++ at +0.#+$+F.%+&+*+=+. ", +" . -+;+x.>+z A ,+'+)+!+_.~+{+%+]+^+/+(+. ", +" . ) _+:+<+A [+}+|+1+2+3+T.4+5+6+7+8+9+. ", +" . 0+a+<+b+P c+d+e+f+g+h+i+5+6+/+j+k+l+. ", @@ Diff output truncated at 10000 characters. @@ From maj at dev.open-bio.org Thu Sep 3 00:03:55 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Thu, 3 Sep 2009 00:03:55 -0400 Subject: [Bioperl-guts-l] [16018] bioperl-dev/trunk/ide/emacs/bioperl-mode: - solved Emacs 21 compat issues Message-ID: <200909030403.n8343tpH030914@dev.open-bio.org> Revision: 16018 Author: maj Date: 2009-09-03 00:03:54 -0400 (Thu, 03 Sep 2009) Log Message: ----------- - solved Emacs 21 compat issues (at least, it works on dev.open-bio) - boundary issue with PERL5LIB - dumb regexp errors (lovin' the \\\\\\\\\\.....) - re-tarred to dist dir Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar =================================================================== (Binary files differ) Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-02 04:00:14 UTC (rev 16017) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-03 04:03:54 UTC (rev 16018) @@ -1 +1 @@ -f070d2a8ebe21ebf7908b22d6e9b4303 *bioperl-mode.tar +9b0ac0cd4ac196f217820eda6cbe6e22 *bioperl-mode.tar Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-02 04:00:14 UTC (rev 16017) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-03 04:03:54 UTC (rev 16018) @@ -137,7 +137,9 @@ (let ( (old-exec-path exec-path) (pth nil)) ;; safe path - (setq exec-path bioperl-safe-PATH) + (if (or (not (boundp 'bioperl-mode-safe-flag)) + bioperl-mode-safe-flag) + (setq exec-path bioperl-safe-PATH)) ;; see if pod2text runs...if so do the easy thing (setq bioperl-system-pod2text (if (eq (call-process "pod2text" nil nil t) 0) @@ -159,7 +161,9 @@ (old-exec-path exec-path) (pth nil) ) ;; safe path - (setq exec-path bioperl-safe-PATH) + (if (or (not (boundp 'bioperl-mode-safe-flag)) + bioperl-mode-safe-flag) + (setq exec-path bioperl-safe-PATH)) ;; ask perl first... (setq pth (with-temp-buffer @@ -172,26 +176,28 @@ ;; reset path (setq exec-path old-exec-path) ;; file name port issue - unixize - (subst-char-in-string ?\\ ?/ pth t) + (setq pth (replace-regexp-in-string "\\\\" "/" pth)) (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil)) ;; try the environment (unless pth - (setq pth (getenv "PERL5LIB")) - ;; unixize - (subst-char-in-string ?\\ ?/ pth t) - (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil)) + (if (setq pth (getenv "PERL5LIB")) + (progn + ;; unixize + (setq pth (replace-regexp-in-string "\\\\" "/" pth)) + (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil)))) ) ;; fall back to pwd (unless pth (setq pth (nth 1 (split-string (pwd)))) ;; unixize - (subst-char-in-string ?\\ ?/ pth t) + (setq pth (replace-regexp-in-string "\\\\" "/" pth)) + (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil)) ) (if pth (setq bioperl-module-path pth) - (message "Can't find Bio modules; try setting bioperl-module-path manually") + (message "Can't find Bio modules; defaulting to pwd -- try setting bioperl-module-path manually") (setq bioperl-module-path ".")) pth)) Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-02 04:00:14 UTC (rev 16017) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-03 04:03:54 UTC (rev 16018) @@ -32,6 +32,16 @@ ;; ;; - compile to byte code ;; +;; back-compatibility issue +;; - require a completing-read that works with emacs 21 +;; * no "test-completion" metho +;; * completing-read COLLECTION of 22 is TABLE of 21, +;; which must be an alist +;; issues +;; - bioperl-view-mode isn't always getting its keymap +;; - missing tool in tool-bar?? +;; - xemacs support? +;; ;; Installation ;; ;; The files bioperl-mode.el, bioperl-skel.el, and bioperl-init.el @@ -106,6 +116,12 @@ :type 'boolean :group 'bioperl) +(defcustom bioperl-mode-safe-flag t + "If set, bioperl-mode with substitute `exec-path' with `bioperl-safe-PATH'. +Nil means use your current `exec-path'." + :type 'boolean + :group 'bioperl) + (defcustom bioperl-pod2text-args '("") "A list of pod2text arguments. Must be single characters preceded by dashes. Args used with @@ -281,9 +297,11 @@ ;; list getters ;; -(defun bioperl-method-names (module) +(defun bioperl-method-names (module &optional as-alist) - "Returns a list of method names as given in the pod of MODULE. MODULE is in double-colon format. + "Returns a list of method names as given in the pod of MODULE. +MODULE is in double-colon format. If AS-ALIST is t, return an +alist with elts as (NAME . nil). This function looks first to see if methods for MODULE are already loaded in `bioperl-method-pod-cache'; if not, calls @@ -293,16 +311,23 @@ (unless (bioperl-path-from-perl module) (error "Module specified by MODULE not found in installation")) ;; check the cache; might get lucky... - (if (string-equal module bioperl-cached-module) - (mapcar 'car bioperl-method-pod-cache) - (mapcar 'car (bioperl-slurp-methods-from-pod module)))) + (let ( (ret) ) + (setq ret + (if (string-equal module bioperl-cached-module) + (mapcar 'car bioperl-method-pod-cache) + (mapcar 'car (bioperl-slurp-methods-from-pod module)))) + (if as-alist + (mapcar (lambda (x) (list x nil)) ret) + ret))) -(defun bioperl-module-names (module-dir &optional retopt) +(defun bioperl-module-names (module-dir &optional retopt as-alist) "Returns a list of modules contained in the directory indicated by MODULE-DIR. MODULE-DIR is in double-colon format. Optional RETOPT: nil, return module names only (default); t, return directory names -only; other, return all names as a flat list. +only; other, return all names as a flat list. Optional AS-ALIST: +if t, return an alist with elts (NAME . nil) (when used in +completing functions, for back-compat with Emacs 21). This function is responsible for the lazy loading of the module names cache: it will look first in `bioperl-module-names-cache'; if @@ -310,37 +335,38 @@ `bioperl-add-module-names-to-cache' will be called." (let ( (module-components (split-string module-dir "::")) - (alist nil) + (unlist (lambda (x) (if (listp x) (car x) x)) ) + (unlist-lists (lambda (x) (if (listp x) (car x) nil)) ) + (unlist-strs (lambda (x) (if (listp x) nil x)) ) + (ret) ) (setq alist (deep-assoc module-components bioperl-module-names-cache)) (if (and alist (cdr alist)) (cond ( (not (booleanp retopt)) - (mapcar (lambda (x) (if (listp x) (car x) x)) - (cdr alist))) + (setq ret (mapcar unlist (cdr alist)))) ((not retopt) - (delete nil (mapcar - (lambda (x) (if (listp x) nil x)) - (cdr alist)))) + (setq ret (delete nil (mapcar unlist-strs (cdr alist))))) ( retopt - (delete nil (mapcar - (lambda (x) (if (listp x) (car x) nil)) - (cdr alist))))) + (setq ret (delete nil (mapcar unlist-lists (cdr alist)))))) (if (bioperl-add-module-names-to-cache module-dir) (cond ( (not (booleanp retopt)) - (mapcar - (lambda (x) (if (listp x) (car x) x)) - (cdr (deep-assoc module-components bioperl-module-names-cache)))) + (setq ret + (mapcar unlist + (cdr (deep-assoc module-components bioperl-module-names-cache))))) ((not retopt) - (delete nil (mapcar - (lambda (x) (if (listp x) nil x)) - (cdr (deep-assoc module-components bioperl-module-names-cache))))) + (setq ret + (delete nil (mapcar unlist-strs + (cdr (deep-assoc module-components bioperl-module-names-cache)))))) ( retopt - (delete nil (mapcar - (lambda (x) (if (listp x) (car x) nil)) + (setq ret + (delete nil (mapcar unlist-lists (cdr (deep-assoc module-components bioperl-module-names-cache)))))) - nil)))) + nil))) + (if (not as-alist) + ret + (mapcar (lambda (x) (list x nil)) ret)))) ;; @@ -368,7 +394,8 @@ (unless pmfile (error "Module specified by MODULE not found in installation")) ;; safe path - (setq exec-path bioperl-safe-PATH) + (if bioperl-mode-safe-flag + (setq exec-path bioperl-safe-PATH)) ;; untaint pod2text args (setq args (remove nil @@ -412,7 +439,8 @@ (unless pmfile (error "Module specified by MODULE not found in installation")) ;; safe path - (setq exec-path bioperl-safe-PATH) + (if bioperl-mode-safe-flag + (setq exec-path bioperl-safe-PATH)) (save-excursion (set-buffer pod-buf) (setq header-line-format (concat section " - BioPerl module " module)) @@ -484,65 +512,66 @@ (old-exec-path exec-path) ) ;; safe path - (setq exec-path bioperl-safe-PATH) - (with-temp-buffer - (if (not (= 0 - (call-process bioperl-system-pod2text + (if bioperl-mode-safe-flag + (setq exec-path bioperl-safe-PATH)) + (with-temp-buffer + (if (not (= 0 + (call-process bioperl-system-pod2text nil t t pmfile "-a"))) - (error "pos2text failed")) - ;; clip to desired section - (goto-char (point-min)) - (if (search-forward "= APPENDIX" (point-max) t) - (progn - (beginning-of-line) - (delete-region (point-min) (point)) - ;; looking down into appendix - ;; - (while (re-search-forward "^==\\s +\\([a-zA-Z0-9_]+\\)" - (point-max) t) - (setq method (match-string 1)) - (setq data-elt (cons method '())) - ;; now we have the current method... - ;; find the boundary of this method's pod - (save-excursion - (setq bound (progn (re-search-forward "^=" - (point-max) 1) - (beginning-of-line) - (point)))) - ;; now parse out the guts of this method's pod - ;; getting pod-keys and their content... - (while (re-search-forward - "^\\s +\\([A-Za-z]+\\)\\s *:\\s *\\(.*\\)$" - bound t) - (setq pod-key (match-string 1)) - (setq content (match-string 2)) - (save-excursion - (setq content - (concat content - (buffer-substring - (point) (if (re-search-forward "^\\s +[A-Za-z]+\\s *:" bound 1) - (progn (beginning-of-line) (point)) - (point))))) - ) - ;; squeeze whitespace from content @@ Diff output truncated at 10000 characters. @@ From maj at dev.open-bio.org Thu Sep 3 07:46:44 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Thu, 3 Sep 2009 07:46:44 -0400 Subject: [Bioperl-guts-l] [16019] bioperl-dev/trunk/ide/emacs/bioperl-mode/dist: retarring on dev node Message-ID: <200909031146.n83BkiHk001277@dev.open-bio.org> Revision: 16019 Author: maj Date: 2009-09-03 07:46:43 -0400 (Thu, 03 Sep 2009) Log Message: ----------- retarring on dev node Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar =================================================================== (Binary files differ) Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-03 04:03:54 UTC (rev 16018) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-03 11:46:43 UTC (rev 16019) @@ -1 +1 @@ -9b0ac0cd4ac196f217820eda6cbe6e22 *bioperl-mode.tar +99debe7bf20b5ee9ca11f8cd926ae981 bioperl-mode.tar From maj at dev.open-bio.org Thu Sep 3 08:26:52 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Thu, 3 Sep 2009 08:26:52 -0400 Subject: [Bioperl-guts-l] [16020] bioperl-dev/trunk/ide/emacs/bioperl-mode: fixed PERL5LIB parsing issue Message-ID: <200909031226.n83CQq8a001600@dev.open-bio.org> Revision: 16020 Author: maj Date: 2009-09-03 08:26:51 -0400 (Thu, 03 Sep 2009) Log Message: ----------- fixed PERL5LIB parsing issue looks for Bio tree in PATH as well error now thrown when completion attempted, but current bioperl-module-path does not point to a Bio tree retarred dist Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/package-me bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar =================================================================== (Binary files differ) Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-03 11:46:43 UTC (rev 16019) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-03 12:26:51 UTC (rev 16020) @@ -1 +1 @@ -99debe7bf20b5ee9ca11f8cd926ae981 bioperl-mode.tar +5f33e02176b54327b6ee46b68d56d6b4 bioperl-mode.tar Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/package-me =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/package-me 2009-09-03 11:46:43 UTC (rev 16019) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/package-me 2009-09-03 12:26:51 UTC (rev 16020) @@ -1,3 +1,3 @@ #!/bin/bash -tar -cvf bioperl-mode.tar --exclude-tag-all=SKIP --exclude-vcs --directory=.. --exclude=#*.* --exclude=*.*~ . +tar -cvf bioperl-mode.tar --directory=.. --exclude=#*.* --exclude=*.*~ --exclude=.svn --exclude=dist . md5sum bioperl-mode.tar > bioperl-mode.tar.md5 Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-03 11:46:43 UTC (rev 16019) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-03 12:26:51 UTC (rev 16020) @@ -181,12 +181,19 @@ ;; try the environment (unless pth - (if (setq pth (getenv "PERL5LIB")) + (let ( + ( plib (concat (getenv "PERL5LIB") path-separator (getenv "PATH"))) + ( pths ) + ) + (if plib (progn + (setq pths (split-string plib path-separator)) + (while (and (not pth) pths) ;; unixize - (setq pth (replace-regexp-in-string "\\\\" "/" pth)) - (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil)))) - ) +;; (setq pth (replace-regexp-in-string "\\\\" "/" pth)) + (setq pth (pop pths)) + (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil))) + )))) ;; fall back to pwd (unless pth (setq pth (nth 1 (split-string (pwd)))) Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-03 11:46:43 UTC (rev 16019) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-03 12:26:51 UTC (rev 16020) @@ -694,6 +694,8 @@ (interactive) (unless bioperl-module-path (error "bioperl-module-path not yet set; you can set it with bioperl-find-module-path")) + (unless (file-exists-p (concat bioperl-module-path "/Bio")) + (error "Bio modules not present in `bioperl-module-path'; set `bioperl-module-path' manually")) (let ( (found (thing-at-point-looking-at "Bio::[a-zA-Z_:]+")) (module nil) @@ -713,6 +715,8 @@ not t or nil, return a directory only." (unless bioperl-module-path (error "bioperl-module-path not yet set; you can set it with bioperl-find-module-path")) + (unless (file-exists-p (concat bioperl-module-path "/Bio")) + (error "Bio modules not present in `bioperl-module-path'; set `bioperl-module-path' manually")) (unless (stringp module) (error "string arg required at MODULE")) (let ( From maj at dev.open-bio.org Thu Sep 3 15:05:46 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Thu, 3 Sep 2009 15:05:46 -0400 Subject: [Bioperl-guts-l] [16021] bioperl-dev/branches/bioperl-mode-multipath-branch/: branch for working out multiple module path Message-ID: <200909031905.n83J5kSF003461@dev.open-bio.org> Revision: 16021 Author: maj Date: 2009-09-03 15:05:46 -0400 (Thu, 03 Sep 2009) Log Message: ----------- branch for working out multiple module path functionality Added Paths: ----------- bioperl-dev/branches/bioperl-mode-multipath-branch/ Copied: bioperl-dev/branches/bioperl-mode-multipath-branch (from rev 16020, bioperl-dev/trunk/ide/emacs/bioperl-mode) From maj at dev.open-bio.org Thu Sep 3 23:11:11 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Thu, 3 Sep 2009 23:11:11 -0400 Subject: [Bioperl-guts-l] [16022] bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp: begin refactor of bioperl-module-path Message-ID: <200909040311.n843BB0W005607@dev.open-bio.org> Revision: 16022 Author: maj Date: 2009-09-03 23:11:11 -0400 (Thu, 03 Sep 2009) Log Message: ----------- begin refactor of bioperl-module-path handling Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-init.el bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-init.el =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-init.el 2009-09-03 19:05:46 UTC (rev 16021) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-init.el 2009-09-04 03:11:11 UTC (rev 16022) @@ -159,26 +159,29 @@ initializaton." (let ( (old-exec-path exec-path) - (pth nil) ) - ;; safe path - (if (or (not (boundp 'bioperl-mode-safe-flag)) - bioperl-mode-safe-flag) - (setq exec-path bioperl-safe-PATH)) - ;; ask perl first... - (setq pth - (with-temp-buffer - (call-process - "perl" nil t t - "-MConfig" "-e" "print $Config{sitelib}") - (goto-char (point-min)) - (thing-at-point 'line) - )) - ;; reset path - (setq exec-path old-exec-path) - ;; file name port issue - unixize - (setq pth (replace-regexp-in-string "\\\\" "/" pth)) - (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil)) - + (pth) ) + ;; ask BPMODE_PATH first... + (setq pth (getenv "BPMODE_PATH")) + ;; then ask Perl... + (unless pth + ;; safe path + (if (or (not (boundp 'bioperl-mode-safe-flag)) + bioperl-mode-safe-flag) + (setq exec-path bioperl-safe-PATH)) + + (setq pth + (with-temp-buffer + (call-process + "perl" nil t t + "-MConfig" "-e" "print $Config{sitelib}") + (goto-char (point-min)) + (thing-at-point 'line) + )) + ;; reset exec-path + (setq exec-path old-exec-path) + ;; file name port issue - unixize + (setq pth (replace-regexp-in-string "\\\\" "/" pth)) + (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil))) ;; try the environment (unless pth (let ( @@ -199,7 +202,6 @@ (setq pth (nth 1 (split-string (pwd)))) ;; unixize (setq pth (replace-regexp-in-string "\\\\" "/" pth)) - (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil)) ) (if pth Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-03 19:05:46 UTC (rev 16021) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-04 03:11:11 UTC (rev 16022) @@ -1,5 +1,7 @@ ;; $Id$ +;; use multiple paths in bioperl-module-path + ;; ;; Bioperl minor (haha!) mode ;; @@ -34,7 +36,7 @@ ;; ;; back-compatibility issue ;; - require a completing-read that works with emacs 21 -;; * no "test-completion" metho +;; * no "test-completion" method ;; * completing-read COLLECTION of 22 is TABLE of 21, ;; which must be an alist ;; issues @@ -146,8 +148,9 @@ (defcustom bioperl-module-path nil "Local path to Bioperl modules. -On init, set is attempted by `bioperl-find-module-path'" - :type 'file +On init, set is attempted by `bioperl-find-module-path' Can indicate multiple search paths; define as PATH in your OS. The environment variable BPMODE_PATH will override everything." +;; better type 'choice; do later + :type 'string :initialize 'bioperl-find-module-path :group 'bioperl) @@ -373,7 +376,7 @@ ;; pod slurpers ;; -(defun bioperl-view-full-pod (module) +(defun bioperl-view-full-pod (module &optional n) "Open the Bioperl POD for the MODULE for viewing in another buffer. MODULE is in double-colon format." (unless bioperl-system-pod2text @@ -383,12 +386,16 @@ (error "Unexpected command in bioperl-system-pod2text; aborting...")) (unless (and module (stringp module)) (error "String required at arg MODULE")) + (unless (and n (numberp n)) + (error "Number required at arg N")) + (unless n + (setq n 0)) (if (not module) nil (let ( (old-exec-path exec-path) (pod-buf (generate-new-buffer "*BioPerl POD*")) - (pmfile (bioperl-path-from-perl module)) + (pmfile (bioperl-path-from-perl module nil n)) (args bioperl-pod2text-args) ) (unless pmfile @@ -415,8 +422,11 @@ ;;return val t )) -(defun bioperl-view-pod-section (module section) - "Open the Bioperl POD for the module PMFILE for viewing in another buffer." +(defun bioperl-view-pod-section (module section &optional n) + "Open the Bioperl POD for the module PMFILE for viewing in another buffer. +MODULE is in double-colon format. SECTION is a string; one of +SYNOPSIS, DESCRIPTION, or APPENDIX. N is the index of the desired +component of bioperl-module-path." (unless bioperl-system-pod2text (unless (bioperl-find-system-pod2text) (error "Can't find pod2text; try setting bioperl-system-pod2text manually"))) @@ -428,12 +438,15 @@ (error "String required at arg SECTION")) (unless (member (upcase section) '("SYNOPSIS" "DESCRIPTION" "APPENDIX")) (error "SECTION not recognized or handled yet")) - + (unless (and n (numberp n)) + (error "Number required at arg N")) + (unless n + (setq n 0)) (let ( (pod-buf (generate-new-buffer "*BioPerl POD*")) (args '("-a")) (ret nil) - (pmfile (bioperl-path-from-perl module)) + (pmfile (bioperl-path-from-perl module nil n)) (old-exec-path exec-path) ) (unless pmfile @@ -467,6 +480,7 @@ ) ret )) + (defun bioperl-slurp-methods-from-pod (module) "Parse pod for individual methods for module MODULE. MODULE is in double-colon format. @@ -577,12 +591,26 @@ ;; directory slurpers ;; -(defun bioperl-add-module-names-to-cache (module-dir) +(defun bioperl-add-module-names-to-cache (module-dir &optional n) "Add alists to `bioperl-module-names-cache'. MODULE-DIR is in double colon format. Allows for lazy build of -the cache. Returns t if we added anything, nil if not" +the cache. Returns t if we added anything, nil if not. N is the index +of the desired bioperl-module-path component. + +Cache alist format: + ( "Bio" . + ( (MODULE_NAME PATH_INDEX) ... ; .pm file base names + (DIRNAME . nil) ... ; dirname read but not yet followed + (DIRNAME . ( ... ) ) ... ) ; dirname assoc with >=1 level structure + ) +" + (unless (and module-dir (stringp module-dir)) (error "String required at arg MODULE-DIR")) + (unless (and n (numberp n)) + (error "Number required at arg N")) + (unless n + (setq n 0)) (let ( (pth (bioperl-path-from-perl module-dir 1)) (module-components (split-string module-dir "::")) @@ -641,16 +669,24 @@ )) ret )) -(defun bioperl-slurp-module-names (module-dir) +(defun bioperl-slurp-module-names (module-dir &optional n) "Return list of basenames for .pm files contained in MODULE-DIR. -MODULE-DIR is in double-colon format." +MODULE-DIR is in double-colon format. N is the index of the desired +bioperl-module-path component." (unless (and module-dir (stringp module-dir)) (error "String required at arg MODULE-DIR")) + (unless (and n (numberp n)) + (error "Number required at arg N")) + (unless n + (setq n 0)) (let ( - (pth (bioperl-path-from-perl module-dir 1)) + (module-path (elt (split-string bioperl-module-path path-separator) 0)) + (pth (bioperl-path-from-perl module-dir 1 n)) (modules nil) (fnames nil) ) + (if (and (> n 0) (> n (1- (length module-path)))) + (error "Path index out of bounds at arg N")) ;; following (elt ... 0) checks if pth is dir or symlink ;; possible bug... ;; try including directory names too, as (list (cons name nil)) @@ -677,7 +713,7 @@ ;; (defun bioperl-module-at-point () - "Look for something like a module declaration at point, and return it." + "Look for something like a module identifier at point, and return it." (interactive) (let ( (found (thing-at-point-looking-at "Bio::[a-zA-Z_:]+")) @@ -689,44 +725,60 @@ (setq module (apply 'buffer-substring (match-data))) module))) -(defun bioperl-find-module-at-point () - "Look for something like a module declaration at point, and return a filepath corresponding to it." +(defun bioperl-find-module-at-point (&optional n) + "Look for something like a module declaration at point, and return a filepath corresponding to it. +N is the index of the desired bioperl-module-path component." (interactive) + (unless (and n (numberp n)) + (error "Number required at arg N")) + (unless n + (setq n 0)) (unless bioperl-module-path - (error "bioperl-module-path not yet set; you can set it with bioperl-find-module-path")) - (unless (file-exists-p (concat bioperl-module-path "/Bio")) - (error "Bio modules not present in `bioperl-module-path'; set `bioperl-module-path' manually")) - (let ( - (found (thing-at-point-looking-at "Bio::[a-zA-Z_:]+")) - (module nil) - (pth nil) + (error "bioperl-module-path not yet set; you can set it with bioperl-find-module-path")) + (let ( + (module-path (elt (split-string bioperl-module-path path-separator) n)) + (found) (module) (pth) ) + (if (and (> n 0) (> n (1- (length module-path)))) + (error "Path index out of bounds at arg N")) + (unless (file-exists-p (concat module-path "/Bio")) + (error (concat "Bio modules not present in " module-path "; set `bioperl-module-path' manually"))) + (setq found (thing-at-point-looking-at "Bio::[a-zA-Z_:]+")) (if (not found) nil (setq module (apply 'buffer-substring (match-data))) - (setq pth (bioperl-path-from-perl module))) + (setq pth (bioperl-path-from-perl module n))) pth)) -(defun bioperl-path-from-perl (module &optional dir-first) +(defun bioperl-path-from-perl (module &optional dir-first n) "Return a path to the module file represented by the perl string MODULE. Returns nil if no path found. If DIR-FIRST is t, return a directory over a .pm file if there is a choice. If DIR-FIRST is -not t or nil, return a directory only." +not t or nil, return a directory only. N is an integer, indicating the +desired member of bioperl-module-path to search." (unless bioperl-module-path (error "bioperl-module-path not yet set; you can set it with bioperl-find-module-path")) @@ Diff output truncated at 10000 characters. @@ From maj at dev.open-bio.org Fri Sep 4 15:47:11 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Fri, 4 Sep 2009 15:47:11 -0400 Subject: [Bioperl-guts-l] [16023] bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/ bioperl-mode.el: not there yet, but closer Message-ID: <200909041947.n84JlBUC011868@dev.open-bio.org> Revision: 16023 Author: maj Date: 2009-09-04 15:47:10 -0400 (Fri, 04 Sep 2009) Log Message: ----------- not there yet, but closer Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-04 03:11:11 UTC (rev 16022) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-04 19:47:10 UTC (rev 16023) @@ -386,7 +386,7 @@ (error "Unexpected command in bioperl-system-pod2text; aborting...")) (unless (and module (stringp module)) (error "String required at arg MODULE")) - (unless (and n (numberp n)) + (unless (or (not n) (numberp n)) (error "Number required at arg N")) (unless n (setq n 0)) @@ -438,7 +438,7 @@ (error "String required at arg SECTION")) (unless (member (upcase section) '("SYNOPSIS" "DESCRIPTION" "APPENDIX")) (error "SECTION not recognized or handled yet")) - (unless (and n (numberp n)) + (unless (or (not n) (numberp n)) (error "Number required at arg N")) (unless n (setq n 0)) @@ -598,8 +598,8 @@ of the desired bioperl-module-path component. Cache alist format: - ( "Bio" . - ( (MODULE_NAME PATH_INDEX) ... ; .pm file base names + ( \"Bio\" . + ( (MODULE_NAME PATH_INDEX_STRING) ... ; .pm file base names (DIRNAME . nil) ... ; dirname read but not yet followed (DIRNAME . ( ... ) ) ... ) ; dirname assoc with >=1 level structure ) @@ -607,12 +607,14 @@ (unless (and module-dir (stringp module-dir)) (error "String required at arg MODULE-DIR")) - (unless (and n (numberp n)) + (unless (or (not n) (numberp n)) (error "Number required at arg N")) (unless n (setq n 0)) + (if (and (> n 0) (> n (1- (length (split-string bioperl-module-path path-separator))))) + (error "Path index out of bounds at arg N")) (let ( - (pth (bioperl-path-from-perl module-dir 1)) + (pth (bioperl-path-from-perl module-dir 1 n)) (module-components (split-string module-dir "::")) (module-string nil) (modules nil) @@ -625,21 +627,45 @@ (if (not pth) ;; no path returned for module-dir... nil - (setq cache-pos (deep-assoc module-components bioperl-module-names-cache)) - (if (and cache-pos (cdr cache-pos)) - nil ;; an alist already present at this location... - ;; otherwise, none or a stub; do real work - ;; find the key at which to add info... - ;; value return by assoc is really a pointer into the - ;; original alist. - (if cache-pos - ;; easy - (progn - (setcdr cache-pos (bioperl-slurp-module-names module-dir)) - (setq ret t)) - ;; hard + (setq cache-pos (deep-assoc-all module-components bioperl-module-names-cache)) + (setq cache-pos (car (delete + nil + (mapcar (lambda (x) (if (listp (cdr x)) x nil)) + cache-pos)))) + (if cache-pos ;; something there + ;; easy - a stub + (if (null (cdr cache-pos)) + (setcdr cache-pos (bioperl-slurp-module-names module-dir n)) + ;; less hard - branch exists + (let* ( + (mod-alist (bioperl-slurp-module-names module-dir n)) + (mod-alist-keys (mapcar 'car mod-alist)) + (cache-item) (key) + ) + (while (setq key (pop mod-alist-keys)) + (setq cache-item (assoc key cache-pos)) + (if (null cache-item) + nil + (if (member n (split-string (cdr cache-item) path-separator)) + ;; deja vu + (setq mod-alist-keys nil) ;; fall-through +; (setq cache-item (cdr cache-item)) +; (setcdr (assoc key mod-alist) (concat (cdr (assoc key mod-alist)) path-separator cache-item)) + (setcdr cache-item (concat (cdr (assoc key mod-alist)) path-separator (cdr cache-item))) + (setq ret t)))) + )) + + ;; hard - branch dne (setq keys module-components) - (while (deep-assoc (append good-keys (list (car keys))) bioperl-module-names-cache) + (while ( + let ( (da (deep-assoc-all + (append good-keys (list (car keys))) + bioperl-module-names-cache) ) ) + (setq da (car (delete nil + (mapcar (lambda (x) + (if (listp (cdr x)) x nil)) + da)))) + (car da) );; has a member whose cdr is a list (setq good-keys (append good-keys (list (car keys)))) (setq keys (cdr keys))) ;; keys contains the directories we need to add, in order @@ -655,7 +681,7 @@ (while keys (setq this-key (pop keys)) (setq module-string (if module-string (concat module-string "::" this-key) this-key)) - (setq modules (bioperl-slurp-module-names module-string)) + (setq modules (bioperl-slurp-module-names module-string n)) (if (not modules) (setq keys nil) (setq ret t) @@ -666,16 +692,22 @@ (setq bioperl-module-names-cache (list (cons this-key modules))) (setq cache-pos (assoc this-key bioperl-module-names-cache))) ))) - )) + ) ret )) (defun bioperl-slurp-module-names (module-dir &optional n) - "Return list of basenames for .pm files contained in MODULE-DIR. + "Return list of the basenames for .pm files contained in MODULE-DIR. MODULE-DIR is in double-colon format. N is the index of the desired -bioperl-module-path component." +bioperl-module-path component. + +Return is a list of the form + + ( (MODULE_NAME . PATH_INDEX_STRING) ... + (DIR_NAME . nil) ... ) +" (unless (and module-dir (stringp module-dir)) (error "String required at arg MODULE-DIR")) - (unless (and n (numberp n)) + (unless (or (not n) (numberp n)) (error "Number required at arg N")) (unless n (setq n 0)) @@ -696,9 +728,9 @@ (setq fnames (directory-files pth)) (while fnames (let ( (str (pop fnames))) - ;; files - strings + ;; files - conses with path-index cdr (if (string-match "\\([a-zA-Z0-9_]+\\)\.pm$" str) - (push (match-string 1 str) modules)) + (push (cons (match-string 1 str) (number-to-string n)) modules)) ;; directories - conses with nil cdr (if (string-match "^\\([a-zA-Z0-9_]+\\)$" str) (if (not (string-equal (match-string 1 str) "README")) (push (cons (match-string 1 str) nil) modules))) @@ -729,7 +761,7 @@ "Look for something like a module declaration at point, and return a filepath corresponding to it. N is the index of the desired bioperl-module-path component." (interactive) - (unless (and n (numberp n)) + (unless (or (not n) (numberp n)) (error "Number required at arg N")) (unless n (setq n 0)) @@ -742,7 +774,7 @@ (if (and (> n 0) (> n (1- (length module-path)))) (error "Path index out of bounds at arg N")) (unless (file-exists-p (concat module-path "/Bio")) - (error (concat "Bio modules not present in " module-path "; set `bioperl-module-path' manually"))) + (error (concat "Bio modules not present in path component" module-path ))) (setq found (thing-at-point-looking-at "Bio::[a-zA-Z_:]+")) (if (not found) nil @@ -759,11 +791,9 @@ desired member of bioperl-module-path to search." (unless bioperl-module-path (error "bioperl-module-path not yet set; you can set it with bioperl-find-module-path")) - (unless (file-exists-p (concat bioperl-module-path "/Bio")) - (error "Bio modules not present in `bioperl-module-path'; set `bioperl-module-path' manually")) (unless (stringp module) (error "string arg required at MODULE")) - (unless (and n (numberp n)) + (unless (or (not n) (numberp n)) (error "number arg required at N")) ; default (unless n @@ -776,6 +806,8 @@ ) (if (and (> n 0) (> n (1- (length module-path)))) (error "Path index out of bounds at arg N")) + (unless (file-exists-p (concat module-path "/Bio")) + (error (concat "Bio modules not present in path component " module-path))) (setq module-components (split-string module "::")) ;; unixize... (setq pth (replace-regexp-in-string "\\\\" "/" module-path)) @@ -812,7 +844,7 @@ (unless (or (not module) (stringp module)) (error "String arg required at MODULE")) - (unless (and n (numberp n)) + (unless (or (not n) (numberp n)) (error "Number required at arg N")) (unless n (setq n 0)) @@ -1028,6 +1060,15 @@ ))) ;; +;; utilities +;; + +(defun bioperl-clear-module-cache () + (interactive) + "Clears the variable `bioperl-module-names-cache'. Run if you change `bioperl-module-path'." + (setq bioperl-module-names-cache nil)) + +;; ;; taint checkers ;; @@ -1041,6 +1082,20 @@ ;; utilities (out of bioperl- namespace) ;; +(defun assoc-all (key alist) + "Return all conses associated with key in alist." + (let ( (ret) (ptr (copy-alist alist)) (c (assoc key alist)) ) + (if (not c) + nil + (while ptr + (if (not (listp (car ptr))) + (setq ptr (cdr ptr)) + (if (equal key (car (car ptr))) + (push (car ptr) ret)) + (setq ptr (cdr ptr)))) + (nreverse ret)))) + + (defun deep-assoc (keys alist) "Return the association of a set of keys in an alist tree." (cond @@ -1058,6 +1113,30 @@ (deep-assoc nil nil))) ))) +(defun deep-assoc-all (keys alist) + "Return all associations AT THE TIP described by the set of KEYS in an alist tree. +So this is not completely general, but is specialized to the structure of `bioperl-module-names-cache'." + (cond + ((not keys) + nil) + ((not (listp alist)) + nil) + ((= (length keys) 1) + (assoc-all (pop keys) alist)) + (t + (let* ( (key (pop keys)) + (newlist (assoc-all key alist)) ) + (if newlist + (let ( ( i 0 ) (r) ) + (while (< i (length newlist)) + (if (listp (cdr (elt newlist i))) + (setq r (deep-assoc-all keys (cdr (elt newlist i))))) + (setq i (1+ i))) + r) + (deep-assoc-all nil nil))) + ))) + + (defun pm-p (x) (not (null (string-match "[.]pm\$" x)))) From maj at dev.open-bio.org Sat Sep 5 11:55:50 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sat, 5 Sep 2009 11:55:50 -0400 Subject: [Bioperl-guts-l] [16024] bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/ bioperl-mode.el: incremental commit Message-ID: <200909051555.n85FtoBv017971@dev.open-bio.org> Revision: 16024 Author: maj Date: 2009-09-05 11:55:49 -0400 (Sat, 05 Sep 2009) Log Message: ----------- incremental commit Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-04 19:47:10 UTC (rev 16023) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-05 15:55:49 UTC (rev 16024) @@ -329,47 +329,62 @@ MODULE-DIR is in double-colon format. Optional RETOPT: nil, return module names only (default); t, return directory names only; other, return all names as a flat list. Optional AS-ALIST: -if t, return an alist with elts (NAME . nil) (when used in +if t, return an alist with elts (NAME . PATH_STRING) (when used in completing functions, for back-compat with Emacs 21). This function is responsible for the lazy loading of the module names cache: it will look first in `bioperl-module-names-cache'; if the MODULE-DIR is not available, `bioperl-add-module-names-to-cache' will be called." - (let ( + (let* ( (module-components (split-string module-dir "::")) (unlist (lambda (x) (if (listp x) (car x) x)) ) - (unlist-lists (lambda (x) (if (listp x) (car x) nil)) ) - (unlist-strs (lambda (x) (if (listp x) nil x)) ) + (choose-dirs (lambda (x) (if (listp (cdr x)) x nil)) ) + (choose-mods (lambda (x) (if (listp (cdr x)) nil x)) ) (ret) + (alists (deep-assoc-all module-components bioperl-module-names-cache)) + (alist) ) - (setq alist (deep-assoc module-components bioperl-module-names-cache)) + ;; here pick the directory alist + (if (listp (cdr (car alists))) + (setq alist (car alists)) + (setq alist (elt alists 1))) + (if (and alist (cdr alist)) (cond - ( (not (booleanp retopt)) - (setq ret (mapcar unlist (cdr alist)))) + ( (not (booleanp retopt)) + (if (stringp (cdr alist)) + (setq ret alist) + (setq ret (cdr alist)))) ((not retopt) - (setq ret (delete nil (mapcar unlist-strs (cdr alist))))) + (if (stringp (cdr alist)) + (setq ret alist) + (setq ret (delete nil (mapcar choose-mods (cdr alist)))) + )) ( retopt - (setq ret (delete nil (mapcar unlist-lists (cdr alist)))))) + (if (stringp (cdr alist)) + (setq ret nil) + (setq ret (delete nil (mapcar choose-dirs (cdr alist)))) + ))) (if (bioperl-add-module-names-to-cache module-dir) (cond ( (not (booleanp retopt)) (setq ret - (mapcar unlist - (cdr (deep-assoc module-components bioperl-module-names-cache))))) + (cdr (deep-assoc module-components bioperl-module-names-cache)))) ((not retopt) (setq ret - (delete nil (mapcar unlist-strs + (delete nil (mapcar choose-mods (cdr (deep-assoc module-components bioperl-module-names-cache)))))) ( retopt (setq ret - (delete nil (mapcar unlist-lists + (delete nil (mapcar choose-dirs (cdr (deep-assoc module-components bioperl-module-names-cache)))))) nil))) (if (not as-alist) - ret - (mapcar (lambda (x) (list x nil)) ret)))) + (if (stringp (cdr ret)) + (car ret) + (mapcar 'car ret)) + ret))) ;; @@ -613,11 +628,12 @@ (setq n 0)) (if (and (> n 0) (> n (1- (length (split-string bioperl-module-path path-separator))))) (error "Path index out of bounds at arg N")) - (let ( + (let* ( (pth (bioperl-path-from-perl module-dir 1 n)) (module-components (split-string module-dir "::")) (module-string nil) (modules nil) + (cache (deep-assoc-all module-components bioperl-module-names-cache)) (cache-pos nil) (keys nil) (this-key nil) @@ -627,73 +643,76 @@ (if (not pth) ;; no path returned for module-dir... nil - (setq cache-pos (deep-assoc-all module-components bioperl-module-names-cache)) - (setq cache-pos (car (delete - nil - (mapcar (lambda (x) (if (listp (cdr x)) x nil)) - cache-pos)))) + (setq cache-pos + (cond + ((not cache) + nil) + ((stringp (cdr (car cache))) + (elt cache 1)) + ( t + (elt cache 0)))) (if cache-pos ;; something there ;; easy - a stub (if (null (cdr cache-pos)) + (progn (setcdr cache-pos (bioperl-slurp-module-names module-dir n)) + (setq ret t)) ;; less hard - branch exists - (let* ( - (mod-alist (bioperl-slurp-module-names module-dir n)) - (mod-alist-keys (mapcar 'car mod-alist)) - (cache-item) (key) - ) - (while (setq key (pop mod-alist-keys)) - (setq cache-item (assoc key cache-pos)) - (if (null cache-item) - nil - (if (member n (split-string (cdr cache-item) path-separator)) + (let* ( + (mod-alist (bioperl-slurp-module-names module-dir n)) + (mod-alist-keys (mapcar 'car mod-alist)) + (cache-item) (key) + ) + (while (setq key (pop mod-alist-keys)) + (setq cache-item (assoc key cache-pos)) + (if (null cache-item) + nil + (if (member n (split-string (cdr cache-item) path-separator)) ;; deja vu - (setq mod-alist-keys nil) ;; fall-through -; (setq cache-item (cdr cache-item)) -; (setcdr (assoc key mod-alist) (concat (cdr (assoc key mod-alist)) path-separator cache-item)) - (setcdr cache-item (concat (cdr (assoc key mod-alist)) path-separator (cdr cache-item))) - (setq ret t)))) - )) + (setq mod-alist-keys nil) ;; fall-through + (setcdr cache-item (concat (cdr (assoc key mod-alist)) path-separator (cdr cache-item))) + (setq ret t)))) + )) - ;; hard - branch dne - (setq keys module-components) - (while ( - let ( (da (deep-assoc-all - (append good-keys (list (car keys))) - bioperl-module-names-cache) ) ) - (setq da (car (delete nil - (mapcar (lambda (x) - (if (listp (cdr x)) x nil)) - da)))) - (car da) );; has a member whose cdr is a list - (setq good-keys (append good-keys (list (car keys)))) - (setq keys (cdr keys))) - ;; keys contains the directories we need to add, in order - ;; address for doing additions: cache-pos - (setq cache-pos (deep-assoc good-keys bioperl-module-names-cache)) - (setq module-string (pop good-keys)) - (while good-keys - (setq module-string (concat module-string "::" (pop good-keys)))) - ;; module-string is suitable for passing to bioperl-slurp-module-names - - ;; move down the module directory, slurping up methods and placing - ;; in cache - (while keys - (setq this-key (pop keys)) - (setq module-string (if module-string (concat module-string "::" this-key) this-key)) - (setq modules (bioperl-slurp-module-names module-string n)) - (if (not modules) - (setq keys nil) - (setq ret t) - (if cache-pos - (progn - (setcdr cache-pos (append (cdr cache-pos) (list (cons this-key modules)))) - (setq cache-pos (assoc this-key cache-pos))) - (setq bioperl-module-names-cache (list (cons this-key modules))) - (setq cache-pos (assoc this-key bioperl-module-names-cache))) + ;; hard - branch dne + (setq keys module-components) + (while ( + let ( (da (deep-assoc-all + (append good-keys (list (car keys))) + bioperl-module-names-cache) ) ) + (setq da (car (delete nil + (mapcar (lambda (x) + (if (listp (cdr x)) x nil)) + da)))) + (car da) );; has a member whose cdr is a list + (setq good-keys (append good-keys (list (car keys)))) + (setq keys (cdr keys))) + ;; keys contains the directories we need to add, in order + ;; address for doing additions: cache-pos + (setq cache-pos (deep-assoc good-keys bioperl-module-names-cache)) + (setq module-string (pop good-keys)) + (while good-keys + (setq module-string (concat module-string "::" (pop good-keys)))) + ;; module-string is suitable for passing to bioperl-slurp-module-names + + ;; move down the module directory, slurping up methods and placing + ;; in cache + (while keys + (setq this-key (pop keys)) + (setq module-string (if module-string (concat module-string "::" this-key) this-key)) + (setq modules (bioperl-slurp-module-names module-string n)) + (if (not modules) + (setq keys nil) + (setq ret t) + (if cache-pos + (progn + (setcdr cache-pos (append (cdr cache-pos) (list (cons this-key modules)))) + (setq cache-pos (assoc this-key cache-pos))) + (setq bioperl-module-names-cache (list (cons this-key modules))) + (setq cache-pos (assoc this-key bioperl-module-names-cache))) ))) - ) - ret )) + ) + ret )) (defun bioperl-slurp-module-names (module-dir &optional n) "Return list of the basenames for .pm files contained in MODULE-DIR. @@ -929,20 +948,21 @@ (defun bioperl-completing-read (initial-input &optional get-method dir-first prompt-prefix no-retry) "Specialized completing read for bioperl-mode. INITIAL-INPUT is a namespace/module name in double-colon format, -or nil. Returns a list: (namespace module) if GET-METHOD is nil, -\(namespace module method) if GET-METHOD is t. DIR-FIRST is +or nil. Returns a list: (namespace module path-string) if GET-METHOD is nil, +\(namespace module method path-string) if GET-METHOD is t. DIR-FIRST is passed along to `bioperl-split-name'; controls what is returned when a namespace name is also a module name (e.g., Bio::SeqIO). If NO-RETRY is nil, the reader works hard to return a valid entity; if t, the reader barfs out whatever was finally entered." (let ( (parsed (bioperl-split-name initial-input dir-first)) - (nmspc) (mod) (mth) + (nmspc) (mod) (mth) (pthn) (name-list) (done nil)) (if (not parsed) nil (setq nmspc (elt parsed 0)) (setq mod (elt parsed 1))) (while (not done) + ;; namespace completion (unless (and nmspc (not (string-match "^\*" nmspc))) (cond ( (not nmspc) nil ) @@ -957,42 +977,93 @@ ;; back up (setq nmspc (car (split-string nmspc "::[^:]+$"))) (setq done nil))) + ;; module completion (if (or (not nmspc) (and mod (not (string-match "^\*" mod)))) (setq done t) - (setq mod (completing-read - (concat prompt-prefix nmspc " Module: ") - (bioperl-module-names nmspc nil t) nil (not no-retry) @@ Diff output truncated at 10000 characters. @@ From maj at dev.open-bio.org Sat Sep 5 15:36:39 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sat, 5 Sep 2009 15:36:39 -0400 Subject: [Bioperl-guts-l] [16025] bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/ bioperl-mode.el: Extremely close now - Message-ID: <200909051936.n85JadSe019216@dev.open-bio.org> Revision: 16025 Author: maj Date: 2009-09-05 15:36:39 -0400 (Sat, 05 Sep 2009) Log Message: ----------- Extremely close now - refactored the relationship between bioperl-namespace-completion-function and bioperl-make-completion fixed the test for presence of 'test-completion (a 21 vs 22 compatibility) Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-05 15:55:49 UTC (rev 16024) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-05 19:36:39 UTC (rev 16025) @@ -300,25 +300,30 @@ ;; list getters ;; -(defun bioperl-method-names (module &optional as-alist) +(defun bioperl-method-names (module &optional as-alist n) "Returns a list of method names as given in the pod of MODULE. MODULE is in double-colon format. If AS-ALIST is t, return an -alist with elts as (NAME . nil). +alist with elts as (NAME . nil). N is an index associated with a +component of `bioperl-module-path'. This function looks first to see if methods for MODULE are already loaded in `bioperl-method-pod-cache'; if not, calls `bioperl-slurp-methods-from-pod'." (unless (stringp module) (error "String required at arg MODULE")) - (unless (bioperl-path-from-perl module) + (unless (bioperl-path-from-perl module nil n) (error "Module specified by MODULE not found in installation")) ;; check the cache; might get lucky... (let ( (ret) ) (setq ret (if (string-equal module bioperl-cached-module) - (mapcar 'car bioperl-method-pod-cache) - (mapcar 'car (bioperl-slurp-methods-from-pod module)))) + (progn + (mapcar 'car bioperl-method-pod-cache) + ;; path handling... + ) + (mapcar 'car (bioperl-slurp-methods-from-pod module n)))) + ;; fix alist for path handling?? (if as-alist (mapcar (lambda (x) (list x nil)) ret) ret))) @@ -496,13 +501,14 @@ ret )) -(defun bioperl-slurp-methods-from-pod (module) +(defun bioperl-slurp-methods-from-pod (module &optional n) "Parse pod for individual methods for module MODULE. -MODULE is in double-colon format. +MODULE is in double-colon format. N is an index corresponding +to a component of `bioperl-module-path'. Returns an associative array of the following form: - ( METHOD_NAME . ( (PODKEY . CONTENT) (PODKEY . CONTENT) ... ) + ( METHOD_NAME . ( (PODKEY . CONTENT) (PODKEY . CONTENT) ... ) METHOD_NAME . ( (PODKEY . CONTENT) (PODKEY . CONTENT) ... ) ... ) @@ -526,10 +532,10 @@ (unless (bioperl-check-system-pod2text) (error "Unexpected command in bioperl-system-pod2text; aborting...")) (let ( - (pmfile (bioperl-path-from-perl module)) + (pmfile (bioperl-path-from-perl module nil n)) ) (unless pmfile - (error "Module specified by MODULE not found in installation")) + (error (concat "Module specified by MODULE not found in installation at path component " (number-to-string (if n n 0)) ".\nCheck contents of `bioperl-module-path' and call `bioperl-clear-names-cache'.") )) (let ( (method nil) (pod-key nil) @@ -547,7 +553,7 @@ (if (not (= 0 (call-process bioperl-system-pod2text nil t t pmfile "-a"))) - (error "pos2text failed")) + (error "pod2text failed")) ;; clip to desired section (goto-char (point-min)) (if (search-forward "= APPENDIX" (point-max) t) @@ -1005,11 +1011,13 @@ (setq mod nil))) (setq initial-input nmspc)))) ;; path completion - (unless (not (and nmspc mod)) + (unless (or (not (and nmspc mod)) (not done)) (if (not name-list) (setq name-list (bioperl-module-names nmspc nil t))) (setq pthn (cdr (assoc mod name-list))) + (if (not pthn) + (error "Shouldn't be here. Check `bioperl-module-path' and try running `bioperl-clear-module-cache'.")) (if (not (string-match path-separator pthn)) ;; single path (setq pthn (string-to-number pthn)) @@ -1033,28 +1041,64 @@ (if (not module-path-list) (error "Shouldn't be here. Run `bioperl-clear-module-cache' and try again")) (setq pthn (completing-read - (concat prompt-prefix "Library: ") + (concat prompt-prefix "Lib: ") module-path-list - nil (not no-retry) (car (car module-path-list)))) + nil t (car (car module-path-list)))) (if (string-equal pthn "") (setq pthn (car (car module-path-list)))) (setq pthn (elt (assoc pthn module-path-list) 1)) ))) ;; method completion - (unless (or (not done) (not (and nmspc mod pthn)) (not get-method)) + (unless (or (not done) (not (and nmspc mod)) (not get-method)) + ;; path completion if necessary + (if pthn + t + (setq pthn (cdr (bioperl-module-names nmspc nil t))) + (if (not (string-match path-separator pthn)) + ;; single path + (setq pthn (string-to-number pthn)) + ;; multiple paths (e.g., "0;1") - do completion + (let* ( + (module-path + (split-string bioperl-module-path path-separator)) + (pthns (mapcar 'string-to-number + (split-string pthn path-separator))) + (i -1) + (module-path-list + (mapcar + (lambda (x) (setq i (1+ i)) (list x i) ) + module-path)) + ) + ;; filter list by pthns + (setq module-path-list + (delete nil (mapcar + (lambda (x) (if (member (elt x 1) pthns) x nil)) + module-path-list))) + (if (not module-path-list) + (error "Shouldn't be here. Run `bioperl-clear-module-cache' and try again")) + (setq pthn (completing-read + (concat prompt-prefix "Lib: ") + module-path-list + nil t (car (car module-path-list)))) + (if (string-equal pthn "") + (setq pthn (car (car module-path-list)))) + (setq pthn (elt (assoc pthn module-path-list) 1)) + ) + )) + (setq name-list (bioperl-method-names (concat nmspc "::" mod) nil pthn)) (let ( - (name-list (bioperl-method-names (concat nmspc "::" mod) t)) + ;; local vars here... ) (setq mth (completing-read (concat prompt-prefix "Method in " nmspc "::" mod ": ") - (bioperl-method-names (concat nmspc "::" mod) t) nil (not no-retry))) + name-list nil (not no-retry))) (if (or no-retry (not (string-equal mth ""))) (setq done t) ;; retry setup ;; allow a backup into module completion (setq done nil) (let ( - (splt (bioperl-split-name (concat nmspc "::" mod) nil)) + (splt (bioperl-split-name (concat nmspc "::" mod) nil pthn)) ) (setq nmspc (elt splt 0)) ;; kludge : "pretend" mod is not found using the "*" @@ -1074,17 +1118,12 @@ )) (let ( ( collection (if (string-equal str "") '(("Bio" . nil )) (bioperl-make-collection str t)) ) - ( str-trunc (if (string-match ":" str) - (progn (string-match "^\\(\\(?:[a-zA-Z0-9_]+::\\)+\\)\\(?::*\\|[a-zA-Z0-9_]*\\)$" str) (match-string 1 str)) - str) ) - ) ;; offer the right collection: ;; if collection was set, the str was complete and valid ;; if not, back up to the last :: in str (see str-trunc in above ;; let) and try again - (if (not collection) - (setq collection (bioperl-make-collection str-trunc t))) + (if (not collection) nil (setq collection (sort collection (lambda (x y) (string< (car x) (car y))))) @@ -1092,8 +1131,14 @@ ((not (booleanp flag)) ;; 'lambda' or test-completion option ;; this is a back-compat issue: emacs 21 will send 'lambda', ;; but doesn't have 'test-completion - (if (boundp 'test-completion) + ;; + ;; Note without test-completion, weird completion bugs can crop + ;; up -- best upgrade to 22-- + (if (condition-case nil + (symbol-function 'test-completion) + ('error nil)) (test-completion str collection pred) + collection (try-completion str collection pred)) ) ( (not flag) ;; try-completion option @@ -1114,25 +1159,37 @@ (setq module-dir (progn (string-match "^\\([a-zA-Z0-9_:]+[^:]\\):*$" module-dir) (match-string 1 module-dir))) (let* ( + ( dirs (bioperl-module-names module-dir retopt t) ) ( modules (split-string module-dir "::") ) - ( complet (let* ( (l modules) - (m (list (pop l))) ) - (while l - (push (concat (car m) "::" (pop l)) m) ) - (mapcar (lambda (x) (cons x nil)) m ) ) ) - ( dirs nil ) + ( complet ) ) - (setq dirs (bioperl-module-names module-dir retopt t)) - (if dirs - (setq complet (append - complet - (mapcar (lambda (x) - (list - (concat module-dir "::" (car x)) - (cdr x))) dirs))) - (setq complet nil)) - complet - ))) + ;; check once and recalc + (if (not dirs) + (progn + ;; trim back to last :: + (setq module-dir + (progn + (string-match "^\\(\\(?:[a-zA-Z0-9_]+::\\)+\\)\\(?::*\\|[a-zA-Z0-9_]*\\)$" str) + (match-string 1 str))) + (setq dirs (bioperl-module-names module-dir retopt t)) + (setq modules (split-string module-dir "::")) + )) + (if (not dirs) + ;; fail + nil + (setq complet (let* ( (l modules) + (m (list (pop l))) ) + (while l (push (concat (car m) "::" (pop l)) m)) + (mapcar (lambda (x) (cons x nil)) m ) )) + ;; make sure module-dir is trimmed + (setq module-dir (replace-regexp-in-string "::$" "" module-dir)) + complet + (append complet (mapcar (lambda (x) + (list + (concat module-dir "::" (car x)) + (cdr x))) dirs)) + )) + )) ;; ;; utilities From maj at dev.open-bio.org Sat Sep 5 17:21:08 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sat, 5 Sep 2009 17:21:08 -0400 Subject: [Bioperl-guts-l] [16026] bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/ bioperl-mode.el: *beta* Message-ID: <200909052121.n85LL8pg019573@dev.open-bio.org> Revision: 16026 Author: maj Date: 2009-09-05 17:21:07 -0400 (Sat, 05 Sep 2009) Log Message: ----------- *beta* show library path in pod viewer header in reduced form Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-05 19:36:39 UTC (rev 16025) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-05 21:21:07 UTC (rev 16026) @@ -181,7 +181,7 @@ ;; User-interface functions ;; -(defun bioperl-insert-module (namespace module &optional beg pt end) +(defun bioperl-insert-module (namespace module &optional dummy beg pt end) "Insert BioPerl module declaration interactively, using completion." (interactive (let* ( @@ -216,8 +216,11 @@ ;; pod viewers ;; -(defun bioperl-view-pod (module) - "View the full pod for a BioPerl module." +;; TODO: refactor bioperl-view-pod to take separate nmspc mod parms... +(defun bioperl-view-pod (module &optional n) + "View the full pod for a BioPerl module. Use completion facilities to browse interactively. +MODULE is in double-colon format. N is an index associated with a +component of `bioperl-module-path'." (interactive (let ( (mod (bioperl-completing-read (bioperl-module-at-point) nil t "[pod] ")) @@ -226,11 +229,12 @@ (list (apply 'concat (elt mod 0) (if (elt mod 1) (list "::" (elt mod 1)) - (signal 'quit t)))))) - (bioperl-view-full-pod module)) + (signal 'quit t))) (car (last mod))))) + (bioperl-view-full-pod module n)) -(defun bioperl-view-pod-method (namespace module method) - "View desired method pod interactively. Use completion facilities to browse." +(defun bioperl-view-pod-method (namespace module method &optional n) + "View desired method pod interactively. Use completion facilities to browse interactively. +N is an index associated with a component of `bioperl-module-path'." (interactive (let ( (cr (bioperl-completing-read (bioperl-module-at-point) t nil "[pod mth] ") ) @@ -246,8 +250,9 @@ (bioperl-render-method-pod-from-cons cache-pos)) )) -(defun bioperl-view-pod-synopsis (module) - "View the pod synopsis for a Bioperl module." +(defun bioperl-view-pod-synopsis (module &optional n) + "View the pod synopsis for a Bioperl module. +N is an index associated with a component of `bioperl-module-path'." (interactive (let ( (mod (bioperl-completing-read (bioperl-module-at-point) nil t "[pod syn] ")) @@ -256,11 +261,12 @@ (list (apply 'concat (elt mod 0) (if (elt mod 1) (list "::" (elt mod 1)) - (signal 'quit t) ))))) - (bioperl-view-pod-section module "SYNOPSIS")) + (signal 'quit t) )) (car (last mod))))) + (bioperl-view-pod-section module "SYNOPSIS" n)) -(defun bioperl-view-pod-description (module) - "View the pod synopsis for a BioPerl module." +(defun bioperl-view-pod-description (module &optional n) + "View the pod synopsis for a BioPerl module. +N is an index associated with a component of `bioperl-module-path'." (interactive (let ( (mod (bioperl-completing-read (bioperl-module-at-point) nil t "[pod dsc] " )) @@ -269,11 +275,12 @@ (list (apply 'concat (elt mod 0) (if (elt mod 1) (list "::" (elt mod 1)) - (signal 'quit t)))))) - (bioperl-view-pod-section module "DESCRIPTION")) + (signal 'quit t))) (car (last mod))))) + (bioperl-view-pod-section module "DESCRIPTION" n)) -(defun bioperl-view-pod-appendix (module) - "View the pod appendix (containing individual method information) for a Bioperl module." +(defun bioperl-view-pod-appendix (module &optional n) + "View the pod appendix (containing individual method information) for a Bioperl module. +N is an index associated with a component of `bioperl-module-path'." (interactive (let ( (mod (bioperl-completing-read (bioperl-module-at-point) nil t "[pod apx] ")) @@ -282,8 +289,8 @@ (list (apply 'concat (elt mod 0) (if (elt mod 1) (list "::" (elt mod 1)) - (signal 'quit t)))))) - (bioperl-view-pod-section module "APPENDIX")) + (signal 'quit t))) (car (last mod))))) + (bioperl-view-pod-section module "APPENDIX" n)) ;; "uninstall..." @@ -430,7 +437,9 @@ args))) (save-excursion (set-buffer pod-buf) - (setq header-line-format (concat "POD - BioPerl module " module)) + (setq header-line-format (concat "POD - BioPerl module " module " @ " + (file-name-squish + (elt (split-string bioperl-module-path path-separator) n)) )) (apply 'call-process bioperl-system-pod2text nil t t pmfile args) (goto-char (point-min)) @@ -476,7 +485,9 @@ (setq exec-path bioperl-safe-PATH)) (save-excursion (set-buffer pod-buf) - (setq header-line-format (concat section " - BioPerl module " module)) + (setq header-line-format (concat section " - BioPerl module " module + " @ " (file-name-squish + (elt (split-string bioperl-module-path path-separator) n)) )) (apply 'call-process bioperl-system-pod2text nil t t pmfile args) (goto-char (point-min)) @@ -673,7 +684,7 @@ (setq cache-item (assoc key cache-pos)) (if (null cache-item) nil - (if (member n (split-string (cdr cache-item) path-separator)) + (if (member n (mapcar 'string-to-number (split-string (cdr cache-item) path-separator))) ;; deja vu (setq mod-alist-keys nil) ;; fall-through (setcdr cache-item (concat (cdr (assoc key mod-alist)) path-separator (cdr cache-item))) @@ -935,8 +946,11 @@ (message "No pod available") (save-excursion (set-buffer pod-buf) - ;; nice header - (setq header-line-format (concat "Method " method "() - BioPerl module " module)) + (setq header-line-format (concat "Method " method + "() - BioPerl module " module + " @ " + (file-name-squish + (elt (split-string bioperl-module-path path-separator) n)))) (insert "\n") (while (setq cur-tag (pop tags)) (setq cur-content (cdr (assoc cur-tag content))) @@ -951,6 +965,7 @@ ;; completion tricks ;; +;; TODO: modularize... (defun bioperl-completing-read (initial-input &optional get-method dir-first prompt-prefix no-retry) "Specialized completing read for bioperl-mode. INITIAL-INPUT is a namespace/module name in double-colon format, @@ -981,7 +996,10 @@ (if (not (string-equal nmspc "")) t ;; back up - (setq nmspc (car (split-string nmspc "::[^:]+$"))) + (setq nmspc + (if (string-match ":" nmspc) + (car (split-string nmspc "::[^:]+$")) + nil)) (setq done nil))) ;; module completion (if (or (not nmspc) @@ -1011,13 +1029,13 @@ (setq mod nil))) (setq initial-input nmspc)))) ;; path completion - (unless (or (not (and nmspc mod)) (not done)) + (unless (or (not (and nmspc mod)) (not done) no-retry) (if (not name-list) (setq name-list (bioperl-module-names nmspc nil t))) (setq pthn (cdr (assoc mod name-list))) (if (not pthn) - (error "Shouldn't be here. Check `bioperl-module-path' and try running `bioperl-clear-module-cache'.")) + (error "Shouldn't be here(1). Check `bioperl-module-path' and try running `bioperl-clear-module-cache'.")) (if (not (string-match path-separator pthn)) ;; single path (setq pthn (string-to-number pthn)) @@ -1039,9 +1057,9 @@ (lambda (x) (if (member (elt x 1) pthns) x nil)) module-path-list))) (if (not module-path-list) - (error "Shouldn't be here. Run `bioperl-clear-module-cache' and try again")) + (error "Shouldn't be here(2). Run `bioperl-clear-module-cache' and try again")) (setq pthn (completing-read - (concat prompt-prefix "Lib: ") + (concat prompt-prefix nmspc "::" mod " Lib: ") module-path-list nil t (car (car module-path-list)))) (if (string-equal pthn "") @@ -1049,6 +1067,7 @@ (setq pthn (elt (assoc pthn module-path-list) 1)) ))) ;; method completion + (setq nmspc (replace-regexp-in-string "::$" "" nmspc)) (unless (or (not done) (not (and nmspc mod)) (not get-method)) ;; path completion if necessary (if pthn @@ -1075,7 +1094,7 @@ (lambda (x) (if (member (elt x 1) pthns) x nil)) module-path-list))) (if (not module-path-list) - (error "Shouldn't be here. Run `bioperl-clear-module-cache' and try again")) + (error "Shouldn't be here(3). Run `bioperl-clear-module-cache' and try again")) (setq pthn (completing-read (concat prompt-prefix "Lib: ") module-path-list @@ -1266,6 +1285,21 @@ (defun pm-p (x) (not (null (string-match "[.]pm\$" x)))) +(defun file-name-squish (fname) + "Squish long file names with central elipses. +FNAME is the file name as string. Doesn't work very hard." + (let* ( + (fname-list (split-string fname "/")) + (squished) + ) + (if (> (length fname-list) 3) + (concat (elt fname-list 0) "/" + (elt fname-list 1) "/" + (if (= (length fname-list) 4) (elt fname-list 2) "...") + "/" + (car (last fname-list))) + fname))) + ;; hook into perl-mode (add-hook 'perl-mode-hook 'bioperl-perl-mode-infect) From maj at dev.open-bio.org Sat Sep 5 17:28:43 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sat, 5 Sep 2009 17:28:43 -0400 Subject: [Bioperl-guts-l] [16027] bioperl-dev/branches/bioperl-mode-multipath-branch/dist: retarred multipath branch beta in branch dist Message-ID: <200909052128.n85LSh5b019697@dev.open-bio.org> Revision: 16027 Author: maj Date: 2009-09-05 17:28:43 -0400 (Sat, 05 Sep 2009) Log Message: ----------- retarred multipath branch beta in branch dist Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar =================================================================== (Binary files differ) Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 2009-09-05 21:21:07 UTC (rev 16026) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 2009-09-05 21:28:43 UTC (rev 16027) @@ -1 +1 @@ -5f33e02176b54327b6ee46b68d56d6b4 bioperl-mode.tar +befe148451a055f6239882a511727af9 bioperl-mode.tar From maj at dev.open-bio.org Sun Sep 6 22:57:19 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sun, 6 Sep 2009 22:57:19 -0400 Subject: [Bioperl-guts-l] [16028] bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/ bioperl-mode.el: key fix to module cache loader Message-ID: <200909070257.n872vJKZ030756@dev.open-bio.org> Revision: 16028 Author: maj Date: 2009-09-06 22:57:17 -0400 (Sun, 06 Sep 2009) Log Message: ----------- key fix to module cache loader (not yet in tarred dist) Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-05 21:28:43 UTC (rev 16027) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-07 02:57:17 UTC (rev 16028) @@ -379,19 +379,22 @@ (setq ret (delete nil (mapcar choose-dirs (cdr alist)))) ))) (if (bioperl-add-module-names-to-cache module-dir) - (cond - ( (not (booleanp retopt)) - (setq ret - (cdr (deep-assoc module-components bioperl-module-names-cache)))) - ((not retopt) - (setq ret - (delete nil (mapcar choose-mods - (cdr (deep-assoc module-components bioperl-module-names-cache)))))) - ( retopt - (setq ret - (delete nil (mapcar choose-dirs - (cdr (deep-assoc module-components bioperl-module-names-cache)))))) - nil))) + (progn + (setq alists (deep-assoc-all module-components bioperl-module-names-cache)) + (setq alist (if (listp (cdr (elt alists 0))) (elt alists 0) (elt alists 1))) + (cond + ( (not (booleanp retopt)) + (setq ret + (cdr alist))) + ((not retopt) + (setq ret + (delete nil (mapcar choose-mods + (cdr alist))))) + ( retopt + (setq ret + (delete nil (mapcar choose-dirs + (cdr alist))))) + nil)))) (if (not as-alist) (if (stringp (cdr ret)) (car ret) @@ -648,14 +651,15 @@ (let* ( (pth (bioperl-path-from-perl module-dir 1 n)) (module-components (split-string module-dir "::")) - (module-string nil) - (modules nil) + (module-string) + (modules) + (alist) (cache (deep-assoc-all module-components bioperl-module-names-cache)) - (cache-pos nil) - (keys nil) - (this-key nil) - (good-keys nil) - (ret nil) + (cache-pos) + (keys) + (this-key) + (good-keys) + (ret) ) (if (not pth) ;; no path returned for module-dir... @@ -681,7 +685,9 @@ (cache-item) (key) ) (while (setq key (pop mod-alist-keys)) - (setq cache-item (assoc key cache-pos)) + (setq alist (assoc-all key cache-pos)) + (setq cache-item (if (stringp (cdr (elt alist 0))) + (elt alist 0) (elt alist 1))) (if (null cache-item) nil (if (member n (mapcar 'string-to-number (split-string (cdr cache-item) path-separator))) @@ -695,42 +701,55 @@ (setq keys module-components) (while ( let ( (da (deep-assoc-all - (append good-keys (list (car keys))) + (append (reverse good-keys) (list (car keys))) bioperl-module-names-cache) ) ) - (setq da (car (delete nil - (mapcar (lambda (x) - (if (listp (cdr x)) x nil)) - da)))) + (setq da (if (stringp (elt da 0)) (elt da 1) (elt da 0))) (car da) );; has a member whose cdr is a list - (setq good-keys (append good-keys (list (car keys)))) + (setq good-keys (push (car keys) good-keys)) (setq keys (cdr keys))) + (push (pop good-keys) keys) + (setq good-keys (nreverse good-keys)) ;; keys contains the directories we need to add, in order ;; address for doing additions: cache-pos - (setq cache-pos (deep-assoc good-keys bioperl-module-names-cache)) + (setq alist (deep-assoc-all good-keys bioperl-module-names-cache)) + (setq cache-pos + (if (stringp (cdr (elt alist 0))) (elt alist 1) (elt alist 0))) (setq module-string (pop good-keys)) + ;; prep for bioperl-anastomose (while good-keys (setq module-string (concat module-string "::" (pop good-keys)))) ;; module-string is suitable for passing to bioperl-slurp-module-names - - ;; move down the module directory, slurping up methods and placing - ;; in cache - (while keys - (setq this-key (pop keys)) - (setq module-string (if module-string (concat module-string "::" this-key) this-key)) - (setq modules (bioperl-slurp-module-names module-string n)) - (if (not modules) - (setq keys nil) - (setq ret t) - (if cache-pos - (progn - (setcdr cache-pos (append (cdr cache-pos) (list (cons this-key modules)))) - (setq cache-pos (assoc this-key cache-pos))) - (setq bioperl-module-names-cache (list (cons this-key modules))) - (setq cache-pos (assoc this-key bioperl-module-names-cache))) - ))) + (setq ret (bioperl-anastomose keys module-string cache-pos n))) ) ret )) +(defun bioperl-anastomose (keys module-string cache-pos n) + "Extends `bioperl-module-names-cache' recursively. No user-serviceable parts inside. +Call first CACHE-POS set to node to be extended. +MODULE-STRING must indicate directory corresponding to CACHE-POS." + (unless cache-pos + (setq cache-pos bioperl-module-names-cache)) + (if (not keys) + t ; success + (let ( + (this-key (pop keys)) + (modules) + (cache-ins-pos) + (alist) + ) + (setq alist (assoc-all this-key cache-pos)) + (setq cache-ins-pos (if (stringp (cdr (elt alist 0))) (elt alist 1) (elt alist 0))) + (setq module-string (if module-string + (concat module-string "::" this-key) + this-key)) + (setq modules (bioperl-slurp-module-names module-string n)) + (if (not modules) + nil ; fail + (setcdr cache-ins-pos modules ) + (bioperl-anastomose keys module-string (cdr cache-ins-pos) n) + t)))) + + (defun bioperl-slurp-module-names (module-dir &optional n) "Return list of the basenames for .pm files contained in MODULE-DIR. MODULE-DIR is in double-colon format. N is the index of the desired From maj at dev.open-bio.org Sun Sep 6 23:04:52 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sun, 6 Sep 2009 23:04:52 -0400 Subject: [Bioperl-guts-l] [16029] bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/ bioperl-mode.el: last patch requires this new initial setting Message-ID: <200909070304.n8734q9K030830@dev.open-bio.org> Revision: 16029 Author: maj Date: 2009-09-06 23:04:52 -0400 (Sun, 06 Sep 2009) Log Message: ----------- last patch requires this new initial setting Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-07 02:57:17 UTC (rev 16028) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-07 03:04:52 UTC (rev 16029) @@ -171,7 +171,7 @@ "Contains the filepath whose method pod information is currently stored in `bioperl-method-pod-cache'.") -(defvar bioperl-module-names-cache nil +(defvar bioperl-module-names-cache '( ("Bio" . nil) ) "Storage for an alist tree structure of available module names. Structure follows the Bio library tree: ( (\"Bio\" \"Seq\" ( \"SeqIO\" \"fasta\" \"msf\" ...) \"PrimarySeqI\" ... ) ) From maj at dev.open-bio.org Sun Sep 6 23:08:26 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sun, 6 Sep 2009 23:08:26 -0400 Subject: [Bioperl-guts-l] [16030] bioperl-dev/branches/bioperl-mode-multipath-branch/dist: retarred ( includes r16028 and r16029) Message-ID: <200909070308.n8738QT8030998@dev.open-bio.org> Revision: 16030 Author: maj Date: 2009-09-06 23:08:26 -0400 (Sun, 06 Sep 2009) Log Message: ----------- retarred (includes r16028 and r16029) Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar =================================================================== (Binary files differ) Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 2009-09-07 03:04:52 UTC (rev 16029) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 2009-09-07 03:08:26 UTC (rev 16030) @@ -1 +1 @@ -befe148451a055f6239882a511727af9 bioperl-mode.tar +76b79aca5fe5d7ca36499be86b7e607a bioperl-mode.tar From cjfields at dev.open-bio.org Mon Sep 7 00:20:04 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 7 Sep 2009 00:20:04 -0400 Subject: [Bioperl-guts-l] [16031] bioperl-live/trunk/Bio/LocatableSeq.pm: the no_* methods are deprecated in favor of num_* Message-ID: <200909070420.n874K4Ke031711@dev.open-bio.org> Revision: 16031 Author: cjfields Date: 2009-09-07 00:20:04 -0400 (Mon, 07 Sep 2009) Log Message: ----------- the no_* methods are deprecated in favor of num_* Modified Paths: -------------- bioperl-live/trunk/Bio/LocatableSeq.pm Modified: bioperl-live/trunk/Bio/LocatableSeq.pm =================================================================== --- bioperl-live/trunk/Bio/LocatableSeq.pm 2009-09-07 03:08:26 UTC (rev 16030) +++ bioperl-live/trunk/Bio/LocatableSeq.pm 2009-09-07 04:20:04 UTC (rev 16031) @@ -352,10 +352,10 @@ return $self->{'_force_nse'}; } -=head2 no_gap +=head2 num_gaps - Title : no_gaps - Usage :$self->no_gaps('.') + Title : num_gaps + Usage :$self->num_gaps('.') Function:Gets number of gaps in the sequence. The count excludes leading or trailing gap characters. @@ -365,10 +365,12 @@ Returns : number of internal gaps in the sequence. Args : a gap character (optional) + Status : Stable + Note : replaces no_gaps =cut -sub no_gaps { +sub num_gaps { my ($self,$char) = @_; my ($seq, $count) = (undef, 0); @@ -645,4 +647,41 @@ return 1; } +################## DEPRECATED METHODS ################## + +=head2 no_gap + + Title : no_gaps + Usage :$self->no_gaps('.') + Function:Gets number of gaps in the sequence. The count excludes + leading or trailing gap characters. + + Valid bioperl sequence characters are [A-Za-z\-\.\*]. Of + these, '.' and '-' are counted as gap characters unless an + optional argument specifies one of them. + + Returns : number of internal gaps in the sequence. + Args : a gap character (optional) + +=cut + +=head2 no_gaps + + Title : no_sequences + Usage : $gaps = $seq->no_gaps + Function : number of sequence in the sequence alignment + Returns : integer + Argument : + Status : Deprecated (in favor of num_gaps()) + +=cut + +sub no_sequences { + my $self = shift; + $self->deprecated(-warn_version => 1.0069, + -throw_version => 1.0075, + -message => 'Use of method no_gaps() is deprecated, use num_gaps() instead'); + $self->num_gaps(@_); +} + 1; From cjfields at dev.open-bio.org Mon Sep 7 14:45:13 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 7 Sep 2009 14:45:13 -0400 Subject: [Bioperl-guts-l] [16032] bioperl-live/trunk/Changes: initial update for 1.6.1 ( not finished yet) Message-ID: <200909071845.n87IjDt0002693@dev.open-bio.org> Revision: 16032 Author: cjfields Date: 2009-09-07 14:45:12 -0400 (Mon, 07 Sep 2009) Log Message: ----------- initial update for 1.6.1 (not finished yet) Modified Paths: -------------- bioperl-live/trunk/Changes Modified: bioperl-live/trunk/Changes =================================================================== --- bioperl-live/trunk/Changes 2009-09-07 04:20:04 UTC (rev 16031) +++ bioperl-live/trunk/Changes 2009-09-07 18:45:12 UTC (rev 16032) @@ -6,55 +6,143 @@ 1.6 series - The 1.6 series is derived from subversion HEAD and exists as a separate - release branch. This will represent the last of the alternating - developer/stable releases. Code in Subversion HEAD will be divided up into - several smaller packages, including a developer subdistribution for - code considered experimental, unstable, or untested. +The 1.6 series is derived from subversion HEAD and exists as a separate +release branch. This will represent the last of the alternating +developer/stable releases. Code in Subversion HEAD will be divided up into +several smaller packages, including a developer subdistribution for +code considered experimental, unstable, or untested. + +Full detail of changes included since the 1.5.2 release are online at: +http://www.bioperl.org/wiki/Change_log. Bugs remaining to be addressed +are online at http://bugzilla.open-bio.org, with specific bugs intended +for this release series highlighted in BUGS. + +1.6.1 September 6, 2009 + +* Bio::Align::DNAStatistics + - fix divide by zero problem [jason] +* Bio::AlignIO::* + - bug 2813 - fix faulty logic to detect end-of-stream [cjfields] +* Bio::AlignIO::stockholm + - bug 2796 - fix faulty logic to detect end-of-stream [cjfields] +* Bio::Assembly::Tools::ContigSpectrum + - function to score contig spectrum [fangly] +* Bio::DB::EUtilities + - small updates [cjfields] +* Bio::DB::Fasta + - berkeleydb database now autoindexes wig files and locks correctly [lstein] +* Bio::DB::HIV + - various small updates for stability [maj] +* Bio::DB::SeqFeature (lots of updates and changes) + - add Pg, SQLite, and faster BerkeleyDB implementations [lstein, scain] + - bug 2835 - patch [Dan Bolser] + - bug RT 44535 - patch FeatureFleLoader [Cathy Gresham] +* Bio::DB::SwissProt + - bug 2764 - idtracker() method [cjfields, courtesy Neil Saunders] +* Bio::Factory::FTLocationFactory + - mailing list bug fix [cjfields] +* Bio::LocatableSeq + - performance work on column_from_residue_number [hartzell] +* Bio::Matrix::IO::phylip + - bug 2800 - patch to fix phylip parsing [Wei Zou] +* Bio::Nexml + - Google Summer of Code project from Chase Miller - parsers for Nexml file + format [maj] +* Bio::PopGen + - Make Individual, Population, Marker objects AnnotatableI [maj] + - simplify LD code [jason] +* Bio::RangeI + - deal with empty intersection [jason] +* Bio::Restriction + - significant overhaul of Bio::Restriction system. [maj] +* Bio::Root::Build + - CPANPLUS support, no automatic installation [sendu] +* Bio::Root::IO + - allow IO::String (regression fix) [cjfields] + - catch unintentional undef values [cjfields] + - throw if non-fh is passed to -fh [maj] +* Bio::Root::Root/RootI + - small debugging and core fixes [cjfields] +* Bio::Root::Test + - bug RT 48813 - fix for Strawberry Perl bug [kmx] +* Bio::Root::Utilities + - bug 2737 - better warnings [cjfields] +* Bio::Search + - tiling completely refactored, HOWTO added [maj] + NOTE : Bio::Search::Hit::* classes do not use this code directly; we will + deprecate usage of the older tiling code in the next BioPerl release + - small fixes [cjfields] +* Bio::SearchIO + - Infernal 1.0 output now parsed [cjfields] + - new parser for gmap -f9 output [hartzell] + - bug 2852 - fix infinite loop in some output [cjfields] + - blastxml output now passes all TODO tests [cjfields] + - psl and exonerate parsing fixes [rbuels, jhannah, bvecchi, YAPC hackathon] + - RT 44782 - GbrowseGFF writer now catches evalues [Allen Day] + - bug 2575 - add two columns of additional output to HSPTableWriter [cjfields] +* Bio::Seq::LargePrimarySeq + - delete tempdirs [cjfields] + - bug fixes [rbuels, jhannah, bvecchi, YAPC hackathon] +* Bio::Seq::Quality + - extract regions based on quality threshold value [Dan Bolser, heikki] +* Bio::SeqFeature::Lite + - various Bio::DB::SeqFeature-related fixes [lstein] +* Bio::SeqFeature::Tools::TypeMapper + - additional terms for GenBank to SO map [scain] +* Bio::SeqIO::chadoxml + - bug 2785 - patch to get this working for bp_seqconvert [cjfields] +* Bio::SeqIO::embl + - support for CDS records [dave_messina, Sylvia] +* Bio::SeqIO::fastq + - complete refactoring to handle all FASTQ variants, perform validation, + write output. API now conforms with other Bio* parsers and the rest of + Bio::SeqIO (e.g. write_seq() creates fastq output, not fasta output). + [cjfields] +* Bio::SeqIO::genbank + - bug 2784 - fix DBSOURCE issue [Phillip Garland] + - bug RT 44536 - support for UniProt/UniProtKB tests +* Bio::SeqIO::largefasta + - parser returns a Bio::Seq::LargePrimarySeq [jhannah] +* Bio::SeqIO::raw + - add option for 'single' and 'multiple' +* Bio::SeqIO::scf + - bug 2881 - fix scf round-tripping [Adam Sj\xBFgren] +* General Fixes + - POD cleanup re: FEEDBACK section [maj] + - Use of no_* methods (indicating 'number of something') is deprecated in + favor of num_* [cjfields] - Full detail of changes included since the 1.5.2 release are online at: - http://www.bioperl.org/wiki/Change_log. Bugs remaining to be addressed - are online at http://bugzilla.open-bio.org, with specific bugs intended - for this release series highlighted in BUGS. - - The following represent the most important changes: - - 1.6.0 Winter 2009 - - o Feature/Annotation rollback - - Problematic changes introduced prior to the 1.5 release have been rolled - back. These changes led to subtle bugs involving operator overloading - and interface methods. - - Behavior is very similar to that for BioPerl 1.4, with tag values being - stored generically as simple scalars. Results in a modest speedup. - - o Bio::Graphics - - Split into a separate distribution on CPAN, primarily so development - isn't reliant on a complete BioPerl release. - - Bio::Graphics::Pictogram has been renamed to Bio::Draw::Pictogram but - is only available via Subversion (via bioperl-live main trunk) +1.6.0 Winter 2009 - o Bio::Root::Test - - Common test bed for all BioPerl modules +* Feature/Annotation rollback + - Problematic changes introduced prior to the 1.5 release have been rolled + back. These changes led to subtle bugs involving operator overloading + and interface methods. + - Behavior is very similar to that for BioPerl 1.4, with tag values being + stored generically as simple scalars. Results in a modest speedup. +* Bio::Graphics + - Split into a separate distribution on CPAN, primarily so development + isn't reliant on a complete BioPerl release. + - Bio::Graphics::Pictogram has been renamed to Bio::Draw::Pictogram but + is only available via Subversion (via bioperl-live main trunk) +* Bio::Root::Test + - Common test bed for all BioPerl modules +* Bio::Root::Build + - Common Module::Build-based subclass for all BioPerl modules +* Bio::DB::EUtilities + - Complete refactoring to split up parsing (Bio::Tools::EUtilities), + parameter handling (Bio::Tools::EUtilities::EUtilParameters), + and user agent request posting and retrieval +* Test implementation and reorganization + - Tests have been reorganized into groups based on classes or use + cases. + - Automated test coverage is now online: + http://www.bioperl.org/wiki/Test_Coverage + - After this release, untested modules will be moved into a + separate developer distribution until tests can be derived. + Also, new modules to be added are expected to have a test suite + and adequate test coverage. - o Bio::Root::Build - - Common Module::Build-based subclass for all BioPerl modules - - o Bio::DB::EUtilities - - Complete refactoring to split up parsing (Bio::Tools::EUtilities), - parameter handling (Bio::Tools::EUtilities::EUtilParameters), - and user agent request posting and retrieval - - o Test implementation and reorganization - - Tests have been reorganized into groups based on classes or use - cases. - - Automated test coverage is now online: - http://www.bioperl.org/wiki/Test_Coverage - - After this release, untested modules will be moved into a - separate developer distribution until tests can be derived. - Also, new modules to be added are expected to have a test suite - and adequate test coverage. - 1.5.2 Developer release Full details of changes since 1.5.1 are available online at: From cjfields at dev.open-bio.org Mon Sep 7 16:36:44 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 7 Sep 2009 16:36:44 -0400 Subject: [Bioperl-guts-l] [16033] bioperl-live/trunk/Changes: finish up Changes for 1.6.1:wq Message-ID: <200909072036.n87Kai84003187@dev.open-bio.org> Revision: 16033 Author: cjfields Date: 2009-09-07 16:36:44 -0400 (Mon, 07 Sep 2009) Log Message: ----------- finish up Changes for 1.6.1:wq Modified Paths: -------------- bioperl-live/trunk/Changes Modified: bioperl-live/trunk/Changes =================================================================== --- bioperl-live/trunk/Changes 2009-09-07 18:45:12 UTC (rev 16032) +++ bioperl-live/trunk/Changes 2009-09-07 20:36:44 UTC (rev 16033) @@ -100,48 +100,97 @@ [cjfields] * Bio::SeqIO::genbank - bug 2784 - fix DBSOURCE issue [Phillip Garland] - - bug RT 44536 - support for UniProt/UniProtKB tests + - bug RT 44536 - support for UniProt/UniProtKB tests [cjfields] * Bio::SeqIO::largefasta - parser returns a Bio::Seq::LargePrimarySeq [jhannah] * Bio::SeqIO::raw - add option for 'single' and 'multiple' * Bio::SeqIO::scf - bug 2881 - fix scf round-tripping [Adam Sj\xBFgren] -* General Fixes +* Bio::SeqUtils + - bug 2766, 2810 - copy over tags from features, doc fixes [David Jackson] +* Bio::SimpleAlign + - bug 2793 - patch for add_seq index issue [jhannah, maj] + - bug 2801 - throw if args are required [cjfields] + - bug 2805 - uniq_seq returns SimpleAlign and hash ref of sequence types + [Tristan Lefebure, maj] + - bug fixes from YAPC hackathon [rbuels, jhannah, bvecchi] + - fix POD and add get_SeqFeatures filter [maj] +* Bio::Tools::dpAlign + - add support for LocatableSeq [ymc] + - to be moved to a separate distribution [cjfields, rbuels] +* Bio::Tools::EUtilities + - fix for two bugs from mail list [Adam Whitney, cjfields] + - add generic ItemContainerI interface for containing same methods + [cjfields] +* Bio::Tools::HMM + - fix up code, add more warnings [cjfields] + - to be moved to a separate distribution [cjfields, rbuels] +* Bio::Tools::Primer3 + - bug 2862 - fenceposting issue fixed [maj] +* Bio::Tools::Run::RemoteBlast + - tests for remote RPS-BLAST [mcook] +* Bio::Tools::SeqPattern + - bug fixes from YAPC hackathon [rbuels, jhannah, bvecchi] +* Bio::Tools::tRNAscanSE + - use 'gene' and 'exon' for proper SO, ensure ID is unique [jason] +* Bio::Tree::* + - bug 2456 - fix reroot_tree() [maj] +* Bio::Tree::Statistics + - several methods for calculating Fitch-based score, internal trait values, + statratio(), sum of leaf distances [heikki] +* Bio::Tree::Tree + - bug 2869 - add docs indicating edge case where nodes can be prematurely + garbage-collected [cjfields] + - add as_text() function to create Tree as a string in specified format + [maj] +* Bio::Tree::TreeFunctionsI + - bug 2877 - fix bug where bootstrap assigned to the wrong node [Tristan + Lefebure, maj] +* Bio::TreeIO::newick + - fix small semicolon issue [cjfields] +* scripts + - update to bp_seqfeature_load for SQLite [lstein] + - hivq.pl - commmand-line interface to Bio::DB::HIV [maj] + - fastam9_to_table - fix for MPI output [jason] + - gccalc - total stats [jason] +* General Stuff - POD cleanup re: FEEDBACK section [maj] - Use of no_* methods (indicating 'number of something') is deprecated in favor of num_* [cjfields] + - lots of new tests for the above bugs and refactors [everyone!] + - new template for Komodo text editor [cjfields] 1.6.0 Winter 2009 * Feature/Annotation rollback - - Problematic changes introduced prior to the 1.5 release have been rolled - back. These changes led to subtle bugs involving operator overloading - and interface methods. - - Behavior is very similar to that for BioPerl 1.4, with tag values being - stored generically as simple scalars. Results in a modest speedup. + - Problematic changes introduced prior to the 1.5 release have been rolled + back. These changes led to subtle bugs involving operator overloading + and interface methods. + - Behavior is very similar to that for BioPerl 1.4, with tag values being + stored generically as simple scalars. Results in a modest speedup. * Bio::Graphics - - Split into a separate distribution on CPAN, primarily so development - isn't reliant on a complete BioPerl release. - - Bio::Graphics::Pictogram has been renamed to Bio::Draw::Pictogram but - is only available via Subversion (via bioperl-live main trunk) + - Split into a separate distribution on CPAN, primarily so development + isn't reliant on a complete BioPerl release. + - Bio::Graphics::Pictogram has been renamed to Bio::Draw::Pictogram but + is only available via Subversion (via bioperl-live main trunk) * Bio::Root::Test - - Common test bed for all BioPerl modules + - Common test bed for all BioPerl modules * Bio::Root::Build - - Common Module::Build-based subclass for all BioPerl modules + - Common Module::Build-based subclass for all BioPerl modules * Bio::DB::EUtilities - - Complete refactoring to split up parsing (Bio::Tools::EUtilities), - parameter handling (Bio::Tools::EUtilities::EUtilParameters), - and user agent request posting and retrieval + - Complete refactoring to split up parsing (Bio::Tools::EUtilities), + parameter handling (Bio::Tools::EUtilities::EUtilParameters), + and user agent request posting and retrieval * Test implementation and reorganization - - Tests have been reorganized into groups based on classes or use - cases. - - Automated test coverage is now online: - http://www.bioperl.org/wiki/Test_Coverage - - After this release, untested modules will be moved into a - separate developer distribution until tests can be derived. - Also, new modules to be added are expected to have a test suite - and adequate test coverage. + - Tests have been reorganized into groups based on classes or use + cases. + - Automated test coverage is now online: + http://www.bioperl.org/wiki/Test_Coverage + - After this release, untested modules will be moved into a + separate developer distribution until tests can be derived. + Also, new modules to be added are expected to have a test suite + and adequate test coverage. 1.5.2 Developer release From cjfields at dev.open-bio.org Mon Sep 7 18:55:31 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 7 Sep 2009 18:55:31 -0400 Subject: [Bioperl-guts-l] [16034] bioperl-live/trunk/t/Seq: num_*, not no_* Message-ID: <200909072255.n87MtVcO003603@dev.open-bio.org> Revision: 16034 Author: cjfields Date: 2009-09-07 18:55:30 -0400 (Mon, 07 Sep 2009) Log Message: ----------- num_*, not no_* Modified Paths: -------------- bioperl-live/trunk/t/Seq/EncodedSeq.t bioperl-live/trunk/t/Seq/LocatableSeq.t Modified: bioperl-live/trunk/t/Seq/EncodedSeq.t =================================================================== --- bioperl-live/trunk/t/Seq/EncodedSeq.t 2009-09-07 20:36:44 UTC (rev 16033) +++ bioperl-live/trunk/t/Seq/EncodedSeq.t 2009-09-07 22:55:30 UTC (rev 16034) @@ -25,7 +25,7 @@ is $seq->start, 1; is $seq->end, 6; is $seq->strand, 1; -is $seq->no_gaps, 1; +is $seq->num_gaps, 1; is $seq->column_from_residue_number(4), 9; # this should fail @@ -60,7 +60,7 @@ is $seq->column_from_residue_number(14), 2; is $seq->encoding('3C2GCG'), 'CCCGGCGCC'; is $seq->seq, 'at-c--gta'; -is $seq->no_gaps, 2; +is $seq->num_gaps, 2; is $seq->location_from_column(2)->to_FTstring, 14; is $seq->location_from_column(5)->to_FTstring, "12^13"; is $seq->encoding("B", Bio::Location::Simple->new(-start => 10, -end => 11, Modified: bioperl-live/trunk/t/Seq/LocatableSeq.t =================================================================== --- bioperl-live/trunk/t/Seq/LocatableSeq.t 2009-09-07 20:36:44 UTC (rev 16033) +++ bioperl-live/trunk/t/Seq/LocatableSeq.t 2009-09-07 22:55:30 UTC (rev 16034) @@ -24,7 +24,7 @@ is $seq->start, 1; is $seq->end, 6; is $seq->strand, 1; -is $seq->no_gaps, 1; +is $seq->num_gaps, 1; is $seq->column_from_residue_number(4), 9; is $seq->column_from_residue_number(3), 5; @@ -119,7 +119,7 @@ is $seq->start, 1; is $seq->end, 6; is $seq->strand, -1; -is $seq->no_gaps, 1; +is $seq->num_gaps, 1; is $seq->column_from_residue_number(4), 5; From cjfields at dev.open-bio.org Mon Sep 7 18:56:44 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 7 Sep 2009 18:56:44 -0400 Subject: [Bioperl-guts-l] [16035] bioperl-live/trunk/t/Align/SimpleAlign.t: num_*, not no_* Message-ID: <200909072256.n87Mui5l003634@dev.open-bio.org> Revision: 16035 Author: cjfields Date: 2009-09-07 18:56:44 -0400 (Mon, 07 Sep 2009) Log Message: ----------- num_*, not no_* Modified Paths: -------------- bioperl-live/trunk/t/Align/SimpleAlign.t Modified: bioperl-live/trunk/t/Align/SimpleAlign.t =================================================================== --- bioperl-live/trunk/t/Align/SimpleAlign.t 2009-09-07 22:55:30 UTC (rev 16034) +++ bioperl-live/trunk/t/Align/SimpleAlign.t 2009-09-07 22:56:44 UTC (rev 16035) @@ -70,7 +70,7 @@ is scalar @seqs, 16, 'each_seq'; is $seqs[0]->get_nse, '1433_LYCES/9-246', 'get_nse'; is $seqs[0]->id, '1433_LYCES', 'id'; -is $seqs[0]->no_gaps, 3, 'no_gaps'; +is $seqs[0]->num_gaps, 3, 'num_gaps'; @seqs = $aln->each_alphabetically(); is scalar @seqs, 16, 'each_alphabetically'; From cjfields at dev.open-bio.org Mon Sep 7 19:02:11 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 7 Sep 2009 19:02:11 -0400 Subject: [Bioperl-guts-l] [16036] bioperl-live/trunk/Bio/LocatableSeq.pm: add no_gaps deprecated stub , fix C&P sloppiness Message-ID: <200909072302.n87N2Btj003708@dev.open-bio.org> Revision: 16036 Author: cjfields Date: 2009-09-07 19:02:11 -0400 (Mon, 07 Sep 2009) Log Message: ----------- add no_gaps deprecated stub, fix C&P sloppiness Modified Paths: -------------- bioperl-live/trunk/Bio/LocatableSeq.pm Modified: bioperl-live/trunk/Bio/LocatableSeq.pm =================================================================== --- bioperl-live/trunk/Bio/LocatableSeq.pm 2009-09-07 22:56:44 UTC (rev 16035) +++ bioperl-live/trunk/Bio/LocatableSeq.pm 2009-09-07 23:02:11 UTC (rev 16036) @@ -651,28 +651,37 @@ =head2 no_gap - Title : no_gaps - Usage :$self->no_gaps('.') - Function:Gets number of gaps in the sequence. The count excludes - leading or trailing gap characters. + Title : no_gaps + Usage : $self->no_gaps('.') + Function : Gets number of gaps in the sequence. The count excludes + leading or trailing gap characters. - Valid bioperl sequence characters are [A-Za-z\-\.\*]. Of - these, '.' and '-' are counted as gap characters unless an - optional argument specifies one of them. + Valid bioperl sequence characters are [A-Za-z\-\.\*]. Of + these, '.' and '-' are counted as gap characters unless an + optional argument specifies one of them. - Returns : number of internal gaps in the sequence. - Args : a gap character (optional) + Returns : number of internal gaps in the sequence. + Args : a gap character (optional) + Status : Deprecated (in favor of num_gaps()) =cut -=head2 no_gaps +sub no_gaps { + my $self = shift; + $self->deprecated(-warn_version => 1.0069, + -throw_version => 1.0075, + -message => 'Use of method no_gaps() is deprecated, use num_gaps() instead'); + $self->num_gaps(@_); +} +=head2 no_sequences + Title : no_sequences - Usage : $gaps = $seq->no_gaps + Usage : $gaps = $seq->no_sequences Function : number of sequence in the sequence alignment Returns : integer Argument : - Status : Deprecated (in favor of num_gaps()) + Status : Deprecated (in favor of num_sequences()) =cut @@ -680,8 +689,8 @@ my $self = shift; $self->deprecated(-warn_version => 1.0069, -throw_version => 1.0075, - -message => 'Use of method no_gaps() is deprecated, use num_gaps() instead'); - $self->num_gaps(@_); + -message => 'Use of method no_sequences() is deprecated, use num_sequences() instead'); + $self->num_sequences(@_); } 1; From maj at dev.open-bio.org Mon Sep 7 19:28:48 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Mon, 7 Sep 2009 19:28:48 -0400 Subject: [Bioperl-guts-l] [16037] bioperl-live/trunk/Changes: slight amplifications/1.6.1 Message-ID: <200909072328.n87NSmSP003914@dev.open-bio.org> Revision: 16037 Author: maj Date: 2009-09-07 19:28:48 -0400 (Mon, 07 Sep 2009) Log Message: ----------- slight amplifications/1.6.1 Modified Paths: -------------- bioperl-live/trunk/Changes Modified: bioperl-live/trunk/Changes =================================================================== --- bioperl-live/trunk/Changes 2009-09-07 23:02:11 UTC (rev 16036) +++ bioperl-live/trunk/Changes 2009-09-07 23:28:48 UTC (rev 16037) @@ -32,7 +32,8 @@ * Bio::DB::Fasta - berkeleydb database now autoindexes wig files and locks correctly [lstein] * Bio::DB::HIV - - various small updates for stability [maj] + - various small updates for stability; tracking changes to LANL + database interface [maj] * Bio::DB::SeqFeature (lots of updates and changes) - add Pg, SQLite, and faster BerkeleyDB implementations [lstein, scain] - bug 2835 - patch [Dan Bolser] @@ -47,14 +48,15 @@ - bug 2800 - patch to fix phylip parsing [Wei Zou] * Bio::Nexml - Google Summer of Code project from Chase Miller - parsers for Nexml file - format [maj] + format [maj, chmille4] * Bio::PopGen - Make Individual, Population, Marker objects AnnotatableI [maj] - simplify LD code [jason] * Bio::RangeI - deal with empty intersection [jason] * Bio::Restriction - - significant overhaul of Bio::Restriction system. [maj] + - significant overhaul of Bio::Restriction system: complete support for + external and non-palindromic cutters. [maj] * Bio::Root::Build - CPANPLUS support, no automatic installation [sendu] * Bio::Root::IO @@ -135,7 +137,7 @@ * Bio::Tools::tRNAscanSE - use 'gene' and 'exon' for proper SO, ensure ID is unique [jason] * Bio::Tree::* - - bug 2456 - fix reroot_tree() [maj] + - bug 2456 - fix reroot_tree(), added create_node_on_branch() [maj] * Bio::Tree::Statistics - several methods for calculating Fitch-based score, internal trait values, statratio(), sum of leaf distances [heikki] From maj at dev.open-bio.org Mon Sep 7 19:41:47 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Mon, 7 Sep 2009 19:41:47 -0400 Subject: [Bioperl-guts-l] [16038] bioperl-live/trunk/AUTHORS: tiling Message-ID: <200909072341.n87NflaA003948@dev.open-bio.org> Revision: 16038 Author: maj Date: 2009-09-07 19:41:47 -0400 (Mon, 07 Sep 2009) Log Message: ----------- tiling Modified Paths: -------------- bioperl-live/trunk/AUTHORS Modified: bioperl-live/trunk/AUTHORS =================================================================== --- bioperl-live/trunk/AUTHORS 2009-09-07 23:28:48 UTC (rev 16037) +++ bioperl-live/trunk/AUTHORS 2009-09-07 23:41:47 UTC (rev 16038) @@ -133,7 +133,7 @@ =item * Keith James - Bio::Tools::Geneid -=item * Mark A. Jensen - Bio::DB::HIVQuery +=item * Mark A. Jensen - Bio::DB::HIVQuery, Bio::Search::Tiling =item * Nicolas Joly From cjfields at illinois.edu Mon Sep 7 20:32:53 2009 From: cjfields at illinois.edu (Chris Fields) Date: Mon, 7 Sep 2009 19:32:53 -0500 Subject: [Bioperl-guts-l] [16038] bioperl-live/trunk/AUTHORS: tiling In-Reply-To: <200909072341.n87NflaA003948@dev.open-bio.org> References: <200909072341.n87NflaA003948@dev.open-bio.org> Message-ID: <33A0DA48-2D19-4A13-9308-F87BA74A1FE9@illinois.edu> Probably should add Chase as well. -c On Sep 7, 2009, at 6:41 PM, Mark Allen Jensen wrote: > Revision: 16038 > Author: maj > Date: 2009-09-07 19:41:47 -0400 (Mon, 07 Sep 2009) > > Log Message: > ----------- > tiling > > Modified Paths: > -------------- > bioperl-live/trunk/AUTHORS > > Modified: bioperl-live/trunk/AUTHORS > =================================================================== > --- bioperl-live/trunk/AUTHORS 2009-09-07 23:28:48 UTC (rev 16037) > +++ bioperl-live/trunk/AUTHORS 2009-09-07 23:41:47 UTC (rev 16038) > @@ -133,7 +133,7 @@ > > =item * Keith James - Bio::Tools::Geneid > > -=item * Mark A. Jensen - Bio::DB::HIVQuery > +=item * Mark A. Jensen - Bio::DB::HIVQuery, > Bio::Search::Tiling > > =item * Nicolas Joly > > > > _______________________________________________ > Bioperl-guts-l mailing list > Bioperl-guts-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/bioperl-guts-l From cjfields at dev.open-bio.org Mon Sep 7 20:55:35 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 7 Sep 2009 20:55:35 -0400 Subject: [Bioperl-guts-l] [16039] bioperl-live/trunk/t/RemoteDB/SwissProt.t: idtracker may be down. Message-ID: <200909080055.n880tZQi004166@dev.open-bio.org> Revision: 16039 Author: cjfields Date: 2009-09-07 20:55:34 -0400 (Mon, 07 Sep 2009) Log Message: ----------- idtracker may be down. Not sure if this is permanent, so TODO'ing the tests. Modified Paths: -------------- bioperl-live/trunk/t/RemoteDB/SwissProt.t Modified: bioperl-live/trunk/t/RemoteDB/SwissProt.t =================================================================== --- bioperl-live/trunk/t/RemoteDB/SwissProt.t 2009-09-07 23:41:47 UTC (rev 16038) +++ bioperl-live/trunk/t/RemoteDB/SwissProt.t 2009-09-08 00:55:34 UTC (rev 16039) @@ -63,20 +63,25 @@ } # test idtracker() method - ok $gb = Bio::DB::SwissProt->new(-retrievaltype =>'pipeline', - -delay => 0); + -delay => 0, + -verbose => -1); -SKIP: { - my $newid; - # check old ID - eval {$newid = $gb->idtracker('myod_pig');}; - skip("Couldn't connect to SwissProt with Bio::DB::Swiss.pm. Skipping those tests", 2) if $@; - is($newid, 'MYOD1_PIG'); - # check ID that is current - eval {$newid = $gb->idtracker('YNB3_YEAST');}; - skip("Couldn't connect to SwissProt with Bio::DB::Swiss.pm. Skipping those tests", 1) if $@; - is($newid, 'YNB3_YEAST'); +TODO: { + local $TODO = "idtracker() not working (may be temporary)"; + + SKIP: { + my $newid; + # check old ID + eval {$newid = $gb->idtracker('myod_pig');}; + skip("Problem with idtracker(), skipping these tests", 2) if $@; + is($newid, 'MYOD1_PIG'); + # check ID that is current + eval {$newid = $gb->idtracker('YNB3_YEAST');}; + skip("Problem with idtracker(), skipping these tests", 1) if $@; + is($newid, 'YNB3_YEAST'); + } + } 1; From maj at dev.open-bio.org Mon Sep 7 20:55:51 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Mon, 7 Sep 2009 20:55:51 -0400 Subject: [Bioperl-guts-l] [16040] bioperl-live/trunk/AUTHORS: add Chase Message-ID: <200909080055.n880tpkw004197@dev.open-bio.org> Revision: 16040 Author: maj Date: 2009-09-07 20:55:51 -0400 (Mon, 07 Sep 2009) Log Message: ----------- add Chase Modified Paths: -------------- bioperl-live/trunk/AUTHORS Modified: bioperl-live/trunk/AUTHORS =================================================================== --- bioperl-live/trunk/AUTHORS 2009-09-08 00:55:34 UTC (rev 16039) +++ bioperl-live/trunk/AUTHORS 2009-09-08 00:55:51 UTC (rev 16040) @@ -169,6 +169,8 @@ =item * Dave Messina - Deobfuscator, judicious meddling +=item * Chase Miller - Bio::Nexml and related IO modules + =item * Juha Muilu =item * Chris Mungall From cjfields at dev.open-bio.org Mon Sep 7 21:00:27 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 7 Sep 2009 21:00:27 -0400 Subject: [Bioperl-guts-l] [16041] bioperl-live/trunk/t/RemoteDB: fix volatile data test ( check for minimal but existing sequence length) Message-ID: <200909080100.n8810RV0004248@dev.open-bio.org> Revision: 16041 Author: cjfields Date: 2009-09-07 21:00:27 -0400 (Mon, 07 Sep 2009) Log Message: ----------- fix volatile data test (check for minimal but existing sequence length) Modified Paths: -------------- bioperl-live/trunk/t/RemoteDB/BioFetch.t bioperl-live/trunk/t/RemoteDB/EMBL.t Modified: bioperl-live/trunk/t/RemoteDB/BioFetch.t =================================================================== --- bioperl-live/trunk/t/RemoteDB/BioFetch.t 2009-09-08 00:55:51 UTC (rev 16040) +++ bioperl-live/trunk/t/RemoteDB/BioFetch.t 2009-09-08 01:00:27 UTC (rev 16041) @@ -16,7 +16,7 @@ my $verbose = test_debug(); -my $dbwarn = "Warning: Couldn't connect to EMBL with Bio::DB::EMBL.pm!\n"; +my $dbwarn = "Warning: Couldn't connect to EMBL with Bio::DB::BioFetch!\n"; my ($db,$db2,$seq,$seqio); @@ -56,7 +56,7 @@ $seq = $seqio->next_seq(); isa_ok($seqio, 'Bio::SeqIO'); isa_ok($seq, 'Bio::SeqI'); - cmp_ok( $seq->length, '>=', 200); + cmp_ok( $seq->length, '>=', 1); } SKIP: { Modified: bioperl-live/trunk/t/RemoteDB/EMBL.t =================================================================== --- bioperl-live/trunk/t/RemoteDB/EMBL.t 2009-09-08 00:55:51 UTC (rev 16040) +++ bioperl-live/trunk/t/RemoteDB/EMBL.t 2009-09-08 01:00:27 UTC (rev 16041) @@ -37,7 +37,7 @@ skip('could not connect to embl',2) if $@; undef $db; # testing to see if we can remove gb ok( defined($seq = $seqio->next_seq())); - cmp_ok( $seq->length, '>=', 200); + cmp_ok( $seq->length, '>=', 1); } $seq = $seqio = undef; From maj at dev.open-bio.org Mon Sep 7 21:57:46 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Mon, 7 Sep 2009 21:57:46 -0400 Subject: [Bioperl-guts-l] [16042] bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/ bioperl-mode.el: use assoc-string to allow case insensitive module names Message-ID: <200909080157.n881vkCK004440@dev.open-bio.org> Revision: 16042 Author: maj Date: 2009-09-07 21:57:46 -0400 (Mon, 07 Sep 2009) Log Message: ----------- use assoc-string to allow case insensitive module names Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-08 01:00:27 UTC (rev 16041) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-08 01:57:46 UTC (rev 16042) @@ -34,11 +34,6 @@ ;; ;; - compile to byte code ;; -;; back-compatibility issue -;; - require a completing-read that works with emacs 21 -;; * no "test-completion" method -;; * completing-read COLLECTION of 22 is TABLE of 21, -;; which must be an alist ;; issues ;; - bioperl-view-mode isn't always getting its keymap ;; - missing tool in tool-bar?? @@ -99,9 +94,6 @@ (require 'bioperl-skel) (require 'bioperl-init) -;; (load-file "~/bioperl/docproj/bioperl-mode/bioperl-init.el") -;; (load-file "~/bioperl/docproj/bioperl-mode/bioperl-skel.el") - (defconst bioperl-mode-revision "$Id$" "The revision string of bioperl-mode.el") @@ -243,7 +235,7 @@ cr)) (if (not method) (signal 'quit t)) (let ( - ( cache-pos (if method (assoc method bioperl-method-pod-cache) nil) ) + ( cache-pos (if method (assoc-string method bioperl-method-pod-cache t) nil) ) ) (if (not cache-pos) (message "No such method") @@ -693,7 +685,7 @@ (if (member n (mapcar 'string-to-number (split-string (cdr cache-item) path-separator))) ;; deja vu (setq mod-alist-keys nil) ;; fall-through - (setcdr cache-item (concat (cdr (assoc key mod-alist)) path-separator (cdr cache-item))) + (setcdr cache-item (concat (cdr (assoc-string key mod-alist t)) path-separator (cdr cache-item))) (setq ret t)))) )) @@ -972,7 +964,7 @@ (elt (split-string bioperl-module-path path-separator) n)))) (insert "\n") (while (setq cur-tag (pop tags)) - (setq cur-content (cdr (assoc cur-tag content))) + (setq cur-content (cdr (assoc-string cur-tag content t))) (setq cur-content (replace-regexp-in-string "!!" "\t\n" cur-content)) (insert cur-tag " : " cur-content)) (goto-char (point-min)) @@ -1052,7 +1044,7 @@ (if (not name-list) (setq name-list (bioperl-module-names nmspc nil t))) - (setq pthn (cdr (assoc mod name-list))) + (setq pthn (cdr (assoc-string mod name-list t))) (if (not pthn) (error "Shouldn't be here(1). Check `bioperl-module-path' and try running `bioperl-clear-module-cache'.")) (if (not (string-match path-separator pthn)) @@ -1083,7 +1075,7 @@ nil t (car (car module-path-list)))) (if (string-equal pthn "") (setq pthn (car (car module-path-list)))) - (setq pthn (elt (assoc pthn module-path-list) 1)) + (setq pthn (elt (assoc-string pthn module-path-list t) 1)) ))) ;; method completion (setq nmspc (replace-regexp-in-string "::$" "" nmspc)) @@ -1120,7 +1112,7 @@ nil t (car (car module-path-list)))) (if (string-equal pthn "") (setq pthn (car (car module-path-list)))) - (setq pthn (elt (assoc pthn module-path-list) 1)) + (setq pthn (elt (assoc-string pthn module-path-list t) 1)) ) )) (setq name-list (bioperl-method-names (concat nmspc "::" mod) nil pthn)) @@ -1254,24 +1246,26 @@ (defun assoc-all (key alist &optional ret) - "Return list of *pointers* (like assoc) to all matching conses in the alist." - (let ( (c (assoc key alist)) (r) ) + "Return list of *pointers* (like assoc) to all matching conses in the alist. +Uses `assoc-string' for case control." + (let ( (c (assoc-string key alist t)) (r) ) (if c (assoc-all key (cdr alist) (if ret (add-to-list 'ret c t 'eq) (list c))) ret))) (defun deep-assoc (keys alist) - "Return the associations of a set of keys in an alist tree." + "Return the associations of a set of keys in an alist tree. +Uses `assoc-string' for case control." (cond ((not keys) nil) ((not (listp alist)) nil) ((= (length keys) 1) - (assoc (pop keys) alist)) + (assoc-string (pop keys) alist t)) (t (let* ( (key (pop keys)) - (newlist (assoc key alist)) ) + (newlist (assoc-string key alist t)) ) (if newlist (deep-assoc keys (cdr newlist)) (deep-assoc nil nil))) From cjfields at dev.open-bio.org Mon Sep 7 22:04:10 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 7 Sep 2009 22:04:10 -0400 Subject: [Bioperl-guts-l] [16043] bioperl-live/trunk/t/data/bug2862.pmr: remove newlines ( somehow these were added in) Message-ID: <200909080204.n8824A3j004528@dev.open-bio.org> Revision: 16043 Author: cjfields Date: 2009-09-07 22:04:10 -0400 (Mon, 07 Sep 2009) Log Message: ----------- remove newlines (somehow these were added in) Modified Paths: -------------- bioperl-live/trunk/t/data/bug2862.pmr Modified: bioperl-live/trunk/t/data/bug2862.pmr =================================================================== --- bioperl-live/trunk/t/data/bug2862.pmr 2009-09-08 01:57:46 UTC (rev 16042) +++ bioperl-live/trunk/t/data/bug2862.pmr 2009-09-08 02:04:10 UTC (rev 16043) @@ -11,12 +11,8 @@ PRIMER_OPT_TM=60 PRIMER_MIN_TM=59 PRIMER_MAX_TM=61 -PRIMER_LEFT_EXPLAIN=considered 4449, too many Ns 373, GC content failed -127, low tm 2109, high tm 1284, high any compl 6, high end compl 27, -high repeat similarity 31, long poly-x seq 61, ok 431 -PRIMER_RIGHT_EXPLAIN=considered 4370, too many Ns 400, GC content failed -120, low tm 2106, high tm 1190, high any compl 2, high end compl 6, high -repeat similarity 6, long poly-x seq 58, ok 482 +PRIMER_LEFT_EXPLAIN=considered 4449, too many Ns 373, GC content failed 127, low tm 2109, high tm 1284, high any compl 6, high end compl 27, high repeat similarity 31, long poly-x seq 61, ok 431 +PRIMER_RIGHT_EXPLAIN=considered 4370, too many Ns 400, GC content failed 120, low tm 2106, high tm 1190, high any compl 2, high end compl 6, high repeat similarity 6, long poly-x seq 58, ok 482 PRIMER_PAIR_EXPLAIN=considered 343, unacceptable product size 320, ok 23 PRIMER_PAIR_PENALTY=0.1407 PRIMER_LEFT_PENALTY=0.081493 @@ -33,12 +29,9 @@ PRIMER_RIGHT_SELF_ANY=2.00 PRIMER_LEFT_SELF_END=3.00 PRIMER_RIGHT_SELF_END=0.00 -PRIMER_LEFT_MISPRIMING_SCORE=11.00, J04353 Human papillomavirus type 31 -(HPV-31) complete genome. -PRIMER_RIGHT_MISPRIMING_SCORE=12.00, U45909 Human papillomavirus type -45, isolate IS252, major capsid protein L1 (L1) gene, partial cds. -PRIMER_PAIR_MISPRIMING_SCORE=20.00, reverse EF177179 Human -papillomavirus type 56 clone Qv22608, complete genome. +PRIMER_LEFT_MISPRIMING_SCORE=11.00, J04353 Human papillomavirus type 31 (HPV-31) complete genome. +PRIMER_RIGHT_MISPRIMING_SCORE=12.00, U45909 Human papillomavirus type 45, isolate IS252, major capsid protein L1 (L1) gene, partial cds. +PRIMER_PAIR_MISPRIMING_SCORE=20.00, reverse EF177179 Human papillomavirus type 56 clone Qv22608, complete genome. PRIMER_LEFT_END_STABILITY=6.7000 PRIMER_RIGHT_END_STABILITY=7.0000 PRIMER_PAIR_COMPL_ANY=5.00 @@ -59,12 +52,9 @@ PRIMER_RIGHT_1_SELF_ANY=2.00 PRIMER_LEFT_1_SELF_END=3.00 PRIMER_RIGHT_1_SELF_END=0.00 -PRIMER_LEFT_1_MISPRIMING_SCORE=11.00, J04353 Human papillomavirus type -31 (HPV-31) complete genome. -PRIMER_RIGHT_1_MISPRIMING_SCORE=11.00, EF202156 Human papillomavirus -type 45 isolate Qv20214, complete genome. -PRIMER_PAIR_1_MISPRIMING_SCORE=20.00, EF202156 Human papillomavirus type -45 isolate Qv20214, complete genome. +PRIMER_LEFT_1_MISPRIMING_SCORE=11.00, J04353 Human papillomavirus type 31 (HPV-31) complete genome. +PRIMER_RIGHT_1_MISPRIMING_SCORE=11.00, EF202156 Human papillomavirus type 45 isolate Qv20214, complete genome. +PRIMER_PAIR_1_MISPRIMING_SCORE=20.00, EF202156 Human papillomavirus type 45 isolate Qv20214, complete genome. PRIMER_LEFT_1_END_STABILITY=6.7000 PRIMER_RIGHT_1_END_STABILITY=7.0000 PRIMER_PAIR_1_COMPL_ANY=5.00 @@ -85,12 +75,9 @@ PRIMER_RIGHT_2_SELF_ANY=2.00 PRIMER_LEFT_2_SELF_END=3.00 PRIMER_RIGHT_2_SELF_END=0.00 -PRIMER_LEFT_2_MISPRIMING_SCORE=11.00, J04353 Human papillomavirus type -31 (HPV-31) complete genome. -PRIMER_RIGHT_2_MISPRIMING_SCORE=11.00, U45909 Human papillomavirus type -45, isolate IS252, major capsid protein L1 (L1) gene, partial cds. -PRIMER_PAIR_2_MISPRIMING_SCORE=20.00, J04353 Human papillomavirus type -31 (HPV-31) complete genome. +PRIMER_LEFT_2_MISPRIMING_SCORE=11.00, J04353 Human papillomavirus type 31 (HPV-31) complete genome. +PRIMER_RIGHT_2_MISPRIMING_SCORE=11.00, U45909 Human papillomavirus type 45, isolate IS252, major capsid protein L1 (L1) gene, partial cds. +PRIMER_PAIR_2_MISPRIMING_SCORE=20.00, J04353 Human papillomavirus type 31 (HPV-31) complete genome. PRIMER_LEFT_2_END_STABILITY=6.7000 PRIMER_RIGHT_2_END_STABILITY=6.6000 PRIMER_PAIR_2_COMPL_ANY=5.00 @@ -111,12 +98,9 @@ PRIMER_RIGHT_3_SELF_ANY=7.00 PRIMER_LEFT_3_SELF_END=3.00 PRIMER_RIGHT_3_SELF_END=1.00 -PRIMER_LEFT_3_MISPRIMING_SCORE=11.00, J04353 Human papillomavirus type -31 (HPV-31) complete genome. -PRIMER_RIGHT_3_MISPRIMING_SCORE=11.00, X74481 Human papillomavirus type -52 genomic DNA. -PRIMER_PAIR_3_MISPRIMING_SCORE=20.00, DQ057317 Human papillomavirus type -52 isolate HK1151 L1 protein (L1) gene, partial cds. +PRIMER_LEFT_3_MISPRIMING_SCORE=11.00, J04353 Human papillomavirus type 31 (HPV-31) complete genome. +PRIMER_RIGHT_3_MISPRIMING_SCORE=11.00, X74481 Human papillomavirus type 52 genomic DNA. +PRIMER_PAIR_3_MISPRIMING_SCORE=20.00, DQ057317 Human papillomavirus type 52 isolate HK1151 L1 protein (L1) gene, partial cds. PRIMER_LEFT_3_END_STABILITY=6.7000 PRIMER_RIGHT_3_END_STABILITY=7.9000 PRIMER_PAIR_3_COMPL_ANY=4.00 @@ -137,12 +121,9 @@ PRIMER_RIGHT_4_SELF_ANY=2.00 PRIMER_LEFT_4_SELF_END=2.00 PRIMER_RIGHT_4_SELF_END=0.00 -PRIMER_LEFT_4_MISPRIMING_SCORE=10.00, J04353 Human papillomavirus type -31 (HPV-31) complete genome. -PRIMER_RIGHT_4_MISPRIMING_SCORE=11.00, U45909 Human papillomavirus type -45, isolate IS252, major capsid protein L1 (L1) gene, partial cds. -PRIMER_PAIR_4_MISPRIMING_SCORE=19.00, J04353 Human papillomavirus type -31 (HPV-31) complete genome. +PRIMER_LEFT_4_MISPRIMING_SCORE=10.00, J04353 Human papillomavirus type 31 (HPV-31) complete genome. +PRIMER_RIGHT_4_MISPRIMING_SCORE=11.00, U45909 Human papillomavirus type 45, isolate IS252, major capsid protein L1 (L1) gene, partial cds. +PRIMER_PAIR_4_MISPRIMING_SCORE=19.00, J04353 Human papillomavirus type 31 (HPV-31) complete genome. PRIMER_LEFT_4_END_STABILITY=7.3000 PRIMER_RIGHT_4_END_STABILITY=6.6000 PRIMER_PAIR_4_COMPL_ANY=4.00 @@ -163,12 +144,9 @@ PRIMER_RIGHT_5_SELF_ANY=2.00 PRIMER_LEFT_5_SELF_END=2.00 PRIMER_RIGHT_5_SELF_END=0.00 -PRIMER_LEFT_5_MISPRIMING_SCORE=10.00, J04353 Human papillomavirus type -31 (HPV-31) complete genome. -PRIMER_RIGHT_5_MISPRIMING_SCORE=12.00, U45909 Human papillomavirus type -45, isolate IS252, major capsid protein L1 (L1) gene, partial cds. -PRIMER_PAIR_5_MISPRIMING_SCORE=21.00, reverse PPHT39 Human -papillomavirus ORFs. +PRIMER_LEFT_5_MISPRIMING_SCORE=10.00, J04353 Human papillomavirus type 31 (HPV-31) complete genome. +PRIMER_RIGHT_5_MISPRIMING_SCORE=12.00, U45909 Human papillomavirus type 45, isolate IS252, major capsid protein L1 (L1) gene, partial cds. +PRIMER_PAIR_5_MISPRIMING_SCORE=21.00, reverse PPHT39 Human papillomavirus ORFs. PRIMER_LEFT_5_END_STABILITY=7.3000 PRIMER_RIGHT_5_END_STABILITY=7.0000 PRIMER_PAIR_5_COMPL_ANY=4.00 @@ -189,12 +167,9 @@ PRIMER_RIGHT_6_SELF_ANY=2.00 PRIMER_LEFT_6_SELF_END=2.00 PRIMER_RIGHT_6_SELF_END=0.00 -PRIMER_LEFT_6_MISPRIMING_SCORE=10.00, J04353 Human papillomavirus type -31 (HPV-31) complete genome. -PRIMER_RIGHT_6_MISPRIMING_SCORE=11.00, EF202156 Human papillomavirus -type 45 isolate Qv20214, complete genome. -PRIMER_PAIR_6_MISPRIMING_SCORE=20.00, reverse PPHT39 Human -papillomavirus ORFs. +PRIMER_LEFT_6_MISPRIMING_SCORE=10.00, J04353 Human papillomavirus type 31 (HPV-31) complete genome. +PRIMER_RIGHT_6_MISPRIMING_SCORE=11.00, EF202156 Human papillomavirus type 45 isolate Qv20214, complete genome. +PRIMER_PAIR_6_MISPRIMING_SCORE=20.00, reverse PPHT39 Human papillomavirus ORFs. PRIMER_LEFT_6_END_STABILITY=7.3000 PRIMER_RIGHT_6_END_STABILITY=7.0000 PRIMER_PAIR_6_COMPL_ANY=4.00 @@ -215,12 +190,9 @@ PRIMER_RIGHT_7_SELF_ANY=4.00 PRIMER_LEFT_7_SELF_END=2.00 PRIMER_RIGHT_7_SELF_END=3.00 -PRIMER_LEFT_7_MISPRIMING_SCORE=10.00, J04353 Human papillomavirus type -31 (HPV-31) complete genome. -PRIMER_RIGHT_7_MISPRIMING_SCORE=12.00, reverse FJ385268 Human -papillomavirus type 58 isolate HPV58sc78, complete genome. -PRIMER_PAIR_7_MISPRIMING_SCORE=19.00, J04353 Human papillomavirus type -31 (HPV-31) complete genome. +PRIMER_LEFT_7_MISPRIMING_SCORE=10.00, J04353 Human papillomavirus type 31 (HPV-31) complete genome. +PRIMER_RIGHT_7_MISPRIMING_SCORE=12.00, reverse FJ385268 Human papillomavirus type 58 isolate HPV58sc78, complete genome. +PRIMER_PAIR_7_MISPRIMING_SCORE=19.00, J04353 Human papillomavirus type 31 (HPV-31) complete genome. PRIMER_LEFT_7_END_STABILITY=7.3000 PRIMER_RIGHT_7_END_STABILITY=8.2000 PRIMER_PAIR_7_COMPL_ANY=5.00 @@ -241,12 +213,9 @@ PRIMER_RIGHT_8_SELF_ANY=7.00 PRIMER_LEFT_8_SELF_END=2.00 PRIMER_RIGHT_8_SELF_END=1.00 -PRIMER_LEFT_8_MISPRIMING_SCORE=10.00, J04353 Human papillomavirus type -31 (HPV-31) complete genome. -PRIMER_RIGHT_8_MISPRIMING_SCORE=11.00, X74481 Human papillomavirus type -52 genomic DNA. -PRIMER_PAIR_8_MISPRIMING_SCORE=19.00, X74481 Human papillomavirus type -52 genomic DNA. +PRIMER_LEFT_8_MISPRIMING_SCORE=10.00, J04353 Human papillomavirus type 31 (HPV-31) complete genome. +PRIMER_RIGHT_8_MISPRIMING_SCORE=11.00, X74481 Human papillomavirus type 52 genomic DNA. +PRIMER_PAIR_8_MISPRIMING_SCORE=19.00, X74481 Human papillomavirus type 52 genomic DNA. PRIMER_LEFT_8_END_STABILITY=7.3000 PRIMER_RIGHT_8_END_STABILITY=7.9000 PRIMER_PAIR_8_COMPL_ANY=3.00 @@ -267,16 +236,12 @@ PRIMER_RIGHT_9_SELF_ANY=2.00 PRIMER_LEFT_9_SELF_END=3.00 PRIMER_RIGHT_9_SELF_END=0.00 -PRIMER_LEFT_9_MISPRIMING_SCORE=12.00, EU918766 Human papillomavirus type -33 isolate LZcc12-33, complete genome. -PRIMER_RIGHT_9_MISPRIMING_SCORE=12.00, U45909 Human papillomavirus type -45, isolate IS252, major capsid protein L1 (L1) gene, partial cds. -PRIMER_PAIR_9_MISPRIMING_SCORE=22.00, reverse PPHT39 Human -papillomavirus ORFs. +PRIMER_LEFT_9_MISPRIMING_SCORE=12.00, EU918766 Human papillomavirus type 33 isolate LZcc12-33, complete genome. +PRIMER_RIGHT_9_MISPRIMING_SCORE=12.00, U45909 Human papillomavirus type 45, isolate IS252, major capsid protein L1 (L1) gene, partial cds. +PRIMER_PAIR_9_MISPRIMING_SCORE=22.00, reverse PPHT39 Human papillomavirus ORFs. PRIMER_LEFT_9_END_STABILITY=7.2000 PRIMER_RIGHT_9_END_STABILITY=7.0000 PRIMER_PAIR_9_COMPL_ANY=5.00 PRIMER_PAIR_9_COMPL_END=2.00 PRIMER_PRODUCT_SIZE_9=919 = - From cjfields at dev.open-bio.org Mon Sep 7 22:08:47 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 7 Sep 2009 22:08:47 -0400 Subject: [Bioperl-guts-l] [16044] bioperl-live/trunk/Bio/Index/Fasta.pm: Parse must start with '>' to identify sequence as FASTA Message-ID: <200909080208.n8828lFO004674@dev.open-bio.org> Revision: 16044 Author: cjfields Date: 2009-09-07 22:08:47 -0400 (Mon, 07 Sep 2009) Log Message: ----------- Parse must start with '>' to identify sequence as FASTA Modified Paths: -------------- bioperl-live/trunk/Bio/Index/Fasta.pm Modified: bioperl-live/trunk/Bio/Index/Fasta.pm =================================================================== --- bioperl-live/trunk/Bio/Index/Fasta.pm 2009-09-08 02:04:10 UTC (rev 16043) +++ bioperl-live/trunk/Bio/Index/Fasta.pm 2009-09-08 02:08:47 UTC (rev 16044) @@ -39,7 +39,7 @@ foreach my $id (@ARGV) { my $seq = $inx->fetch($id); # Returns Bio::Seq object - $out->write_seq($seq); + $out->write_seq($seq); } # or, alternatively @@ -126,6 +126,7 @@ package Bio::Index::Fasta; use strict; +use warnings; use Bio::Seq; @@ -167,35 +168,35 @@ =cut sub _index_file { - my( $self, - $file, # File name - $i, # Index-number of file being indexed - ) = @_; + my( $self, + $file, # File name + $i, # Index-number of file being indexed + ) = @_; - my( $begin, # Offset from start of file of the start - # of the last found record. - ); + my( $begin, # Offset from start of file of the start + # of the last found record. + ); - $begin = 0; + $begin = 0; - my $id_parser = $self->id_parser; + my $id_parser = $self->id_parser; - open my $FASTA, '<', $file or $self->throw("Can't open file for read : $file"); + open my $FASTA, '<', $file or $self->throw("Can't open file for read : $file"); - # Main indexing loop - while (<$FASTA>) { - if (/^>/) { - # $begin is the position of the first character after the '>' - my $offset = ( $^O =~ /mswin/i ) ? 0 : 1; - my $begin = tell($FASTA) - length( $_ ) + $offset; + # Main indexing loop + while (<$FASTA>) { + if (/^>/) { + # $begin is the position of the first character after the '>' + #my $offset = ( $^O =~ /mswin/i ) ? 0 : 1; + my $begin = tell($FASTA) - length( $_ ); - foreach my $id (&$id_parser($_)) { - $self->add_record($id, $i, $begin); - } - } - } - close $FASTA; - return 1; + foreach my $id (&$id_parser($_)) { + $self->add_record($id, $i, $begin); + } + } + } + close $FASTA; + return 1; } =head2 id_parser @@ -218,12 +219,12 @@ =cut sub id_parser { - my( $self, $code ) = @_; + my( $self, $code ) = @_; - if ($code) { - $self->{'_id_parser'} = $code; - } - return $self->{'_id_parser'} || \&default_id_parser; + if ($code) { + $self->{'_id_parser'} = $code; + } + return $self->{'_id_parser'} || \&default_id_parser; } =head2 default_id_parser @@ -239,11 +240,11 @@ =cut sub default_id_parser { - if ($_[0] =~ /^>\s*(\S+)/) { - return $1; - } else { - return; - } + if ($_[0] =~ /^>\s*(\S+)/) { + return $1; + } else { + return; + } } 1; From cjfields at dev.open-bio.org Mon Sep 7 22:11:12 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 7 Sep 2009 22:11:12 -0400 Subject: [Bioperl-guts-l] [16045] bioperl-live/trunk/Bio/Index/Fasta.pm: add comment about fix Message-ID: <200909080211.n882BCx9004705@dev.open-bio.org> Revision: 16045 Author: cjfields Date: 2009-09-07 22:11:12 -0400 (Mon, 07 Sep 2009) Log Message: ----------- add comment about fix Modified Paths: -------------- bioperl-live/trunk/Bio/Index/Fasta.pm Modified: bioperl-live/trunk/Bio/Index/Fasta.pm =================================================================== --- bioperl-live/trunk/Bio/Index/Fasta.pm 2009-09-08 02:08:47 UTC (rev 16044) +++ bioperl-live/trunk/Bio/Index/Fasta.pm 2009-09-08 02:11:12 UTC (rev 16045) @@ -186,8 +186,14 @@ # Main indexing loop while (<$FASTA>) { if (/^>/) { + + # the following was commented out 9/7/2009 b/c this + # breaks FASTA validation - cjfields + # $begin is the position of the first character after the '>' #my $offset = ( $^O =~ /mswin/i ) ? 0 : 1; + #my $begin = tell($FASTA) - length( $_ ) + $offset; + my $begin = tell($FASTA) - length( $_ ); foreach my $id (&$id_parser($_)) { From maj at dev.open-bio.org Mon Sep 7 22:50:12 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Mon, 7 Sep 2009 22:50:12 -0400 Subject: [Bioperl-guts-l] [16046] bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/ bioperl-mode.el: omit nulls to admit trailing :: Message-ID: <200909080250.n882oCZS004759@dev.open-bio.org> Revision: 16046 Author: maj Date: 2009-09-07 22:50:12 -0400 (Mon, 07 Sep 2009) Log Message: ----------- omit nulls to admit trailing :: Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-08 02:11:12 UTC (rev 16045) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-08 02:50:12 UTC (rev 16046) @@ -642,7 +642,7 @@ (error "Path index out of bounds at arg N")) (let* ( (pth (bioperl-path-from-perl module-dir 1 n)) - (module-components (split-string module-dir "::")) + (module-components (split-string module-dir "::" t)) (module-string) (modules) (alist) From maj at dev.open-bio.org Mon Sep 7 22:54:20 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Mon, 7 Sep 2009 22:54:20 -0400 Subject: [Bioperl-guts-l] [16047] bioperl-dev/branches/bioperl-mode-multipath-branch/dist: retarred multi-branch beta (gamma?) Message-ID: <200909080254.n882sKtE004805@dev.open-bio.org> Revision: 16047 Author: maj Date: 2009-09-07 22:54:20 -0400 (Mon, 07 Sep 2009) Log Message: ----------- retarred multi-branch beta (gamma?) Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar =================================================================== (Binary files differ) Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 2009-09-08 02:50:12 UTC (rev 16046) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 2009-09-08 02:54:20 UTC (rev 16047) @@ -1 +1 @@ -76b79aca5fe5d7ca36499be86b7e607a bioperl-mode.tar +56e6ff6a278c1f6feabe189dea172bb9 bioperl-mode.tar From maj at dev.open-bio.org Mon Sep 7 23:22:04 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Mon, 7 Sep 2009 23:22:04 -0400 Subject: [Bioperl-guts-l] [16048] bioperl-dev/trunk/ide/emacs/bioperl-mode/dist: omit nulls to admit trailing :: (EVERYwhere) Message-ID: <200909080322.n883M4qB005043@dev.open-bio.org> Revision: 16048 Author: maj Date: 2009-09-07 23:22:04 -0400 (Mon, 07 Sep 2009) Log Message: ----------- omit nulls to admit trailing :: (EVERYwhere) Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar =================================================================== (Binary files differ) Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-08 02:54:20 UTC (rev 16047) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-08 03:22:04 UTC (rev 16048) @@ -1 +1 @@ -5f33e02176b54327b6ee46b68d56d6b4 bioperl-mode.tar +439b68662e94bfaec2c679ffd230b4e8 *bioperl-mode.tar From maj at dev.open-bio.org Mon Sep 7 23:24:35 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Mon, 7 Sep 2009 23:24:35 -0400 Subject: [Bioperl-guts-l] [16049] bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/ bioperl-mode.el: omit nulls to admit trailing :: (EVERYwhere) Message-ID: <200909080324.n883OZwP005113@dev.open-bio.org> Revision: 16049 Author: maj Date: 2009-09-07 23:24:35 -0400 (Mon, 07 Sep 2009) Log Message: ----------- omit nulls to admit trailing :: (EVERYwhere) Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-08 03:22:04 UTC (rev 16048) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-08 03:24:35 UTC (rev 16049) @@ -341,7 +341,7 @@ the MODULE-DIR is not available, `bioperl-add-module-names-to-cache' will be called." (let* ( - (module-components (split-string module-dir "::")) + (module-components (split-string module-dir "::" t)) (unlist (lambda (x) (if (listp x) (car x) x)) ) (choose-dirs (lambda (x) (if (listp (cdr x)) x nil)) ) (choose-mods (lambda (x) (if (listp (cdr x)) nil x)) ) @@ -847,7 +847,7 @@ (setq n 0)) (let ( (module-path (elt (split-string bioperl-module-path path-separator) n)) - (module-components (split-string module "::")) + (module-components (split-string module "::" t)) (pth) (dir (if (not (boundp 'dir-first)) nil dir-first)) ) @@ -855,7 +855,7 @@ (error "Path index out of bounds at arg N")) (unless (file-exists-p (concat module-path "/Bio")) (error (concat "Bio modules not present in path component " module-path))) - (setq module-components (split-string module "::")) + (setq module-components (split-string module "::" t)) ;; unixize... (setq pth (replace-regexp-in-string "\\\\" "/" module-path)) @@ -1190,7 +1190,7 @@ (match-string 1 module-dir))) (let* ( ( dirs (bioperl-module-names module-dir retopt t) ) - ( modules (split-string module-dir "::") ) + ( modules (split-string module-dir "::" t) ) ( complet ) ) ;; check once and recalc @@ -1202,7 +1202,7 @@ (string-match "^\\(\\(?:[a-zA-Z0-9_]+::\\)+\\)\\(?::*\\|[a-zA-Z0-9_]*\\)$" str) (match-string 1 str))) (setq dirs (bioperl-module-names module-dir retopt t)) - (setq modules (split-string module-dir "::")) + (setq modules (split-string module-dir "::" t)) )) (if (not dirs) ;; fail From maj at dev.open-bio.org Mon Sep 7 23:25:24 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Mon, 7 Sep 2009 23:25:24 -0400 Subject: [Bioperl-guts-l] [16050] bioperl-dev/branches/bioperl-mode-multipath-branch/dist: retarred( ded) multipath branch... Message-ID: <200909080325.n883POni005159@dev.open-bio.org> Revision: 16050 Author: maj Date: 2009-09-07 23:25:24 -0400 (Mon, 07 Sep 2009) Log Message: ----------- retarred(ded) multipath branch... Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar =================================================================== (Binary files differ) Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 2009-09-08 03:24:35 UTC (rev 16049) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 2009-09-08 03:25:24 UTC (rev 16050) @@ -1 +1 @@ -56e6ff6a278c1f6feabe189dea172bb9 bioperl-mode.tar +a7bd011a2bfaa7b7eda02bcfbeecda15 bioperl-mode.tar From cjfields at dev.open-bio.org Mon Sep 7 23:42:48 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 7 Sep 2009 23:42:48 -0400 Subject: [Bioperl-guts-l] [16051] bioperl-live/trunk/t/RemoteDB/EUtilities.t: volatile test fix ( NCBI changed webenv key length again) Message-ID: <200909080342.n883gmLI005208@dev.open-bio.org> Revision: 16051 Author: cjfields Date: 2009-09-07 23:42:48 -0400 (Mon, 07 Sep 2009) Log Message: ----------- volatile test fix (NCBI changed webenv key length again) Modified Paths: -------------- bioperl-live/trunk/t/RemoteDB/EUtilities.t Modified: bioperl-live/trunk/t/RemoteDB/EUtilities.t =================================================================== --- bioperl-live/trunk/t/RemoteDB/EUtilities.t 2009-09-08 03:25:24 UTC (rev 16050) +++ bioperl-live/trunk/t/RemoteDB/EUtilities.t 2009-09-08 03:42:48 UTC (rev 16051) @@ -313,7 +313,7 @@ # check the actual data my ($webenv, $key) = $history->history; - like($webenv, qr{^\S{50}}, 'WebEnv'); + like($webenv, qr{^\S{15}}, 'WebEnv'); like($key, qr{^\d+}, 'query key'); # can we fetch the sequences? From cjfields at dev.open-bio.org Tue Sep 8 00:40:49 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Tue, 8 Sep 2009 00:40:49 -0400 Subject: [Bioperl-guts-l] [16052] bioperl-live/trunk/Bio/Nexml/Factory.pm: tweaks to get rid of warnings; note the TODO (should a Bio:: AlignIO be called there?) Message-ID: <200909080440.n884enFo005440@dev.open-bio.org> Revision: 16052 Author: cjfields Date: 2009-09-08 00:40:49 -0400 (Tue, 08 Sep 2009) Log Message: ----------- tweaks to get rid of warnings; note the TODO (should a Bio::AlignIO be called there?) Modified Paths: -------------- bioperl-live/trunk/Bio/Nexml/Factory.pm Modified: bioperl-live/trunk/Bio/Nexml/Factory.pm =================================================================== --- bioperl-live/trunk/Bio/Nexml/Factory.pm 2009-09-08 03:42:48 UTC (rev 16051) +++ bioperl-live/trunk/Bio/Nexml/Factory.pm 2009-09-08 04:40:49 UTC (rev 16052) @@ -155,7 +155,10 @@ #continue creating an aln my $aln = Bio::SimpleAlign->new(); my $taxa = $matrix->get_taxa(); - $aln->{_Nexml_ID} = $caller->{_ID} . $taxa->get_xml_id; + + # TODO: should $caller->{_ID} always be defined? + # ATM, this is a Bio::AlignIO::nexml stream... + $aln->{_Nexml_ID} = $caller->{_ID}? $caller->{_ID} . $taxa->get_xml_id : $taxa->get_xml_id; my $aln_feats = Bio::SeqFeature::Generic->new(); $aln_feats->add_tag_value('NexmlIO_ID', $caller->{_ID}); @@ -239,7 +242,7 @@ foreach my $forest (@$forests) { - my $basename = $forest->get_name(); + my $basename = $forest->get_name() || ''; my $taxa = $forest->get_taxa(); my $taxa_label = $taxa->get_name(); my $taxa_id = $taxa->get_xml_id(); @@ -726,7 +729,7 @@ { #get sequence id associated with taxa to compare my $taxa_id = ($feat->get_tag_values('id'))[0] if $feat->has_tag('id'); - if ($name eq $taxa_id) + if ($taxa_id && $name eq $taxa_id) { my $taxon_name; if($feat->has_tag('my_taxon')) { From cjfields at dev.open-bio.org Tue Sep 8 00:47:29 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Tue, 8 Sep 2009 00:47:29 -0400 Subject: [Bioperl-guts-l] [16053] bioperl-live/trunk/Bio/Nexml/Factory.pm: more tweaks and more TODO' s to note; should all caller's IDs be defined? Getting warnings in some cases that they aren't... Message-ID: <200909080447.n884lT94005471@dev.open-bio.org> Revision: 16053 Author: cjfields Date: 2009-09-08 00:47:29 -0400 (Tue, 08 Sep 2009) Log Message: ----------- more tweaks and more TODO's to note; should all caller's IDs be defined? Getting warnings in some cases that they aren't... Modified Paths: -------------- bioperl-live/trunk/Bio/Nexml/Factory.pm Modified: bioperl-live/trunk/Bio/Nexml/Factory.pm =================================================================== --- bioperl-live/trunk/Bio/Nexml/Factory.pm 2009-09-08 04:40:49 UTC (rev 16052) +++ bioperl-live/trunk/Bio/Nexml/Factory.pm 2009-09-08 04:47:29 UTC (rev 16053) @@ -258,7 +258,10 @@ #set the taxa info of the tree $tree->add_tag_value('taxa_label', $taxa_label) if defined($taxa_label); $tree->add_tag_value('taxa_id', $taxa_id) if defined($taxa_id); - $tree->add_tag_value('_NexmlIO_ID', $caller->{_ID}); + + # TODO: should $caller->{_ID} always be defined? + # ATM, this is a Bio::TreeIO::nexml stream... + $tree->add_tag_value('_NexmlIO_ID', $caller->{_ID}) if $caller->{_ID}; my $taxon = $taxa->first; while($taxon) { @@ -395,8 +398,10 @@ -alphabet => $mol_type, -direct => 1, ); - $seq->{_Nexml_ID} = $caller->{_ID} . $taxa_id; - $seq->{_Nexml_matrix_ID} = $caller->{_ID} . $matrix->get_xml_id(); + # TODO: should $caller->{_ID} always be defined? + # ATM, this is a Bio::SeqIO::nexml stream... + $seq->{_Nexml_ID} = $caller->{_ID} ? $caller->{_ID} . $taxa_id : $taxa_id; + $seq->{_Nexml_matrix_ID} = $caller->{_ID} ? $caller->{_ID} . $matrix->get_xml_id() : $matrix->get_xml_id(); #check if taxon linked to sequence if so create feature to attach to alignment if ($taxa) { From bugzilla-daemon at portal.open-bio.org Tue Sep 8 08:20:31 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Tue, 8 Sep 2009 08:20:31 -0400 Subject: [Bioperl-guts-l] [Bug 2909] New: it is better to update the Bio::Tools::RepeatMasker module Message-ID: http://bugzilla.open-bio.org/show_bug.cgi?id=2909 Summary: it is better to update the Bio::Tools::RepeatMasker module Product: BioPerl Version: 1.6 branch Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: Core Components AssignedTo: bioperl-guts-l at bioperl.org ReportedBy: lengjingmao at gmail.com QAContact: lengjingmao at gmail.com The repeatmasker's output( .out) provide more information than which have not listed in the module, for example, query(left) , repeat (left), perc div, perc del, perc ins. these maybe useful for some users. Maybe it is better to update this module. -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Tue Sep 8 09:17:10 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Tue, 8 Sep 2009 09:17:10 -0400 Subject: [Bioperl-guts-l] [Bug 2909] it is better to update the Bio::Tools::RepeatMasker module In-Reply-To: Message-ID: <200909081317.n88DH9W8009511@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2909 cjfields at bioperl.org changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 ------- Comment #1 from cjfields at bioperl.org 2009-09-08 09:17 EST ------- This is an enhancement request; we can add this in depending on tuits. -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From lstein at dev.open-bio.org Tue Sep 8 10:59:47 2009 From: lstein at dev.open-bio.org (Lincoln Stein) Date: Tue, 8 Sep 2009 10:59:47 -0400 Subject: [Bioperl-guts-l] [16054] bioperl-live/trunk: fixed tiny typo Message-ID: <200909081459.n88ExlWX020660@dev.open-bio.org> Revision: 16054 Author: lstein Date: 2009-09-08 10:59:45 -0400 (Tue, 08 Sep 2009) Log Message: ----------- fixed tiny typo Modified Paths: -------------- bioperl-live/trunk/Bio/DB/SeqFeature/Store/Loader.pm bioperl-live/trunk/Changes bioperl-live/trunk/scripts/Bio-SeqFeature-Store/bp_seqfeature_load.PLS Modified: bioperl-live/trunk/Bio/DB/SeqFeature/Store/Loader.pm =================================================================== --- bioperl-live/trunk/Bio/DB/SeqFeature/Store/Loader.pm 2009-09-08 04:47:29 UTC (rev 16053) +++ bioperl-live/trunk/Bio/DB/SeqFeature/Store/Loader.pm 2009-09-08 14:59:45 UTC (rev 16054) @@ -73,7 +73,7 @@ -map_coords A code ref that will transform a list of ($ref,[$start1,$end1]...) coordinates into a list of ($newref,[$newstart1,$newend1]...) - -index_subfeatures Indicate true if subfeatures should be indexed. Default is false. + -index_subfeatures Indicate true if subfeatures should be indexed. Default is true. When you call new(), a connection to a Bio::DB::SeqFeature::Store database should already have been established and the database Modified: bioperl-live/trunk/Changes =================================================================== --- bioperl-live/trunk/Changes 2009-09-08 04:47:29 UTC (rev 16053) +++ bioperl-live/trunk/Changes 2009-09-08 14:59:45 UTC (rev 16054) @@ -37,7 +37,7 @@ * Bio::DB::SeqFeature (lots of updates and changes) - add Pg, SQLite, and faster BerkeleyDB implementations [lstein, scain] - bug 2835 - patch [Dan Bolser] - - bug RT 44535 - patch FeatureFleLoader [Cathy Gresham] + - bug RT 44535 - patch FeatureFileLoader [Cathy Gresham] * Bio::DB::SwissProt - bug 2764 - idtracker() method [cjfields, courtesy Neil Saunders] * Bio::Factory::FTLocationFactory Modified: bioperl-live/trunk/scripts/Bio-SeqFeature-Store/bp_seqfeature_load.PLS =================================================================== --- bioperl-live/trunk/scripts/Bio-SeqFeature-Store/bp_seqfeature_load.PLS 2009-09-08 04:47:29 UTC (rev 16053) +++ bioperl-live/trunk/scripts/Bio-SeqFeature-Store/bp_seqfeature_load.PLS 2009-09-08 14:59:45 UTC (rev 16054) @@ -19,6 +19,7 @@ my $USER = ''; my $PASS = ''; my $COMPRESS = 0; +my $INDEX_SUB = 1; GetOptions( 'dsn=s' => \$DSN, @@ -32,6 +33,7 @@ 'user=s' => \$USER, 'password=s' => \$PASS, 'zip' => \$COMPRESS, + 'S|subfeatures!' => \$INDEX_SUB, ) || die < $TMP, -fast => $FAST, -ignore_seqregion => $IGNORE_SEQREGION, + -index_subfeatures => $INDEX_SUB, ) or die "Couldn't create GFF3 loader"; From maj at dev.open-bio.org Tue Sep 8 11:14:58 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Tue, 8 Sep 2009 11:14:58 -0400 Subject: [Bioperl-guts-l] [16055] bioperl-live/trunk/Bio/DB: fixed test failure and warnings raised by cjf Message-ID: <200909081514.n88FEwnS021612@dev.open-bio.org> Revision: 16055 Author: maj Date: 2009-09-08 11:14:58 -0400 (Tue, 08 Sep 2009) Log Message: ----------- fixed test failure and warnings raised by cjf Modified Paths: -------------- bioperl-live/trunk/Bio/DB/HIV.pm bioperl-live/trunk/Bio/DB/Query/HIVQuery.pm Modified: bioperl-live/trunk/Bio/DB/HIV.pm =================================================================== --- bioperl-live/trunk/Bio/DB/HIV.pm 2009-09-08 14:59:45 UTC (rev 16054) +++ bioperl-live/trunk/Bio/DB/HIV.pm 2009-09-08 15:14:58 UTC (rev 16055) @@ -91,6 +91,7 @@ package Bio::DB::HIV; use strict; +use warnings; use vars qw( $LANL_BASE $LANL_MAP_DB $LANL_MAKE_SEARCH_IF $LANL_SEARCH ); # Object preamble - inherits from Bio::DB::WebDBSeqI @@ -380,15 +381,18 @@ $self->throw(-class=>'Bio::Root::BadParameter', -text=>'No data found in repsonse', -value=>%args) unless (@data); - shift @data; # number-returned line + my $l; + do { + $l = shift @data; + } while ( $l !~ /Number/ ); # number-returned line @cols = split( /\t/, shift @data); # if Accession column is present, get_Stream_by_acc was called # otherwise, return lanl ids - ($idkey) = grep /SE.id/, @cols unless ($idkey) = grep /Accession/, @cols; + ($idkey) = grep /SE.id/i, @cols unless ($idkey) = grep /Accession/i, @cols; $self->throw(-class=>"Bio::ResponseProblem::Exception", -text=>"Trouble with column headers in LANL response", - -value=>\@cols) unless $idkey; + -value=>join(' ', at cols)) unless $idkey; foreach (@data) { chop; Modified: bioperl-live/trunk/Bio/DB/Query/HIVQuery.pm =================================================================== --- bioperl-live/trunk/Bio/DB/Query/HIVQuery.pm 2009-09-08 14:59:45 UTC (rev 16054) +++ bioperl-live/trunk/Bio/DB/Query/HIVQuery.pm 2009-09-08 15:14:58 UTC (rev 16055) @@ -523,6 +523,7 @@ sub add_annotations_for_id{ my $self = shift; my ($id, $ac) = @_; + $id = "" unless defined $id; # avoid warnings $ac = new Bio::Annotation::Collection unless defined $ac; $self->throw(-class=>'Bio::Root::BadParameter' -text=>'Bio::Annotation::Collection required at arg 2', @@ -840,6 +841,7 @@ sub add_id { my $self = shift; my $id = shift; + $id = "" unless defined $id; # avoid warnings ${$self->{'ids'}}{$id}++; return $id; } @@ -1440,7 +1442,8 @@ -value=>""); foreach my $rsp (@{$self->_lanl_response}) { @data = split(/\r|\n/, $rsp->content); - $numseq += ( shift(@data) =~ /Number.*:\s([0-9]+)/ )[0]; + my $line = shift @data; + $numseq += ( $line =~ /Number.*:\s([0-9]+)/ )[0]; @cols = split(/\t/, shift @data); # mappings from column headings to annotation keys From bugzilla-daemon at portal.open-bio.org Wed Sep 9 12:05:20 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Wed, 9 Sep 2009 12:05:20 -0400 Subject: [Bioperl-guts-l] [Bug 2911] New: SimpleAlign select doc inconstistency Message-ID: http://bugzilla.open-bio.org/show_bug.cgi?id=2911 Summary: SimpleAlign select doc inconstistency Product: BioPerl Version: 1.6 branch Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: Core Components AssignedTo: bioperl-guts-l at bioperl.org ReportedBy: bernd at bio.vu.nl Just noticed that the Bio::SimpleAlign pdoc has an inconstistency (at least since bioperl 1.5.2, but also present on http://doc.bioperl.org/releases/bioperl-1.6.0/. The SYNOPSIS states: $mini_aln = $aln->select_noncont(1,3,5,7,11); # get single columns But the method description for select(_noncont) states: Creates a new alignment from a subset of sequences. So "# get single colums" should be "# get single sequences" (?) -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Wed Sep 9 12:10:27 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Wed, 9 Sep 2009 12:10:27 -0400 Subject: [Bioperl-guts-l] [Bug 2912] New: Some of the scripts linked here are not found Message-ID: http://bugzilla.open-bio.org/show_bug.cgi?id=2912 Summary: Some of the scripts linked here are not found Product: BioPerl Version: 1.6 branch Platform: PC URL: http://http://www.bioperl.org/wiki/Bioperl_scripts OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: Documentation AssignedTo: bioperl-guts-l at bioperl.org ReportedBy: bernd at bio.vu.nl The bioperl scripts section at http://www.bioperl.org/wiki/Bioperl_scripts is really handy for short examples. However, it quite a number of scripts cannot be found anymore and return errors: For example for the first link (scripts/install_bioperl_scripts.pl) Filesystem has no item: File not found: revision 15800, path '/bioperl-live/trunk/scripts/install_bioperl_scripts.pl' at /usr/lib/perl5/site_perl/5.8.8/SVN/Web/action.pm line 245 Also "no item" for e.g. http://code.open-bio.org/svnweb/index.cgi/bioperl/view/bioperl-live/trunk/scripts/Bio-DB-GFF/pg_bulk_load_gff.PLS Possible the Bio::Graphics example scripts could be linked to the new Bio::Graphics repo? The examples are quite informative. Cheers, Bernd -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From maj at dev.open-bio.org Wed Sep 9 13:00:07 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Wed, 9 Sep 2009 13:00:07 -0400 Subject: [Bioperl-guts-l] [16056] bioperl-dev/branches/bioperl-mode-multipath-branch: updates, unit tests (really! see 'test.el' Message-ID: <200909091700.n89H070R002366@dev.open-bio.org> Revision: 16056 Author: maj Date: 2009-09-09 13:00:06 -0400 (Wed, 09 Sep 2009) Log Message: ----------- updates, unit tests (really! see 'test.el' by wang liang included here), and test paths... Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el Added Paths: ----------- bioperl-dev/branches/bioperl-mode-multipath-branch/test/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/bioperl-mode-test.el bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/Nexml/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/Nexml/Factory.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/FTHelper.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/Handler/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/Handler/GenericRichSeqHandler.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/MultiFile.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/abi.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/ace.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/agave.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/alf.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/asciitree.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/bsml.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/bsml_sax.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/chadoxml.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/chaos.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/chaosxml.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/ctf.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/embl.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/embldriver.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/entrezgene.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/excel.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/exp.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/fasta.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/game/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/game/featHandler.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/game/gameHandler.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/game/gameSubs.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/game/gameWriter.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/game/seqHandler.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/game.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/tinyseq/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/tinyseq/tinyseqHandler.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO/tinyseq.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-1/Bio/SeqIO.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Ace.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Biblio/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Biblio/biofetch.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Biblio/eutils.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Biblio/soap.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/BiblioI.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/BioFetch.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/CUTG.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/DBFetch.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/EMBL.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/EUtilities.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/EntrezGene.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Expression/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Expression/geo.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Expression.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Failover.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Fasta.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/FileCache.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Flat/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Flat/BDB/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Flat/BDB/embl.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Flat/BDB/fasta.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Flat/BDB/genbank.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Flat/BDB/swiss.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Flat/BDB.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Flat/BinarySearch.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Flat.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GFF/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GFF/Aggregator.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GFF/Featname.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GFF/Feature.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GFF/Homol.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GFF/RelSegment.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GFF/Segment.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GFF/Typename.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GFF/Util/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GFF/Util/Binning.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GFF/Util/Rearrange.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GFF.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GenBank.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GenPept.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/GenericWebAgent.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/HIV/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/HIV/HIVAnnotProcessor.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/HIV/HIVQueryHelper.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/HIV/lanl-schema.xml bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/HIV.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/InMemoryCache.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/LocationI.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/MeSH.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/NCBIHelper.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Qual.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Query/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Query/GenBank.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Query/HIVQuery.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Query/WebQuery.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/QueryI.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/RandomAccessI.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/RefSeq.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/ReferenceI.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Registry.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/NormalizedFeature.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/NormalizedFeatureI.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/NormalizedTableFeatureI.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/Segment.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/Store/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/Store/DBI/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/Store/DBI/Iterator.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/Store/DBI/Pg.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/Store/DBI/SQLite.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/Store/DBI/mysql.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/Store/GFF2Loader.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/Store/GFF3Loader.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature/Store.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqFeature.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqHound.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqI.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SeqVersion.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/SwissProt.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/TFBS/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/TFBS/transfac_pro.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/TFBS.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/Universal.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/UpdateableSeqI.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/DB/WebDBSeqI.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/Nexml/ bioperl-dev/branches/bioperl-mode-multipath-branch/test/test-path-2/Bio/Nexml/Factory.pm bioperl-dev/branches/bioperl-mode-multipath-branch/test/test.el Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-08 15:14:58 UTC (rev 16055) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/site-lisp/bioperl-mode.el 2009-09-09 17:00:06 UTC (rev 16056) @@ -296,105 +296,6 @@ ;; ;; -;; list getters -;; - -(defun bioperl-method-names (module &optional as-alist n) - - "Returns a list of method names as given in the pod of MODULE. -MODULE is in double-colon format. If AS-ALIST is t, return an -alist with elts as (NAME . nil). N is an index associated with a -component of `bioperl-module-path'. - -This function looks first to see if methods for MODULE are -already loaded in `bioperl-method-pod-cache'; if not, calls -`bioperl-slurp-methods-from-pod'." - (unless (stringp module) - (error "String required at arg MODULE")) - (unless (bioperl-path-from-perl module nil n) - (error "Module specified by MODULE not found in installation")) - ;; check the cache; might get lucky... - (let ( (ret) ) - (setq ret - (if (string-equal module bioperl-cached-module) - (progn - (mapcar 'car bioperl-method-pod-cache) - ;; path handling... - ) - (mapcar 'car (bioperl-slurp-methods-from-pod module n)))) - ;; fix alist for path handling?? - (if as-alist - (mapcar (lambda (x) (list x nil)) ret) - ret))) - - -(defun bioperl-module-names (module-dir &optional retopt as-alist) - "Returns a list of modules contained in the directory indicated by MODULE-DIR. -MODULE-DIR is in double-colon format. Optional RETOPT: nil, -return module names only (default); t, return directory names -only; other, return all names as a flat list. Optional AS-ALIST: -if t, return an alist with elts (NAME . PATH_STRING) (when used in -completing functions, for back-compat with Emacs 21). - - This function is responsible for the lazy loading of the module -names cache: it will look first in `bioperl-module-names-cache'; if -the MODULE-DIR is not available, -`bioperl-add-module-names-to-cache' will be called." - (let* ( - (module-components (split-string module-dir "::" t)) - (unlist (lambda (x) (if (listp x) (car x) x)) ) - (choose-dirs (lambda (x) (if (listp (cdr x)) x nil)) ) - (choose-mods (lambda (x) (if (listp (cdr x)) nil x)) ) - (ret) - (alists (deep-assoc-all module-components bioperl-module-names-cache)) - (alist) - ) - ;; here pick the directory alist - (if (listp (cdr (car alists))) - (setq alist (car alists)) - (setq alist (elt alists 1))) - - (if (and alist (cdr alist)) - (cond - ( (not (booleanp retopt)) - (if (stringp (cdr alist)) - (setq ret alist) - (setq ret (cdr alist)))) - ((not retopt) - (if (stringp (cdr alist)) - (setq ret alist) - (setq ret (delete nil (mapcar choose-mods (cdr alist)))) - )) - ( retopt - (if (stringp (cdr alist)) - (setq ret nil) - (setq ret (delete nil (mapcar choose-dirs (cdr alist)))) - ))) - (if (bioperl-add-module-names-to-cache module-dir) - (progn - (setq alists (deep-assoc-all module-components bioperl-module-names-cache)) - (setq alist (if (listp (cdr (elt alists 0))) (elt alists 0) (elt alists 1))) - (cond - ( (not (booleanp retopt)) - (setq ret - (cdr alist))) - ((not retopt) - (setq ret - (delete nil (mapcar choose-mods - (cdr alist))))) - ( retopt - (setq ret - (delete nil (mapcar choose-dirs - (cdr alist))))) - nil)))) - (if (not as-alist) - (if (stringp (cdr ret)) - (car ret) - (mapcar 'car ret)) - ret))) - - -;; ;; pod slurpers ;; @@ -541,7 +442,7 @@ (pmfile (bioperl-path-from-perl module nil n)) ) (unless pmfile - (error (concat "Module specified by MODULE not found in installation at path component " (number-to-string (if n n 0)) ".\nCheck contents of `bioperl-module-path' and call `bioperl-clear-names-cache'.") )) + (error (concat "Module specified by MODULE not found in installation at path component " (number-to-string (if n n 0)) ".\nCheck contents of `bioperl-module-path' and call `bioperl-clear-module-cache'.") )) (let ( (method nil) (pod-key nil) @@ -615,6 +516,101 @@ nil ) )))) ;; +;; list getters +;; + +(defun bioperl-method-names (module &optional as-alist n) + + "Returns a list of method names as given in the pod of MODULE. +MODULE is in double-colon format. If AS-ALIST is t, return an +alist with elts as (NAME . nil). N is an index associated with a +component of `bioperl-module-path'. + +This function looks first to see if methods for MODULE are +already loaded in `bioperl-method-pod-cache'; if not, calls +`bioperl-slurp-methods-from-pod'." + (unless (stringp module) + (error "String required at arg MODULE")) + (unless (bioperl-path-from-perl module nil n) + (error "Module specified by MODULE not found in installation")) + ;; check the cache; might get lucky... + (let ( (ret) ) + (setq ret + (if (string-equal module bioperl-cached-module) + (progn + (mapcar 'car bioperl-method-pod-cache) + ;; path handling... + ) + (mapcar 'car (bioperl-slurp-methods-from-pod module n)))) + ;; fix alist for path handling?? + (if as-alist + (mapcar (lambda (x) (list x nil)) ret) + ret))) + + +(defun bioperl-module-names (module-dir &optional retopt as-alist) + "Returns a list of modules contained in the directory indicated by MODULE-DIR. +MODULE-DIR is in double-colon format. Optional RETOPT: nil, +return module names only (default); t, return directory names +only; other, return all names as a flat list. Optional AS-ALIST: +if t, return an alist with elts (NAME . PATH_STRING) (when used in +completing functions). This function checks all paths specified +in `bioperl-module-path'. + + + This function is responsible for the lazy loading of the module +names cache: it will look first in `bioperl-module-names-cache'; +if the MODULE-DIR is not available, +`bioperl-add-module-names-to-cache' will be called." + (let* ( + (module-components (split-string module-dir "::" t)) + (unlist (lambda (x) (if (listp x) (car x) x)) ) + (choose-dirs (lambda (x) (if (listp (cdr x)) x nil)) ) + (choose-mods (lambda (x) (if (listp (cdr x)) nil x)) ) + (ret) (i) + (pths (split-string bioperl-module-path path-separator)) + (alists) (alist) + ) + ;; add to cache + (setq i 0) + (while (< i (length pths)) + (bioperl-add-module-names-to-cache module-dir i) + (setq i (1+ i))) + ;; search + (setq alists (deep-assoc-all module-components bioperl-module-names-cache)) + ;; here pick the directory alist + (setq alist (if (stringp (cdr (elt alists 0))) + (elt alists 1) (elt alists 0))) + ;; + ;; don't short circuit trying to add-to-cache here; + ;; need to add paths not already present. + ;; + (if (and alist (cdr alist)) + (cond + ( (not (booleanp retopt)) + (if (stringp (cdr alist)) + (setq ret alist) + (setq ret (cdr alist)))) + ((not retopt) + (if (stringp (cdr alist)) + (setq ret alist) + (setq ret (delete nil (mapcar choose-mods (cdr alist)))) + )) + ( retopt + (if (stringp (cdr alist)) + (setq ret nil) + (setq ret (delete nil (mapcar choose-dirs (cdr alist)))) + )))) + (if (not ret) + nil + (if (not as-alist) + (if (stringp (cdr ret)) + (car ret) + (mapcar 'car ret)) + ret)))) + + +;; ;; directory slurpers ;; @@ -737,7 +733,11 @@ (setq modules (bioperl-slurp-module-names module-string n)) (if (not modules) nil ; fail - (setcdr cache-ins-pos modules ) + (let ( (cache-item) (uniq-modules) ) + (while (setq cache-item (pop modules)) + (if (or (null (cdr cache-ins-pos)) (not (member cache-item (cdr cache-ins-pos)))) + (push cache-item uniq-modules))) + (setcdr cache-ins-pos (append (cdr cache-ins-pos) uniq-modules ))) (bioperl-anastomose keys module-string (cdr cache-ins-pos) n) t)))) @@ -795,7 +795,7 @@ "Look for something like a module identifier at point, and return it." (interactive) (let ( - (found (thing-at-point-looking-at "Bio::[a-zA-Z_:]+")) + (found (thing-at-point-looking-at "Bio::[a-zA-Z0-9_:]+")) (module nil) (pth nil) ) @@ -822,7 +822,7 @@ (error "Path index out of bounds at arg N")) (unless (file-exists-p (concat module-path "/Bio")) (error (concat "Bio modules not present in path component" module-path ))) - (setq found (thing-at-point-looking-at "Bio::[a-zA-Z_:]+")) + (setq found (thing-at-point-looking-at "Bio::[a-zA-Z0-9_:]+")) (if (not found) nil (setq module (apply 'buffer-substring (match-data))) @@ -886,7 +886,7 @@ \(namespace nil) or nil. Finally, if the namespace portion of MODULE exists, but the module -specified by MODULE does not, (namespace nil) is returned. + specified by MODULE does not, (namespace nil) is returned. N specifies the index of the desired bioperl-module-path component. " (unless (or (not module) (stringp module)) @@ -1141,7 +1141,7 @@ (defun bioperl-namespace-completion-function (str pred flag) "A custom completion function for bioperl-mode. -Allows the lazy build of the `bioperl-module-names-cache'." +Allows the lazy build of the `bioperl-module-names-cache' via `bioperl-make-collection' and `bioperl-module-names'." (if (not pred) (setq pred (lambda (x) (setq x (if (listp x) (car x) x) ) (if (string-match "[a-zA-Z0-9_:]+" x) t nil)) @@ -1182,7 +1182,11 @@ (defun bioperl-make-collection (module-dir &optional retopt) "Create a completion collection for MODULE-DIR. MODULE-DIR is in double-colon format, possibly with two trailing -colons. RETOPT is as for `bioperl-module-names'." +colons. RETOPT is as for `bioperl-module-names'. + +This function searches all paths specified in +`bioperl-module-path'." + ;; handle the boundary (if (or (not module-dir) (not (string-match ":" module-dir))) '("Bio::") @@ -1199,8 +1203,8 @@ ;; trim back to last :: (setq module-dir (progn @@ Diff output truncated at 10000 characters. @@ From maj at dev.open-bio.org Wed Sep 9 13:50:46 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Wed, 9 Sep 2009 13:50:46 -0400 Subject: [Bioperl-guts-l] [16057] bioperl-dev/tags/bioperl-mode-pre-multipath-merge/: tag the initially released version Message-ID: <200909091750.n89Hok3B002750@dev.open-bio.org> Revision: 16057 Author: maj Date: 2009-09-09 13:50:46 -0400 (Wed, 09 Sep 2009) Log Message: ----------- tag the initially released version Added Paths: ----------- bioperl-dev/tags/bioperl-mode-pre-multipath-merge/ Copied: bioperl-dev/tags/bioperl-mode-pre-multipath-merge (from rev 16056, bioperl-dev/trunk/ide/emacs/bioperl-mode) From maj at dev.open-bio.org Wed Sep 9 13:58:32 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Wed, 9 Sep 2009 13:58:32 -0400 Subject: [Bioperl-guts-l] [16058] bioperl-dev/trunk/ide/emacs/bioperl-mode: merge from branches/ bioperl-mode-multipath-branch Message-ID: <200909091758.n89HwWOC002786@dev.open-bio.org> Revision: 16058 Author: maj Date: 2009-09-09 13:58:32 -0400 (Wed, 09 Sep 2009) Log Message: ----------- merge from branches/bioperl-mode-multipath-branch (multiple Bio paths separated by OS path seps, unit tests via test.el, test trees, blank the .tar) Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el Added Paths: ----------- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 bioperl-dev/trunk/ide/emacs/bioperl-mode/test/ Removed Paths: ------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 Deleted: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar =================================================================== (Binary files differ) Added: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar =================================================================== Deleted: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-09 17:50:46 UTC (rev 16057) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-09 17:58:32 UTC (rev 16058) @@ -1 +0,0 @@ -439b68662e94bfaec2c679ffd230b4e8 *bioperl-mode.tar Added: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 =================================================================== Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-09 17:50:46 UTC (rev 16057) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-09 17:58:32 UTC (rev 16058) @@ -159,26 +159,29 @@ initializaton." (let ( (old-exec-path exec-path) - (pth nil) ) - ;; safe path - (if (or (not (boundp 'bioperl-mode-safe-flag)) - bioperl-mode-safe-flag) - (setq exec-path bioperl-safe-PATH)) - ;; ask perl first... - (setq pth - (with-temp-buffer - (call-process - "perl" nil t t - "-MConfig" "-e" "print $Config{sitelib}") - (goto-char (point-min)) - (thing-at-point 'line) - )) - ;; reset path - (setq exec-path old-exec-path) - ;; file name port issue - unixize - (setq pth (replace-regexp-in-string "\\\\" "/" pth)) - (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil)) - + (pth) ) + ;; ask BPMODE_PATH first... + (setq pth (getenv "BPMODE_PATH")) + ;; then ask Perl... + (unless pth + ;; safe path + (if (or (not (boundp 'bioperl-mode-safe-flag)) + bioperl-mode-safe-flag) + (setq exec-path bioperl-safe-PATH)) + + (setq pth + (with-temp-buffer + (call-process + "perl" nil t t + "-MConfig" "-e" "print $Config{sitelib}") + (goto-char (point-min)) + (thing-at-point 'line) + )) + ;; reset exec-path + (setq exec-path old-exec-path) + ;; file name port issue - unixize + (setq pth (replace-regexp-in-string "\\\\" "/" pth)) + (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil))) ;; try the environment (unless pth (let ( @@ -199,7 +202,6 @@ (setq pth (nth 1 (split-string (pwd)))) ;; unixize (setq pth (replace-regexp-in-string "\\\\" "/" pth)) - (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil)) ) (if pth Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-09 17:50:46 UTC (rev 16057) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-09 17:58:32 UTC (rev 16058) @@ -1,5 +1,7 @@ ;; $Id$ +;; use multiple paths in bioperl-module-path + ;; ;; Bioperl minor (haha!) mode ;; @@ -32,11 +34,6 @@ ;; ;; - compile to byte code ;; -;; back-compatibility issue -;; - require a completing-read that works with emacs 21 -;; * no "test-completion" metho -;; * completing-read COLLECTION of 22 is TABLE of 21, -;; which must be an alist ;; issues ;; - bioperl-view-mode isn't always getting its keymap ;; - missing tool in tool-bar?? @@ -97,9 +94,6 @@ (require 'bioperl-skel) (require 'bioperl-init) -;; (load-file "~/bioperl/docproj/bioperl-mode/bioperl-init.el") -;; (load-file "~/bioperl/docproj/bioperl-mode/bioperl-skel.el") - (defconst bioperl-mode-revision "$Id$" "The revision string of bioperl-mode.el") @@ -146,8 +140,9 @@ (defcustom bioperl-module-path nil "Local path to Bioperl modules. -On init, set is attempted by `bioperl-find-module-path'" - :type 'file +On init, set is attempted by `bioperl-find-module-path' Can indicate multiple search paths; define as PATH in your OS. The environment variable BPMODE_PATH will override everything." +;; better type 'choice; do later + :type 'string :initialize 'bioperl-find-module-path :group 'bioperl) @@ -168,7 +163,7 @@ "Contains the filepath whose method pod information is currently stored in `bioperl-method-pod-cache'.") -(defvar bioperl-module-names-cache nil +(defvar bioperl-module-names-cache '( ("Bio" . nil) ) "Storage for an alist tree structure of available module names. Structure follows the Bio library tree: ( (\"Bio\" \"Seq\" ( \"SeqIO\" \"fasta\" \"msf\" ...) \"PrimarySeqI\" ... ) ) @@ -178,7 +173,7 @@ ;; User-interface functions ;; -(defun bioperl-insert-module (namespace module &optional beg pt end) +(defun bioperl-insert-module (namespace module &optional dummy beg pt end) "Insert BioPerl module declaration interactively, using completion." (interactive (let* ( @@ -213,8 +208,11 @@ ;; pod viewers ;; -(defun bioperl-view-pod (module) - "View the full pod for a BioPerl module." +;; TODO: refactor bioperl-view-pod to take separate nmspc mod parms... +(defun bioperl-view-pod (module &optional n) + "View the full pod for a BioPerl module. Use completion facilities to browse interactively. +MODULE is in double-colon format. N is an index associated with a +component of `bioperl-module-path'." (interactive (let ( (mod (bioperl-completing-read (bioperl-module-at-point) nil t "[pod] ")) @@ -223,11 +221,12 @@ (list (apply 'concat (elt mod 0) (if (elt mod 1) (list "::" (elt mod 1)) - (signal 'quit t)))))) - (bioperl-view-full-pod module)) + (signal 'quit t))) (car (last mod))))) + (bioperl-view-full-pod module n)) -(defun bioperl-view-pod-method (namespace module method) - "View desired method pod interactively. Use completion facilities to browse." +(defun bioperl-view-pod-method (namespace module method &optional n) + "View desired method pod interactively. Use completion facilities to browse interactively. +N is an index associated with a component of `bioperl-module-path'." (interactive (let ( (cr (bioperl-completing-read (bioperl-module-at-point) t nil "[pod mth] ") ) @@ -236,15 +235,16 @@ cr)) (if (not method) (signal 'quit t)) (let ( - ( cache-pos (if method (assoc method bioperl-method-pod-cache) nil) ) + ( cache-pos (if method (assoc-string method bioperl-method-pod-cache t) nil) ) ) (if (not cache-pos) (message "No such method") (bioperl-render-method-pod-from-cons cache-pos)) )) -(defun bioperl-view-pod-synopsis (module) - "View the pod synopsis for a Bioperl module." +(defun bioperl-view-pod-synopsis (module &optional n) + "View the pod synopsis for a Bioperl module. +N is an index associated with a component of `bioperl-module-path'." (interactive (let ( (mod (bioperl-completing-read (bioperl-module-at-point) nil t "[pod syn] ")) @@ -253,11 +253,12 @@ (list (apply 'concat (elt mod 0) (if (elt mod 1) (list "::" (elt mod 1)) - (signal 'quit t) ))))) - (bioperl-view-pod-section module "SYNOPSIS")) + (signal 'quit t) )) (car (last mod))))) + (bioperl-view-pod-section module "SYNOPSIS" n)) -(defun bioperl-view-pod-description (module) - "View the pod synopsis for a BioPerl module." +(defun bioperl-view-pod-description (module &optional n) + "View the pod synopsis for a BioPerl module. +N is an index associated with a component of `bioperl-module-path'." (interactive (let ( (mod (bioperl-completing-read (bioperl-module-at-point) nil t "[pod dsc] " )) @@ -266,11 +267,12 @@ (list (apply 'concat (elt mod 0) (if (elt mod 1) (list "::" (elt mod 1)) - (signal 'quit t)))))) - (bioperl-view-pod-section module "DESCRIPTION")) + (signal 'quit t))) (car (last mod))))) + (bioperl-view-pod-section module "DESCRIPTION" n)) -(defun bioperl-view-pod-appendix (module) - "View the pod appendix (containing individual method information) for a Bioperl module." +(defun bioperl-view-pod-appendix (module &optional n) + "View the pod appendix (containing individual method information) for a Bioperl module. +N is an index associated with a component of `bioperl-module-path'." (interactive (let ( (mod (bioperl-completing-read (bioperl-module-at-point) nil t "[pod apx] ")) @@ -279,8 +281,8 @@ (list (apply 'concat (elt mod 0) (if (elt mod 1) (list "::" (elt mod 1)) - (signal 'quit t)))))) - (bioperl-view-pod-section module "APPENDIX")) + (signal 'quit t))) (car (last mod))))) + (bioperl-view-pod-section module "APPENDIX" n)) ;; "uninstall..." @@ -294,86 +296,10 @@ ;; ;; -;; list getters -;; - -(defun bioperl-method-names (module &optional as-alist) - - "Returns a list of method names as given in the pod of MODULE. -MODULE is in double-colon format. If AS-ALIST is t, return an -alist with elts as (NAME . nil). - -This function looks first to see if methods for MODULE are -already loaded in `bioperl-method-pod-cache'; if not, calls -`bioperl-slurp-methods-from-pod'." - (unless (stringp module) - (error "String required at arg MODULE")) - (unless (bioperl-path-from-perl module) - (error "Module specified by MODULE not found in installation")) - ;; check the cache; might get lucky... - (let ( (ret) ) - (setq ret - (if (string-equal module bioperl-cached-module) - (mapcar 'car bioperl-method-pod-cache) - (mapcar 'car (bioperl-slurp-methods-from-pod module)))) - (if as-alist - (mapcar (lambda (x) (list x nil)) ret) - ret))) - - -(defun bioperl-module-names (module-dir &optional retopt as-alist) - "Returns a list of modules contained in the directory indicated by MODULE-DIR. -MODULE-DIR is in double-colon format. Optional RETOPT: nil, -return module names only (default); t, return directory names @@ Diff output truncated at 10000 characters. @@ From maj at dev.open-bio.org Wed Sep 9 14:01:39 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Wed, 9 Sep 2009 14:01:39 -0400 Subject: [Bioperl-guts-l] [16059] bioperl-dev/branches/bioperl-mode-multipath-branch/dist: retar the trunk distribution Message-ID: <200909091801.n89I1dwJ002886@dev.open-bio.org> Revision: 16059 Author: maj Date: 2009-09-09 14:01:39 -0400 (Wed, 09 Sep 2009) Log Message: ----------- retar the trunk distribution (includes the multipath merge) edit package-me for use with dev.open-bio.org ancient tar. Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 bioperl-dev/branches/bioperl-mode-multipath-branch/dist/package-me Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar =================================================================== (Binary files differ) Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 2009-09-09 17:58:32 UTC (rev 16058) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 2009-09-09 18:01:39 UTC (rev 16059) @@ -1 +1 @@ -a7bd011a2bfaa7b7eda02bcfbeecda15 bioperl-mode.tar +0279cc3dd4e8f6a166d615a7f787981f bioperl-mode.tar Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/package-me =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/package-me 2009-09-09 17:58:32 UTC (rev 16058) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/dist/package-me 2009-09-09 18:01:39 UTC (rev 16059) @@ -1,3 +1,3 @@ #!/bin/bash -tar -cvf bioperl-mode.tar --directory=.. --exclude=#*.* --exclude=*.*~ --exclude=.svn --exclude=dist . +tar -cvf bioperl-mode.tar --directory=.. --exclude=#*.* --exclude=*.*~ --exclude=.svn --exclude=dist --exclude=test . md5sum bioperl-mode.tar > bioperl-mode.tar.md5 From maj at dev.open-bio.org Wed Sep 9 14:11:04 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Wed, 9 Sep 2009 14:11:04 -0400 Subject: [Bioperl-guts-l] [16060] bioperl-dev/trunk/ide/emacs/bioperl-mode: keyword subst Message-ID: <200909091811.n89IB4QE003166@dev.open-bio.org> Revision: 16060 Author: maj Date: 2009-09-09 14:11:04 -0400 (Wed, 09 Sep 2009) Log Message: ----------- keyword subst Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 Added Paths: ----------- bioperl-dev/trunk/ide/emacs/bioperl-mode/test/SKIP Property Changed: ---------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/test/bioperl-mode-test.el Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar 2009-09-09 18:01:39 UTC (rev 16059) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar 2009-09-09 18:11:04 UTC (rev 16060) @@ -0,0 +1,2454 @@ +./ +static char * bpmode_tool_dis_xpm[] = { +"24 24 85 1", +" c None", +". c #555555", +"+ c #A9A9A9", +"@ c #AAAAAA", +"# c #A3A3A3", +"$ c #9A9A9A", +"% c #ABABAB", +"& c #ACACAC", +"* c #A8A8A8", +"= c #A7A7A7", +"- c #A6A6A6", +"; c #A5A5A5", +"> c #9E9E9E", +", c #383838", +"' c #484848", +") c #454545", +"! c #1B1B1B", +"~ c #9B9B9B", +"{ c #A4A4A4", +"] c #A2A2A2", +"^ c #A1A1A1", +"/ c #959595", +"( c #1A1A1A", +"_ c #858585", +": c #717171", +"< c #505050", +"[ c #A0A0A0", +"} c #818181", +"| c #262626", +"1 c #878787", +"2 c #727272", +"3 c #545454", +"4 c #767676", +"5 c #4C4C4C", +"6 c #141414", +"7 c #9F9F9F", +"8 c #797979", +"9 c #0D0D0D", +"0 c #181818", +"a c #4D4D4D", +"b c #7D7D7D", +"c c #494949", +"d c #252525", +"e c #9D9D9D", +"f c #7B7B7B", +"g c #0E0E0E", +"h c #737373", +"i c #242424", +"j c #6A6A6A", +"k c #8C8C8C", +"l c #7F7F7F", +"m c #616161", +"n c #313131", +"o c #202020", +"p c #0F0F0F", +"q c #343434", +"r c #6E6E6E", +"s c #828282", +"t c #9C9C9C", +"u c #999999", +"v c #989898", +"w c #222222", +"x c #585858", +"y c #5E5E5E", +"z c #969696", +"A c #888888", +"B c #626262", +"C c #434343", +"D c #939393", +"E c #979797", +"F c #4F4F4F", +"G c #272727", +"H c #949494", +"I c #8D8D8D", +"J c #929292", +"K c #686868", +"L c #868686", +"M c #5D5D5D", +"N c #919191", +"O c #8E8E8E", +"P c #7A7A7A", +"Q c #8F8F8F", +"R c #676767", +"S c #8A8A8A", +"T c #909090", +" ", +" ", +" .................... ", +" .++++@@@#$@%%&%*=-;. ", +" .*+@@@@>,'@@%@=-;##. ", +" .+++@@@)!~%%@-=;{]^. ", +" . at ++@@/(_ at -;:<;{]^[. ", +" . at +@@@}|123456{][77. ", +" . at ++@@890ab7cd][7>e. ", +" .@@@@@fgh#=-ij[7>~~. ", +" .%%%@%_|kl:mn[7e~$$. ", +" .@@@%%~opqr,s7>t$uv. ", +" .%+%%@*'w>xy7>t$vzz. ", +" .%%%@*-A9BCDe~$vEz/. ", +" .@%@*=-{FGAet~vzzHD. ", +" .&@*=;{z3FI~~uz//JJ. ", +" .%*-;{vKbLMkvEzHJNN. ", +" .+=;#]EOePw/yRjxSJNQOT. ", +" .-#^[[>~$/z/82QOOOQ. ", +" .-#^[7e~$vzHHJTQQQN. ", +" .................... ", +" ", +" "}; + +static char * bpmode_tool_xpm[] = { +"24 24 280 2", +" c None", +". c #000000", +"+ c #9DFB57", +"@ c #9AF85A", +"# c #96F65C", +"$ c #93F45F", +"% c #90F262", +"& c #8EEF66", +"* c #8CED68", +"= c #84E166", +"- c #7AD262", +"; c #83E371", +"> c #83E274", +", c #7FE176", +"' c #7CDE7A", +") c #7ADC7D", +"! c #77DA80", +"~ c #76D984", +"{ c #76D787", +"] c #74D78C", +"^ c #99F859", +"/ c #96F65D", +"( c #93F460", +"_ c #92F262", +": c #8EEF65", +"< c #8BEC68", +"[ c #7FDA62", +"} c #2C4D24", +"| c #386030", +"1 c #81E173", +"2 c #7FDF75", +"3 c #7DDD79", +"4 c #7ADB7D", +"5 c #76D980", +"6 c #75D884", +"7 c #74D788", +"8 c #73D38A", +"9 c #72D48F", +"0 c #97F65D", +"a c #93F360", +"b c #90F062", +"c c #8DEC69", +"d c #89E96B", +"e c #365E2C", +"f c #152412", +"g c #75CE68", +"h c #7FDF77", +"i c #7ADA7C", +"j c #75D77D", +"k c #75D984", +"l c #73D58C", +"m c #71D38F", +"n c #6ED494", +"o c #90F162", +"p c #8EEE65", +"q c #89EA6B", +"r c #76CA60", +"s c #142311", +"t c #64B05A", +"u c #7EDF76", +"v c #79D776", +"w c #76D477", +"x c #509356", +"y c #38683F", +"z c #74D787", +"A c #73D58B", +"B c #71D48F", +"C c #6FD393", +"D c #6FD299", +"E c #91F163", +"F c #8CEB69", +"G c #87E86D", +"H c #64AD55", +"I c #1D331A", +"J c #64B15E", +"K c #529450", +"L c #3C6D3D", +"M c #549959", +"N c #35633C", +"O c #0E1A10", +"P c #71D38E", +"Q c #6FD293", +"R c #6ED197", +"S c #6ED09D", +"T c #8FEE66", +"U c #8CEB68", +"V c #89E96A", +"W c #86E76D", +"X c #85E471", +"Y c #5CA052", +"Z c #0A1209", +"` c #112011", +" . c #376338", +".. c #59A25F", +"+. c #70CE7E", +"@. c #335F3C", +"#. c #1A3120", +"$. c #6FD192", +"%. c #6ED097", +"&. c #6DCF9C", +"*. c #6BCFA0", +"=. c #8AE96B", +"-. c #86E86D", +";. c #84E470", +">. c #82E173", +",. c #5CA255", +"'. c #0B130A", +"). c #529454", +"!. c #74D37C", +"~. c #76D983", +"{. c #75D889", +"]. c #19301F", +"^. c #4A8A5C", +"/. c #6FD292", +"(. c #6DCF9B", +"_. c #6ACD9F", +":. c #69CEA4", +"<. c #8BEA6C", +"[. c #87E76F", +"}. c #85E472", +"|. c #82E273", +"1. c #7EE076", +"2. c #61AD5E", +"3. c #1B311C", +"4. c #63B66B", +"5. c #59A663", +"6. c #50925D", +"7. c #447E52", +"8. c #22402B", +"9. c #6DD197", +"0. c #6CCF9C", +"a. c #68CCA2", +"b. c #68CDA9", +"c. c #88E86D", +"d. c #83E470", +"e. c #81E272", +"f. c #80E076", +"g. c #6FC872", +"h. c #172A19", +"i. c #0B140C", +"j. c #24442B", +"k. c #4E8F5D", +"l. c #274931", +"m. c #5AAB76", +"n. c #6DD298", +"o. c #6CD09C", +"p. c #6ACE9F", +"q. c #68CCA4", +"r. c #67CBA7", +"s. c #67CAAB", +"t. c #87E571", +"u. c #82E172", +"v. c #7CDD79", +"w. c #7ADB7C", +"x. c #77D980", +"y. c #335E39", +"z. c #182C1C", +"A. c #6FCD86", +"B. c #3E734D", +"C. c #417B55", +"D. c #6FD097", +"E. c #68CCA3", +"F. c #67CAA8", +"G. c #64C8AB", +"H. c #63C9AF", +"I. c #83E473", +"J. c #7FE076", +"K. c #7DDD7A", +"L. c #77D97F", +"M. c #60B171", +"N. c #09110B", +"O. c #448056", +"P. c #2F583E", +"Q. c #66C08B", +"R. c #6CCF9B", +"S. c #6ACD9E", +"T. c #67CAA7", +"U. c #65C9AA", +"V. c #63C9AE", +"W. c #62C9B3", +"X. c #7FE075", +"Y. c #7CDE79", +"Z. c #77DA7F", +"`. c #74D888", +" + c #74D58B", +".+ c #376845", +"++ c #1B3424", +"@+ c #5EB280", +"#+ c #6BCD9C", +"$+ c #69CDA3", +"%+ c #64C9AB", +"&+ c #63C9AD", +"*+ c #62C7B1", +"=+ c #60C7B9", +"-+ c #7DDF7A", +";+ c #79DB7D", +">+ c #76D882", +",+ c #69C483", +"'+ c #3A6E4D", +")+ c #36684C", +"!+ c #61B98B", +"~+ c #69CDA1", +"{+ c #67CBA6", +"]+ c #63C8AE", +"^+ c #62C8B2", +"/+ c #60C5B6", +"(+ c #5EC6BD", +"_+ c #78D97F", +":+ c #75D783", +"<+ c #74D687", +"[+ c #6AC786", +"}+ c #48885F", +"|+ c #57A376", +"1+ c #5CB085", +"2+ c #3F7B5F", +"3+ c #5FBA94", +"4+ c #65C9A9", +"5+ c #64C8AE", +"6+ c #62C6B2", +"7+ c #60C5B7", +"8+ c #5EC4BB", +"9+ c #5CC7C1", +"0+ c #78DB7F", +"a+ c #76D883", +"b+ c #73D48B", +"c+ c #69C689", +"d+ c #63BA87", +"e+ c #6DCE9B", +"f+ c #53A17C", +"g+ c #172D24", +"h+ c #366B59", +"i+ c #5FBEA2", +"j+ c #5DC5BB", +"k+ c #5AC5C0", +"l+ c #58C6C7", +"m+ c #73D687", +"n+ c #71D48E", +"o+ c #6ED196", +"p+ c #66C498", +"q+ c #407D64", +"r+ c #458971", +"s+ c #478D78", +"t+ c #3A7667", +"u+ c #5BB9A6", +"v+ c #5AC5C1", +"w+ c #57C5C5", +"x+ c #55C3CB", +"y+ c #75D787", +"z+ c #72D48A", +"A+ c #71D28E", +"B+ c #6FD197", +"C+ c #6ECE99", +"D+ c #6ACD9D", +"E+ c #69CCA0", +"F+ c #64C7A3", +"G+ c #62C8AE", +"H+ c #50A392", +"I+ c #4A9A8D", +"J+ c #5BC4B9", +"K+ c #59C4C0", +"L+ c #57C4C6", +"M+ c #55C1C8", +"N+ c #52C0CD", +"O+ c #74D88D", +"P+ c #72D58F", +"Q+ c #70D393", +"R+ c #6FD298", +"S+ c #6ED19D", +"T+ c #6BD0A1", +"U+ c #69CEA5", +"V+ c #66CAAB", +"W+ c #63C9B0", +"X+ c #61C7B4", +"Y+ c #61C7B8", +"Z+ c #5CC8BC", +"`+ c #5AC6C2", +" @ c #58C5C7", +".@ c #54C4CB", +"+@ c #50C2CE", +"@@ c #50C0D2", +" ", @@ Diff output truncated at 10000 characters. @@ From maj at dev.open-bio.org Wed Sep 9 14:12:53 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Wed, 9 Sep 2009 14:12:53 -0400 Subject: [Bioperl-guts-l] [16061] bioperl-dev/branches/bioperl-mode-multipath-branch/dist: retar ( geez) Message-ID: <200909091812.n89ICrLs003214@dev.open-bio.org> Revision: 16061 Author: maj Date: 2009-09-09 14:12:53 -0400 (Wed, 09 Sep 2009) Log Message: ----------- retar (geez) Modified Paths: -------------- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar =================================================================== (Binary files differ) Modified: bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 2009-09-09 18:11:04 UTC (rev 16060) +++ bioperl-dev/branches/bioperl-mode-multipath-branch/dist/bioperl-mode.tar.md5 2009-09-09 18:12:53 UTC (rev 16061) @@ -1 +1 @@ -0279cc3dd4e8f6a166d615a7f787981f bioperl-mode.tar +208d95277195d0ec729330aed8b015bb bioperl-mode.tar From maj at dev.open-bio.org Thu Sep 10 14:06:28 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Thu, 10 Sep 2009 14:06:28 -0400 Subject: [Bioperl-guts-l] [16062] bioperl-dev/branches/bioperl-mode-multipath-branch/: purpose complete Message-ID: <200909101806.n8AI6S4X014675@dev.open-bio.org> Revision: 16062 Author: maj Date: 2009-09-10 14:06:27 -0400 (Thu, 10 Sep 2009) Log Message: ----------- purpose complete Removed Paths: ------------- bioperl-dev/branches/bioperl-mode-multipath-branch/ From maj at dev.open-bio.org Thu Sep 10 23:32:18 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Thu, 10 Sep 2009 23:32:18 -0400 Subject: [Bioperl-guts-l] [16063] bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp: pretty pod formatting and fontification Message-ID: <200909110332.n8B3WIjF016515@dev.open-bio.org> Revision: 16063 Author: maj Date: 2009-09-10 23:32:18 -0400 (Thu, 10 Sep 2009) Log Message: ----------- pretty pod formatting and fontification Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-10 18:06:27 UTC (rev 16062) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-11 03:32:18 UTC (rev 16063) @@ -262,6 +262,92 @@ ;; and now, a total kludge. (view-mode)) +(defface pod-section-face + '( (t (:weight bold :foreground "maroon3") ) ) + "Highlight for pod section names.") +(defface pod-bioperl-identifier-face + '( (t (:foreground "blue3" :weight bold))) + "Highlight for bioperl identifiers") +(defface pod-method-pod-tag-face + '( (t (:foreground "blue4")) ) + "Highlight for method pod tags (Title, Usage, etc.)") +(defface pod-blue-man-face + '( (t (:background "blue" :foreground "dark blue"))) + "My world is blue.") +(defface pod-subsec-header-face + '( (t (:weight bold :slant italic :foreground "blue4"))) + "Highlight pod subsection headers") +(defface pod-method-subsec-face + '( (t (:slant italic :foreground "maroon4"))) + "Highlight for APPENDIX subsections") +(defface pod-method-name-face + '( (t (:weight bold) ) ) + "Highlight pod method names") +(defface pod-key-value-arg-face + '( (t (:slant italic :foreground "green3")) ) + "Highlight for key-value keys (-something)" ) +(defface pod-deref-symb-face + '( (t (:weight bold :foreground "blue4"))) + "Highlight '->' ") +(defface pod-assoc-symb-face + '( (t (:weight bold :foreground "green3"))) + "Highlight '=>' ") + +(defvar bioperl-pod-font-lock-keywords + '( + ;; rudimentary perl syntax highlighting + ("[%$][{]?\\([a-zA-Z0-9_]+\\)[}]?" 1 'font-lock-variable-name-face) + ("[^a-zA-Z0-9]@[{]?\\([a-zA-Z0-9_]+\\)[}]?" 1 'font-lock-variable-name-face) + ("\\(\\<[a-zA-Z0-9_]+\\>\\)()" 0 font-lock-function-name-face ) + ("\\(\\<[a-zA-Z0-9_]+\\>\\)[\(]" 1 font-lock-function-name-face ) + ("\\>->\\(\\<[a-zA-Z0-9_]+\\>\\)" 1 font-lock-function-name-face) + ("\\>->\\<" . 'pod-deref-symb-face) + ("\\(?:\\s \\|\\>\\)\\(=>\\)\\(?:\\s \\|\\<\\|[\'\"]\\)" 1 'pod-assoc-symb-face) + ("\\(?:\\W\\|\\s \\)\\(-[a-zA-Z0-9_]+\\)\\>" 1 'pod-key-value-arg-face) + ("'[^']+'" . 'font-lock-string-face) + ("\#\\s +.*" 0 'font-lock-comment-face t) + ;; headers + ("^\\(?:[A-Z]+\\s \\)+" . 'pod-section-face ) + ("^\\s \\{2\\}\\([A-Z][a-z]+\\s \\)+" . (0 'pod-subsec-header-face)) + ("^\\s \\{2\\}[a-z_][a-zA-Z0-9_()]+\\s " . 'pod-method-name-face) + ("^\\s +[a-zA-Z]+\\s *:\\s " . 'pod-method-pod-tag-face) + ("^[A-Z].*" . 'pod-method-subsec-face) + ("Bio::\\(?:[a-zA-Z0-9_:]+\\)+" . 'pod-bioperl-identifier-face) + ) + "Font lock keywords for highlighting Perl pod." +) + +(defconst bioperl-pod-font-lock-defaults + '(bioperl-pod-font-lock-keywords nil nil nil )) + +(define-derived-mode pod-mode fundamental-mode "Pod Fundamental" + "Derived fundamental mode for highlighting BioPerl pod." + :group 'bioperl + :syntax-table nil + :abbrev-table nil + (set (make-local-variable 'font-lock-defaults) + bioperl-pod-font-lock-defaults)) + +(defun bioperl-pod-synopsis-region (buffer) + "Return beginning & end of SYNOPSIS region (excluding the header)." + (unless (bufferp buffer) + (error "Buffer required at arg BUFFER")) + (save-excursion + (goto-char (point-min)) + (let ( (beg) (end) ) + (setq beg + (if (re-search-forward "^SYNOPSIS" (point-max) t) + (progn (forward-line 1) (if (bolp) (point) nil)) + nil)) + (setq end + (if (re-search-forward "^[A-Z]" (point-max) t) + (progn (beginning-of-line) (if (bolp) (point) nil)) + nil)) + (if (not (and beg end)) + nil + `(,beg ,end))))) + + (defun bioperl-perl-mode-infect () "Add this function to `perl-mode-hook' to associate bioperl-mode with perl-mode." (unless (or (not (display-graphic-p)) (key-binding [tool-bar bpmode]) ) Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-10 18:06:27 UTC (rev 16062) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-11 03:32:18 UTC (rev 16063) @@ -333,6 +333,7 @@ args))) (save-excursion (set-buffer pod-buf) + (pod-mode) (setq header-line-format (concat "POD - BioPerl module " module " @ " (file-name-squish (elt (split-string bioperl-module-path path-separator) n)) )) @@ -381,6 +382,7 @@ (setq exec-path bioperl-safe-PATH)) (save-excursion (set-buffer pod-buf) + (pod-mode) (setq header-line-format (concat section " - BioPerl module " module " @ " (file-name-squish (elt (split-string bioperl-module-path path-separator) n)) )) @@ -397,6 +399,11 @@ (beginning-of-line) (delete-region (point) (point-max)) (goto-char (point-min)) + (while (re-search-forward "^====\\s +\\([a-zA-Z0-9_:()]+\\)\\s +==+" (point-max) t) + (replace-match "\\1" nil nil)) + (goto-char (point-min)) + (while (re-search-forward "^==\\s +\\([a-zA-Z0-9_:()]+\\)\\s +==+" (point-max) t) + (replace-match " \\1" nil nil)) (bioperl-view-mode) (pop-to-buffer pod-buf) (setq ret t)) @@ -957,16 +964,22 @@ (message "No pod available") (save-excursion (set-buffer pod-buf) + (pod-mode) (setq header-line-format (concat "Method " method "() - BioPerl module " module " @ " (file-name-squish (elt (split-string bioperl-module-path path-separator) n)))) + (insert " " method) (insert "\n") (while (setq cur-tag (pop tags)) (setq cur-content (cdr (assoc-string cur-tag content t))) - (setq cur-content (replace-regexp-in-string "!!" "\t\n" cur-content)) - (insert cur-tag " : " cur-content)) + (setq cur-content (replace-regexp-in-string "!!$" "\n" cur-content)) + (setq cur-content (replace-regexp-in-string "!!" + "\n " cur-content)) + (insert " " cur-tag) + (insert-char ? (- 8 (length cur-tag))) + (insert ": " cur-content)) (goto-char (point-min)) (bioperl-view-mode) (pop-to-buffer pod-buf))) From bugzilla-daemon at portal.open-bio.org Fri Sep 11 09:28:29 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Fri, 11 Sep 2009 09:28:29 -0400 Subject: [Bioperl-guts-l] [Bug 2913] New: Bio::Search::HSP::FastaHSP -> get_aln -> Bio::Locatable end is float Message-ID: http://bugzilla.open-bio.org/show_bug.cgi?id=2913 Summary: Bio::Search::HSP::FastaHSP -> get_aln -> Bio::Locatable end is float Product: BioPerl Version: main-trunk Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: Bio::Search/Bio::SearchIO AssignedTo: bioperl-guts-l at bioperl.org ReportedBy: alpapan at gmail.com This bug is present in the BioPerl version present in the CVS on 2009-04-29. I get the following warning when parsing a fasty34 HSP using Bio::Search and then trying to getting the alignment using get_aln MSG: In sequence CONTIG residue count gives end value 565.333333333333. Overriding value [565] with value 565.333333333333 for Bio::LocatableSeq::end(). MAEMFKIGDLVWAKMKGFSPWPGLVSNPTKDLKRPTSKKSAQQ/CVFFLGTNNYAWIEEANIKPYFEYRDRLVKSNKSGAFKDALDAIEEYIKNNGAKFDDPDAEFNRLRESLAEKKESKPKQRKEKRPAHDDNSAKSPKKVRTNSVEADKESVRADSPILSNHSPRKGPASTLLERPTTIVRPLDDSQD STACK Bio::LocatableSeq::end /usr/local/share/perl/5.8.8/Bio/LocatableSeq.pm:196 STACK Bio::LocatableSeq::new /usr/local/share/perl/5.8.8/Bio/LocatableSeq.pm:140 STACK Bio::Search::HSP::FastaHSP::get_aln /usr/local/share/perl/5.8.8/Bio/Search/HSP/FastaHSP.pm:174 The frameshifts (/ and \ ) are causing this recalculation of length to a float (which is a bit weird) but is not fatal for my program. Is this intentional? Example files emailed to Mark Jensen. cheers alexie -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Fri Sep 11 09:30:43 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Fri, 11 Sep 2009 09:30:43 -0400 Subject: [Bioperl-guts-l] [Bug 2913] Bio::Search::HSP::FastaHSP -> get_aln -> Bio::Locatable end is float In-Reply-To: Message-ID: <200909111330.n8BDUhcn022386@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2913 ------- Comment #1 from alpapan at gmail.com 2009-09-11 09:30 EST ------- Created an attachment (id=1364) --> (http://bugzilla.open-bio.org/attachment.cgi?id=1364&action=view) test data to replicate issue -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Fri Sep 11 10:37:34 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Fri, 11 Sep 2009 10:37:34 -0400 Subject: [Bioperl-guts-l] [Bug 2913] Bio::Search::HSP::FastaHSP -> get_aln -> Bio::Locatable end is float In-Reply-To: Message-ID: <200909111437.n8BEbYhf024388@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2913 cjfields at bioperl.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED ------- Comment #2 from cjfields at bioperl.org 2009-09-11 10:37 EST ------- Mark, Alexie, I've confirmed this on main trunk. I wrote up the code that calculates the frameshift, so I'll take a look. -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Fri Sep 11 10:43:55 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Fri, 11 Sep 2009 10:43:55 -0400 Subject: [Bioperl-guts-l] [Bug 2913] Bio::Search::HSP::FastaHSP -> get_aln -> Bio::Locatable end is float In-Reply-To: Message-ID: <200909111443.n8BEht4m024551@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2913 ------- Comment #3 from maj at fortinbras.us 2009-09-11 10:43 EST ------- Chris-- I think I fixed the frameshift code in my LocatableSeq mods that are still in limbo. I remember this "float" issue distinctly. How would you like me to proceed--I could try to use that code to patch the current version, or you may want to have a look-- cheers MAJ -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Fri Sep 11 11:37:19 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Fri, 11 Sep 2009 11:37:19 -0400 Subject: [Bioperl-guts-l] [Bug 2913] Bio::Search::HSP::FastaHSP -> get_aln -> Bio::Locatable end is float In-Reply-To: Message-ID: <200909111537.n8BFbJig026116@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2913 ------- Comment #4 from cjfields at bioperl.org 2009-09-11 11:37 EST ------- Try running SearchIO/fasta.t tests with the patch and let's see how it acts. We should have a few tests for frameshifts there (this would definitely be a good additional one), so the patch should pass those in addition to call the end here correctly. -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Fri Sep 11 11:40:19 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Fri, 11 Sep 2009 11:40:19 -0400 Subject: [Bioperl-guts-l] [Bug 2913] Bio::Search::HSP::FastaHSP -> get_aln -> Bio::Locatable end is float In-Reply-To: Message-ID: <200909111540.n8BFeJsT026263@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2913 ------- Comment #5 from maj at fortinbras.us 2009-09-11 11:40 EST ------- aye-aye -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Fri Sep 11 18:21:20 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Fri, 11 Sep 2009 18:21:20 -0400 Subject: [Bioperl-guts-l] [Bug 2913] Bio::Search::HSP::FastaHSP -> get_aln -> Bio::Locatable end is float In-Reply-To: Message-ID: <200909112221.n8BMLKYL003638@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2913 ------- Comment #6 from maj at fortinbras.us 2009-09-11 18:21 EST ------- Created an attachment (id=1365) --> (http://bugzilla.open-bio.org/attachment.cgi?id=1365&action=view) patch to fix length calculations in the presence of frameshifts Here is a patch to LocatableSeq.pm only that passes all t/SearchIO/fasta.t tests for me, and eliminates Alexie's bork. This makes use of a method _encode_frameshifts that was part of my LocatableSeq rewrite of last year (still in limbo). Though it passes the tests, there is an issue: my implementation of storing frameshifts and jason's appear to be the mirror images of each other. Where he encodes "/" as -1, I encode "/" as +1, etc. I was revamping subseq() so it could handle frameshifts and mappings correctly, and I found it most natural (in calculating lengths) to say that, e.g., QQ/QQ was 4 aa's long, but 3+3+1+3+3 = 13 nts long, which must reflect the underlying untranslated sequence. I fixed a slight logical error in _ungapped_length, which calculates the offset based on the frameshift hash, and in examining it, it looked like cjf also thought of the offsets in the same way. So, please give it a try and some thought too. Alexie, you can apply the patch to your local copy of LocatableSeq.pm and see if it does what you expect (especially regarding the frameshift hash, and the lengths that are output). cheers MAJ -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From maj at dev.open-bio.org Fri Sep 11 22:28:35 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Fri, 11 Sep 2009 22:28:35 -0400 Subject: [Bioperl-guts-l] [16064] bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el: improved syntax highlighting Message-ID: <200909120228.n8C2SZlV022958@dev.open-bio.org> Revision: 16064 Author: maj Date: 2009-09-11 22:28:34 -0400 (Fri, 11 Sep 2009) Log Message: ----------- improved syntax highlighting Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-11 03:32:18 UTC (rev 16063) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-12 02:28:34 UTC (rev 16064) @@ -293,6 +293,7 @@ '( (t (:weight bold :foreground "green3"))) "Highlight '=>' ") + (defvar bioperl-pod-font-lock-keywords '( ;; rudimentary perl syntax highlighting @@ -304,7 +305,8 @@ ("\\>->\\<" . 'pod-deref-symb-face) ("\\(?:\\s \\|\\>\\)\\(=>\\)\\(?:\\s \\|\\<\\|[\'\"]\\)" 1 'pod-assoc-symb-face) ("\\(?:\\W\\|\\s \\)\\(-[a-zA-Z0-9_]+\\)\\>" 1 'pod-key-value-arg-face) - ("'[^']+'" . 'font-lock-string-face) +; ("'[^']+'" . 'font-lock-string-face) + (pod-find-syntactic-string 1 'font-lock-string-face) ("\#\\s +.*" 0 'font-lock-comment-face t) ;; headers ("^\\(?:[A-Z]+\\s \\)+" . 'pod-section-face ) @@ -318,7 +320,7 @@ ) (defconst bioperl-pod-font-lock-defaults - '(bioperl-pod-font-lock-keywords nil nil nil )) + '(bioperl-pod-font-lock-keywords t nil nil )) (define-derived-mode pod-mode fundamental-mode "Pod Fundamental" "Derived fundamental mode for highlighting BioPerl pod." @@ -328,6 +330,11 @@ (set (make-local-variable 'font-lock-defaults) bioperl-pod-font-lock-defaults)) +(defun pod-find-syntactic-string (bound) + "String searcher for bioperl-mode font-lock." + ;; try to infer from symbol context + (re-search-forward "\\(?:[$@%]\\|->\\|=>\\).*?\\(['][^']+[']\\|[\"][^\"]+[\"]\\)" bound t)) + (defun bioperl-pod-synopsis-region (buffer) "Return beginning & end of SYNOPSIS region (excluding the header)." (unless (bufferp buffer) From cjfields at dev.open-bio.org Sat Sep 12 01:06:23 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Sat, 12 Sep 2009 01:06:23 -0400 Subject: [Bioperl-guts-l] [16065] bioperl-live/trunk: Fixed solexa mapping. Message-ID: <200909120506.n8C56Nxt023526@dev.open-bio.org> Revision: 16065 Author: cjfields Date: 2009-09-12 01:06:23 -0400 (Sat, 12 Sep 2009) Log Message: ----------- Fixed solexa mapping. All tests passing; need to go through and double-check output but all conversions look good. Modified Paths: -------------- bioperl-live/trunk/Bio/SeqIO/fastq.pm bioperl-live/trunk/t/SeqIO/fastq.t Modified: bioperl-live/trunk/Bio/SeqIO/fastq.pm =================================================================== --- bioperl-live/trunk/Bio/SeqIO/fastq.pm 2009-09-12 02:28:34 UTC (rev 16064) +++ bioperl-live/trunk/Bio/SeqIO/fastq.pm 2009-09-12 05:06:23 UTC (rev 16065) @@ -7,7 +7,7 @@ use base qw(Bio::SeqIO); -sub _initialize { +sub _initialize { my($self, at args) = @_; $self->SUPER::_initialize(@args); my ($variant, $validate, $header) = $self->_rearrange([qw(VARIANT @@ -67,7 +67,7 @@ $data->{-desc} = $fulldesc; $data->{-namespace} = $self->{qualtype}; } elsif ($mode eq '-seq' && $line =~ m{^\+([^\n]*)}xmso) { - my $desc = $1; + my $desc = $1; $self->throw("No description line parsed") unless $data->{-descriptor}; if ($desc && $data->{-descriptor} ne $desc) { $self->throw("Quality descriptor [$desc] doesn't match seq descriptor ".$data->{-descriptor}.", line: $." ); @@ -104,16 +104,15 @@ "length of sequence ".$data->{-seq}."\n[".length($data->{-seq})."], line: $."); } - # need to benchmark this vs the prior unpack("C", ...) version - my @qual; - for my $q (unpack("A1" x length($data->{-raw_quality}), - $data->{-raw_quality})) { - $self->warn("Unknown symbol with ASCII value ".ord($q)." outside of quality range, ") - if ($self->{_validate_qual} && - !exists($self->{chr2phred}->{$q})); - push @qual, $self->{chr2phred}->{$q}; - } - $data->{-qual} = \@qual; + $data->{-qual} = [map { + if ($self->{_validate_qual} && !exists($self->{chr2qual}->{$_})) { + $self->warn("Unknown symbol with ASCII value ".ord($_)." outside of quality range") + # TODO: fallback? + } + $self->{qualtype} eq 'solexa' ? + $self->{sol2phred}->{$self->{chr2qual}->{$_}}: + $self->{chr2qual}->{$_}; + } unpack("A1" x length($data->{-raw_quality}), $data->{-raw_quality})]; return $data; } @@ -124,50 +123,57 @@ my ($self, at seq) = @_; my $var = $self->{qualtype}; foreach my $seq (@seq) { - unless ($seq->isa("Bio::Seq::Quality")){ - $self->warn("You can't write FASTQ without supplying a Bio::Seq::Quality object! ", ref($seq), "\n"); - next; - } - my $str = $seq->seq; - my @qual = @{$seq->qual}; + unless ($seq->isa("Bio::Seq::Quality")){ + $self->warn("You can't write FASTQ without supplying a Bio::Seq::Quality object! ", ref($seq), "\n"); + next; + } + my $str = $seq->seq; + my @qual = @{$seq->qual}; # this should be the origin of the sequence (illumina, solexa, sanger) my $ns= $seq->namespace; - my $top = $seq->display_id(); - if (my $desc = $seq->desc()) { - $desc =~ s/\n//g; - $top .= " $desc"; - } - if(length($str) == 0) { - $str = "\n"; - } + my $top = $seq->display_id(); + if (my $desc = $seq->desc()) { + $desc =~ s/\n//g; + $top .= " $desc"; + } + if(length($str) == 0) { + $str = "\n"; + } my $qual = ''; + my $qual_map = + ($ns eq 'solexa' && $var eq 'solexa') ? $self->{phred_fp2chr} : + ($var eq 'solexa') ? $self->{phred_int2chr} : + $self->{qual2chr}; - my $qual_map = ($var eq 'solexa' && $ns ne 'solexa') ? - $self->{phred2chr_nonsol} : - $self->{phred2chr} - ; my %bad_qual; for my $q (@qual) { $q = sprintf("%.0f", $q) if ($var ne 'solexa' && $ns eq 'solexa'); if (exists $qual_map->{$q}) { $qual .= $qual_map->{$q}; - next ; + next; } else { - my $rep = ($q <= $self->{qual_start}) ? - $qual_map->{$self->{qual_start}} : $qual_map->{$self->{qual_end}}; - $qual .= $rep; - $bad_qual{$q}++; + # fuzzy mapping, for edited qual scores + my $qr = sprintf("%.0f",$q); + my $bounds = sprintf("%.1f-%.1f",$qr-0.5, $qr+0.5); + if (exists $self->{fuzzy_qual2chr}->{$bounds}) { + $qual .= $self->{fuzzy_qual2chr}->{$bounds}; + next; + } else { + my $rep = ($q <= $self->{qual_start}) ? + $qual_map->{$self->{qual_start}} : $qual_map->{$self->{qual_end}}; + $qual .= $rep; + $bad_qual{$q}++; + } } } if ($self->{_validate_qual} && %bad_qual) { - $self->warn("Data loss for $var: following values exceed max ". - $self->{qual_end}. - "\n".join(',',sort {$a <=> $b} keys %bad_qual)) + $self->warn("Data loss for $var: following values not found\n". + join(',',sort {$a <=> $b} keys %bad_qual)) } - $self->_print("\@",$top,"\n",$str,"\n") or return; - $self->_print("+",($self->{_quality_header} ? $top : ''),"\n",$qual,"\n") or return; + $self->_print("\@",$top,"\n",$str,"\n") or return; + $self->_print("+",($self->{_quality_header} ? $top : ''),"\n",$qual,"\n") or return; } return 1; } @@ -179,72 +185,88 @@ sub write_fasta { my ($self, at seq) = @_; - if (!exists($self->{fasta_proxy})) { - $self->{fasta_proxy} = Bio::SeqIO->new(-format => 'fasta', -fh => $self->_fh); - } - return $self->{fasta_proxy}->write_seq(@seq); + if (!exists($self->{fasta_proxy})) { + $self->{fasta_proxy} = Bio::SeqIO->new(-format => 'fasta', -fh => $self->_fh); + } + return $self->{fasta_proxy}->write_seq(@seq); } sub write_qual { - my ($self, at seq) = @_; - if (!exists($self->{qual_proxy})) { - $self->{qual_proxy} = Bio::SeqIO->new(-format => 'qual', -fh => $self->_fh); - } - - return $self->{qual_proxy}->write_seq(@seq); + my ($self, at seq) = @_; + if (!exists($self->{qual_proxy})) { + $self->{qual_proxy} = Bio::SeqIO->new(-format => 'qual', -fh => $self->_fh); + } + return $self->{qual_proxy}->write_seq(@seq); } { my %VARIANT = ( sanger => { - 'ord_start' => 33, - 'ord_end' => 126, + 'offset' => 33, 'qual_start' => 0, 'qual_end' => 93 }, solexa => { - 'ord_start' => 59, - 'ord_end' => 126, + 'offset' => 64, 'qual_start' => -5, 'qual_end' => 62 }, illumina => { - 'ord_start' => 64, - 'ord_end' => 126, + 'offset' => 64, 'qual_start' => 0, 'qual_end' => 62 }, ); - + sub variant { my ($self, $enc) = @_; if (defined $enc) { $enc = lc $enc; $self->throw('Not a valid FASTQ variant format') unless exists $VARIANT{$enc}; - # cache encode/decode values for quicker accession - my $ct = 0; - ($self->{qual_start}, $self->{qual_end}, - $self->{ord_start}, $self->{ord_end}) = - @{ $VARIANT{$enc} }{qw(qual_start qual_end - ord_start ord_end)}; - for my $c (($self->{ord_start})..($self->{ord_end})) { - my $char = chr($c); - my $score = $self->{qual_start} + $ct++; - if ($enc eq 'solexa') { - $score = 10 * log(1 + 10 ** ($score / 10.0)) / log(10); - # cache a rounded version when needed (i.e. sanger/illumina->solexa) - $self->{phred2chr_nonsol}->{int($score)} = $char; - } - $self->{chr2phred}->{$char} = $score; - $self->{phred2chr}->{$score} = $char; - } + $self->_init_tables($enc); $self->{qualtype} = $enc; } return $self->{qualtype}; } +sub _init_tables { + my ($self, $enc) = @_; + # cache encode/decode values for quicker accession + ($self->{qual_start}, $self->{qual_end}, $self->{qual_offset}) = + @{ $VARIANT{$enc} }{qw(qual_start qual_end offset)}; + if ($enc eq 'solexa') { + for my $q ($self->{qual_start} .. $self->{qual_end}) { + my $char = chr($q + $self->{qual_offset}); + $self->{chr2qual}->{$char} = $q; + $self->{qual2chr}->{$q} = $char; + my $s2p = 10 * log(1 + 10 ** ($q / 10.0)) / log(10); + + # solexa <=> solexa mapping speedup (retain floating pt precision) + $self->{phred_fp2chr}->{$s2p} = $char; + $self->{sol2phred}->{$q} = $s2p; + + # this is for mapping values fuzzily (fallback) + $self->{fuzzy_qual2chr}->{sprintf("%.1f-%.1f",$q - 0.5, $q + 0.5)} = $char; + + next if $q < 0; # skip loop; PHRED scores greater than 0 + my $p2s = sprintf("%.0f",($q <= 1) ? -5 : 10 * log(-1 + 10 ** ($q / 10.0)) / log(10)); + # sanger/illumina PHRED <=> Solexa char mapping speedup + $self->{phred_int2chr}->{$q} = chr($p2s + $self->{qual_offset}); + } + } else { + for my $c ($self->{qual_start}..$self->{qual_end}) { + # PHRED mapping + my $char = chr($c + $self->{qual_offset}); + $self->{chr2qual}->{$char} = $c; + $self->{qual2chr}->{$c} = $char; + # this is for mapping values not found with above + $self->{fuzzy_qual2chr}->{sprintf("%.1f-%.1f",$c - 0.5, $c + 0.5)} = $char; + } + } } +} + sub validate { my ($self, $val) = @_; if (defined $val) { @@ -500,7 +522,7 @@ Args : Bio::Seq object Note : This method does not currently delegate to Bio::SeqIO::fasta (maybe it should?). Not sure whether we should keep this as a - convenience method. + convenience method. Status : Unstable =head2 write_qual @@ -512,7 +534,7 @@ Args : Bio::Seq::Quality object Note : This method does not currently delegate to Bio::SeqIO::qual @@ Diff output truncated at 10000 characters. @@ From maj at dev.open-bio.org Sat Sep 12 07:35:12 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sat, 12 Sep 2009 07:35:12 -0400 Subject: [Bioperl-guts-l] [16066] bioperl-live/trunk/Bio/Tree/TreeFunctionsI.pm: convert _clone to public method clone Message-ID: <200909121135.n8CBZCjo028540@dev.open-bio.org> Revision: 16066 Author: maj Date: 2009-09-12 07:35:11 -0400 (Sat, 12 Sep 2009) Log Message: ----------- convert _clone to public method clone Modified Paths: -------------- bioperl-live/trunk/Bio/Tree/TreeFunctionsI.pm Modified: bioperl-live/trunk/Bio/Tree/TreeFunctionsI.pm =================================================================== --- bioperl-live/trunk/Bio/Tree/TreeFunctionsI.pm 2009-09-12 05:06:23 UTC (rev 16065) +++ bioperl-live/trunk/Bio/Tree/TreeFunctionsI.pm 2009-09-12 11:35:11 UTC (rev 16066) @@ -716,7 +716,21 @@ } # safe tree clone that doesn't seg fault -sub _clone { + +=head2 clone() + + Title : clone + Alias : _clone + Usage : $tree_copy = $tree->clone(); + $subtree_copy = $tree->clone($internal_node); + Function: Safe tree clone that doesn't segfault + (of Sendu) + Returns : Bio::Tree::Tree object + Args : [optional] $start_node, Bio::Tree::Node object + +=cut + +sub clone { my ($self, $parent, $parent_clone) = @_; $parent ||= $self->get_root_node; $parent_clone ||= $self->_clone_node($parent); @@ -732,6 +746,9 @@ return $tree; } +# alias +sub _clone { shift->clone(@_) } + # safe node clone that doesn't seg fault, but deliberately loses ancestors and # descendents sub _clone_node { From maj at dev.open-bio.org Sat Sep 12 22:30:52 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sat, 12 Sep 2009 22:30:52 -0400 Subject: [Bioperl-guts-l] [16067] bioperl-dev/trunk/ide/emacs/bioperl-mode/test/bioperl-mode-test.el: tracking source changes Message-ID: <200909130230.n8D2UqPE031309@dev.open-bio.org> Revision: 16067 Author: maj Date: 2009-09-12 22:30:52 -0400 (Sat, 12 Sep 2009) Log Message: ----------- tracking source changes Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/test/bioperl-mode-test.el Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/test/bioperl-mode-test.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/test/bioperl-mode-test.el 2009-09-12 11:35:11 UTC (rev 16066) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/test/bioperl-mode-test.el 2009-09-13 02:30:52 UTC (rev 16067) @@ -123,7 +123,7 @@ (defcase bioperl-completion-tests (:bpmode) 'bioperl-set-test-path (setq test-complete '("Bio")) (test-assert-equal (bioperl-namespace-completion-function "" nil t) test-complete ) - (setq test-complete '("Bio::")) + (setq test-complete '("Bio" "Bio::")) (test-assert-equal (bioperl-namespace-completion-function "B" nil t) test-complete ) (test-assert-equal (bioperl-namespace-completion-function "Bi" nil t) test-complete ) (setq test-complete '("Bio::DB" "Bio::Nexml" "Bio::SeqIO")) From maj at dev.open-bio.org Sat Sep 12 22:32:21 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sat, 12 Sep 2009 22:32:21 -0400 Subject: [Bioperl-guts-l] [16068] bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp: feeping creaturism (view module source func) Message-ID: <200909130232.n8D2WL4c031340@dev.open-bio.org> Revision: 16068 Author: maj Date: 2009-09-12 22:32:21 -0400 (Sat, 12 Sep 2009) Log Message: ----------- feeping creaturism (view module source func) tightening syntax highlighting fixing multipath searches Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-13 02:30:52 UTC (rev 16067) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-13 02:32:21 UTC (rev 16068) @@ -162,6 +162,21 @@ (pth) ) ;; ask BPMODE_PATH first... (setq pth (getenv "BPMODE_PATH")) + ;; try the environment + (unless pth + (let ( + ( plib (concat (getenv "PERL5LIB") path-separator (getenv "PATH"))) + ( pths ) + ) + (if plib + (progn + (setq pths (split-string plib path-separator)) + (while (and (not pth) pths) + ;; unixize +;; (setq pth (replace-regexp-in-string "\\\\" "/" pth)) + (setq pth (pop pths)) + (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil))) + )))) ;; then ask Perl... (unless pth ;; safe path @@ -182,21 +197,6 @@ ;; file name port issue - unixize (setq pth (replace-regexp-in-string "\\\\" "/" pth)) (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil))) - ;; try the environment - (unless pth - (let ( - ( plib (concat (getenv "PERL5LIB") path-separator (getenv "PATH"))) - ( pths ) - ) - (if plib - (progn - (setq pths (split-string plib path-separator)) - (while (and (not pth) pths) - ;; unixize -;; (setq pth (replace-regexp-in-string "\\\\" "/" pth)) - (setq pth (pop pths)) - (setq pth (if (file-exists-p (concat pth "/" "Bio")) pth nil))) - )))) ;; fall back to pwd (unless pth (setq pth (nth 1 (split-string (pwd)))) @@ -256,6 +256,7 @@ (define-key map [menu-bar] nil) (define-key map [menu-bar bp-doc] (list 'menu-item "BP Docs" menu-bar-bioperl-doc-menu)) (define-key map "q" 'View-kill-and-leave) + (define-key map "f" 'bioperl-view-source) (define-key map "\C-m" 'bioperl-view-pod) (define-key map "\C-\M-m" 'bioperl-view-pod-method))) map ) @@ -333,7 +334,7 @@ (defun pod-find-syntactic-string (bound) "String searcher for bioperl-mode font-lock." ;; try to infer from symbol context - (re-search-forward "\\(?:[$@%]\\|->\\|=>\\).*?\\(['][^']+[']\\|[\"][^\"]+[\"]\\)" bound t)) + (re-search-forward "\\(?:[$@%(),]\\|->\\|=>\\|print\\).*?\\(['][^']+[']\\|[\"][^\"]+[\"]\\)" bound t)) (defun bioperl-pod-synopsis-region (buffer) "Return beginning & end of SYNOPSIS region (excluding the header)." Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-13 02:30:52 UTC (rev 16067) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-13 02:32:21 UTC (rev 16068) @@ -35,7 +35,6 @@ ;; - compile to byte code ;; ;; issues -;; - bioperl-view-mode isn't always getting its keymap ;; - missing tool in tool-bar?? ;; - xemacs support? ;; @@ -169,6 +168,10 @@ ( (\"Bio\" \"Seq\" ( \"SeqIO\" \"fasta\" \"msf\" ...) \"PrimarySeqI\" ... ) ) Use `bioperl-add-module-names-to-cache' to, well, do it.") +(defvar bioperl-source-file nil + "Contains the source file of pod being viewed. Buffer-local.") + +(make-variable-buffer-local 'bioperl-source-file) ;; ;; User-interface functions ;; @@ -284,6 +287,18 @@ (signal 'quit t))) (car (last mod))))) (bioperl-view-pod-section module "APPENDIX" n)) +(defun bioperl-view-source () + "Display the file in `bioperl-source-file' in view mode in a new buffer." + (interactive) + (if (not (file-exists-p bioperl-source-file)) + nil + (let ( (fname bioperl-source-file) ) + (set-buffer (generate-new-buffer "*BioPerl Src*")) + (insert-file fname) + (perl-mode) + (view-mode) + (pop-to-buffer (current-buffer))))) + ;; "uninstall..." (defun bioperl-mode-unload-hook &optional local @@ -341,6 +356,7 @@ nil t t pmfile args) (goto-char (point-min)) (bioperl-view-mode) + (set (make-local-variable 'bioperl-source-file) pmfile) (pop-to-buffer pod-buf)) ;; restore old exec-path (setq exec-path old-exec-path) @@ -405,6 +421,7 @@ (while (re-search-forward "^==\\s +\\([a-zA-Z0-9_:()]+\\)\\s +==+" (point-max) t) (replace-match " \\1" nil nil)) (bioperl-view-mode) + (set (make-local-variable 'bioperl-source-file) pmfile) (pop-to-buffer pod-buf) (setq ret t)) (kill-buffer pod-buf) @@ -588,10 +605,6 @@ ;; here pick the directory alist (setq alist (if (stringp (cdr (elt alists 0))) (elt alists 1) (elt alists 0))) - ;; - ;; don't short circuit trying to add-to-cache here; - ;; need to add paths not already present. - ;; (if (and alist (cdr alist)) (cond ( (not (booleanp retopt)) @@ -684,7 +697,12 @@ (setq cache-item (if (stringp (cdr (elt alist 0))) (elt alist 0) (elt alist 1))) (if (null cache-item) - nil + (if alist + nil + ;; create a new list member(s) + (setcdr cache-pos (append (cdr cache-pos) + (assoc-all key mod-alist)))) + ;; (if (member n (mapcar 'string-to-number (split-string (cdr cache-item) path-separator))) ;; deja vu (setq mod-alist-keys nil) ;; fall-through @@ -766,29 +784,38 @@ (unless n (setq n 0)) (let ( - (module-path (elt (split-string bioperl-module-path path-separator) 0)) + (module-path (split-string bioperl-module-path path-separator)) (pth (bioperl-path-from-perl module-dir 1 n)) - (modules nil) - (fnames nil) + (modules) + (fnames) + (choose-dirs (lambda (x) (if (listp (cdr x)) x nil)) ) + (nmspc-only t) ) (if (and (> n 0) (> n (1- (length module-path)))) (error "Path index out of bounds at arg N")) - ;; following (elt ... 0) checks if pth is dir or symlink - ;; possible bug... - ;; try including directory names too, as (list (cons name nil)) - ;; stubs for descending into those later... + ;; following (elt ... 0) checks if pth is dir or symlink: + ;; possible bug... (if (and pth (elt (file-attributes pth) 0)) (progn (setq fnames (directory-files pth)) (while fnames - (let ( (str (pop fnames))) + (let ( (str (pop fnames))) ;; files - conses with path-index cdr (if (string-match "\\([a-zA-Z0-9_]+\\)\.pm$" str) - (push (cons (match-string 1 str) (number-to-string n)) modules)) + (progn + (push (cons (match-string 1 str) + (number-to-string n)) modules) + (setq nmspc-only nil))) ;; directories - conses with nil cdr (if (string-match "^\\([a-zA-Z0-9_]+\\)$" str) (if (not (string-equal (match-string 1 str) "README")) (push (cons (match-string 1 str) nil) modules))) )) +;; (if nmspc-only +;; (let ( (dirs (delete nil (mapcar choose-dirs modules))) +;; (module-dir-next) ) +;; (while dirs +;; (setq module-dir-next (concat module-dir "::" (car (pop dirs)))) +;; (append modules (bioperl-slurp-module-names module-dir-next n))))) (if (not modules) nil modules)) @@ -1017,7 +1044,7 @@ (concat prompt-prefix "Namespace: ") 'bioperl-namespace-completion-function nil (not no-retry) (or initial-input "Bio::")) ) - (if (not (string-equal nmspc "")) + (if (or (string-equal nmspc "Bio") (not (string-equal nmspc ""))) t ;; back up (setq nmspc @@ -1202,7 +1229,7 @@ ;; handle the boundary (if (or (not module-dir) (not (string-match ":" module-dir))) - '("Bio::") + '(("Bio") ("Bio::")) (setq module-dir (progn (string-match "^\\([a-zA-Z0-9_:]+[^:]\\):*$" module-dir) (match-string 1 module-dir))) (let* ( @@ -1210,6 +1237,7 @@ ( modules (split-string module-dir "::" t) ) ( complet ) ) + ;; check once and recalc (if (not dirs) (progn @@ -1316,6 +1344,13 @@ (defun pm-p (x) (not (null (string-match "[.]pm\$" x)))) +(defun split-string-compat (str &optional sep omit-nulls) + "`split-string' for 21" + (if omit-nulls + (delete nil (mapcar (lambda (x) (if (string-equal x "") nil x)) (split-st\ +ring str sep))) + (split-string str sep))) + (defun file-name-squish (fname) "Squish long file names with central elipses. FNAME is the file name as string. Doesn't work very hard." From maj at dev.open-bio.org Sat Sep 12 22:50:38 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sat, 12 Sep 2009 22:50:38 -0400 Subject: [Bioperl-guts-l] [16069] bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el: enforce Emacs 22 Message-ID: <200909130250.n8D2ocXR031461@dev.open-bio.org> Revision: 16069 Author: maj Date: 2009-09-12 22:50:38 -0400 (Sat, 12 Sep 2009) Log Message: ----------- enforce Emacs 22 Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-13 02:32:21 UTC (rev 16068) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-13 02:50:38 UTC (rev 16069) @@ -243,6 +243,12 @@ :lighter "[bio]" :keymap bioperl-mode-map :group 'bioperl + ;; version check + (if (string-match "\\(2[0-9]\\)\.[0-9]+\\(?:\.[0-9]+\\)?" (emacs-version)) + (if (>= (string-to-number (match-string 1 (emacs-version))) 22) + t + (error "Must upgrade to Emacs 22 to use bioperl-mode")) + (error "Must upgrade to Emacs 22 to use bioperl-mode")) ;; set up mode (bioperl-skel-elements)) From maj at dev.open-bio.org Sat Sep 12 22:52:06 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sat, 12 Sep 2009 22:52:06 -0400 Subject: [Bioperl-guts-l] [16070] bioperl-dev/trunk/ide/emacs/bioperl-mode/dist: retarred distribution Message-ID: <200909130252.n8D2q6Oh031509@dev.open-bio.org> Revision: 16070 Author: maj Date: 2009-09-12 22:52:06 -0400 (Sat, 12 Sep 2009) Log Message: ----------- retarred distribution Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar 2009-09-13 02:50:38 UTC (rev 16069) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar 2009-09-13 02:52:06 UTC (rev 16070) @@ -1,116 +1,4 @@ -./ -static char * bpmode_tool_dis_xpm[] = { -"24 24 85 1", -" c None", -". c #555555", -"+ c #A9A9A9", -"@ c #AAAAAA", -"# c #A3A3A3", -"$ c #9A9A9A", -"% c #ABABAB", -"& c #ACACAC", -"* c #A8A8A8", -"= c #A7A7A7", -"- c #A6A6A6", -"; c #A5A5A5", -"> c #9E9E9E", -", c #383838", -"' c #484848", -") c #454545", -"! c #1B1B1B", -"~ c #9B9B9B", -"{ c #A4A4A4", -"] c #A2A2A2", -"^ c #A1A1A1", -"/ c #959595", -"( c #1A1A1A", -"_ c #858585", -": c #717171", -"< c #505050", -"[ c #A0A0A0", -"} c #818181", -"| c #262626", -"1 c #878787", -"2 c #727272", -"3 c #545454", -"4 c #767676", -"5 c #4C4C4C", -"6 c #141414", -"7 c #9F9F9F", -"8 c #797979", -"9 c #0D0D0D", -"0 c #181818", -"a c #4D4D4D", -"b c #7D7D7D", -"c c #494949", -"d c #252525", -"e c #9D9D9D", -"f c #7B7B7B", -"g c #0E0E0E", -"h c #737373", -"i c #242424", -"j c #6A6A6A", -"k c #8C8C8C", -"l c #7F7F7F", -"m c #616161", -"n c #313131", -"o c #202020", -"p c #0F0F0F", -"q c #343434", -"r c #6E6E6E", -"s c #828282", -"t c #9C9C9C", -"u c #999999", -"v c #989898", -"w c #222222", -"x c #585858", -"y c #5E5E5E", -"z c #969696", -"A c #888888", -"B c #626262", -"C c #434343", -"D c #939393", -"E c #979797", -"F c #4F4F4F", -"G c #272727", -"H c #949494", -"I c #8D8D8D", -"J c #929292", -"K c #686868", -"L c #868686", -"M c #5D5D5D", -"N c #919191", -"O c #8E8E8E", -"P c #7A7A7A", -"Q c #8F8F8F", -"R c #676767", -"S c #8A8A8A", -"T c #909090", -" ", -" ", -" .................... ", -" .++++@@@#$@%%&%*=-;. ", -" .*+@@@@>,'@@%@=-;##. ", -" .+++@@@)!~%%@-=;{]^. ", -" . at ++@@/(_ at -;:<;{]^[. ", -" . at +@@@}|123456{][77. ", -" . at ++@@890ab7cd][7>e. ", -" .@@@@@fgh#=-ij[7>~~. ", -" .%%%@%_|kl:mn[7e~$$. ", -" .@@@%%~opqr,s7>t$uv. ", -" .%+%%@*'w>xy7>t$vzz. ", -" .%%%@*-A9BCDe~$vEz/. ", -" .@%@*=-{FGAet~vzzHD. ", -" .&@*=;{z3FI~~uz//JJ. ", -" .%*-;{vKbLMkvEzHJNN. ", -" .+=;#]EOePw/yRjxSJNQOT. ", -" .-#^[[>~$/z/82QOOOQ. ", -" .-#^[7e~$vzHHJTQQQN. ", -" .................... ", -" ", -" "}; - +./ static char * bpmode_tool_xpm[] = { "24 24 280 2", " c None", @@ -417,7 +305,119 @@ " . . . . . . . . . . . . . . . . . . . . ", " ", " "}; - + +static char * bpmode_tool_dis_xpm[] = { +"24 24 85 1", +" c None", +". c #555555", +"+ c #A9A9A9", +"@ c #AAAAAA", +"# c #A3A3A3", +"$ c #9A9A9A", +"% c #ABABAB", +"& c #ACACAC", +"* c #A8A8A8", +"= c #A7A7A7", +"- c #A6A6A6", +"; c #A5A5A5", +"> c #9E9E9E", +", c #383838", +"' c #484848", +") c #454545", +"! c #1B1B1B", +"~ c #9B9B9B", +"{ c #A4A4A4", +"] c #A2A2A2", +"^ c #A1A1A1", +"/ c #959595", +"( c #1A1A1A", +"_ c #858585", +": c #717171", +"< c #505050", +"[ c #A0A0A0", +"} c #818181", +"| c #262626", +"1 c #878787", +"2 c #727272", +"3 c #545454", +"4 c #767676", +"5 c #4C4C4C", +"6 c #141414", +"7 c #9F9F9F", +"8 c #797979", @@ Diff output truncated at 10000 characters. @@ From maj at dev.open-bio.org Sun Sep 13 19:32:44 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sun, 13 Sep 2009 19:32:44 -0400 Subject: [Bioperl-guts-l] [16071] bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el: Parse pod ourselves Message-ID: <200909132332.n8DNWiuY007313@dev.open-bio.org> Revision: 16071 Author: maj Date: 2009-09-13 19:32:43 -0400 (Sun, 13 Sep 2009) Log Message: ----------- Parse pod ourselves Added Paths: ----------- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el Added: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el (rev 0) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el 2009-09-13 23:32:43 UTC (rev 16071) @@ -0,0 +1,182 @@ +;; $Id$ +;; +;; emacs functions for simple pod parsing +;; reduce perl code to its pod2text in a buffer +;; +;; + +(defvar pod-keywords + '( "pod" "head1" "head2" "head3" "head4" "over" "item" "back" "begin" "end" "for" "encoding" "cut" ) + "Perl pod keywords (sans '=') ") + +(defvar pod-format-codes + '( "I" "B" "C" "L" "E" "F" "S" "X" "Z" ) + "Perl pod format codes (sans <>)" ) + +(defun pod-parse-buffer (buf) + "Parse the pod in the BUF. +Removes code and leaves pod. Does some simple formatting a la +pod2text as setup for pod-mode." + (save-excursion + (set-buffer buf) + (let ( + (cur-state) + (cur-content) + (tmp-state) + (tmp-content) + (encoding-type) + (parse-tree '(("Root"))) + (line) + (header-level) + (beg (goto-char (point-min))) + (end) + (tbeg) (tend) ;; text region + ) + (goto-char (point-min)) + ;; get encoding if present + (if (re-search-forward "^=encoding\\s +\\(.*?\\)\\s " (point-max) t) + (setq encoding-type (match-string 1))) + (goto-char (point-min)) + (while (not (eobp)) + (setq end (re-search-forward "^=\\([a-z0-9]+\\)\\s *\\(.*?\\)\\s *$" (point-max) 1)) + (if (not end) + t ;; done + (setq tmp-state (match-string 1)) + (setq tmp-content (match-string 2)) + (if (not cur-state) + (progn + (beginning-of-line) + (pod-do-format "ignore" beg (point)) + (setq end beg))) + (setq cur-state tmp-state) + (setq cur-content tmp-content) + (if (not cur-state) + t ;; done + ;; otherwise, in a pod region + (if (not (member cur-state pod-keywords)) + (error (concat "'" cur-state "' not a pod keyword"))) + (cond + ( (not cur-state) + nil ;; ???? + ) + ( (string-equal cur-state "cut") + (forward-line 0) + (kill-line 2) + (pod-do-format "text" beg (point)) + (setq cur-state nil) ) + ( (string-equal cur-state "pod") + (forward-line 0) + (kill-line 2) + (pod-do-format "text" beg (point)) + ) + ( (string-match "head\\([1-4]\\)" cur-state) + (setq head-level (string-to-number (match-string 1 cur-state))) + (forward-line 0) + (kill-line 2) + (pod-do-format "text" beg (point)) + (if (not cur-content) + nil + (insert-char ? (* 2 (1- head-level))) + (insert cur-content "\n")) + ) + ( (string-equal cur-state "over") + (let ( + (indent-level cur-content) + (back (save-excursion + (re-search-forward "^=back" (point-max) t))) + ) + (unless back + (error "=over has no matching =back")) + (forward-line 0) + (kill-line 2) + (pod-do-format "text" beg (point)) + (setq beg (point)) + (while (re-search-forward "^=item\\s +\\(.*?\\)\\s *$" back t) + (forward-line 0) + (kill-line nil) + (pod-do-format "text" beg (point)) + (insert " * " (match-string 1) "\n") + (setq beg (point))) + (re-search-forward "^=back" (point-max)) + (forward-line 0) + (kill-line 2) + (pod-do-format "text" beg (point)) + )) + ( (string-equal cur-state "begin") + (let ( + (format cur-content) + (end (save-excursion + (re-search-forward (concat "^=end\\s +" format) + (point-max) t))) + (content-beg) (content-end) + ) + (unless end + (error (concat "=begin " format " has no matching end."))) + (forward-line 0) + (kill-line 2) + (setq content-beg (point)) + (re-search-forward (concat "^=end\\s +" format)) + (forward-line 0) + (kill-line 2) + (setq content-end (point)) + (pod-do-format format content-beg content-end) + )) + ( (string-equal cur-state "for") + (string-match "\\([a-z]+\\)\\s +\\(.*?\\)\\s *$" cur-content) + (let ( + (format (match-string 1 cur-content)) + (content (match-string 2 cur-content)) + ) + (forward-line 0) + (kill-line 2) + (pod-do-format "text" beg (point)) + )) + ( (string-equal cur-state "encoding") + (let ( + (type cur-content) + ) + (forward-line 0) + (kill-line 2) + (pod-do-format "text" beg (point)) + t)) + )) + ;; movement here? + (setq beg (point)) + (setq cur-content nil) ;; clear means 'moved off pod descr line' + )) + (pod-do-format (if cur-state "text" "ignore") beg (point-max)) + t) + )) + +(defun pod-do-format (format beg end) + "Handle pod =begin format ... =end format blocks. +FORMAT is a format identifier (a string); BEG and END define the +text region." + ;; ignore for now + (if (= beg end) + nil + (cond + ((string-equal format "ignore") + (delete-region beg end)) + ((string-equal format "text") + ;; format ordinary and verbatim lines + (save-excursion + (goto-char beg) + (forward-line 0) + (while (and (< (point) end) (not (eobp))) + (cond + ((string-match "[[:blank:]]" (char-to-string (char-after))) + (insert-char ? 4) + (setq end (+ end 4))) + ((string-match "[[:space:]]" (char-to-string (char-after))) + t) + (t + (insert-char ? 4) + (setq end (+ end 4)))) + (forward-line 1) + ))) + (t + ;; otherwise, remove (ignore) + (delete-region beg end)) ))) + +(provide 'pod.el) \ No newline at end of file Property changes on: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el ___________________________________________________________________ Name: svn:executable + * Name: svn:keywords + Id Date Author Rev From maj at dev.open-bio.org Sun Sep 13 21:07:36 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sun, 13 Sep 2009 21:07:36 -0400 Subject: [Bioperl-guts-l] [16072] bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp: removed dependency on pod2text; Message-ID: <200909140107.n8E17aZD007716@dev.open-bio.org> Revision: 16072 Author: maj Date: 2009-09-13 21:07:36 -0400 (Sun, 13 Sep 2009) Log Message: ----------- removed dependency on pod2text; parsing now done entirely in Emacs using pod.el Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-13 23:32:43 UTC (rev 16071) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-14 01:07:36 UTC (rev 16072) @@ -129,28 +129,6 @@ ;; finders ;; -(defun bioperl-find-system-pod2text (&optional symb val) - "Find the system's pod2text program and set `bioperl-system-pod2text' to its full path. -Returns path on success; nil on failure. Doesn't work very -hard. SYMB and VAL are dummy variables allowing this function to -be used by `defcustom' to initialize" - (let ( (old-exec-path exec-path) - (pth nil)) - ;; safe path - (if (or (not (boundp 'bioperl-mode-safe-flag)) - bioperl-mode-safe-flag) - (setq exec-path bioperl-safe-PATH)) - ;; see if pod2text runs...if so do the easy thing - (setq bioperl-system-pod2text - (if (eq (call-process "pod2text" nil nil t) 0) - "pod2text" - nil)) - ;; restore old exec-path - (setq exec-path old-exec-path) - ) - ;; retval here - bioperl-system-pod2text - ) (defun bioperl-find-module-path (&optional symb val) "Find path to Bioperl modules and set `bioperl-module-path'. @@ -306,9 +284,6 @@ ;; rudimentary perl syntax highlighting ("[%$][{]?\\([a-zA-Z0-9_]+\\)[}]?" 1 'font-lock-variable-name-face) ("[^a-zA-Z0-9]@[{]?\\([a-zA-Z0-9_]+\\)[}]?" 1 'font-lock-variable-name-face) - ("\\(\\<[a-zA-Z0-9_]+\\>\\)()" 0 font-lock-function-name-face ) - ("\\(\\<[a-zA-Z0-9_]+\\>\\)[\(]" 1 font-lock-function-name-face ) - ("\\>->\\(\\<[a-zA-Z0-9_]+\\>\\)" 1 font-lock-function-name-face) ("\\>->\\<" . 'pod-deref-symb-face) ("\\(?:\\s \\|\\>\\)\\(=>\\)\\(?:\\s \\|\\<\\|[\'\"]\\)" 1 'pod-assoc-symb-face) ("\\(?:\\W\\|\\s \\)\\(-[a-zA-Z0-9_]+\\)\\>" 1 'pod-key-value-arg-face) @@ -322,6 +297,11 @@ ("^\\s +[a-zA-Z]+\\s *:\\s " . 'pod-method-pod-tag-face) ("^[A-Z].*" . 'pod-method-subsec-face) ("Bio::\\(?:[a-zA-Z0-9_:]+\\)+" . 'pod-bioperl-identifier-face) + ;; post-header syntax highlights + ("\\(\\<[a-zA-Z0-9_]+\\>\\)()" 0 font-lock-function-name-face ) + ("\\(\\<[a-zA-Z0-9_]+\\>\\)[\(]" 1 font-lock-function-name-face ) + ("\\>->\\(\\<[a-zA-Z0-9_]+\\>\\)" 1 font-lock-function-name-face) + ) "Font lock keywords for highlighting Perl pod." ) Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-13 23:32:43 UTC (rev 16071) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-14 01:07:36 UTC (rev 16072) @@ -54,8 +54,7 @@ ;; POD content is obtained exclusively by accessing the user's installed ;; Bioperl modules -- so it's as up-to-date as the user's installation. ;; -;; POD is parsed first by calling out to pod2text; I believe this is a -;; standard utility with perl distributions. +;; Pod is parsed with a homebrew parser found in pod.el. ;; ;; Much of the parsing in this package depends on the standard form of ;; Bioperl pod; particularly on the typical division into NAME, @@ -92,6 +91,7 @@ (require 'skeleton) (require 'bioperl-skel) (require 'bioperl-init) +(require 'pod) (defconst bioperl-mode-revision "$Id$" "The revision string of bioperl-mode.el") @@ -115,28 +115,12 @@ :type 'boolean :group 'bioperl) -(defcustom bioperl-pod2text-args '("") - "A list of pod2text arguments. -Must be single characters preceded by dashes. Args used with -pod2text when viewing full pod. Do 'pod2text --help' for -possibilities." - :type 'sexp - :group 'bioperl - ) - (defcustom bioperl-safe-PATH '() "Safe exec-path for bioperl-mode." :type 'sexp :initialize 'bioperl-set-safe-PATH :group 'bioperl) -(defcustom bioperl-system-pod2text nil - "Contains the path to the pod2text command. -On init, set is attempted by `bioperl-find-system-pod2text'." - :type 'file - :initialize 'bioperl-find-system-pod2text - :group 'bioperl) - (defcustom bioperl-module-path nil "Local path to Bioperl modules. On init, set is attempted by `bioperl-find-module-path' Can indicate multiple search paths; define as PATH in your OS. The environment variable BPMODE_PATH will override everything." @@ -317,11 +301,6 @@ (defun bioperl-view-full-pod (module &optional n) "Open the Bioperl POD for the MODULE for viewing in another buffer. MODULE is in double-colon format." - (unless bioperl-system-pod2text - (unless (bioperl-find-system-pod2text) - (error "Can't find pod2text; try setting bioperl-system-pod2text manually"))) - (unless (bioperl-check-system-pod2text) - (error "Unexpected command in bioperl-system-pod2text; aborting...")) (unless (and module (stringp module)) (error "String required at arg MODULE")) (unless (or (not n) (numberp n)) @@ -331,35 +310,23 @@ (if (not module) nil (let ( - (old-exec-path exec-path) (pod-buf (generate-new-buffer "*BioPerl POD*")) (pmfile (bioperl-path-from-perl module nil n)) - (args bioperl-pod2text-args) ) (unless pmfile (error "Module specified by MODULE not found in installation")) - ;; safe path - (if bioperl-mode-safe-flag - (setq exec-path bioperl-safe-PATH)) - ;; untaint pod2text args - (setq args (remove - nil - (mapcar (lambda (x) (and (string-match "^[-].$" x) x)) - args))) (save-excursion (set-buffer pod-buf) - (pod-mode) (setq header-line-format (concat "POD - BioPerl module " module " @ " (file-name-squish (elt (split-string bioperl-module-path path-separator) n)) )) - (apply 'call-process bioperl-system-pod2text - nil t t pmfile args) + (insert-file-contents pmfile) + (pod-parse-buffer (current-buffer)) + (pod-mode) (goto-char (point-min)) (bioperl-view-mode) (set (make-local-variable 'bioperl-source-file) pmfile) (pop-to-buffer pod-buf)) - ;; restore old exec-path - (setq exec-path old-exec-path) ) ;;return val t )) @@ -369,11 +336,6 @@ MODULE is in double-colon format. SECTION is a string; one of SYNOPSIS, DESCRIPTION, or APPENDIX. N is the index of the desired component of bioperl-module-path." - (unless bioperl-system-pod2text - (unless (bioperl-find-system-pod2text) - (error "Can't find pod2text; try setting bioperl-system-pod2text manually"))) - (unless (bioperl-check-system-pod2text) - (error "Unexpected command in bioperl-system-pod2text; aborting...")) (unless (stringp module) (error "String required at arg MODULE")) (unless (stringp section) @@ -386,24 +348,19 @@ (setq n 0)) (let ( (pod-buf (generate-new-buffer "*BioPerl POD*")) - (args '("-a")) (ret nil) (pmfile (bioperl-path-from-perl module nil n)) - (old-exec-path exec-path) ) (unless pmfile (error "Module specified by MODULE not found in installation")) - ;; safe path - (if bioperl-mode-safe-flag - (setq exec-path bioperl-safe-PATH)) (save-excursion (set-buffer pod-buf) (pod-mode) (setq header-line-format (concat section " - BioPerl module " module " @ " (file-name-squish (elt (split-string bioperl-module-path path-separator) n)) )) - (apply 'call-process bioperl-system-pod2text - nil t t pmfile args) + (insert-file-contents pmfile) + (pod-parse-buffer (current-buffer) t) (goto-char (point-min)) ;; clip to desired section (if (search-forward (concat "== " section) (point-max) t) @@ -426,8 +383,6 @@ (setq ret t)) (kill-buffer pod-buf) ) - ;; restore old exec-path - (setq exec-path old-exec-path) ) ret )) @@ -457,11 +412,6 @@ `bioperl-method-pod-cache' and `bioperl-cached-module'." (unless (stringp module) (error "String required at arg MODULE")) - (unless bioperl-system-pod2text - (unless (bioperl-find-system-pod2text) - (error "pod2text path not set yet; you can set bioperl-system-pod2text manually or call bioperl-find-system-pod2text"))) - (unless (bioperl-check-system-pod2text) - (error "Unexpected command in bioperl-system-pod2text; aborting...")) (let ( (pmfile (bioperl-path-from-perl module nil n)) ) @@ -477,14 +427,9 @@ (data-elt-cdr '()) (old-exec-path exec-path) ) - ;; safe path - (if bioperl-mode-safe-flag - (setq exec-path bioperl-safe-PATH)) (with-temp-buffer - (if (not (= 0 - (call-process bioperl-system-pod2text - nil t t pmfile "-a"))) - (error "pod2text failed")) + (insert-file-contents pmfile) + (pod-parse-buffer (current-buffer) t) ;; clip to desired section (goto-char (point-min)) (if (search-forward "= APPENDIX" (point-max) t) @@ -1277,16 +1222,6 @@ (setq bioperl-module-names-cache '(("Bio")))) ;; -;; taint checkers -;; - -(defun bioperl-check-system-pod2text () - "See if `bioperl-system-pod2text' is naughty." - (if (and bioperl-system-pod2text (string-match "pod2text\\(\\|\\.bat\\|\\.exe\\)$" bioperl-system-pod2text)) - t - nil)) - -;; ;; utilities (out of bioperl- namespace) ;; Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el 2009-09-13 23:32:43 UTC (rev 16071) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el 2009-09-14 01:07:36 UTC (rev 16072) @@ -1,10 +1,37 @@ ;; $Id$ ;; -;; emacs functions for simple pod parsing -;; reduce perl code to its pod2text in a buffer + ;; +;; Emacs functions for simple Perl pod parsing +;; parse result format based on pod2text +;; +;; required in bioperl-mode.el ;; +;; Author: Mark A. Jensen +;; Email : maj -at- fortinbras -dot- us +;; +;; Part of The Documentation Project +;; http://www.bioperl.org/wiki/The_Documentation_Project +;; +;; +;; Copyright (C) 2009 Mark A. Jensen + +;; This program is free software; you can redistribute it and/or +;; modify it under the terms of the GNU General Public License as @@ Diff output truncated at 10000 characters. @@ From maj at dev.open-bio.org Sun Sep 13 21:10:37 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sun, 13 Sep 2009 21:10:37 -0400 Subject: [Bioperl-guts-l] [16073] bioperl-dev/trunk/ide/emacs/bioperl-mode/dist: retarred (r16072) Message-ID: <200909140110.n8E1AbJb007768@dev.open-bio.org> Revision: 16073 Author: maj Date: 2009-09-13 21:10:37 -0400 (Sun, 13 Sep 2009) Log Message: ----------- retarred (r16072) Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar 2009-09-14 01:07:36 UTC (rev 16072) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar 2009-09-14 01:10:37 UTC (rev 16073) @@ -417,7 +417,7 @@ " .................... ", " ", " "}; - + ;; ;; Init functions for Bioperl minor mode @@ -448,7 +448,7 @@ ;; Boston, MA 02110-1301 USA -(defconst bioperl-init-revision "$Id: bioperl-init.el 16069 2009-09-13 02:50:38Z maj $" +(defconst bioperl-init-revision "$Id: bioperl-init.el 16072 2009-09-14 01:07:36Z maj $" "The revision string of bioperl-init.el") @@ -548,28 +548,6 @@ ;; finders ;; -(defun bioperl-find-system-pod2text (&optional symb val) - "Find the system's pod2text program and set `bioperl-system-pod2text' to its full path. -Returns path on success; nil on failure. Doesn't work very -hard. SYMB and VAL are dummy variables allowing this function to -be used by `defcustom' to initialize" - (let ( (old-exec-path exec-path) - (pth nil)) - ;; safe path - (if (or (not (boundp 'bioperl-mode-safe-flag)) - bioperl-mode-safe-flag) - (setq exec-path bioperl-safe-PATH)) - ;; see if pod2text runs...if so do the easy thing - (setq bioperl-system-pod2text - (if (eq (call-process "pod2text" nil nil t) 0) - "pod2text" - nil)) - ;; restore old exec-path - (setq exec-path old-exec-path) - ) - ;; retval here - bioperl-system-pod2text - ) (defun bioperl-find-module-path (&optional symb val) "Find path to Bioperl modules and set `bioperl-module-path'. @@ -725,9 +703,6 @@ ;; rudimentary perl syntax highlighting ("[%$][{]?\\([a-zA-Z0-9_]+\\)[}]?" 1 'font-lock-variable-name-face) ("[^a-zA-Z0-9]@[{]?\\([a-zA-Z0-9_]+\\)[}]?" 1 'font-lock-variable-name-face) - ("\\(\\<[a-zA-Z0-9_]+\\>\\)()" 0 font-lock-function-name-face ) - ("\\(\\<[a-zA-Z0-9_]+\\>\\)[\(]" 1 font-lock-function-name-face ) - ("\\>->\\(\\<[a-zA-Z0-9_]+\\>\\)" 1 font-lock-function-name-face) ("\\>->\\<" . 'pod-deref-symb-face) ("\\(?:\\s \\|\\>\\)\\(=>\\)\\(?:\\s \\|\\<\\|[\'\"]\\)" 1 'pod-assoc-symb-face) ("\\(?:\\W\\|\\s \\)\\(-[a-zA-Z0-9_]+\\)\\>" 1 'pod-key-value-arg-face) @@ -741,6 +716,11 @@ ("^\\s +[a-zA-Z]+\\s *:\\s " . 'pod-method-pod-tag-face) ("^[A-Z].*" . 'pod-method-subsec-face) ("Bio::\\(?:[a-zA-Z0-9_:]+\\)+" . 'pod-bioperl-identifier-face) + ;; post-header syntax highlights + ("\\(\\<[a-zA-Z0-9_]+\\>\\)()" 0 font-lock-function-name-face ) + ("\\(\\<[a-zA-Z0-9_]+\\>\\)[\(]" 1 font-lock-function-name-face ) + ("\\>->\\(\\<[a-zA-Z0-9_]+\\>\\)" 1 font-lock-function-name-face) + ) "Font lock keywords for highlighting Perl pod." ) @@ -810,9 +790,231 @@ (provide 'bioperl-init) -;;; end bioperl-init.el +;;; end bioperl-init.el +;; ;; +;; Emacs functions for simple Perl pod parsing +;; parse result format based on pod2text +;; +;; required in bioperl-mode.el +;; +;; Author: Mark A. Jensen +;; Email : maj -at- fortinbras -dot- us +;; +;; Part of The Documentation Project +;; http://www.bioperl.org/wiki/The_Documentation_Project +;; +;; + +;; Copyright (C) 2009 Mark A. Jensen + +;; This program is free software; you can redistribute it and/or +;; modify it under the terms of the GNU General Public License as +;; published by the Free Software Foundation; either version 3 of +;; the License, or (at your option) any later version. + +;; This program is distributed in the hope that it will be +;; useful, but WITHOUT ANY WARRANTY; without even the implied +;; warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR +;; PURPOSE. See the GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public +;; License along with this program; if not, write to the Free +;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +;; Boston, MA 02110-1301 USA + +(defvar pod-keywords + '( "pod" "head1" "head2" "head3" "head4" "over" "item" "back" "begin" "end" "for" "encoding" "cut" ) + "Perl pod keywords (sans '=') ") + +(defvar pod-format-codes + '( "I" "B" "C" "L" "E" "F" "S" "X" "Z" ) + "Perl pod format codes (sans <>)" ) + +(defun pod-parse-buffer (buf &optional alt-format) + "Parse the pod in the BUF. +Removes code and leaves pod. Does some simple formatting a la +pod2text as setup for pod-mode. If ALT-FORMAT is true, headers +are flanked by '='s as in pod2text -a. " + (save-excursion + (set-buffer buf) + (let ( + (cur-state) + (cur-content) + (tmp-state) + (tmp-content) + (encoding-type) + (parse-tree '(("Root"))) + (line) + (header-level) + (beg (goto-char (point-min))) + (end) + (tbeg) (tend) ;; text region + ) + (goto-char (point-min)) + ;; get encoding if present + (if (re-search-forward "^=encoding\\s +\\(.*?\\)\\s " (point-max) t) + (setq encoding-type (match-string 1))) + (goto-char (point-min)) + (while (not (eobp)) + (setq end (re-search-forward "^=\\([a-z0-9]+\\)\\s *\\(.*?\\)\\s *$" (point-max) 1)) + (if (not end) + t ;; done + (setq tmp-state (match-string 1)) + (setq tmp-content (match-string 2)) + (if (not cur-state) + (progn + (beginning-of-line) + (pod-do-format "ignore" beg (point)) + (setq end beg))) + (setq cur-state tmp-state) + (setq cur-content tmp-content) + (if (not cur-state) + t ;; done + ;; otherwise, in a pod region @@ Diff output truncated at 10000 characters. @@ From maj at dev.open-bio.org Sun Sep 13 22:09:56 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sun, 13 Sep 2009 22:09:56 -0400 Subject: [Bioperl-guts-l] [16074] bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el: parser tweaks Message-ID: <200909140209.n8E29u4Y007982@dev.open-bio.org> Revision: 16074 Author: maj Date: 2009-09-13 22:09:56 -0400 (Sun, 13 Sep 2009) Log Message: ----------- parser tweaks Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el 2009-09-14 01:10:37 UTC (rev 16073) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/pod.el 2009-09-14 02:09:56 UTC (rev 16074) @@ -66,7 +66,7 @@ (setq encoding-type (match-string 1))) (goto-char (point-min)) (while (not (eobp)) - (setq end (re-search-forward "^=\\([a-z0-9]+\\)\\s *\\(.*?\\)\\s *$" (point-max) 1)) + (setq end (re-search-forward "^=\\([a-z0-9]+\\)\\(?:$\\|\\s *\\(.*?\\)\\)$" (point-max) 1)) (if (not end) t ;; done (setq tmp-state (match-string 1)) @@ -130,13 +130,14 @@ (kill-line 2) (pod-do-format "text" beg (point)) (setq beg (point)) - (while (re-search-forward "^=item\\s +\\(.*?\\)\\s *$" back t) - (forward-line 0) - (kill-line nil) - (pod-do-format "text" beg (point)) - (if (not alt-format) - (insert " * " (match-string 1) "\n") - (insert ": " (match-string 1) "\n")) + (while (re-search-forward "^=item\\s +\\(.*?\\)$" back t) + (let ( (item (match-string 1) ) ) + (forward-line 0) + (kill-line 2) + (pod-do-format "text" beg (point)) + (if (not alt-format) + (insert " * " item "\n") + (insert ": " item "\n"))) (setq beg (point))) (re-search-forward "^=back" (point-max)) (forward-line 0) @@ -163,7 +164,7 @@ (pod-do-format format content-beg content-end) )) ( (string-equal cur-state "for") - (string-match "\\([a-z]+\\)\\s +\\(.*?\\)\\s *$" cur-content) + (string-match "\\([a-z]+\\)\\s +\\(.*?\\)$" cur-content) (let ( (format (match-string 1 cur-content)) (content (match-string 2 cur-content)) From maj at dev.open-bio.org Sun Sep 13 22:10:54 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Sun, 13 Sep 2009 22:10:54 -0400 Subject: [Bioperl-guts-l] [16075] bioperl-dev/trunk/ide/emacs/bioperl-mode/dist: retarred (r16074) Message-ID: <200909140210.n8E2AsvM008028@dev.open-bio.org> Revision: 16075 Author: maj Date: 2009-09-13 22:10:54 -0400 (Sun, 13 Sep 2009) Log Message: ----------- retarred (r16074) Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar 2009-09-14 02:09:56 UTC (rev 16074) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar 2009-09-14 02:10:54 UTC (rev 16075) @@ -790,7 +790,7 @@ (provide 'bioperl-init) -;;; end bioperl-init.el +;;; end bioperl-init.el ;; ;; @@ -858,7 +858,7 @@ (setq encoding-type (match-string 1))) (goto-char (point-min)) (while (not (eobp)) - (setq end (re-search-forward "^=\\([a-z0-9]+\\)\\s *\\(.*?\\)\\s *$" (point-max) 1)) + (setq end (re-search-forward "^=\\([a-z0-9]+\\)\\(?:$\\|\\s *\\(.*?\\)\\)$" (point-max) 1)) (if (not end) t ;; done (setq tmp-state (match-string 1)) @@ -922,13 +922,14 @@ (kill-line 2) (pod-do-format "text" beg (point)) (setq beg (point)) - (while (re-search-forward "^=item\\s +\\(.*?\\)\\s *$" back t) - (forward-line 0) - (kill-line nil) - (pod-do-format "text" beg (point)) - (if (not alt-format) - (insert " * " (match-string 1) "\n") - (insert ": " (match-string 1) "\n")) + (while (re-search-forward "^=item\\s +\\(.*?\\)$" back t) + (let ( (item (match-string 1) ) ) + (forward-line 0) + (kill-line 2) + (pod-do-format "text" beg (point)) + (if (not alt-format) + (insert " * " item "\n") + (insert ": " item "\n"))) (setq beg (point))) (re-search-forward "^=back" (point-max)) (forward-line 0) @@ -955,7 +956,7 @@ (pod-do-format format content-beg content-end) )) ( (string-equal cur-state "for") - (string-match "\\([a-z]+\\)\\s +\\(.*?\\)\\s *$" cur-content) + (string-match "\\([a-z]+\\)\\s +\\(.*?\\)$" cur-content) (let ( (format (match-string 1 cur-content)) (content (match-string 2 cur-content)) @@ -1012,7 +1013,7 @@ ;; otherwise, remove (ignore) (delete-region beg end)) ))) -(provide 'pod) +(provide 'pod) ;; ;; Template insertion skeletons for Bioperl minor mode Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-14 02:09:56 UTC (rev 16074) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-14 02:10:54 UTC (rev 16075) @@ -1 +1 @@ -a434da1eeba5bee00941742939527038 bioperl-mode.tar +6a433416988215be9bf0854010028c1a bioperl-mode.tar From maj at dev.open-bio.org Mon Sep 14 15:00:49 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Mon, 14 Sep 2009 15:00:49 -0400 Subject: [Bioperl-guts-l] [16076] bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp: bug squishes Message-ID: <200909141900.n8EJ0nrg013333@dev.open-bio.org> Revision: 16076 Author: maj Date: 2009-09-14 15:00:48 -0400 (Mon, 14 Sep 2009) Log Message: ----------- bug squishes Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-14 02:10:54 UTC (rev 16075) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-init.el 2009-09-14 19:00:48 UTC (rev 16076) @@ -234,7 +234,7 @@ "An easily-quittable View mode deriviation for bioperl-mode." :init-value nil :lighter "[bio]" - :keymap ( let ( (map (cdr (assoc 'view-mode minor-mode-map-alist))) ) + :keymap ( let ( (map (copy-keymap (cdr (assoc 'view-mode minor-mode-map-alist)))) ) (if map (progn (define-key map [menu-bar] nil) Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-14 02:10:54 UTC (rev 16075) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/site-lisp/bioperl-mode.el 2009-09-14 19:00:48 UTC (rev 16076) @@ -317,12 +317,12 @@ (error "Module specified by MODULE not found in installation")) (save-excursion (set-buffer pod-buf) + (pod-mode) (setq header-line-format (concat "POD - BioPerl module " module " @ " (file-name-squish (elt (split-string bioperl-module-path path-separator) n)) )) (insert-file-contents pmfile) (pod-parse-buffer (current-buffer)) - (pod-mode) (goto-char (point-min)) (bioperl-view-mode) (set (make-local-variable 'bioperl-source-file) pmfile) From maj at dev.open-bio.org Mon Sep 14 15:29:31 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Mon, 14 Sep 2009 15:29:31 -0400 Subject: [Bioperl-guts-l] [16077] bioperl-dev/trunk/ide/emacs/bioperl-mode/dist: retarred (r16076) Message-ID: <200909141929.n8EJTVpI013519@dev.open-bio.org> Revision: 16077 Author: maj Date: 2009-09-14 15:29:31 -0400 (Mon, 14 Sep 2009) Log Message: ----------- retarred (r16076) Modified Paths: -------------- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar 2009-09-14 19:00:48 UTC (rev 16076) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar 2009-09-14 19:29:31 UTC (rev 16077) @@ -417,7 +417,7 @@ " .................... ", " ", " "}; - + ;; ;; Init functions for Bioperl minor mode @@ -448,7 +448,7 @@ ;; Boston, MA 02110-1301 USA -(defconst bioperl-init-revision "$Id: bioperl-init.el 16072 2009-09-14 01:07:36Z maj $" +(defconst bioperl-init-revision "$Id: bioperl-init.el 16076 2009-09-14 19:00:48Z maj $" "The revision string of bioperl-init.el") @@ -653,7 +653,7 @@ "An easily-quittable View mode deriviation for bioperl-mode." :init-value nil :lighter "[bio]" - :keymap ( let ( (map (cdr (assoc 'view-mode minor-mode-map-alist))) ) + :keymap ( let ( (map (copy-keymap (cdr (assoc 'view-mode minor-mode-map-alist)))) ) (if map (progn (define-key map [menu-bar] nil) @@ -790,7 +790,7 @@ (provide 'bioperl-init) -;;; end bioperl-init.el +;;; end bioperl-init.el ;; ;; @@ -1395,7 +1395,7 @@ (provide 'bioperl-skel) -;;; end bioperl-skel.el +;;; end bioperl-skel.el ;; use multiple paths in bioperl-module-path @@ -1490,7 +1490,7 @@ (require 'bioperl-init) (require 'pod) -(defconst bioperl-mode-revision "$Id: bioperl-mode.el 16072 2009-09-14 01:07:36Z maj $" +(defconst bioperl-mode-revision "$Id: bioperl-mode.el 16076 2009-09-14 19:00:48Z maj $" "The revision string of bioperl-mode.el") ;; @@ -1714,12 +1714,12 @@ (error "Module specified by MODULE not found in installation")) (save-excursion (set-buffer pod-buf) + (pod-mode) (setq header-line-format (concat "POD - BioPerl module " module " @ " (file-name-squish (elt (split-string bioperl-module-path path-separator) n)) )) (insert-file-contents pmfile) (pod-parse-buffer (current-buffer)) - (pod-mode) (goto-char (point-min)) (bioperl-view-mode) (set (make-local-variable 'bioperl-source-file) pmfile) Modified: bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 =================================================================== --- bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-14 19:00:48 UTC (rev 16076) +++ bioperl-dev/trunk/ide/emacs/bioperl-mode/dist/bioperl-mode.tar.md5 2009-09-14 19:29:31 UTC (rev 16077) @@ -1 +1 @@ -6a433416988215be9bf0854010028c1a bioperl-mode.tar +aea23b029cf078fedd09f9b9ebb33417 bioperl-mode.tar From cjfields at dev.open-bio.org Mon Sep 14 15:54:38 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 14 Sep 2009 15:54:38 -0400 Subject: [Bioperl-guts-l] [16078] bioperl-live/trunk/Bio/Search/HSP/FastaHSP.pm: verbosity should be the same as parent, not hard-coded Message-ID: <200909141954.n8EJscsI013660@dev.open-bio.org> Revision: 16078 Author: cjfields Date: 2009-09-14 15:54:37 -0400 (Mon, 14 Sep 2009) Log Message: ----------- verbosity should be the same as parent, not hard-coded Modified Paths: -------------- bioperl-live/trunk/Bio/Search/HSP/FastaHSP.pm Modified: bioperl-live/trunk/Bio/Search/HSP/FastaHSP.pm =================================================================== --- bioperl-live/trunk/Bio/Search/HSP/FastaHSP.pm 2009-09-14 19:29:31 UTC (rev 16077) +++ bioperl-live/trunk/Bio/Search/HSP/FastaHSP.pm 2009-09-14 19:54:37 UTC (rev 16078) @@ -178,7 +178,7 @@ '-frameshifts' => (exists $self->{seqinds}{_frameshiftRes_query}) ? $self->{seqinds}{_frameshiftRes_query} : undef, '-mapping' => [1, $self->{_query_mapping}], - -verbose => 1 + -verbose => $self->verbose ); $seqonly = $hs; $seqonly =~ s/\s+//g; @@ -189,7 +189,7 @@ '-frameshifts' => exists $self->{seqinds}{_frameshiftRes_sbjct} ? $self->{seqinds}{_frameshiftRes_sbjct} : undef, '-mapping' => [1, $self->{_hit_mapping}], - -verbose => 1 + -verbose => $self->verbose ); $aln->add_seq($query); $aln->add_seq($hit); From cjfields at dev.open-bio.org Mon Sep 14 15:55:40 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 14 Sep 2009 15:55:40 -0400 Subject: [Bioperl-guts-l] [16079] bioperl-live/trunk/Bio/Nexml/Factory.pm: untabify Message-ID: <200909141955.n8EJtepr013691@dev.open-bio.org> Revision: 16079 Author: cjfields Date: 2009-09-14 15:55:40 -0400 (Mon, 14 Sep 2009) Log Message: ----------- untabify Modified Paths: -------------- bioperl-live/trunk/Bio/Nexml/Factory.pm Modified: bioperl-live/trunk/Bio/Nexml/Factory.pm =================================================================== --- bioperl-live/trunk/Bio/Nexml/Factory.pm 2009-09-14 19:54:37 UTC (rev 16078) +++ bioperl-live/trunk/Bio/Nexml/Factory.pm 2009-09-14 19:55:40 UTC (rev 16079) @@ -83,10 +83,10 @@ BEGIN { use Bio::Root::Root; unless (eval "require Bio::Phylo; 1") { - Bio::Root::Root->throw("Bio::Phylo package required; see http://www.nexml.org for download details"); + Bio::Root::Root->throw("Bio::Phylo package required; see http://www.nexml.org for download details"); } } - + use Bio::Phylo::Factory; use Bio::Phylo::Matrices; use Bio::Phylo::Matrices::Matrix; @@ -114,8 +114,8 @@ =cut sub new { - my($class, at args) = @_; - my $self = $class->SUPER::new(@args); + my($class, at args) = @_; + my $self = $class->SUPER::new(@args); } #should all these creates be private methods? @@ -134,91 +134,91 @@ =cut sub create_bperl_aln { - my ($self, $caller) = @_; - my ($start, $end, $seq, $desc); - my $matrices = $caller->doc->get_matrices(); - my @alns; - - foreach my $matrix (@$matrices) - { - #check if mol_type is something that makes sense to be an aln - my $mol_type = lc($matrix->get_type()); - unless ($mol_type eq 'dna' || $mol_type eq 'rna' || $mol_type eq 'protein') - { - next; - # something for the back-burner: BioPerl has objects - # to handle arbitrary genotypes; might be cool to - # be able to create something besides alignments - # here .../maj - } - - #continue creating an aln - my $aln = Bio::SimpleAlign->new(); - my $taxa = $matrix->get_taxa(); + my ($self, $caller) = @_; + my ($start, $end, $seq, $desc); + my $matrices = $caller->doc->get_matrices(); + my @alns; + + foreach my $matrix (@$matrices) + { + #check if mol_type is something that makes sense to be an aln + my $mol_type = lc($matrix->get_type()); + unless ($mol_type eq 'dna' || $mol_type eq 'rna' || $mol_type eq 'protein') + { + next; + # something for the back-burner: BioPerl has objects + # to handle arbitrary genotypes; might be cool to + # be able to create something besides alignments + # here .../maj + } + #continue creating an aln + my $aln = Bio::SimpleAlign->new(); + my $taxa = $matrix->get_taxa(); + # TODO: should $caller->{_ID} always be defined? # ATM, this is a Bio::AlignIO::nexml stream... - $aln->{_Nexml_ID} = $caller->{_ID}? $caller->{_ID} . $taxa->get_xml_id : $taxa->get_xml_id; - - my $aln_feats = Bio::SeqFeature::Generic->new(); - $aln_feats->add_tag_value('NexmlIO_ID', $caller->{_ID}); - #check if there is a taxa associated with this alignment - if ($taxa) { - $aln_feats->add_tag_value('taxa_id', $taxa->get_xml_id()); - $aln_feats->add_tag_value('taxa_label', $taxa->get_name()) if $taxa->get_name(); - - my $taxon = $taxa->first; - while ($taxon) { - $aln_feats->add_tag_value('taxon', $taxon->get_name); - $taxon = $taxa->next; - } - } - $aln->add_SeqFeature($aln_feats); - - my $basename = $matrix->get_name(); - $aln->id($basename); - my $seqNum = 0; - my$row = $matrix->first; - while ($row) - { - my $newSeq = $row->get_char(); - my $rowlabel; - $seqNum++; - - #constuct seqID based on matrix label and row id - my $seqID = "$basename.row_$seqNum"; - - #Check if theres a row label and if not default to seqID - if( !defined($rowlabel = $row->get_name())) {$rowlabel = $seqID;} + $aln->{_Nexml_ID} = $caller->{_ID}? $caller->{_ID} . $taxa->get_xml_id : $taxa->get_xml_id; + + my $aln_feats = Bio::SeqFeature::Generic->new(); + $aln_feats->add_tag_value('NexmlIO_ID', $caller->{_ID}); + #check if there is a taxa associated with this alignment + if ($taxa) { + $aln_feats->add_tag_value('taxa_id', $taxa->get_xml_id()); + $aln_feats->add_tag_value('taxa_label', $taxa->get_name()) if $taxa->get_name(); + + my $taxon = $taxa->first; + while ($taxon) { + $aln_feats->add_tag_value('taxon', $taxon->get_name); + $taxon = $taxa->next; + } + } + $aln->add_SeqFeature($aln_feats); + + my $basename = $matrix->get_name(); + $aln->id($basename); + my $seqNum = 0; + my$row = $matrix->first; + while ($row) + { + my $newSeq = $row->get_char(); + my $rowlabel; + $seqNum++; + + #constuct seqID based on matrix label and row id + my $seqID = "$basename.row_$seqNum"; + + #Check if theres a row label and if not default to seqID + if( !defined($rowlabel = $row->get_name())) {$rowlabel = $seqID;} - $seq = Bio::LocatableSeq->new( - -seq => $newSeq, - -display_id => "$rowlabel", - #-description => $desc, - -alphabet => $mol_type, - ); - my $seq_feats; - #check if there is a taxa associated w/ this alignment - if($taxa) - { - if (my $taxon = $taxa->get_by_name($row->get_taxon->get_name())) { - #attach taxon to each sequence by using the sequenceID because - #LocatableSeq does not support features - my $taxon_name = $taxon->get_name(); - $seq_feats = Bio::SeqFeature::Generic->new(); - $seq_feats->add_tag_value('taxon', "$taxon_name"); - $seq_feats->add_tag_value('id', "$rowlabel"); - } - } - $aln->add_seq($seq); - $aln->add_SeqFeature($seq_feats); - $self->debug("Reading r$rowlabel\n"); - - $row = $matrix->next(); - } - push (@alns, $aln); - } - return \@alns; + $seq = Bio::LocatableSeq->new( + -seq => $newSeq, + -display_id => "$rowlabel", + #-description => $desc, + -alphabet => $mol_type, + ); + my $seq_feats; + #check if there is a taxa associated w/ this alignment + if($taxa) + { + if (my $taxon = $taxa->get_by_name($row->get_taxon->get_name())) { + #attach taxon to each sequence by using the sequenceID because + #LocatableSeq does not support features + my $taxon_name = $taxon->get_name(); + $seq_feats = Bio::SeqFeature::Generic->new(); + $seq_feats->add_tag_value('taxon', "$taxon_name"); + $seq_feats->add_tag_value('id', "$rowlabel"); + } + } + $aln->add_seq($seq); + $aln->add_SeqFeature($seq_feats); + $self->debug("Reading r$rowlabel\n"); + + $row = $matrix->next(); + } + push (@alns, $aln); + } + return \@alns; } @@ -235,107 +235,107 @@ =cut sub create_bperl_tree { - my($self, $caller) = @_; - my @trees; - - my $forests = $caller->doc->get_forests(); - - foreach my $forest (@$forests) - { - my $basename = $forest->get_name() || ''; - my $taxa = $forest->get_taxa(); - my $taxa_label = $taxa->get_name(); - my $taxa_id = $taxa->get_xml_id(); - - my $t = $forest->first(); + my($self, $caller) = @_; + my @trees; + + my $forests = $caller->doc->get_forests(); + + foreach my $forest (@$forests) + { + my $basename = $forest->get_name() || ''; + my $taxa = $forest->get_taxa(); + my $taxa_label = $taxa->get_name(); + my $taxa_id = $taxa->get_xml_id(); + + my $t = $forest->first(); - while ($t) - { - my %created_nodes; - my $tree_id = $t->get_name(); - my $tree = Bio::Tree::Tree->new(-id => "$basename.$tree_id"); + while ($t) + { + my %created_nodes; + my $tree_id = $t->get_name(); + my $tree = Bio::Tree::Tree->new(-id => "$basename.$tree_id"); - #set the taxa info of the tree - $tree->add_tag_value('taxa_label', $taxa_label) if defined($taxa_label); - $tree->add_tag_value('taxa_id', $taxa_id) if defined($taxa_id); + #set the taxa info of the tree + $tree->add_tag_value('taxa_label', $taxa_label) if defined($taxa_label); + $tree->add_tag_value('taxa_id', $taxa_id) if defined($taxa_id); # TODO: should $caller->{_ID} always be defined? # ATM, this is a Bio::TreeIO::nexml stream... - $tree->add_tag_value('_NexmlIO_ID', $caller->{_ID}) if $caller->{_ID}; - - my $taxon = $taxa->first; - while($taxon) { - $tree->add_tag_value('taxon', $taxon->get_name()) if defined($taxon->get_name); - $taxon = $taxa->next; - } - - #process terminals only, removing terminals as they get processed - #which inturn creates new terminals to process until the entire tree has been processed - my $terminals = $t->get_terminals(); -# for(my $i=0; $i<@$terminals; $i++) - while (my $terminal = shift @$terminals) - { -# my $terminal = $$terminals[$i]; - my $new_node_id = $terminal->get_name(); - my $newNode; + $tree->add_tag_value('_NexmlIO_ID', $caller->{_ID}) if $caller->{_ID}; + + my $taxon = $taxa->first; + while($taxon) { + $tree->add_tag_value('taxon', $taxon->get_name()) if defined($taxon->get_name); + $taxon = $taxa->next; + } + + #process terminals only, removing terminals as they get processed + #which inturn creates new terminals to process until the entire tree has been processed + my $terminals = $t->get_terminals(); +# for(my $i=0; $i<@$terminals; $i++) + while (my $terminal = shift @$terminals) + { +# my $terminal = $$terminals[$i]; + my $new_node_id = $terminal->get_name(); + my $newNode; - if(exists $created_nodes{$new_node_id}) - { @@ Diff output truncated at 10000 characters. @@ From cjfields at dev.open-bio.org Mon Sep 14 16:50:19 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 14 Sep 2009 16:50:19 -0400 Subject: [Bioperl-guts-l] [16080] bioperl-live/trunk: fix raw sequence tests (new variants weren' t working for some reason) Message-ID: <200909142050.n8EKoJoG013905@dev.open-bio.org> Revision: 16080 Author: cjfields Date: 2009-09-14 16:50:19 -0400 (Mon, 14 Sep 2009) Log Message: ----------- fix raw sequence tests (new variants weren't working for some reason) Modified Paths: -------------- bioperl-live/trunk/Bio/SeqIO/raw.pm bioperl-live/trunk/t/SeqIO/raw.t Modified: bioperl-live/trunk/Bio/SeqIO/raw.pm =================================================================== --- bioperl-live/trunk/Bio/SeqIO/raw.pm 2009-09-14 19:55:40 UTC (rev 16079) +++ bioperl-live/trunk/Bio/SeqIO/raw.pm 2009-09-14 20:50:19 UTC (rev 16080) @@ -97,8 +97,10 @@ sub _initialize { my($self, at args) = @_; - #$self->{record_sep} = (defined $gulp) ? undef : $/; $self->SUPER::_initialize(@args); + my ($variant) = $self->_rearrange([qw(VARIANT)], @args); + $variant ||= 'multiple'; + $self->variant($variant); if( ! defined $self->sequence_factory ) { $self->sequence_factory(Bio::Seq::SeqFactory->new (-verbose => $self->verbose(), Modified: bioperl-live/trunk/t/SeqIO/raw.t =================================================================== --- bioperl-live/trunk/t/SeqIO/raw.t 2009-09-14 19:55:40 UTC (rev 16079) +++ bioperl-live/trunk/t/SeqIO/raw.t 2009-09-14 20:50:19 UTC (rev 16080) @@ -7,7 +7,7 @@ use lib '.'; use Bio::Root::Test; - test_begin(-tests => 22, + test_begin(-tests => 24, -requires_modules => [], -requires_networking => 0, ); @@ -139,3 +139,12 @@ my $seq = $seqio_obj->next_seq; is($seq->seq, join('', @seq)); +$seqio_obj = Bio::SeqIO->new(-file => test_input_file("test2.raw"), + -format => 'raw', + -variant => 'single'); + +is($seqio_obj->variant, 'single'); + +$seq = $seqio_obj->next_seq; +is($seq->seq, join('', @seq)); + From bugzilla-daemon at portal.open-bio.org Mon Sep 14 17:57:37 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Mon, 14 Sep 2009 17:57:37 -0400 Subject: [Bioperl-guts-l] [Bug 2842] add mask_columns to SimpleAlign.pm In-Reply-To: Message-ID: <200909142157.n8ELvbp8021701@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2842 cjfields at bioperl.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|FIXED | ------- Comment #8 from cjfields at bioperl.org 2009-09-14 17:57 EST ------- (No offense to Tristan)... There is a significant logic bug with this patch. It's something we should address this with the Align refactor, but it only affects usage of this method and thus doesn't affect outside code. Quick explanation (will post a TODO bug as an example): Currently, Bio::LocatableSeq is aware (self-aware?) of it's coordinates based upon whatever symbols are present, whatever the mapping is (translated nuc, rev translated aa, etc), and whether they are gaps, residues, frameshifts, or others. The current implementation sets the start coordinate (and strand) and basically calculate/validate everything else around that, checking the sequence for the symbols. Passing anything to end() just checks the coordinate and warns if something doesn't match up (a nice failsafe check but nothing more). The problem with masking whole columns (as this implementation does) this is that the mask covers gaps and residues alike, so any coordinate calculations will now be wrong depending on what mask is used. It also doesn't reset the symbols to account for the mask. This is further compounded by the use of globals to define these symbols (so localizing them doesn't work as expected). There are a few possible solutions to this off the top of my head: 1) Don't mask gaps or other position-altering symbols beyond residues (probably the easiest fix). This may mean limiting what symbols can be used for masking. 2) Mask gaps with alternative symbols (which means one should be passing in named args) 3) Refactor Bio::LocatableSeq to account for gap pos/frameshifts/etc in other ways and move away from using symbols altogether for mapping -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Mon Sep 14 19:18:55 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Mon, 14 Sep 2009 19:18:55 -0400 Subject: [Bioperl-guts-l] [Bug 2914] New: ftp package no longer available during BioPerl1.6 installation Message-ID: http://bugzilla.open-bio.org/show_bug.cgi?id=2914 Summary: ftp package no longer available during BioPerl1.6 installation Product: BioPerl Version: 1.6 branch Platform: Macintosh OS/Version: Mac OS Status: UNCONFIRMED Severity: normal Priority: P2 Component: Unclassified AssignedTo: bioperl-guts-l at bioperl.org ReportedBy: joseguillin at hotmail.com I downloaded the BioPerl-1.6.0.tar.gz package from http://bioperl.org/DIST/ During perl Makefile.pl, it tries to install Digest-SHA1-2.11 via ftp ftp://ftp.perl.org/pub/CPAN/authors/id/G/GA/GAAS/Digest-SHA1-2.11.tar.gz but Digest-SHA1-2.11 is not longer available and it stucks. The new version is Digest-SHA1-2.12 ftp://ftp.perl.org/pub/CPAN/authors/id/G/GA/GAAS/Digest-SHA1-2.12.tar.gz Jose G. -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Mon Sep 14 21:04:30 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Mon, 14 Sep 2009 21:04:30 -0400 Subject: [Bioperl-guts-l] [Bug 2842] add mask_columns to SimpleAlign.pm In-Reply-To: Message-ID: <200909150104.n8F14Uv0025828@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2842 ------- Comment #9 from rmb32 at cornell.edu 2009-09-14 21:04 EST ------- Hmm, perhaps the addition of mask_columns and its attendant test should be reverted in the 1.6.1 branch then? I don't really have much of a handle on the issues with the current LocatableSeq implementation, but I can certainly perform this reversion if necessary. -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Mon Sep 14 21:05:29 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Mon, 14 Sep 2009 21:05:29 -0400 Subject: [Bioperl-guts-l] [Bug 2842] add mask_columns to SimpleAlign.pm In-Reply-To: Message-ID: <200909150105.n8F15TZR025884@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2842 ------- Comment #10 from rmb32 at cornell.edu 2009-09-14 21:05 EST ------- Actually, come to think of it, probably would be best to revert them in trunk, no? -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Mon Sep 14 21:06:31 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Mon, 14 Sep 2009 21:06:31 -0400 Subject: [Bioperl-guts-l] [Bug 2909] it is better to update the Bio::Tools::RepeatMasker module In-Reply-To: Message-ID: <200909150106.n8F16V2C025942@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2909 rmb32 at cornell.edu changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|1.6 release |1.7.0 release ------- Comment #2 from rmb32 at cornell.edu 2009-09-14 21:06 EST ------- pushed back milestone to 1.7 release -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From rbuels at dev.open-bio.org Mon Sep 14 21:11:21 2009 From: rbuels at dev.open-bio.org (Robert Buels) Date: Mon, 14 Sep 2009 21:11:21 -0400 Subject: [Bioperl-guts-l] [16081] bioperl-live/trunk/Bio/SimpleAlign.pm: regarding bug 2911, trivial doc patch to SYNOPSIS section of Bio::SimpleAlign Message-ID: <200909150111.n8F1BLKm014953@dev.open-bio.org> Revision: 16081 Author: rbuels Date: 2009-09-14 21:11:21 -0400 (Mon, 14 Sep 2009) Log Message: ----------- regarding bug 2911, trivial doc patch to SYNOPSIS section of Bio::SimpleAlign Modified Paths: -------------- bioperl-live/trunk/Bio/SimpleAlign.pm Modified: bioperl-live/trunk/Bio/SimpleAlign.pm =================================================================== --- bioperl-live/trunk/Bio/SimpleAlign.pm 2009-09-14 20:50:19 UTC (rev 16080) +++ bioperl-live/trunk/Bio/SimpleAlign.pm 2009-09-15 01:11:21 UTC (rev 16081) @@ -49,7 +49,7 @@ # Manipulate $aln->remove_seq($seq); $mini_aln = $aln->slice(20,30); # get a block of columns - $mini_aln = $aln->select_noncont(1,3,5,7,11); # get single columns + $mini_aln = $aln->select_noncont(1,3,5,7,11); # select certain sequences $new_aln = $aln->remove_columns([20,30]); # remove by position $new_aln = $aln->remove_columns(['mismatch']); # remove by property From bugzilla-daemon at portal.open-bio.org Mon Sep 14 21:14:29 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Mon, 14 Sep 2009 21:14:29 -0400 Subject: [Bioperl-guts-l] [Bug 2911] SimpleAlign select doc inconstistency In-Reply-To: Message-ID: <200909150114.n8F1ETqD026109@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2911 rmb32 at cornell.edu changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED ------- Comment #1 from rmb32 at cornell.edu 2009-09-14 21:14 EST ------- fixed in rev 16081, probably in time for 1.6.1 release. diff: Index: SimpleAlign.pm =================================================================== --- SimpleAlign.pm (revision 16080) +++ SimpleAlign.pm (revision 16081) @@ -49,7 +49,7 @@ # Manipulate $aln->remove_seq($seq); $mini_aln = $aln->slice(20,30); # get a block of columns - $mini_aln = $aln->select_noncont(1,3,5,7,11); # get single columns + $mini_aln = $aln->select_noncont(1,3,5,7,11); # select certain sequences $new_aln = $aln->remove_columns([20,30]); # remove by position $new_aln = $aln->remove_columns(['mismatch']); # remove by property -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From cjfields at dev.open-bio.org Mon Sep 14 22:04:06 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 14 Sep 2009 22:04:06 -0400 Subject: [Bioperl-guts-l] [16082] bioperl-live/trunk/t/Align/SimpleAlign.t: a TODO test case for bug 2842 Message-ID: <200909150204.n8F246cM015330@dev.open-bio.org> Revision: 16082 Author: cjfields Date: 2009-09-14 22:04:06 -0400 (Mon, 14 Sep 2009) Log Message: ----------- a TODO test case for bug 2842 Modified Paths: -------------- bioperl-live/trunk/t/Align/SimpleAlign.t Modified: bioperl-live/trunk/t/Align/SimpleAlign.t =================================================================== --- bioperl-live/trunk/t/Align/SimpleAlign.t 2009-09-15 01:11:21 UTC (rev 16081) +++ bioperl-live/trunk/t/Align/SimpleAlign.t 2009-09-15 02:04:06 UTC (rev 16082) @@ -7,7 +7,7 @@ use lib '.'; use Bio::Root::Test; - test_begin( -tests => 169 ); + test_begin( -tests => 173 ); use_ok('Bio::SimpleAlign'); use_ok('Bio::AlignIO'); @@ -350,7 +350,7 @@ is( $a->get_seq_by_pos(1)->seq, 'AAA', "bug 2793" ); ok( $a->add_seq( $s21, 2 ), "bug 2793" ); is( $a->get_seq_by_pos(2)->seq, 'CCC', "bug 2793" ); - throws_ok { $a->add_seq( $s21, 0 ) } qr/must be >= 1/; + throws_ok { $a->add_seq( $s21, 0 ) } qr/must be >= 1/, 'Bad sequence, bad!'; } # test for Bio::SimpleAlign annotation method and @@ -415,6 +415,12 @@ for my $feature ( $aln->get_SeqFeatures ) { for my $loc ( $feature->location->each_Location ) { my $masked = $aln->mask_columns( $loc->start, $loc->end, '?'); + TODO: { + local $TODO = "This should pass but dies; see bug 2842"; + $masked->verbose(2); + lives_ok {my $fslice = $masked->slice( $loc->start, $loc->end )}; + } + $masked->verbose(-1); my $fslice = $masked->slice( $loc->start, $loc->end ); is( $fslice->length, $slice_lens[ $i++ ], "slice $i len" ); for my $s ( $fslice->each_seq ) { From cjfields at dev.open-bio.org Mon Sep 14 23:43:59 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Mon, 14 Sep 2009 23:43:59 -0400 Subject: [Bioperl-guts-l] [16083] bioperl-live/trunk: [bug 2843] Message-ID: <200909150343.n8F3hx0O015724@dev.open-bio.org> Revision: 16083 Author: cjfields Date: 2009-09-14 23:43:59 -0400 (Mon, 14 Sep 2009) Log Message: ----------- [bug 2843] * mask_columns() only masks residues or anything that counts for length() * still a bit fussy, probably with splice() moreso than this method now Modified Paths: -------------- bioperl-live/trunk/Bio/SimpleAlign.pm bioperl-live/trunk/t/Seq/LocatableSeq.t bioperl-live/trunk/t/Tools/Primer3.t Modified: bioperl-live/trunk/Bio/SimpleAlign.pm =================================================================== --- bioperl-live/trunk/Bio/SimpleAlign.pm 2009-09-15 02:04:06 UTC (rev 16082) +++ bioperl-live/trunk/Bio/SimpleAlign.pm 2009-09-15 03:43:59 UTC (rev 16083) @@ -3163,6 +3163,10 @@ optional string value use for the mask. Example: $aln2 = $aln->mask_columns(20,30,'?') + Note : Masking must use a character that is not used for gaps or + frameshifts. These can be adjusted using the relevant global + variables, but be aware these may be (uncontrollably) modified + elsewhere within BioPerl (see bug 2715) =cut @@ -3170,20 +3174,25 @@ #based on slice(), but did not include the Bio::Seq::Meta sections as I was not sure what it is doing my $self = shift; + my $nonres = $Bio::LocatableSeq::GAP_SYMBOLS. + $Bio::LocatableSeq::FRAMESHIFT_SYMBOLS; + + # coordinates are alignment-based, not sequence-based my ($start, $end, $mask_char) = @_; unless (defined $mask_char) { $mask_char = 'N' } - $self->throw("Mask start has to be a positive integer, not [$start]") - unless $start =~ /^\d+$/ and $start > 0; - $self->throw("Mask end has to be a positive integer, not [$end]") - unless $end =~ /^\d+$/ and $end > 0; - $self->throw("Mask start [$start] has to be smaller than or equal to end [$end]") - unless $start <= $end; - $self->throw("This alignment has only ". $self->length . " residues. Mask start " . - "[$start] is too big.") if $start > $self->length; - $self->throw("Mask character $mask_char has to be a single character") - unless CORE::length($mask_char) == 1; - + $self->throw("Mask start has to be a positive integer and less than ". + "alignment length, not [$start]") + unless $start =~ /^\d+$/ && $start > 0 && $start <= $self->length; + $self->throw("Mask end has to be a positive integer and less than ". + "alignment length, not [$end]") + unless $end =~ /^\d+$/ && $end > 0 && $end <= $self->length; + $self->throw("Mask start [$start] has to be smaller than or equal to ". + "end [$end]") unless $start <= $end; + $self->throw("Mask character $mask_char has to be a single character ". + "and not a gap or frameshift symbol") + unless CORE::length($mask_char) == 1 && $mask_char !~ m{$nonres}; + my $aln = $self->new; $aln->id($self->id); foreach my $seq ( $self->each_seq() ) { @@ -3192,10 +3201,9 @@ -strand => $seq->strand, -verbose => $self->verbose); - my $mask_end = $end; - $mask_end = $seq->length if( $end > $seq->length ); - my $masked_string = $mask_char x ($mask_end - $start +1); - my $new_dna_string = substr($seq->seq,0,$start-1) . $masked_string . substr($seq->seq,$mask_end); + my $masked_string = substr($seq->seq,$start, $end - $start +1); + $masked_string =~ s{[^$nonres]}{$mask_char}g; + my $new_dna_string = substr($seq->seq,0,$start-1) . $masked_string . substr($seq->seq,$end); $new_seq->seq($new_dna_string); $aln->add_seq($new_seq); } Modified: bioperl-live/trunk/t/Seq/LocatableSeq.t =================================================================== --- bioperl-live/trunk/t/Seq/LocatableSeq.t 2009-09-15 02:04:06 UTC (rev 16082) +++ bioperl-live/trunk/t/Seq/LocatableSeq.t 2009-09-15 03:43:59 UTC (rev 16083) @@ -255,6 +255,7 @@ # setting symbols (class variables) - demonstrate scoping issues when using # globals with and w/o localization. To be fixed in a future BioPerl version +# see bug 2715 my $temp; { Modified: bioperl-live/trunk/t/Tools/Primer3.t =================================================================== --- bioperl-live/trunk/t/Tools/Primer3.t 2009-09-15 02:04:06 UTC (rev 16082) +++ bioperl-live/trunk/t/Tools/Primer3.t 2009-09-15 03:43:59 UTC (rev 16083) @@ -46,6 +46,7 @@ # get the left primer my $left_primer_seq = $primer->get_primer('left')->seq; is $left_primer_seq->seq, "GAGGGTAACACGCTGGTCAT"; + # bug 2862 ok $p3 = Bio::Tools::Primer3->new(-file=>test_input_file('bug2862.pmr')); $num=0; From bugzilla-daemon at portal.open-bio.org Mon Sep 14 23:47:05 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Mon, 14 Sep 2009 23:47:05 -0400 Subject: [Bioperl-guts-l] [Bug 2842] add mask_columns to SimpleAlign.pm In-Reply-To: Message-ID: <200909150347.n8F3l5LX029033@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2842 ------- Comment #11 from cjfields at bioperl.org 2009-09-14 23:47 EST ------- Robert, Tristan, I have modified mask_columns to only mask residues or anything that counts with length(). There appears to be an unrelated problems using this in conjunction with splice(), so I'll leave this open for the time being, it can probably be addressed with the Align/LocatableSeq refactoring. I don't really consider this a 1.6.1 blocker at this point. -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at portal.open-bio.org Mon Sep 14 23:53:19 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Mon, 14 Sep 2009 23:53:19 -0400 Subject: [Bioperl-guts-l] [Bug 2914] ftp package no longer available during BioPerl1.6 installation In-Reply-To: Message-ID: <200909150353.n8F3rJkk029138@portal.open-bio.org> http://bugzilla.open-bio.org/show_bug.cgi?id=2914 cjfields at bioperl.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |INVALID ------- Comment #1 from cjfields at bioperl.org 2009-09-14 23:53 EST ------- This is not a bioperl bug (we do not require Digest::SHA1). This may very well be a problem with your local CPAN configuration instead; try updating CPAN to see if that fixes the problem. -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From cjfields at dev.open-bio.org Tue Sep 15 00:05:06 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Tue, 15 Sep 2009 00:05:06 -0400 Subject: [Bioperl-guts-l] [16084] bioperl-live/trunk/Changes: updates for bug numbers Message-ID: <200909150405.n8F456K0015913@dev.open-bio.org> Revision: 16084 Author: cjfields Date: 2009-09-15 00:05:06 -0400 (Tue, 15 Sep 2009) Log Message: ----------- updates for bug numbers Modified Paths: -------------- bioperl-live/trunk/Changes Modified: bioperl-live/trunk/Changes =================================================================== --- bioperl-live/trunk/Changes 2009-09-15 03:43:59 UTC (rev 16083) +++ bioperl-live/trunk/Changes 2009-09-15 04:05:06 UTC (rev 16084) @@ -79,7 +79,7 @@ - new parser for gmap -f9 output [hartzell] - bug 2852 - fix infinite loop in some output [cjfields] - blastxml output now passes all TODO tests [cjfields] - - psl and exonerate parsing fixes [rbuels, jhannah, bvecchi, YAPC hackathon] + - bug 2346, 2850 - psl and exonerate parsing fixes [rbuels, jhannah, bvecchi, YAPC hackathon] - RT 44782 - GbrowseGFF writer now catches evalues [Allen Day] - bug 2575 - add two columns of additional output to HSPTableWriter [cjfields] * Bio::Seq::LargePrimarySeq @@ -87,6 +87,7 @@ - bug fixes [rbuels, jhannah, bvecchi, YAPC hackathon] * Bio::Seq::Quality - extract regions based on quality threshold value [Dan Bolser, heikki] + - bug 2847 - resolve threshold issue (rbuels, jhannah, bvecchi) * Bio::SeqFeature::Lite - various Bio::DB::SeqFeature-related fixes [lstein] * Bio::SeqFeature::Tools::TypeMapper @@ -133,7 +134,7 @@ * Bio::Tools::Run::RemoteBlast - tests for remote RPS-BLAST [mcook] * Bio::Tools::SeqPattern - - bug fixes from YAPC hackathon [rbuels, jhannah, bvecchi] + - bug 2844 - backtranslate method [rbuels, jhannah, bvecchi] * Bio::Tools::tRNAscanSE - use 'gene' and 'exon' for proper SO, ensure ID is unique [jason] * Bio::Tree::* From cjfields at dev.open-bio.org Tue Sep 15 00:10:46 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Tue, 15 Sep 2009 00:10:46 -0400 Subject: [Bioperl-guts-l] [16085] bioperl-live/trunk/Changes: small date change, make this for the alpha Message-ID: <200909150410.n8F4AkE0015944@dev.open-bio.org> Revision: 16085 Author: cjfields Date: 2009-09-15 00:10:46 -0400 (Tue, 15 Sep 2009) Log Message: ----------- small date change, make this for the alpha Modified Paths: -------------- bioperl-live/trunk/Changes Modified: bioperl-live/trunk/Changes =================================================================== --- bioperl-live/trunk/Changes 2009-09-15 04:05:06 UTC (rev 16084) +++ bioperl-live/trunk/Changes 2009-09-15 04:10:46 UTC (rev 16085) @@ -17,184 +17,186 @@ are online at http://bugzilla.open-bio.org, with specific bugs intended for this release series highlighted in BUGS. -1.6.1 September 6, 2009 - -* Bio::Align::DNAStatistics - - fix divide by zero problem [jason] -* Bio::AlignIO::* - - bug 2813 - fix faulty logic to detect end-of-stream [cjfields] -* Bio::AlignIO::stockholm - - bug 2796 - fix faulty logic to detect end-of-stream [cjfields] -* Bio::Assembly::Tools::ContigSpectrum - - function to score contig spectrum [fangly] -* Bio::DB::EUtilities - - small updates [cjfields] -* Bio::DB::Fasta - - berkeleydb database now autoindexes wig files and locks correctly [lstein] -* Bio::DB::HIV - - various small updates for stability; tracking changes to LANL - database interface [maj] -* Bio::DB::SeqFeature (lots of updates and changes) - - add Pg, SQLite, and faster BerkeleyDB implementations [lstein, scain] - - bug 2835 - patch [Dan Bolser] - - bug RT 44535 - patch FeatureFileLoader [Cathy Gresham] -* Bio::DB::SwissProt - - bug 2764 - idtracker() method [cjfields, courtesy Neil Saunders] -* Bio::Factory::FTLocationFactory - - mailing list bug fix [cjfields] -* Bio::LocatableSeq - - performance work on column_from_residue_number [hartzell] -* Bio::Matrix::IO::phylip - - bug 2800 - patch to fix phylip parsing [Wei Zou] -* Bio::Nexml - - Google Summer of Code project from Chase Miller - parsers for Nexml file - format [maj, chmille4] -* Bio::PopGen - - Make Individual, Population, Marker objects AnnotatableI [maj] - - simplify LD code [jason] -* Bio::RangeI - - deal with empty intersection [jason] -* Bio::Restriction - - significant overhaul of Bio::Restriction system: complete support for - external and non-palindromic cutters. [maj] -* Bio::Root::Build - - CPANPLUS support, no automatic installation [sendu] -* Bio::Root::IO - - allow IO::String (regression fix) [cjfields] - - catch unintentional undef values [cjfields] - - throw if non-fh is passed to -fh [maj] -* Bio::Root::Root/RootI - - small debugging and core fixes [cjfields] -* Bio::Root::Test - - bug RT 48813 - fix for Strawberry Perl bug [kmx] -* Bio::Root::Utilities - - bug 2737 - better warnings [cjfields] -* Bio::Search - - tiling completely refactored, HOWTO added [maj] - NOTE : Bio::Search::Hit::* classes do not use this code directly; we will - deprecate usage of the older tiling code in the next BioPerl release - - small fixes [cjfields] -* Bio::SearchIO - - Infernal 1.0 output now parsed [cjfields] - - new parser for gmap -f9 output [hartzell] - - bug 2852 - fix infinite loop in some output [cjfields] - - blastxml output now passes all TODO tests [cjfields] - - bug 2346, 2850 - psl and exonerate parsing fixes [rbuels, jhannah, bvecchi, YAPC hackathon] - - RT 44782 - GbrowseGFF writer now catches evalues [Allen Day] - - bug 2575 - add two columns of additional output to HSPTableWriter [cjfields] -* Bio::Seq::LargePrimarySeq - - delete tempdirs [cjfields] - - bug fixes [rbuels, jhannah, bvecchi, YAPC hackathon] -* Bio::Seq::Quality - - extract regions based on quality threshold value [Dan Bolser, heikki] - - bug 2847 - resolve threshold issue (rbuels, jhannah, bvecchi) -* Bio::SeqFeature::Lite - - various Bio::DB::SeqFeature-related fixes [lstein] -* Bio::SeqFeature::Tools::TypeMapper - - additional terms for GenBank to SO map [scain] -* Bio::SeqIO::chadoxml - - bug 2785 - patch to get this working for bp_seqconvert [cjfields] -* Bio::SeqIO::embl - - support for CDS records [dave_messina, Sylvia] -* Bio::SeqIO::fastq - - complete refactoring to handle all FASTQ variants, perform validation, - write output. API now conforms with other Bio* parsers and the rest of - Bio::SeqIO (e.g. write_seq() creates fastq output, not fasta output). - [cjfields] -* Bio::SeqIO::genbank - - bug 2784 - fix DBSOURCE issue [Phillip Garland] - - bug RT 44536 - support for UniProt/UniProtKB tests [cjfields] -* Bio::SeqIO::largefasta - - parser returns a Bio::Seq::LargePrimarySeq [jhannah] -* Bio::SeqIO::raw - - add option for 'single' and 'multiple' -* Bio::SeqIO::scf - - bug 2881 - fix scf round-tripping [Adam Sj\xBFgren] -* Bio::SeqUtils - - bug 2766, 2810 - copy over tags from features, doc fixes [David Jackson] -* Bio::SimpleAlign - - bug 2793 - patch for add_seq index issue [jhannah, maj] - - bug 2801 - throw if args are required [cjfields] - - bug 2805 - uniq_seq returns SimpleAlign and hash ref of sequence types - [Tristan Lefebure, maj] - - bug fixes from YAPC hackathon [rbuels, jhannah, bvecchi] - - fix POD and add get_SeqFeatures filter [maj] -* Bio::Tools::dpAlign - - add support for LocatableSeq [ymc] - - to be moved to a separate distribution [cjfields, rbuels] -* Bio::Tools::EUtilities - - fix for two bugs from mail list [Adam Whitney, cjfields] - - add generic ItemContainerI interface for containing same methods - [cjfields] -* Bio::Tools::HMM - - fix up code, add more warnings [cjfields] - - to be moved to a separate distribution [cjfields, rbuels] -* Bio::Tools::Primer3 - - bug 2862 - fenceposting issue fixed [maj] -* Bio::Tools::Run::RemoteBlast - - tests for remote RPS-BLAST [mcook] -* Bio::Tools::SeqPattern - - bug 2844 - backtranslate method [rbuels, jhannah, bvecchi] -* Bio::Tools::tRNAscanSE - - use 'gene' and 'exon' for proper SO, ensure ID is unique [jason] -* Bio::Tree::* - - bug 2456 - fix reroot_tree(), added create_node_on_branch() [maj] -* Bio::Tree::Statistics - - several methods for calculating Fitch-based score, internal trait values, - statratio(), sum of leaf distances [heikki] -* Bio::Tree::Tree - - bug 2869 - add docs indicating edge case where nodes can be prematurely - garbage-collected [cjfields] - - add as_text() function to create Tree as a string in specified format - [maj] -* Bio::Tree::TreeFunctionsI - - bug 2877 - fix bug where bootstrap assigned to the wrong node [Tristan - Lefebure, maj] -* Bio::TreeIO::newick - - fix small semicolon issue [cjfields] -* scripts - - update to bp_seqfeature_load for SQLite [lstein] - - hivq.pl - commmand-line interface to Bio::DB::HIV [maj] - - fastam9_to_table - fix for MPI output [jason] - - gccalc - total stats [jason] -* General Stuff - - POD cleanup re: FEEDBACK section [maj] - - Use of no_* methods (indicating 'number of something') is deprecated in - favor of num_* [cjfields] - - lots of new tests for the above bugs and refactors [everyone!] - - new template for Komodo text editor [cjfields] +1.6.0_1 Sept. 15, 2009 + * Bio::Align::DNAStatistics + - fix divide by zero problem [jason] + * Bio::AlignIO::* + - bug 2813 - fix faulty logic to detect end-of-stream [cjfields] + * Bio::AlignIO::stockholm + - bug 2796 - fix faulty logic to detect end-of-stream [cjfields] + * Bio::Assembly::Tools::ContigSpectrum + - function to score contig spectrum [fangly] + * Bio::DB::EUtilities + - small updates [cjfields] + * Bio::DB::Fasta + - berkeleydb database now autoindexes wig files and locks correctly + [lstein] + * Bio::DB::HIV + - various small updates for stability; tracking changes to LANL + database interface [maj] + * Bio::DB::SeqFeature (lots of updates and changes) + - add Pg, SQLite, and faster BerkeleyDB implementations [lstein, scain] + - bug 2835 - patch [Dan Bolser] + - bug RT 44535 - patch FeatureFileLoader [Cathy Gresham] + * Bio::DB::SwissProt + - bug 2764 - idtracker() method [cjfields, courtesy Neil Saunders] + * Bio::Factory::FTLocationFactory + - mailing list bug fix [cjfields] + * Bio::LocatableSeq + - performance work on column_from_residue_number [hartzell] + * Bio::Matrix::IO::phylip + - bug 2800 - patch to fix phylip parsing [Wei Zou] + * Bio::Nexml + - Google Summer of Code project from Chase Miller - parsers for Nexml + file format [maj, chmille4] + * Bio::PopGen + - Make Individual, Population, Marker objects AnnotatableI [maj] + - simplify LD code [jason] + * Bio::RangeI + - deal with empty intersection [jason] + * Bio::Restriction + - significant overhaul of Bio::Restriction system: complete support for + external and non-palindromic cutters. [maj] + * Bio::Root::Build + - CPANPLUS support, no automatic installation [sendu] + * Bio::Root::IO + - allow IO::String (regression fix) [cjfields] + - catch unintentional undef values [cjfields] + - throw if non-fh is passed to -fh [maj] + * Bio::Root::Root/RootI + - small debugging and core fixes [cjfields] + * Bio::Root::Test + - bug RT 48813 - fix for Strawberry Perl bug [kmx] + * Bio::Root::Utilities + - bug 2737 - better warnings [cjfields] + * Bio::Search + - tiling completely refactored, HOWTO added [maj] + NOTE : Bio::Search::Hit::* classes do not use this code directly; we + will deprecate usage of the older tiling code in the next BioPerl + release + - small fixes [cjfields] + * Bio::SearchIO + - Infernal 1.0 output now parsed [cjfields] + - new parser for gmap -f9 output [hartzell] + - bug 2852 - fix infinite loop in some output [cjfields] + - blastxml output now passes all TODO tests [cjfields] + - bug 2346, 2850 - psl and exonerate parsing fixes [rbuels, jhannah, bvecchi, YAPC hackathon] + - RT 44782 - GbrowseGFF writer now catches evalues [Allen Day] + - bug 2575 - add two columns of additional output to HSPTableWriter [cjfields] + * Bio::Seq::LargePrimarySeq + - delete tempdirs [cjfields] @@ Diff output truncated at 10000 characters. @@ From bugzilla-daemon at portal.open-bio.org Tue Sep 15 12:31:51 2009 From: bugzilla-daemon at portal.open-bio.org (bugzilla-daemon at portal.open-bio.org) Date: Tue, 15 Sep 2009 12:31:51 -0400 Subject: [Bioperl-guts-l] [Bug 2915] New: Infinite loop of "_write_line_GenBank_regex" under certain conditions Message-ID: http://bugzilla.open-bio.org/show_bug.cgi?id=2915 Summary: Infinite loop of "_write_line_GenBank_regex" under certain conditions Product: BioPerl Version: main-trunk Platform: PC OS/Version: Windows Status: NEW Severity: major Priority: P2 Component: Bio::SeqIO AssignedTo: bioperl-guts-l at bioperl.org ReportedBy: fossandon at vtr.net Hello, I made a perl script that proceeded to take a fasta, blast it against a blast database, and then parsed it to generate a table and a Genbank formatted file with all the blast result statistics. I used it for a while without problems but a while ago some particular results made it enter into an infinite loop when writing the Genbank file while printing this line over and over: $self->warn("trouble dissecting \"$line\"\n into chunks ". "of $subl chars or less - this tag won't print right"); After lots of debugging I was able to find the conflicting lines in "genbank.pm" and reproduce it. It entered into an infinite loop when it tried to write a custom tag information stored into a Bio::SeqFeature::Generic object. For example, for the following object structure, the first scalar was ok but the second failed: ( -primary_tag => 'BLASTCDS', -tag => { domain => $match } ) ## OK $match = " HSP start: 73; HSP end: 750; Hit start: 34; Hit end: 247; Score: 559; E-value: 8e-058; Identity: 39.9123; Similarity: 52.6316; Qry Coverage: 86.5900; Hit Coverage: 77.8182; Hit name: gnl|CDD|30439; Hit desc: COG0090, RplB, Ribosomal protein L2 [Translation, ribosomal structure and biogenesis].\n"; ## FAIL $match = " HSP start: 364; HSP end: 750; Hit start: 3; Hit end: 125; Score: 386; E-value: 1e-037; Identity: 43.8462; Similarity: 58.4615; Qry Coverage: 49.4253; Hit Coverage: 94.6154; Hit name: gnl|CDD|112746; Hit desc: pfam03947, Ribosomal_L2_C, Ribosomal Proteins L2, C-terminal domain. \n"; For some reason I don't quite understand yet, the whitespace just before the line ending I added (which comes from a previous "$hit->description" of the blast parsing) caused the instructions to be trapped into an infinite loop in the CHUNK: while() loop in the "_write_line_GenBank_regex" subroutine when called from the "_print_GenBank_FTHelper" subroutine line: elsif (!$FTQUAL_NO_QUOTE{$tag}) { my ($pat) = ($value =~ /\s/ ? '\s|$' : '.|$'); $self->_write_line_GenBank_regex(" "x21, " "x21, "/$tag=\"$value\"",$pat,80); } Adding more characters in any place of the above failed string (basically changing the length), deleting that final whitespace or substituting it for another character, made the subroutine work correctly again. So I went to experiment what similar conditions could cause the infinite loop and found that the following pattern will always cause the infinite loop: my $value = ' ' x $number . "\n"; ## killing multipliers for $number = 49, 107, 165, 223, 281....(+58) Bellow is the reproduction of the subroutine with the same parameters that it received when the infinite loop started (and a couple of extra prints to make it more evident), in case you want to experiment with it. The objective is to reach the final print: ####################### use warnings; use strict; # OK value my $value1 = " HSP start: 73; HSP end: 750; Hit start: 34; Hit end: 247;" . " Score: 559; E-value: 8e-058; Identity: 39.9123;" . " Similarity: 52.6316; Qry Coverage: 86.5900;" . " Hit Coverage: 77.8182; Hit name: gnl|CDD|30439;" . " Hit desc: COG0090, RplB, Ribosomal protein L2" . " [Translation, ribosomal structure and biogenesis].\n"; # Fail values my $value2 = " HSP start: 364; HSP end: 750; Hit start: 3; Hit end: 125;" . " Score: 386; E-value: 1e-037; Identity: 43.8462;" . " Similarity: 58.4615; Qry Coverage: 49.4253;" . " Hit Coverage: 94.6154; Hit name: gnl|CDD|112746;" . " Hit desc: pfam03947, Ribosomal_L2_C, Ribosomal Proteins L2," . " C-terminal domain. \n"; my $value_spaces1 = ' ' x 49 . "\n"; #killing multipliers, choose any = 49, 107, 165, 223, 281...(+58) # Input parameters my $tag = 'domain'; my $value = $value_spaces1; # Choose any of the 3 scalars above for test my $pre1 = " " x 21; my $pre2 = " " x 21; my $line = "/$tag=\"$value\""; my ($regex) = ($value =~ /\s/ ? '\s|$' : '.|$'); my $length = 80; # Subroutine code my $subl = $length - (length $pre1) - 2; my @lines = (); CHUNK: while($line) { foreach my $pat ($regex, '[,;\.\/-]\s|'.$regex, '[,;\.\/-]|'.$regex) { if($line =~ m/^(.{1,$subl})($pat)(.*)/ ) { my $l = $1.$2; my $newl = $3; $line = substr($line,length($l)); # be strict about not padding spaces according to # genbank format $l =~ s/\s+$//; push(@lines, $l); next CHUNK; } } ## if we get here none of the patterns matched $subl or less chars #$self->warn("trouble dissecting \"$line\"\n into chunks ". # "of $subl chars or less - this tag won't print right"); # insert a space char to prevent infinite loops $line = substr($line,0,$subl) . " " . substr($line,$subl); print length($line) . "\n"; ### The $line just gets longer and longer } print "Success!\n"; exit; ####################### Bottom line is that although I don't get why it happens exactly (should have something to do with the IF inside CHUNK, but I'm not sure exactly how to fix it that regex)... I think this can be prevented by adding a precautionary check for the presence of the "\s+\n" combo and get rid of the "\s+" in that case: if ($foo =~ m/\s+\n/o) { $foo =~ s/\s+\n/\n/og; } That check could be done at the "$value" level in "_print_GenBank_FTHelper", or at the "$line" level in "_write_line_GenBank_regex" subroutines. Hope that helps. If you actually need the blast output example that triggered all this, I can attach it too later. -- Configure bugmail: http://bugzilla.open-bio.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From cjfields at dev.open-bio.org Tue Sep 15 13:47:03 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Tue, 15 Sep 2009 13:47:03 -0400 Subject: [Bioperl-guts-l] [16086] bioperl-live/trunk/Bio/SeqIO/fastq.pm: Peter's patch Message-ID: <200909151747.n8FHl3MH021469@dev.open-bio.org> Revision: 16086 Author: cjfields Date: 2009-09-15 13:47:02 -0400 (Tue, 15 Sep 2009) Log Message: ----------- Peter's patch Modified Paths: -------------- bioperl-live/trunk/Bio/SeqIO/fastq.pm Modified: bioperl-live/trunk/Bio/SeqIO/fastq.pm =================================================================== --- bioperl-live/trunk/Bio/SeqIO/fastq.pm 2009-09-15 04:10:46 UTC (rev 16085) +++ bioperl-live/trunk/Bio/SeqIO/fastq.pm 2009-09-15 17:47:02 UTC (rev 16086) @@ -106,7 +106,7 @@ $data->{-qual} = [map { if ($self->{_validate_qual} && !exists($self->{chr2qual}->{$_})) { - $self->warn("Unknown symbol with ASCII value ".ord($_)." outside of quality range") + $self->throw("Unknown symbol with ASCII value ".ord($_)." outside of quality range") # TODO: fallback? } $self->{qualtype} eq 'solexa' ? From rbuels at dev.open-bio.org Tue Sep 15 17:11:52 2009 From: rbuels at dev.open-bio.org (Robert Buels) Date: Tue, 15 Sep 2009 17:11:52 -0400 Subject: [Bioperl-guts-l] [16087] bioperl-live/trunk/Bio/DB/SeqFeature.pm: trivial doc patch Message-ID: <200909152111.n8FLBqbu022467@dev.open-bio.org> Revision: 16087 Author: rbuels Date: 2009-09-15 17:11:51 -0400 (Tue, 15 Sep 2009) Log Message: ----------- trivial doc patch Modified Paths: -------------- bioperl-live/trunk/Bio/DB/SeqFeature.pm Modified: bioperl-live/trunk/Bio/DB/SeqFeature.pm =================================================================== --- bioperl-live/trunk/Bio/DB/SeqFeature.pm 2009-09-15 17:47:02 UTC (rev 16086) +++ bioperl-live/trunk/Bio/DB/SeqFeature.pm 2009-09-15 21:11:51 UTC (rev 16087) @@ -34,7 +34,7 @@ The Bio::DB::SeqFeature object is the default SeqFeature class stored in Bio::DB::SeqFeature databases. It implements both the Bio::DB::SeqFeature::NormalizedFeatureI and -Bio::DB::SeqFeature::TableFeatureI interfaces, which means that its +Bio::DB::SeqFeature::NormalizedTableFeatureI interfaces, which means that its subfeatures, if any, are stored in the database in a normalized fashion, and that the parent/child hierarchy of features and subfeatures are also stored in the database as set of tuples. This From rbuels at dev.open-bio.org Tue Sep 15 17:17:30 2009 From: rbuels at dev.open-bio.org (Robert Buels) Date: Tue, 15 Sep 2009 17:17:30 -0400 Subject: [Bioperl-guts-l] [16088] bioperl-live/trunk/Bio/SeqFeature/Generic.pm: added more proper deprecation message for bp 1.7 to Bio::SeqFeature:: Generic::slurp_gff_file Message-ID: <200909152117.n8FLHU8A022502@dev.open-bio.org> Revision: 16088 Author: rbuels Date: 2009-09-15 17:17:30 -0400 (Tue, 15 Sep 2009) Log Message: ----------- added more proper deprecation message for bp 1.7 to Bio::SeqFeature::Generic::slurp_gff_file Modified Paths: -------------- bioperl-live/trunk/Bio/SeqFeature/Generic.pm Modified: bioperl-live/trunk/Bio/SeqFeature/Generic.pm =================================================================== --- bioperl-live/trunk/Bio/SeqFeature/Generic.pm 2009-09-15 21:11:51 UTC (rev 16087) +++ bioperl-live/trunk/Bio/SeqFeature/Generic.pm 2009-09-15 21:17:30 UTC (rev 16088) @@ -898,8 +898,11 @@ Bio::Root::Root->throw("Must have a filehandle"); } - Bio::Root::Root->warn("deprecated method slurp_gff_file() called in Bio::SeqFeature::Generic. Use Bio::Tools::GFF instead."); - + Bio::Root::Root->deprecated( -message => "deprecated method slurp_gff_file() called in Bio::SeqFeature::Generic. Use Bio::Tools::GFF instead.", + -warn_version => '1.005', + -throw_version => '1.007', + ); + while(<$f>) { my $sf = Bio::SeqFeature::Generic->new('-gff_string' => $_); push(@out, $sf); From cjfields at dev.open-bio.org Tue Sep 15 17:34:07 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Tue, 15 Sep 2009 17:34:07 -0400 Subject: [Bioperl-guts-l] [16089] bioperl-live/branches/branch-1-6: sync with trunk to r15684 Message-ID: <200909152134.n8FLY733022553@dev.open-bio.org> Revision: 16089 Author: cjfields Date: 2009-09-15 17:34:07 -0400 (Tue, 15 Sep 2009) Log Message: ----------- sync with trunk to r15684 Modified Paths: -------------- bioperl-live/branches/branch-1-6/Bio/DB/EUtilities.pm bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/FeatureFileLoader.pm bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/berkeleydb.pm bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store.pm bioperl-live/branches/branch-1-6/Bio/DB/SwissProt.pm bioperl-live/branches/branch-1-6/Bio/Matrix/IO/phylip.pm bioperl-live/branches/branch-1-6/Bio/PrimarySeqI.pm bioperl-live/branches/branch-1-6/Bio/Root/Utilities.pm bioperl-live/branches/branch-1-6/Bio/Search/SearchUtils.pm bioperl-live/branches/branch-1-6/Bio/SearchIO/Writer/GbrowseGFF.pm bioperl-live/branches/branch-1-6/Bio/SearchIO/Writer/HSPTableWriter.pm bioperl-live/branches/branch-1-6/Bio/SearchIO/blasttable.pm bioperl-live/branches/branch-1-6/Bio/Seq/LargePrimarySeq.pm bioperl-live/branches/branch-1-6/Bio/Seq/Quality.pm bioperl-live/branches/branch-1-6/Bio/SeqFeature/Generic.pm bioperl-live/branches/branch-1-6/Bio/SeqIO/Handler/GenericRichSeqHandler.pm bioperl-live/branches/branch-1-6/Bio/SeqIO/entrezgene.pm bioperl-live/branches/branch-1-6/Bio/SeqIO/fastq.pm bioperl-live/branches/branch-1-6/Bio/SeqIO/genbank.pm bioperl-live/branches/branch-1-6/Bio/SeqUtils.pm bioperl-live/branches/branch-1-6/Bio/SimpleAlign.pm bioperl-live/branches/branch-1-6/Bio/Tools/tRNAscanSE.pm bioperl-live/branches/branch-1-6/Bio/Tree/Node.pm bioperl-live/branches/branch-1-6/Bio/Tree/Statistics.pm bioperl-live/branches/branch-1-6/Build.PL bioperl-live/branches/branch-1-6/t/ClusterIO/ClusterIO.t bioperl-live/branches/branch-1-6/t/SearchIO/blasttable.t bioperl-live/branches/branch-1-6/t/Seq/Quality.t bioperl-live/branches/branch-1-6/t/SeqFeature/SeqFeature.t bioperl-live/branches/branch-1-6/t/SeqIO/Handler.t bioperl-live/branches/branch-1-6/t/SeqIO/genbank.t bioperl-live/branches/branch-1-6/t/SeqTools/SeqUtils.t bioperl-live/branches/branch-1-6/t/Tools/Run/StandAloneBlast.t bioperl-live/branches/branch-1-6/t/Tree/TreeStatistics.t Added Paths: ----------- bioperl-live/branches/branch-1-6/t/RemoteDB/EntrezGene.t bioperl-live/branches/branch-1-6/t/RemoteDB/GenBank.t bioperl-live/branches/branch-1-6/t/RemoteDB/GenPept.t bioperl-live/branches/branch-1-6/t/RemoteDB/MeSH.t bioperl-live/branches/branch-1-6/t/RemoteDB/Query/ bioperl-live/branches/branch-1-6/t/RemoteDB/SwissProt.t bioperl-live/branches/branch-1-6/t/SearchIO/Writer/GbrowseGFF.t bioperl-live/branches/branch-1-6/t/SearchIO/Writer/HSPTableWriter.t bioperl-live/branches/branch-1-6/t/data/P39765.gb Removed Paths: ------------- bioperl-live/branches/branch-1-6/t/RemoteDB/DB.t bioperl-live/branches/branch-1-6/t/SearchIO/GbrowseGFF.t bioperl-live/branches/branch-1-6/t/data/ReseqChip_ExampleData.fasta bioperl-live/branches/branch-1-6/t/data/ReseqChip_RefSeq.fasta bioperl-live/branches/branch-1-6/t/data/ReseqChip_mtDNA_design_annotation_file_FINAL.xls Modified: bioperl-live/branches/branch-1-6/Bio/DB/EUtilities.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/DB/EUtilities.pm 2009-09-15 21:17:30 UTC (rev 16088) +++ bioperl-live/branches/branch-1-6/Bio/DB/EUtilities.pm 2009-09-15 21:34:07 UTC (rev 16089) @@ -131,8 +131,8 @@ These are passed on to LWP::UserAgent::request() if stipulated - -file - use a LWP::UserAgent-compliant callback - -cb - dumps the response to a file (handy for large responses) + -cb - use a LWP::UserAgent-compliant callback + -file - dumps the response to a file (handy for large responses) Note: can't use file and callback at the same time -read_size_hint - bytes of content to read in at a time to pass to callback Note : Caching and parameter checking are set Modified: bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/FeatureFileLoader.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/FeatureFileLoader.pm 2009-09-15 21:17:30 UTC (rev 16088) +++ bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/FeatureFileLoader.pm 2009-09-15 21:34:07 UTC (rev 16089) @@ -639,6 +639,7 @@ -strand => $strand eq '+' ? 1 :$strand eq '-' ? -1 :$strand eq '' ? 0 + :$strand eq '.' ? 0 :$strand == 1 ? 1 :$strand == -1 ? -1 :0, Modified: bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/berkeleydb.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/berkeleydb.pm 2009-09-15 21:17:30 UTC (rev 16088) +++ bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/berkeleydb.pm 2009-09-15 21:34:07 UTC (rev 16089) @@ -369,9 +369,11 @@ my $autodir = shift; warn "Reindexing GFF files...\n" if $self->verbose; + my $exists = -e $self->_features_path; + $self->_permissions(1,1); $self->_close_databases(); - $self->_open_databases(1,0); + $self->_open_databases(1,!$exists); require Bio::DB::SeqFeature::Store::GFF3Loader unless Bio::DB::SeqFeature::Store::GFF3Loader->can('new'); my $loader = Bio::DB::SeqFeature::Store::GFF3Loader->new(-store => $self, Modified: bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store.pm 2009-09-15 21:17:30 UTC (rev 16088) +++ bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store.pm 2009-09-15 21:34:07 UTC (rev 16089) @@ -1275,9 +1275,22 @@ a get_features_by_name() internally and then transform the feature into the appropriate coordinates. -If $absolute is a true value, then the specified coordinates are -relative to the reference (absolute) coordinates. +The named feature should exist once and only once in the database. If +it exists multiple times in the database and you attempt to call +segment() in a scalar context, you will get an exception. A workaround +is to call the method in a list context, as in: + my ($segment) = $db->segment('contig23',1,1000); + +or + my @segments = $db->segment('contig23',1,1000); + +However, having multiple same-named features in the database is often +an indication of underlying data problems. + +If the optional $absolute argument is a true value, then the specified +coordinates are relative to the reference (absolute) coordinates. + =cut ### Modified: bioperl-live/branches/branch-1-6/Bio/DB/SwissProt.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/DB/SwissProt.pm 2009-09-15 21:17:30 UTC (rev 16088) +++ bioperl-live/branches/branch-1-6/Bio/DB/SwissProt.pm 2009-09-15 21:34:07 UTC (rev 16089) @@ -110,19 +110,19 @@ package Bio::DB::SwissProt; use strict; -use vars qw($MODVERSION %HOSTS $DEFAULTFORMAT $DEFAULTSERVERTYPE); -$MODVERSION = '0.8.1'; use HTTP::Request::Common; +our $MODVERSION = '0.8.1'; use base qw(Bio::DB::WebDBSeqI); # global vars -$DEFAULTSERVERTYPE = 'ebi'; -$DEFAULTFORMAT = 'swissprot'; +our $DEFAULTSERVERTYPE = 'ebi'; +our $DEFAULTFORMAT = 'swissprot'; +our $DEFAULTIDTRACKER = 'http://www.expasy.ch'; # you can add your own here theoretically. -%HOSTS = ( +our %HOSTS = ( 'expasy' => { 'default' => 'us', 'baseurl' => 'http://%s/cgi-bin/sprot-retrieve-list.pl', @@ -456,6 +456,40 @@ return @{$self->{'_format'}}; } +=head2 idtracker + + Title : idtracker + Usage : my ($newid) = $self->idtracker($oldid); + Function: Retrieve new ID using old ID. + Returns : single ID if one is found + Args : ID to look for + +=cut + +sub idtracker { + my ($self, $id) = @_; + return unless defined $id; + my $st = $self->servertype; + my $base = ($st eq 'expasy') ? "http://".$HOSTS{$st}->{'hosts'}->{$self->hostlocation} + : $DEFAULTIDTRACKER; + my $url = $base.'/cgi-bin/idtracker?id='.$id; + my $response; + eval {$response = $self->ua->get($url)}; + if ($@ || $response->is_error) { + my $error = $@ || $response->error_as_HTML; + $self->throw("Error:\n".$error); + } + if ($response->content =~ /was renamed to (.*?)<\/b>/) { + return $1; + } elsif ($response->content =~ /Entry name<\/th>Accession number<\/th>Release created<\/th><\/tr>/){ + # output indicates no mapping needed, return original ID + return $id; + } else { + $self->warn("Unknown response:\n".$response->content); + return + } +} + 1; __END__ Modified: bioperl-live/branches/branch-1-6/Bio/Matrix/IO/phylip.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/Matrix/IO/phylip.pm 2009-09-15 21:17:30 UTC (rev 16088) +++ bioperl-live/branches/branch-1-6/Bio/Matrix/IO/phylip.pm 2009-09-15 21:34:07 UTC (rev 16089) @@ -122,7 +122,7 @@ my $size = 0; while ($entry=$self->_readline) { if($#names >=0 && $entry =~/^\s+\d+\n$/){ - $self->_pushback($_); + $self->_pushback($entry); last; } elsif($entry=~/^\s+(\d+)\n$/){ $size = $1; Modified: bioperl-live/branches/branch-1-6/Bio/PrimarySeqI.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/PrimarySeqI.pm 2009-09-15 21:17:30 UTC (rev 16088) +++ bioperl-live/branches/branch-1-6/Bio/PrimarySeqI.pm 2009-09-15 21:34:07 UTC (rev 16089) @@ -419,6 +419,7 @@ $self->_attempt_to_load_Seq(); } my $out = $seqclass->new( '-seq' => $revseq, + '-is_circular' => $self->is_circular, '-display_id' => $self->display_id, '-accession_number' => $self->accession_number, '-alphabet' => $self->alphabet, Modified: bioperl-live/branches/branch-1-6/Bio/Root/Utilities.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/Root/Utilities.pm 2009-09-15 21:17:30 UTC (rev 16088) +++ bioperl-live/branches/branch-1-6/Bio/Root/Utilities.pm 2009-09-15 21:34:07 UTC (rev 16089) @@ -1245,7 +1245,7 @@ if (scalar @exes) { $exe = $exes[0]; if (defined $exes[1]) { - $self->warn("find_exe: Multiple paths to '$name' found. Using first."); + $self->warn("find_exe: Multiple paths to '$name' found. Using $exe."); } } } Modified: bioperl-live/branches/branch-1-6/Bio/Search/SearchUtils.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/Search/SearchUtils.pm 2009-09-15 21:17:30 UTC (rev 16088) +++ bioperl-live/branches/branch-1-6/Bio/Search/SearchUtils.pm 2009-09-15 21:34:07 UTC (rev 16089) @@ -197,13 +197,13 @@ $hit_len_aln += $hsp->length; ## Collect contigs in the query sequence. - $qoverlap = &_adjust_contigs('query', $hsp, $qstart, $qstop, + $qoverlap += &_adjust_contigs('query', $hsp, $qstart, $qstop, \@qcontigs, $max_overlap, $frame, $qstrand); ## Collect contigs in the sbjct sequence # (needed for domain data and gapped Blast). - $soverlap = &_adjust_contigs('sbjct', $hsp, $sstart, $sstop, + $soverlap += &_adjust_contigs('sbjct', $hsp, $sstart, $sstop, \@scontigs, $max_overlap, $frame, $sstrand); @@ -404,6 +404,14 @@ ($numID, $numCons) = $hsp->matches(-SEQ =>$seqType, -START => $start, -STOP => $_->{'start'} - 1); + if ($numID eq '') { + $hsp->warn("\$hsp->matches() returned '' for number identical; setting to 0"); + $numID = 0; + } + if ($numCons eq '') { + $hsp->warn("\$hsp->matches() returned '' for number conserved; setting to 0"); + $numCons = 0; + } }; if($@) { warn "\a\n$@\n"; } else { @@ -421,7 +429,15 @@ ($numID,$numCons) = $hsp->matches(-SEQ =>$seqType, -START => $_->{'stop'} + 1, -STOP => $stop); - }; + if ($numID eq '') { + $hsp->warn("\$hsp->matches() returned '' for number identical; setting to 0"); + $numID = 0; + } + if ($numCons eq '') { + $hsp->warn("\$hsp->matches() returned '' for number conserved; setting to 0"); + $numCons = 0; + } + }; if($@) { warn "\a\n$@\n"; } else { $_->{'stop'} = $stop; # Assign a new stop coordinate to the contig @@ -458,7 +474,15 @@ my ($these_ids, $these_cons); eval { ($these_ids, $these_cons) = $hsp->matches(-SEQ => $seqType, -START => $hsp_start, -STOP => $use_start - 1); - }; + if ($these_ids eq '') { + $hsp->warn("\$hsp->matches() returned '' for number identical; setting to 0"); + $these_ids = 0; + } @@ Diff output truncated at 10000 characters. @@ From cjfields at dev.open-bio.org Tue Sep 15 17:57:56 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Tue, 15 Sep 2009 17:57:56 -0400 Subject: [Bioperl-guts-l] [16090] bioperl-live/branches/branch-1-6: sync with trunk (to r15946) Message-ID: <200909152157.n8FLvueM022827@dev.open-bio.org> Revision: 16090 Author: cjfields Date: 2009-09-15 17:57:56 -0400 (Tue, 15 Sep 2009) Log Message: ----------- sync with trunk (to r15946) Modified Paths: -------------- bioperl-live/branches/branch-1-6/AUTHORS bioperl-live/branches/branch-1-6/Bio/Align/AlignI.pm bioperl-live/branches/branch-1-6/Bio/Align/PairwiseStatistics.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/arp.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/clustalw.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/fasta.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/largemultifasta.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/maf.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/mase.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/mega.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/metafasta.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/msf.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/nexus.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/pfam.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/phylip.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/po.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/proda.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/prodom.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/psi.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/selex.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/stockholm.pm bioperl-live/branches/branch-1-6/Bio/AlignIO/xmfa.pm bioperl-live/branches/branch-1-6/Bio/Assembly/Contig.pm bioperl-live/branches/branch-1-6/Bio/Assembly/IO/tigr.pm bioperl-live/branches/branch-1-6/Bio/Assembly/Tools/ContigSpectrum.pm bioperl-live/branches/branch-1-6/Bio/DB/HIV/lanl-schema.xml bioperl-live/branches/branch-1-6/Bio/DB/Query/GenBank.pm bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/DBI/mysql.pm bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/GFF3Loader.pm bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/berkeleydb.pm bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature.pm bioperl-live/branches/branch-1-6/Bio/PopGen/GenotypeI.pm bioperl-live/branches/branch-1-6/Bio/PopGen/Individual.pm bioperl-live/branches/branch-1-6/Bio/PopGen/IndividualI.pm bioperl-live/branches/branch-1-6/Bio/PopGen/Marker.pm bioperl-live/branches/branch-1-6/Bio/PopGen/MarkerI.pm bioperl-live/branches/branch-1-6/Bio/PopGen/Population.pm bioperl-live/branches/branch-1-6/Bio/PopGen/PopulationI.pm bioperl-live/branches/branch-1-6/Bio/PrimarySeq.pm bioperl-live/branches/branch-1-6/Bio/Restriction/Analysis.pm bioperl-live/branches/branch-1-6/Bio/Restriction/Enzyme/MultiCut.pm bioperl-live/branches/branch-1-6/Bio/Restriction/Enzyme/MultiSite.pm bioperl-live/branches/branch-1-6/Bio/Restriction/Enzyme.pm bioperl-live/branches/branch-1-6/Bio/Restriction/EnzymeCollection.pm bioperl-live/branches/branch-1-6/Bio/Restriction/IO/base.pm bioperl-live/branches/branch-1-6/Bio/Restriction/IO/itype2.pm bioperl-live/branches/branch-1-6/Bio/Restriction/IO/prototype.pm bioperl-live/branches/branch-1-6/Bio/Restriction/IO/withrefm.pm bioperl-live/branches/branch-1-6/Bio/Root/Build.pm bioperl-live/branches/branch-1-6/Bio/Root/IO.pm bioperl-live/branches/branch-1-6/Bio/Root/Root.pm bioperl-live/branches/branch-1-6/Bio/Root/RootI.pm bioperl-live/branches/branch-1-6/Bio/Search/HSP/HSPI.pm bioperl-live/branches/branch-1-6/Bio/Search/HSP/ModelHSP.pm bioperl-live/branches/branch-1-6/Bio/Search/Hit/GenericHit.pm bioperl-live/branches/branch-1-6/Bio/Search/Hit/ModelHit.pm bioperl-live/branches/branch-1-6/Bio/Search/SearchUtils.pm bioperl-live/branches/branch-1-6/Bio/SearchIO/exonerate.pm bioperl-live/branches/branch-1-6/Bio/SearchIO/fasta.pm bioperl-live/branches/branch-1-6/Bio/SearchIO/infernal.pm bioperl-live/branches/branch-1-6/Bio/SearchIO/psl.pm bioperl-live/branches/branch-1-6/Bio/Seq/Quality.pm bioperl-live/branches/branch-1-6/Bio/SeqFeature/Lite.pm bioperl-live/branches/branch-1-6/Bio/SeqIO/fasta.pm bioperl-live/branches/branch-1-6/Bio/SeqIO/fastq.pm bioperl-live/branches/branch-1-6/Bio/SeqIO/raw.pm bioperl-live/branches/branch-1-6/Bio/SeqIO/scf.pm bioperl-live/branches/branch-1-6/Bio/SeqIO.pm bioperl-live/branches/branch-1-6/Bio/SimpleAlign.pm bioperl-live/branches/branch-1-6/Bio/Tools/CodonTable.pm bioperl-live/branches/branch-1-6/Bio/Tools/EUtilities/Link/LinkSet.pm bioperl-live/branches/branch-1-6/Bio/Tools/EUtilities/Summary/DocSum.pm bioperl-live/branches/branch-1-6/Bio/Tools/EUtilities/Summary/Item.pm bioperl-live/branches/branch-1-6/Bio/Tools/HMM.pm bioperl-live/branches/branch-1-6/Bio/Tools/Primer3.pm bioperl-live/branches/branch-1-6/Bio/Tools/Run/RemoteBlast.pm bioperl-live/branches/branch-1-6/Bio/Tools/Run/WrapperBase.pm bioperl-live/branches/branch-1-6/Bio/Tools/SeqPattern.pm bioperl-live/branches/branch-1-6/Bio/Tree/Tree.pm bioperl-live/branches/branch-1-6/Bio/Tree/TreeFunctionsI.pm bioperl-live/branches/branch-1-6/Bio/TreeIO.pm bioperl-live/branches/branch-1-6/Build.PL bioperl-live/branches/branch-1-6/scripts/DB-HIV/hivq.PLS bioperl-live/branches/branch-1-6/t/Align/SimpleAlign.t bioperl-live/branches/branch-1-6/t/Align/Utilities.t bioperl-live/branches/branch-1-6/t/AlignIO/AlignIO.t bioperl-live/branches/branch-1-6/t/AlignIO/arp.t bioperl-live/branches/branch-1-6/t/AlignIO/meme.t bioperl-live/branches/branch-1-6/t/AlignIO/po.t bioperl-live/branches/branch-1-6/t/AlignIO/psi.t bioperl-live/branches/branch-1-6/t/LocalDB/transfac_pro.t bioperl-live/branches/branch-1-6/t/RemoteDB/HIV/HIVQueryHelper.t bioperl-live/branches/branch-1-6/t/Root/RootI.t bioperl-live/branches/branch-1-6/t/SearchIO/blast.t bioperl-live/branches/branch-1-6/t/SearchIO/exonerate.t bioperl-live/branches/branch-1-6/t/SearchIO/infernal.t bioperl-live/branches/branch-1-6/t/SearchIO/psl.t bioperl-live/branches/branch-1-6/t/Seq/LocatableSeq.t bioperl-live/branches/branch-1-6/t/Seq/PrimarySeq.t bioperl-live/branches/branch-1-6/t/Seq/Seq.t bioperl-live/branches/branch-1-6/t/SeqIO/fasta.t bioperl-live/branches/branch-1-6/t/SeqIO/fastq.t bioperl-live/branches/branch-1-6/t/SeqIO/raw.t bioperl-live/branches/branch-1-6/t/SeqIO/scf.t bioperl-live/branches/branch-1-6/t/SeqTools/SeqPattern.t bioperl-live/branches/branch-1-6/t/SeqTools/SeqUtils.t bioperl-live/branches/branch-1-6/t/Tools/EUtilities/esummary.t bioperl-live/branches/branch-1-6/t/Tools/Primer3.t bioperl-live/branches/branch-1-6/t/Tree/Node.t bioperl-live/branches/branch-1-6/t/data/frac_problems2.blast Added Paths: ----------- bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/DBI/SQLite.pm bioperl-live/branches/branch-1-6/Bio/Search/Tiling/ bioperl-live/branches/branch-1-6/Bio/Tools/EUtilities/Summary/ItemContainerI.pm bioperl-live/branches/branch-1-6/Bio/Tools/SeqPattern/ bioperl-live/branches/branch-1-6/t/Restriction/Analysis-refac.t bioperl-live/branches/branch-1-6/t/SearchIO/Tiling.t bioperl-live/branches/branch-1-6/t/SeqTools/Backtranslate.t bioperl-live/branches/branch-1-6/t/Tools/Run/RemoteBlast_rpsblast.t bioperl-live/branches/branch-1-6/t/bugzilla/ bioperl-live/branches/branch-1-6/t/data/1ZZ19XR301R-Alignment.tblastn bioperl-live/branches/branch-1-6/t/data/bug2862.pmr bioperl-live/branches/branch-1-6/t/data/contig-by-hand.wublastp bioperl-live/branches/branch-1-6/t/data/fastq/ bioperl-live/branches/branch-1-6/t/data/test2.infernal bioperl-live/branches/branch-1-6/t/data/test2.raw bioperl-live/branches/branch-1-6/t/data/withrefm.906 Removed Paths: ------------- bioperl-live/branches/branch-1-6/PLATFORMS bioperl-live/branches/branch-1-6/t/data/bug2335.fastq Property Changed: ---------------- bioperl-live/branches/branch-1-6/Bio/DB/HIV/lanl-schema.xml bioperl-live/branches/branch-1-6/Bio/Restriction/Analysis.pm bioperl-live/branches/branch-1-6/Bio/Restriction/Enzyme/MultiCut.pm bioperl-live/branches/branch-1-6/Bio/Restriction/Enzyme/MultiSite.pm bioperl-live/branches/branch-1-6/Bio/Restriction/Enzyme.pm bioperl-live/branches/branch-1-6/Bio/Restriction/EnzymeCollection.pm bioperl-live/branches/branch-1-6/Bio/Restriction/EnzymeI.pm bioperl-live/branches/branch-1-6/Bio/Restriction/IO/bairoch.pm bioperl-live/branches/branch-1-6/Bio/Restriction/IO/base.pm bioperl-live/branches/branch-1-6/Bio/Restriction/IO/itype2.pm bioperl-live/branches/branch-1-6/Bio/Restriction/IO/prototype.pm bioperl-live/branches/branch-1-6/Bio/Restriction/IO/withrefm.pm bioperl-live/branches/branch-1-6/Bio/Restriction/IO.pm Modified: bioperl-live/branches/branch-1-6/AUTHORS =================================================================== --- bioperl-live/branches/branch-1-6/AUTHORS 2009-09-15 21:34:07 UTC (rev 16089) +++ bioperl-live/branches/branch-1-6/AUTHORS 2009-09-15 21:57:56 UTC (rev 16090) @@ -4,30 +4,34 @@ =over -=item * Ewan Birney +=item * Sendu Bala =item * Chris Dagdigian +=item * Christopher Fields + +=item * Mark Jensen + =item * Hilmar Lapp =item * Heikki Lehv\xE4slaiho +=item * Aaron Mackey + +=item * Brian Osborne + =item * Jason Stajich =item * Lincoln Stein -=item * Sendu Bala - -=item * Christopher Fields - -=item * Brian Osborne - =back =head2 Previous Bioperl Coordinators: =over +=item * Ewan Birney + =item * Steven Brenner =item * Georg Fuellen @@ -155,8 +159,6 @@ =item * Philip Lijnzaad -=item * Aaron Mackey - =item * Brad Marshall =item * Chad Matsalla Modified: bioperl-live/branches/branch-1-6/Bio/Align/AlignI.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/Align/AlignI.pm 2009-09-15 21:34:07 UTC (rev 16089) +++ bioperl-live/branches/branch-1-6/Bio/Align/AlignI.pm 2009-09-15 21:57:56 UTC (rev 16090) @@ -21,9 +21,9 @@ # get a Bio::Align::AlignI somehow - typically using Bio::AlignIO system # some descriptors print $aln->length, "\n"; - print $aln->no_residues, "\n"; + print $aln->num_residues, "\n"; print $aln->is_flush, "\n"; - print $aln->no_sequences, "\n"; + print $aln->num_sequences, "\n"; print $aln->percentage_identity, "\n"; print $aln->consensus_string(50), "\n"; @@ -247,7 +247,7 @@ Gets a sequence based on its position in the alignment. Numbering starts from 1. Sequence positions larger than - no_sequences() will throw an error. + num_sequences() will throw an error. Returns : a Bio::LocatableSeq object Argument : positive integer for the sequence position @@ -272,7 +272,7 @@ Creates a new alignment from a continuous subset of sequences. Numbering starts from 1. Sequence positions - larger than no_sequences() will throw an error. + larger than num_sequences() will throw an error. Returns : a Bio::SimpleAlign object Argument : positive integer for the first sequence @@ -294,7 +294,7 @@ Creates a new alignment from a subset of sequences. Numbering starts from 1. Sequence positions - larger than no_sequences() will throw an error. + larger than num_sequences() will throw an error. Returns : a Bio::SimpleAlign object Args : array of integers for the sequences @@ -626,32 +626,34 @@ $self->throw_not_implemented(); } -=head2 no_residues +=head2 num_residues - Title : no_residues - Usage : $no = $ali->no_residues + Title : num_residues + Usage : $no = $ali->num_residues Function : number of residues in total in the alignment Returns : integer - Argument : + Argument : + Note : replaces no_residues =cut -sub no_residues { +sub num_residues { my ($self) = @_; $self->throw_not_implemented(); } -=head2 no_sequences +=head2 num_sequences - Title : no_sequences - Usage : $depth = $ali->no_sequences + Title : num_sequences + Usage : $depth = $ali->num_sequences Function : number of sequence in the sequence alignment Returns : integer Argument : None - + Note : replaces no_sequences + =cut -sub no_sequences { +sub num_sequences { my ($self) = @_; $self->throw_not_implemented(); } @@ -733,7 +735,7 @@ Seq2/24-30 ACGG.RTY.. Seq3/43-51 AC.DDEFGHI - column_from_residue_number( "Seq1", 94 ) returns 5. + column_from_residue_number( "Seq1", 94 ) returns 6. column_from_residue_number( "Seq2", 25 ) returns 2. column_from_residue_number( "Seq3", 50 ) returns 9. @@ -831,4 +833,38 @@ $self->throw_not_implemented(); } +=head1 Deprecated methods + +=head2 no_residues + + Title : no_residues + Usage : $no = $ali->no_residues + Function : number of residues in total in the alignment + Returns : integer + Argument : + Note : deprecated in favor of num_residues() + +=cut + +sub no_residues { + # immediate deprecation + shift->deprecated(); +} + +=head2 no_sequences + + Title : no_sequences + Usage : $depth = $ali->no_sequences + Function : number of sequence in the sequence alignment + Returns : integer + Argument : None + Note : deprecated in favor of num_sequences() + +=cut + +sub no_sequences { + # immediate deprecation + shift->deprecated(); +} + 1; Modified: bioperl-live/branches/branch-1-6/Bio/Align/PairwiseStatistics.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/Align/PairwiseStatistics.pm 2009-09-15 21:34:07 UTC (rev 16089) +++ bioperl-live/branches/branch-1-6/Bio/Align/PairwiseStatistics.pm 2009-09-15 21:57:56 UTC (rev 16090) @@ -103,9 +103,9 @@ $self->throw("Must provide a Bio::Align::AlignI compliant object to ". "Bio::Align::PairwiseStatistics"); return 0; - } elsif ( $aln->no_sequences != 2 ) { + } elsif ( $aln->num_sequences != 2 ) { $self->throw("Only pairwise calculations supported. Found ". - $aln->no_sequences." sequences in alignment\n"); + $aln->num_sequences." sequences in alignment\n"); } my $L = $aln->length - $self->number_of_gaps($aln); return $L; @@ -127,9 +127,9 @@ if( ! defined $aln || ! $aln->isa('Bio::Align::AlignI') ) { $self->throw("Must provide a Bio::Align::AlignI compliant object to ". "Bio::Align::PairwiseStatistics"); - } elsif ( $aln->no_sequences != 2 ) { + } elsif ( $aln->num_sequences != 2 ) { $self->throw("Only pairwise calculations supported. Found ". - $aln->no_sequences." sequences in alignment\n"); + $aln->num_sequences." sequences in alignment\n"); } my (@seqs); foreach my $seq ( $aln->each_seq ) { @@ -166,9 +166,9 @@ if ( ! defined $aln || ! $aln->isa('Bio::Align::AlignI') ) { $self->throw("Must provide a Bio::Align::AlignI compliant object to ". "Bio::Align::PairwiseStatistics"); - } elsif ( $aln->no_sequences != 2 ) { + } elsif ( $aln->num_sequences != 2 ) { $self->throw("Only pairwise calculations supported. Found ". - $aln->no_sequences." sequences in alignment\n"); + $aln->num_sequences." sequences in alignment\n"); } my $gapline = $aln->gap_line; # this will count the number of '-' characters @@ -208,9 +208,9 @@ if ( ! defined $aln || ! $aln->isa('Bio::Align::AlignI') ) { $self->throw("Must provide a Bio::Align::AlignI compliant object to ". "Bio::Align::PairwiseStatistics"); - } elsif ( $aln->no_sequences != 2 ) { + } elsif ( $aln->num_sequences != 2 ) { $self->throw("Only pairwise calculations supported. Found ". - $aln->no_sequences." sequences in alignment\n"); + $aln->num_sequences." sequences in alignment\n"); } my $seq1 = $aln->get_seq_by_pos(1); my $seq2 = $aln->get_seq_by_pos(2); Modified: bioperl-live/branches/branch-1-6/Bio/AlignIO/arp.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/AlignIO/arp.pm 2009-09-15 21:34:07 UTC (rev 16089) +++ bioperl-live/branches/branch-1-6/Bio/AlignIO/arp.pm 2009-09-15 21:57:56 UTC (rev 16090) @@ -181,7 +181,7 @@ } } # alignments only returned if they contain sequences - return $aln if $aln->no_sequences; + return $aln if $aln->num_sequences; return; } Modified: bioperl-live/branches/branch-1-6/Bio/AlignIO/clustalw.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/AlignIO/clustalw.pm 2009-09-15 21:34:07 UTC (rev 16089) +++ bioperl-live/branches/branch-1-6/Bio/AlignIO/clustalw.pm 2009-09-15 21:57:56 UTC (rev 16090) @@ -213,8 +213,10 @@ # not sure if this should be a default option - or we can pass in # an option to do this in the future? --jason stajich # $aln->map_chars('\.','-'); - undef $aln if ( !defined $end || $end <= 0 ); - return $aln; + + # no sequences added, so just return + return $aln if $aln->num_sequences; + return; } =head2 write_aln Modified: bioperl-live/branches/branch-1-6/Bio/AlignIO/fasta.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/AlignIO/fasta.pm 2009-09-15 21:34:07 UTC (rev 16089) +++ bioperl-live/branches/branch-1-6/Bio/AlignIO/fasta.pm 2009-09-15 21:57:56 UTC (rev 16090) @@ -62,6 +62,7 @@ use base qw(Bio::AlignIO); our $WIDTH = 60; +use Bio::LocatableSeq; =head2 next_aln @@ -141,13 +142,6 @@ $start = 1; $end = $self->_get_len($seqchar); } - - # If $end <= 0, we have either reached the end of - # file in <> or we have encountered some other error - if ( $end <= 0 ) { - undef $aln; - return $aln; - } # This logic now also reads empty lines at the # end of the file. Skip this is seqchar and seqname is null @@ -168,7 +162,9 @@ $seq->seq( $seq->seq() . "-" x $diff); } } - return $aln; + + # no sequences means empty alignment (possible EOF) + return $aln if $aln->num_sequences; } =head2 write_aln @@ -228,7 +224,8 @@ sub _get_len { my ($self,$seq) = @_; - $seq =~ s/[^A-Z]//gi; + my $chars = $Bio::LocatableSeq::RESIDUE_SYMBOLS; + $seq =~ s{[^$chars]+}{}gi; return CORE::length($seq); } Modified: bioperl-live/branches/branch-1-6/Bio/AlignIO/largemultifasta.pm @@ Diff output truncated at 10000 characters. @@ From cjfields at dev.open-bio.org Tue Sep 15 18:11:15 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Tue, 15 Sep 2009 18:11:15 -0400 Subject: [Bioperl-guts-l] [16091] bioperl-live/branches/branch-1-6: sync with main trunk completely ( a few tests failing) Message-ID: <200909152211.n8FMBFcf023136@dev.open-bio.org> Revision: 16091 Author: cjfields Date: 2009-09-15 18:11:15 -0400 (Tue, 15 Sep 2009) Log Message: ----------- sync with main trunk completely (a few tests failing) Modified Paths: -------------- bioperl-live/branches/branch-1-6/AUTHORS bioperl-live/branches/branch-1-6/Bio/DB/HIV.pm bioperl-live/branches/branch-1-6/Bio/DB/Query/HIVQuery.pm bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/DBI/SQLite.pm bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/Loader.pm bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/berkeleydb.pm bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature.pm bioperl-live/branches/branch-1-6/Bio/Index/Fasta.pm bioperl-live/branches/branch-1-6/Bio/LocatableSeq.pm bioperl-live/branches/branch-1-6/Bio/Root/Test.pm bioperl-live/branches/branch-1-6/Bio/Search/HSP/FastaHSP.pm bioperl-live/branches/branch-1-6/Bio/Seq/Meta/Array.pm bioperl-live/branches/branch-1-6/Bio/SeqFeature/Generic.pm bioperl-live/branches/branch-1-6/Bio/SeqFeature/Tools/TypeMapper.pm bioperl-live/branches/branch-1-6/Bio/SeqIO/fastq.pm bioperl-live/branches/branch-1-6/Bio/SeqIO/largefasta.pm bioperl-live/branches/branch-1-6/Bio/SeqIO/raw.pm bioperl-live/branches/branch-1-6/Bio/SimpleAlign.pm bioperl-live/branches/branch-1-6/Bio/Tools/dpAlign.pm bioperl-live/branches/branch-1-6/Bio/Tree/TreeFunctionsI.pm bioperl-live/branches/branch-1-6/Changes bioperl-live/branches/branch-1-6/bioperl.lisp bioperl-live/branches/branch-1-6/scripts/Bio-SeqFeature-Store/bp_seqfeature_load.PLS bioperl-live/branches/branch-1-6/t/Align/SimpleAlign.t bioperl-live/branches/branch-1-6/t/LocalDB/SeqFeature.t bioperl-live/branches/branch-1-6/t/RemoteDB/BioFetch.t bioperl-live/branches/branch-1-6/t/RemoteDB/EMBL.t bioperl-live/branches/branch-1-6/t/RemoteDB/EUtilities.t bioperl-live/branches/branch-1-6/t/RemoteDB/SwissProt.t bioperl-live/branches/branch-1-6/t/Seq/EncodedSeq.t bioperl-live/branches/branch-1-6/t/Seq/LocatableSeq.t bioperl-live/branches/branch-1-6/t/SeqIO/fastq.t bioperl-live/branches/branch-1-6/t/SeqIO/raw.t bioperl-live/branches/branch-1-6/t/Tools/Primer3.t bioperl-live/branches/branch-1-6/t/data/bug2862.pmr Added Paths: ----------- bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/DBI/Pg.pm bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/berkeleydb3.pm bioperl-live/branches/branch-1-6/Bio/SearchIO/gmap_f9.pm bioperl-live/branches/branch-1-6/maintenance/perltidy.conf bioperl-live/branches/branch-1-6/t/data/fastq/error_diff_ids.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_double_qual.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_double_seq.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_long_qual.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_no_qual.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_qual_del.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_qual_escape.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_qual_null.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_qual_space.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_qual_tab.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_qual_unit_sep.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_qual_vtab.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_short_qual.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_spaces.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_tabs.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_trunc_at_plus.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_trunc_at_qual.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_trunc_at_seq.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_trunc_in_plus.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_trunc_in_qual.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_trunc_in_seq.fastq bioperl-live/branches/branch-1-6/t/data/fastq/error_trunc_in_title.fastq bioperl-live/branches/branch-1-6/t/data/fastq/evil_wrapping.fastq bioperl-live/branches/branch-1-6/t/data/fastq/example.fasta bioperl-live/branches/branch-1-6/t/data/fastq/example.fastq bioperl-live/branches/branch-1-6/t/data/fastq/example.qual bioperl-live/branches/branch-1-6/t/data/fastq/illumina_faked.fastq bioperl-live/branches/branch-1-6/t/data/fastq/sanger_93.fastq bioperl-live/branches/branch-1-6/t/data/fastq/sanger_faked.fastq bioperl-live/branches/branch-1-6/t/data/fastq/solexa_example.fastq bioperl-live/branches/branch-1-6/t/data/fastq/solexa_faked.fastq bioperl-live/branches/branch-1-6/t/data/fastq/tricky.fastq bioperl-live/branches/branch-1-6/t/data/fastq/wrapping_issues.fastq bioperl-live/branches/branch-1-6/t/data/gmap_f9-multiple_results.txt bioperl-live/branches/branch-1-6/t/data/gmap_f9-reverse-strand.txt bioperl-live/branches/branch-1-6/t/data/gmap_f9.txt bioperl-live/branches/branch-1-6/t/gmap_f9-searchio.t Removed Paths: ------------- bioperl-live/branches/branch-1-6/Bio/Tools/HMM.pm Modified: bioperl-live/branches/branch-1-6/AUTHORS =================================================================== --- bioperl-live/branches/branch-1-6/AUTHORS 2009-09-15 21:57:56 UTC (rev 16090) +++ bioperl-live/branches/branch-1-6/AUTHORS 2009-09-15 22:11:15 UTC (rev 16091) @@ -133,7 +133,7 @@ =item * Keith James - Bio::Tools::Geneid -=item * Mark A. Jensen - Bio::DB::HIVQuery +=item * Mark A. Jensen - Bio::DB::HIVQuery, Bio::Search::Tiling =item * Nicolas Joly @@ -169,6 +169,8 @@ =item * Dave Messina - Deobfuscator, judicious meddling +=item * Chase Miller - Bio::Nexml and related IO modules + =item * Juha Muilu =item * Chris Mungall Modified: bioperl-live/branches/branch-1-6/Bio/DB/HIV.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/DB/HIV.pm 2009-09-15 21:57:56 UTC (rev 16090) +++ bioperl-live/branches/branch-1-6/Bio/DB/HIV.pm 2009-09-15 22:11:15 UTC (rev 16091) @@ -91,6 +91,7 @@ package Bio::DB::HIV; use strict; +use warnings; use vars qw( $LANL_BASE $LANL_MAP_DB $LANL_MAKE_SEARCH_IF $LANL_SEARCH ); # Object preamble - inherits from Bio::DB::WebDBSeqI @@ -380,15 +381,18 @@ $self->throw(-class=>'Bio::Root::BadParameter', -text=>'No data found in repsonse', -value=>%args) unless (@data); - shift @data; # number-returned line + my $l; + do { + $l = shift @data; + } while ( $l !~ /Number/ ); # number-returned line @cols = split( /\t/, shift @data); # if Accession column is present, get_Stream_by_acc was called # otherwise, return lanl ids - ($idkey) = grep /SE.id/, @cols unless ($idkey) = grep /Accession/, @cols; + ($idkey) = grep /SE.id/i, @cols unless ($idkey) = grep /Accession/i, @cols; $self->throw(-class=>"Bio::ResponseProblem::Exception", -text=>"Trouble with column headers in LANL response", - -value=>\@cols) unless $idkey; + -value=>join(' ', at cols)) unless $idkey; foreach (@data) { chop; Modified: bioperl-live/branches/branch-1-6/Bio/DB/Query/HIVQuery.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/DB/Query/HIVQuery.pm 2009-09-15 21:57:56 UTC (rev 16090) +++ bioperl-live/branches/branch-1-6/Bio/DB/Query/HIVQuery.pm 2009-09-15 22:11:15 UTC (rev 16091) @@ -523,6 +523,7 @@ sub add_annotations_for_id{ my $self = shift; my ($id, $ac) = @_; + $id = "" unless defined $id; # avoid warnings $ac = new Bio::Annotation::Collection unless defined $ac; $self->throw(-class=>'Bio::Root::BadParameter' -text=>'Bio::Annotation::Collection required at arg 2', @@ -840,6 +841,7 @@ sub add_id { my $self = shift; my $id = shift; + $id = "" unless defined $id; # avoid warnings ${$self->{'ids'}}{$id}++; return $id; } @@ -1440,7 +1442,8 @@ -value=>""); foreach my $rsp (@{$self->_lanl_response}) { @data = split(/\r|\n/, $rsp->content); - $numseq += ( shift(@data) =~ /Number.*:\s([0-9]+)/ )[0]; + my $line = shift @data; + $numseq += ( $line =~ /Number.*:\s([0-9]+)/ )[0]; @cols = split(/\t/, shift @data); # mappings from column headings to annotation keys Added: bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/DBI/Pg.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/DBI/Pg.pm (rev 0) +++ bioperl-live/branches/branch-1-6/Bio/DB/SeqFeature/Store/DBI/Pg.pm 2009-09-15 22:11:15 UTC (rev 16091) @@ -0,0 +1,874 @@ + +package Bio::DB::SeqFeature::Store::DBI::Pg; +use DBD::Pg qw(:pg_types); +use MIME::Base64; +# $Id: Pg.pm 14656 2008-04-14 15:05:37Z lstein $ + +=head1 NAME + +Bio::DB::SeqFeature::Store::DBI::Pg -- Mysql implementation of Bio::DB::SeqFeature::Store + +=head1 SYNOPSIS + + use Bio::DB::SeqFeature::Store; + + # Open the sequence database + my $db = Bio::DB::SeqFeature::Store->new(-adaptor => 'DBI::Pg', + -dsn => 'dbi:Pg:test'); + + # get a feature from somewhere + my $feature = Bio::SeqFeature::Generic->new(...); + + # store it + $db->store($feature) or die "Couldn't store!"; + + # primary ID of the feature is changed to indicate its primary ID + # in the database... + my $id = $feature->primary_id; + + # get the feature back out + my $f = $db->fetch($id); + + # change the feature and update it + $f->start(100); + $db->update($f) or die "Couldn't update!"; + + # searching... + # ...by id + my @features = $db->fetch_many(@list_of_ids); + + # ...by name + @features = $db->get_features_by_name('ZK909'); + + # ...by alias + @features = $db->get_features_by_alias('sma-3'); + + # ...by type + @features = $db->get_features_by_name('gene'); + + # ...by location + @features = $db->get_features_by_location(-seq_id=>'Chr1',-start=>4000,-end=>600000); + + # ...by attribute + @features = $db->get_features_by_attribute({description => 'protein kinase'}) + + # ...by the GFF "Note" field + @result_list = $db->search_notes('kinase'); + + # ...by arbitrary combinations of selectors + @features = $db->features(-name => $name, + -type => $types, + -seq_id => $seqid, + -start => $start, + -end => $end, + -attributes => $attributes); + + # ...using an iterator + my $iterator = $db->get_seq_stream(-name => $name, + -type => $types, + -seq_id => $seqid, + -start => $start, + -end => $end, + -attributes => $attributes); + + while (my $feature = $iterator->next_seq) { + # do something with the feature + } + + # ...limiting the search to a particular region + my $segment = $db->segment('Chr1',5000=>6000); + my @features = $segment->features(-type=>['mRNA','match']); + + # getting & storing sequence information + # Warning: this returns a string, and not a PrimarySeq object + $db->insert_sequence('Chr1','GATCCCCCGGGATTCCAAAA...'); + my $sequence = $db->fetch_sequence('Chr1',5000=>6000); + + # what feature types are defined in the database? + my @types = $db->types; + + # create a new feature in the database + my $feature = $db->new_feature(-primary_tag => 'mRNA', + -seq_id => 'chr3', + -start => 10000, + -end => 11000); + +=head1 DESCRIPTION + +Bio::DB::SeqFeature::Store::Pg is the Mysql adaptor for +Bio::DB::SeqFeature::Store. You will not create it directly, but +instead use Bio::DB::SeqFeature::Store-Enew() to do so. + +See L for complete usage instructions. + +=head2 Using the Mysql adaptor + +Before you can use the adaptor, you must use the Pgadmin tool to +create a database and establish a user account with write +permission. In order to use "fast" loading, the user account must have +"file" privileges. + +To establish a connection to the database, call +Bio::DB::SeqFeature::Store-Enew(-adaptor=E'DBI::Pg', at more_args). The +additional arguments are as follows: + + Argument name Description + ------------- ----------- + + -dsn The database name. You can abbreviate + "dbi:Pg:foo" as "foo" if you wish. + + -user Username for authentication. + + -pass Password for authentication. + + -namespace A prefix to attach to each table. This allows you + to have several virtual databases in the same + physical database. + + -temp Boolean flag. If true, a temporary database + will be created and destroyed as soon as + the Store object goes out of scope. (synonym -temporary) + + -autoindex Boolean flag. If true, features in the database will be + reindexed every time they change. This is the default. + + + -tmpdir Directory in which to place temporary files during "fast" loading. + Defaults to File::Spec->tmpdir(). (synonyms -dump_dir, -dumpdir, -tmp) + + -dbi_options A hashref to pass to DBI->connect's 4th argument, the "attributes." + (synonyms -options, -dbi_attr) + + -write Pass true to open database for writing or updating. + +If successful, a new instance of +Bio::DB::SeqFeature::Store::DBI::Pg will be returned. + +In addition to the standard methods supported by all well-behaved +Bio::DB::SeqFeature::Store databases, several following +adaptor-specific methods are provided. These are described in the next +sections. + +=cut + +use strict; + +use base 'Bio::DB::SeqFeature::Store::DBI::mysql'; +use Bio::DB::SeqFeature::Store::DBI::Iterator; +use DBI; +use Memoize; +use Cwd 'abs_path'; +use Bio::DB::GFF::Util::Rearrange 'rearrange'; +use File::Spec; +use constant DEBUG=>0; + +# from the MySQL documentation... +# WARNING: if your sequence uses coordinates greater than 2 GB, you are out of luck! +use constant MAX_INT => 2_147_483_647; +use constant MIN_INT => -2_147_483_648; +use constant MAX_BIN => 1_000_000_000; # size of largest feature = 1 Gb +use constant MIN_BIN => 1000; # smallest bin we'll make - on a 100 Mb chromosome, there'll be 100,000 of these + +### +# object initialization +# +# NOTE: most of this code can be refactored and inherited from DBI or DBI::mysql adapter +# +sub init { + my $self = shift; + my ($dsn, + $is_temporary, + $autoindex, + $namespace, + $dump_dir, + $user, + $pass, + $dbi_options, + $writeable, + $create, + $schema, + ) = rearrange(['DSN', + ['TEMP','TEMPORARY'], + 'AUTOINDEX', + 'NAMESPACE', + ['DUMP_DIR','DUMPDIR','TMP','TMPDIR'], + 'USER', + ['PASS','PASSWD','PASSWORD'], @@ Diff output truncated at 10000 characters. @@ From cjfields at dev.open-bio.org Tue Sep 15 23:52:31 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Tue, 15 Sep 2009 23:52:31 -0400 Subject: [Bioperl-guts-l] [16092] bioperl-live/trunk: fix mask_columns, move tests over to SimpleAlign.t ( these probably will be split out again at a later point once SimpleAlign is cleaned up ) Message-ID: <200909160352.n8G3qVak024143@dev.open-bio.org> Revision: 16092 Author: cjfields Date: 2009-09-15 23:52:31 -0400 (Tue, 15 Sep 2009) Log Message: ----------- fix mask_columns, move tests over to SimpleAlign.t (these probably will be split out again at a later point once SimpleAlign is cleaned up) Modified Paths: -------------- bioperl-live/trunk/Bio/SimpleAlign.pm bioperl-live/trunk/t/Align/SimpleAlign.t Modified: bioperl-live/trunk/Bio/SimpleAlign.pm =================================================================== --- bioperl-live/trunk/Bio/SimpleAlign.pm 2009-09-15 22:11:15 UTC (rev 16091) +++ bioperl-live/trunk/Bio/SimpleAlign.pm 2009-09-16 03:52:31 UTC (rev 16092) @@ -3200,8 +3200,9 @@ -alphabet => $seq->alphabet, -strand => $seq->strand, -verbose => $self->verbose); - - my $masked_string = substr($seq->seq,$start, $end - $start +1); + + # convert from 1-based alignment coords! + my $masked_string = substr($seq->seq, $start - 1, $end - $start + 1); $masked_string =~ s{[^$nonres]}{$mask_char}g; my $new_dna_string = substr($seq->seq,0,$start-1) . $masked_string . substr($seq->seq,$end); $new_seq->seq($new_dna_string); Modified: bioperl-live/trunk/t/Align/SimpleAlign.t =================================================================== --- bioperl-live/trunk/t/Align/SimpleAlign.t 2009-09-15 22:11:15 UTC (rev 16091) +++ bioperl-live/trunk/t/Align/SimpleAlign.t 2009-09-16 03:52:31 UTC (rev 16092) @@ -7,7 +7,7 @@ use lib '.'; use Bio::Root::Test; - test_begin( -tests => 173 ); + test_begin( -tests => 179 ); use_ok('Bio::SimpleAlign'); use_ok('Bio::AlignIO'); @@ -684,6 +684,77 @@ } } +# work out mask_columns() +SKIP: { + test_skip(-tests => 6, -requires_module => 'IO::String'); + my $io = Bio::AlignIO->new( -file => test_input_file("testaln.aln") ); + my $aln = $io->next_aln(); + isa_ok( $aln, 'Bio::SimpleAlign' ); + my $consensus = <consensus_string, $consensus, 'consensus string looks ok' ); + + is( aln2str( $aln => 'pfam' ), <mask_columns(12,20,'?'); + is( aln2str( $newaln, 'pfam' ), <new( <new( -fh => $phy_fh, -format => 'phylip' ); + + $aln = $in->next_aln(); + is( aln2str( $aln, 'phylip' ), <mask_columns(15,20,'?'); + is( aln2str( $newaln,'phylip' ), <write_aln( $aln ); return $out; } + From cjfields at dev.open-bio.org Wed Sep 16 00:13:31 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Wed, 16 Sep 2009 00:13:31 -0400 Subject: [Bioperl-guts-l] [16093] bioperl-live/trunk/t: move bugzilla tests to relevant test files, data to t/data, and remove Message-ID: <200909160413.n8G4DVGn024332@dev.open-bio.org> Revision: 16093 Author: cjfields Date: 2009-09-16 00:13:31 -0400 (Wed, 16 Sep 2009) Log Message: ----------- move bugzilla tests to relevant test files, data to t/data, and remove Modified Paths: -------------- bioperl-live/trunk/t/Align/SimpleAlign.t bioperl-live/trunk/t/SearchIO/exonerate.t bioperl-live/trunk/t/SearchIO/fasta.t bioperl-live/trunk/t/SearchIO/psl.t bioperl-live/trunk/t/Seq/Quality.t Added Paths: ----------- bioperl-live/trunk/t/data/exonerate.output.dontwork bioperl-live/trunk/t/data/exonerate.output.works bioperl-live/trunk/t/data/headerless.psl bioperl-live/trunk/t/data/in.fasta bioperl-live/trunk/t/data/test_clear_range.fastq Removed Paths: ------------- bioperl-live/trunk/t/bugzilla/ Modified: bioperl-live/trunk/t/Align/SimpleAlign.t =================================================================== --- bioperl-live/trunk/t/Align/SimpleAlign.t 2009-09-16 03:52:31 UTC (rev 16092) +++ bioperl-live/trunk/t/Align/SimpleAlign.t 2009-09-16 04:13:31 UTC (rev 16093) @@ -684,7 +684,7 @@ } } -# work out mask_columns() +# work out mask_columns(), see bug 2842 SKIP: { test_skip(-tests => 6, -requires_module => 'IO::String'); my $io = Bio::AlignIO->new( -file => test_input_file("testaln.aln") ); Modified: bioperl-live/trunk/t/SearchIO/exonerate.t =================================================================== --- bioperl-live/trunk/t/SearchIO/exonerate.t 2009-09-16 03:52:31 UTC (rev 16092) +++ bioperl-live/trunk/t/SearchIO/exonerate.t 2009-09-16 04:13:31 UTC (rev 16093) @@ -7,7 +7,7 @@ use lib '.'; use Bio::Root::Test; - test_begin( -tests => 45 ); + test_begin( -tests => 49 ); use_ok('Bio::SearchIO'); } @@ -74,3 +74,34 @@ is( $hsp->hit->strand, shift @$d ); } } + +# bug 2346 + +my @cts = (7, 1); + +$searchio = Bio::SearchIO->new( + -format => 'exonerate', + -file => test_input_file('exonerate.output.works'), +); +parse($searchio); + +$searchio = Bio::SearchIO->new( + -format => 'exonerate', + -file => test_input_file('exonerate.output.dontwork'), +); +parse($searchio); + +sub parse { + my ($searchio) = @_; + while( my $r = $searchio->next_result ) { + my $hsp_ct = 0; + while(my $hit = $r->next_hit){ + while(my $hsp = $hit->next_hsp){ + $hsp_ct++; + } + } + ok($r->query_name, "query_name"); + is($hsp_ct, shift @cts); + } +} + Modified: bioperl-live/trunk/t/SearchIO/fasta.t =================================================================== --- bioperl-live/trunk/t/SearchIO/fasta.t 2009-09-16 03:52:31 UTC (rev 16092) +++ bioperl-live/trunk/t/SearchIO/fasta.t 2009-09-16 04:13:31 UTC (rev 16093) @@ -7,7 +7,7 @@ use lib '.'; use Bio::Root::Test; - test_begin(-tests => 287); + test_begin(-tests => 289); use_ok('Bio::SearchIO'); } @@ -384,3 +384,22 @@ is($res->algorithm, 'FASTN'); } +# bug 2537 + +$searchio = Bio::SearchIO->new( + -format => 'fasta', + -file => test_input_file('in.fasta'), +); + +while ( my $result = $searchio->next_result() ) { + while( my $hit = $result->next_hit ) { + # process the Bio::Search::Hit::HitI object + while( my $hsp = $hit->next_hsp ) { + # process the Bio::Search::HSP::HSPI object + is($hsp->num_identical, 30, "num_identical()"); + is($hsp->num_conserved, 30, "num_conserved()"); + } + } +} + + Modified: bioperl-live/trunk/t/SearchIO/psl.t =================================================================== --- bioperl-live/trunk/t/SearchIO/psl.t 2009-09-16 03:52:31 UTC (rev 16092) +++ bioperl-live/trunk/t/SearchIO/psl.t 2009-09-16 04:13:31 UTC (rev 16093) @@ -7,7 +7,7 @@ use lib '.'; use Bio::Root::Test; - test_begin(-tests => 52); + test_begin(-tests => 53); use_ok('Bio::SearchIO'); } @@ -96,3 +96,12 @@ local $TODO = "next_result should really return undef, not empty string"; is( $pslparser->next_result, undef, 'next_result should be undef'); } + +# bug 2850 + +my $searchio = Bio::SearchIO->new( + -format => 'psl', + -file => test_input_file('headerless.psl'), +); + +lives_ok { my $result = $searchio->next_result }; Modified: bioperl-live/trunk/t/Seq/Quality.t =================================================================== --- bioperl-live/trunk/t/Seq/Quality.t 2009-09-16 03:52:31 UTC (rev 16092) +++ bioperl-live/trunk/t/Seq/Quality.t 2009-09-16 04:13:31 UTC (rev 16093) @@ -7,11 +7,13 @@ use lib '.'; use Bio::Root::Test; - test_begin(-tests => 60); + test_begin(-tests => 61); use_ok('Bio::Seq::Quality'); } +use Bio::SeqIO; + my $DEBUG = test_debug(); # create some random sequence object with no id @@ -266,3 +268,14 @@ my $min_length = 10; @ranges = $seq->get_all_clean_ranges($min_length); is scalar @ranges, 2; + +my $seqio = Bio::SeqIO->new( + -file => test_input_file('test_clear_range.fastq'), + -format => 'fastq' +); + +while ( my $seq = $seqio->next_seq() ) { + $seq->threshold(15); + lives_ok { my $newqualobj = $seq->get_clear_range }; +} + Added: bioperl-live/trunk/t/data/exonerate.output.dontwork =================================================================== --- bioperl-live/trunk/t/data/exonerate.output.dontwork (rev 0) +++ bioperl-live/trunk/t/data/exonerate.output.dontwork 2009-09-16 04:13:31 UTC (rev 16093) @@ -0,0 +1,63 @@ +Command line: [exonerate -q test_aa.fa -t test_cds.fa --model protein2dna] +Hostname: [fgu204.anat.ox.ac.uk] +C4 Alignment display: + Model: protein2dna + Raw score: 1059 + Aligned positions 0->204 of query + Aligned positions 2->614 of target + +Query: SJCHGC00851 AA +Target: SJCHGC00851 CDS + + 1 : ArgAlaProArgProSerLeuLeuTyrPheAsnValPheLeuLeuLeuValHisSerPheSerG : 22 + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + ArgAlaProArgProSerLeuLeuTyrPheAsnValPheLeuLeuLeuValHisSerPheSerG + 3 : CGTGCCCCTCGTCCTTCTTTGCTCTACTTCAACGTGTTTCTTTTGTTGGTTCATTCATTTTCAC : 66 + + 23 : lnAspLysLysAspValLeuLysLysLeuAsnSerThrLeuLeuSerMetGluAsnSerLeuLe : 43 + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + lnAspLysLysAspValLeuLysLysLeuAsnSerThrLeuLeuSerMetGluAsnSerLeuLe + 67 : AAGATAAAAAGGATGTGTTGAAGAAGTTAAACTCTACTTTACTTTCAATGGAAAACAGCTTATT : 129 + + 44 : uLysValGlnGlnAsnIleGlnAsnThrAspHisGluValLysAsnSerThrLysArgIleAsn : 64 + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + uLysValGlnGlnAsnIleGlnAsnThrAspHisGluValLysAsnSerThrLysArgIleAsn + 130 : AAAAGTTCAACAAAACATTCAAAACACTGACCACGAAGTAAAGAATTCGACAAAGAGAATAAAT : 192 + + 65 : LysValLeuAlaProHisGlyArgThrIleAspGluTyrValLysCysLysThrAsnGluPheL : 86 + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + LysValLeuAlaProHisGlyArgThrIleAspGluTyrValLysCysLysThrAsnGluPheL + 193 : AAAGTACTTGCACCTCACGGAAGAACAATTGACGAATATGTCAAATGCAAAACTAATGAATTTA : 258 + + 87 : ysAlaGluGluGlyLeuSerThrAsnThrLysPheLeuLysGluPheIleProGlyThrPheAr : 107 + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + ysAlaGluGluGlyLeuSerThrAsnThrLysPheLeuLysGluPheIleProGlyThrPheAr + 259 : AAGCTGAAGAAGGTTTATCTACAAATACTAAATTCTTAAAAGAGTTTATTCCTGGAACTTTTCG : 321 + + 108 : gValTyrArgLysTyrLeuThrAspGluAspIleHisTrpLysAsnAlaAlaGluGluArgLys : 128 + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + gValTyrArgLysTyrLeuThrAspGluAspIleHisTrpLysAsnAlaAlaGluGluArgLys + 322 : TGTTTATAGAAAATACCTGACTGATGAAGATATACATTGGAAAAACGCCGCTGAAGAACGGAAG : 384 + + 129 : AlaLysTyrLysThrMetAlaLeuGluHisThrSerGluLysCysAspGluLeuAlaAspGlnP : 150 + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + AlaLysTyrLysThrMetAlaLeuGluHisThrSerGluLysCysAspGluLeuAlaAspGlnP + 385 : GCAAAATATAAAACAATGGCCTTAGAGCACACTTCGGAAAAGTGTGATGAACTTGCTGATCAAT : 450 + + 151 : heProGluAlaPheValGluIleGlnGluLeuLysAspGlnIleTyrGluArgGlnArgTyrGl : 171 + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + heProGluAlaPheValGluIleGlnGluLeuLysAspGlnIleTyrGluArgGlnArgTyrGl + 451 : TTCCTGAAGCGTTTGTAGAAATTCAAGAACTTAAGGATCAAATATATGAACGACAAAGATACGA : 513 + + 172 : uLeuGlnTyrAspTyrMetPheTyrLysPhePheValLeuLeuAspIleTyrArgLysValGln : 192 + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + uLeuGlnTyrAspTyrMetPheTyrLysPhePheValLeuLeuAspIleTyrArgLysValGln + 514 : ATTACAATATGATTATATGTTTTATAAGTTTTTCGTGCTATTAGATATTTATAGAAAAGTGCAA : 576 + + 193 : AlaPheAspGluThrArgGluGluHisGluGln*** : 204 + |||||||||||||||||||||||||||||||||||| + AlaPheAspGluThrArgGluGluHisGluGln*** + 577 : GCATTTGATGAAACACGTGAAGAACATGAGCAGTGA : 614 + +vulgar: SJCHGC00851 0 204 . SJCHGC00851 2 614 + 1059 M 204 612 +-- completed exonerate analysis Added: bioperl-live/trunk/t/data/exonerate.output.works =================================================================== --- bioperl-live/trunk/t/data/exonerate.output.works (rev 0) +++ bioperl-live/trunk/t/data/exonerate.output.works 2009-09-16 04:13:31 UTC (rev 16093) @@ -0,0 +1,109 @@ +Command line: [exonerate -q exonerate_cdna.fa -t exonerate_genomic.fa --model est2genome --bestn 1] +Hostname: [fgu204.anat.ox.ac.uk] +C4 Alignment display: + Model: est2genome + Raw score: 6137 + Aligned positions 3->1279 of query + Aligned positions 28->3074 of target + +Query: MUSSPSYN Mouse spermidine synthase mRNA, complete cds. +Target: 4.143962167-143965267 Slice, no description + + 4 : GTTGTGCT-GGGGGGGTCCGCGCGCCCTGCAGTCCCGAACCCGCTACGCGCTCCGTCGGCCC : 64 + |||||||| ||||||||||||||||||||||||||||||||||||||||||||||||||||| + 29 : GTTGTGCTGGGGGGGGTCCGCGCGCCCTGCAGTCCCGAACCCGCTACGCGCTCCGTCGGCCC : 90 + + 65 : GCCCGCCCGCCATGGAGCCTGGCCCCGACGGCCCAGCCGCGCCCGGCCCCGCCGCCATCCGT : 126 + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + 91 : GCCCGCCCGCCATGGAGCCTGGCCCCGACGGCCCAGCCGCGCCCGGCCCCGCCGCCATCCGT : 152 + + 127 : GAGGGCTGGTTCCGAGAGACCTGCAGCCTGTGGCCCGGCCAGGCCCTGTCGCTGCAAGTGGA : 188 + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + 153 : GAGGGCTGGTTCCGAGAGACCTGCAGCCTGTGGCCCGGCCAGGCCCTGTCGCTGCAAGTGGA : 214 + + 189 : GCAGCTGCTTCACCACCGGCGATCGCGGTACCAAGACATCCTCGTCTTCCGCAG >>>> T : 243 + ||||||||||||||||||||||||||||||||||||||||||||||||||||||++ + 215 : GCAGCTGCTTCACCACCGGCGATCGCGGTACCAAGACATCCTCGTCTTCCGCAGgt...... : 271 + + 244 : arget Intron 1 >>>> TAAAACCTACGGCAACGTGCTGGTTCTGGATGGCGTCATCC : 283 + 257 bp ++||||||||||||||||||||||||||||||||||||||||| + 272 : ...................agTAAAACCTACGGCAACGTGCTGGTTCTGGATGGCGTCATCC : 566 + + 284 : AGTGTACTGAGAGGGATGAGTTCTCCTACCAGGAGATGATCGCCAACCTGCCGCTCTGCAGC : 345 + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + 567 : AGTGTACTGAGAGGGATGAGTTCTCCTACCAGGAGATGATCGCCAACCTGCCGCTCTGCAGC : 628 + + 346 : CACCCCAACCCGCGGAAG >>>> Target Intron 2 >>>> GTGCTGATCATCGGG : 378 @@ Diff output truncated at 10000 characters. @@ From cjfields at dev.open-bio.org Wed Sep 16 00:13:59 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Wed, 16 Sep 2009 00:13:59 -0400 Subject: [Bioperl-guts-l] [16094] bioperl-live/trunk/Changes: add alpha designation Message-ID: <200909160413.n8G4DxUP024363@dev.open-bio.org> Revision: 16094 Author: cjfields Date: 2009-09-16 00:13:59 -0400 (Wed, 16 Sep 2009) Log Message: ----------- add alpha designation Modified Paths: -------------- bioperl-live/trunk/Changes Modified: bioperl-live/trunk/Changes =================================================================== --- bioperl-live/trunk/Changes 2009-09-16 04:13:31 UTC (rev 16093) +++ bioperl-live/trunk/Changes 2009-09-16 04:13:59 UTC (rev 16094) @@ -17,7 +17,7 @@ are online at http://bugzilla.open-bio.org, with specific bugs intended for this release series highlighted in BUGS. -1.6.0_1 Sept. 15, 2009 +1.6.0_1 Sept. 15, 2009 (first 1.6.1 alpha) * Bio::Align::DNAStatistics - fix divide by zero problem [jason] * Bio::AlignIO::* From rbuels at dev.open-bio.org Wed Sep 16 00:15:15 2009 From: rbuels at dev.open-bio.org (Robert Buels) Date: Wed, 16 Sep 2009 00:15:15 -0400 Subject: [Bioperl-guts-l] [16095] branches/gff_refactor/bioperl-live/trunk/.gitignore: added . gitignore for use when developing with git-svn Message-ID: <200909160415.n8G4FFS3024394@dev.open-bio.org> Revision: 16095 Author: rbuels Date: 2009-09-16 00:15:15 -0400 (Wed, 16 Sep 2009) Log Message: ----------- added .gitignore for use when developing with git-svn Added Paths: ----------- branches/gff_refactor/bioperl-live/trunk/.gitignore Added: branches/gff_refactor/bioperl-live/trunk/.gitignore =================================================================== --- branches/gff_refactor/bioperl-live/trunk/.gitignore (rev 0) +++ branches/gff_refactor/bioperl-live/trunk/.gitignore 2009-09-16 04:15:15 UTC (rev 16095) @@ -0,0 +1 @@ +*~ From rbuels at dev.open-bio.org Wed Sep 16 00:15:18 2009 From: rbuels at dev.open-bio.org (Robert Buels) Date: Wed, 16 Sep 2009 00:15:18 -0400 Subject: [Bioperl-guts-l] [16096] branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/ TypedSeqFeatureI.pm: updated Bio::SeqFeature:: TypedSeqFeatureI to specify type_term() and source_term() methods, as well as alias the old ontology_term() to type_term() Message-ID: <200909160415.n8G4FImF024405@dev.open-bio.org> Revision: 16096 Author: rbuels Date: 2009-09-16 00:15:17 -0400 (Wed, 16 Sep 2009) Log Message: ----------- updated Bio::SeqFeature::TypedSeqFeatureI to specify type_term() and source_term() methods, as well as alias the old ontology_term() to type_term() Modified Paths: -------------- branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/TypedSeqFeatureI.pm Modified: branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/TypedSeqFeatureI.pm =================================================================== --- branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/TypedSeqFeatureI.pm 2009-09-16 04:15:15 UTC (rev 16095) +++ branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/TypedSeqFeatureI.pm 2009-09-16 04:15:17 UTC (rev 16096) @@ -1,17 +1,26 @@ -# $Id$ -# -# BioPerl module for Bio::SeqFeature::TypedSeqFeatureI -# -# Please direct questions and support issues to -# -# Cared for by Ewan Birney -# -# Copyright Ewan Birney -# -# You may distribute this module under the same terms as perl itself +package Bio::SeqFeature::TypedSeqFeatureI; -# POD documentation - main docs before the code +use strict; +use base qw( Bio::SeqFeatureI ); +sub type_term { + shift->throw_not_implemented(); +} + +# alias the old ontology_term method to type_term +sub ontology_term { + shift->type_term(@_) +} + +# also define a source_term method +sub source_term { + shift->throw_not_implemented(); +} + +1; + +__END__ + =head1 NAME Bio::SeqFeature::TypedSeqFeatureI - a strongly typed SeqFeature @@ -26,9 +35,10 @@ # all sequence features must have primary_tag() return a string $type_as_string = $sf->primary_tag(); if( $sf->isa("Bio::SeqFeature::TypedSeqFeatureI") ) { - $ot = $sf->ontology_term(); + + $ot = $sf->type_term(); print "Ontology identifier:",$ot->identifier(), - " name:",$ot->name(), + " Name:",$ot->name(), " Description:",$ot->description(),"\n"; } else { @@ -39,20 +49,19 @@ =head1 DESCRIPTION -This interface describes the extension of SeqFeatureI +This interface describes the extension of SeqFeatureI to being a strongly typed SeqFeature. Bio::SeqFeature::TypedSeqFeatureI extends the Bio::SeqFeatureI interface (ie, a TypedSeqFeatureI feature must also implement -all the Bio::SeqFeatureI interface as well). +all the Bio::SeqFeatureI interface as well). It is suggested that the primary_tag() method of SeqFeatureI -return the same as the ontology_term()-Ename() of the OntologyTypedI +return the same as the type_term()-Ename() of the OntologyTypedI (ie, the "string" name of the ontology type is used as the primary tag), but this should not be assummed by client code as they are scenarios where one would like to maintain the difference. - =head1 FEEDBACK =head2 Mailing Lists @@ -64,15 +73,15 @@ bioperl-l at bioperl.org - General discussion http://bioperl.org/wiki/Mailing_lists - About the mailing lists -=head2 Support - +=head2 Support + Please direct usage questions or support issues to the mailing list: - + L - -rather than to the module maintainer directly. Many experienced and -reponsive experts will be able look at the problem and quickly -address it. Please include a thorough description of the problem + +rather than to the module maintainer directly. Many experienced and +reponsive experts will be able look at the problem and quickly +address it. Please include a thorough description of the problem with code and data examples if at all possible. =head2 Reporting Bugs @@ -92,35 +101,24 @@ The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _ -=cut +=head2 type_term + Title : type_term + Usage : my $ot = $seqfeature->type_term() + Returns : a Bio::Ontology::TermI compliant object + Args : none + Status : public -# Let the code begin... +This method returns the ontology term representing the type of a +strongly-typed sequence feature. +=head2 source_term -package Bio::SeqFeature::TypedSeqFeatureI; - -use strict; -use Bio::Root::RootI; - -use base qw(Bio::SeqFeatureI); - - -=head2 ontology_term - - Title : ontology_term - Usage : my $ot = $seqfeature->ontology_term() + Title : source_term + Usage : my $ot = $seqfeature->source_term() Returns : a Bio::Ontology::TermI compliant object Args : none Status : public -This method returns the ontology term for a -strongly typed sequence feature. - -=cut - -sub ontology_term { - shift->throw_not_implemented(); -} - -1; +This method returns the ontology term representing the source of a +strongly-typed sequence feature. From rbuels at dev.open-bio.org Wed Sep 16 00:15:22 2009 From: rbuels at dev.open-bio.org (Robert Buels) Date: Wed, 16 Sep 2009 00:15:22 -0400 Subject: [Bioperl-guts-l] [16098] branches/gff_refactor: added distribution skeleton for Bio:: SeqFeature::Typed Message-ID: <200909160415.n8G4FMmx024427@dev.open-bio.org> Revision: 16098 Author: rbuels Date: 2009-09-16 00:15:21 -0400 (Wed, 16 Sep 2009) Log Message: ----------- added distribution skeleton for Bio::SeqFeature::Typed Added Paths: ----------- branches/gff_refactor/Bio-SeqFeature-Typed/ branches/gff_refactor/Bio-SeqFeature-Typed/.gitignore branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL branches/gff_refactor/Bio-SeqFeature-Typed/lib/ branches/gff_refactor/Bio-SeqFeature-Typed/lib/Bio/ branches/gff_refactor/Bio-SeqFeature-Typed/lib/Bio/SeqFeature/ branches/gff_refactor/Bio-SeqFeature-Typed/lib/Bio/SeqFeature/Typed.pm Added: branches/gff_refactor/Bio-SeqFeature-Typed/.gitignore =================================================================== --- branches/gff_refactor/Bio-SeqFeature-Typed/.gitignore (rev 0) +++ branches/gff_refactor/Bio-SeqFeature-Typed/.gitignore 2009-09-16 04:15:21 UTC (rev 16098) @@ -0,0 +1,2 @@ +TAGS +*~ Added: branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL =================================================================== --- branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL (rev 0) +++ branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL 2009-09-16 04:15:21 UTC (rev 16098) @@ -0,0 +1,28 @@ +use Module::Build; +my $build = Module::Build->new + ( + module_name => 'Bio::SeqFeature::Typed', + dist_version => '0.1', + dist_name => 'Bio-SeqFeature-Typed', + dist_abstract => 'modules for working with sequence features that are typed with ontology terms', + license => 'perl', + create_makefile_pl => 'passthrough', + recursive_test_files => 1, + create_readme => 1, + create_license => 1, + meta_merge => { + resources => + { + repository => 'svn://code.open-bio.org/bioperl/Bio-SeqFeature-Typed', + }, + }, + requires => { + 'perl' => '5.8.0', + 'Bio::Root::Version' => '1.6.1', + + # add version numbers to the below as they are split + # off into their own versioned distributions + + }, + ); +$build->create_build_script; Added: branches/gff_refactor/Bio-SeqFeature-Typed/lib/Bio/SeqFeature/Typed.pm =================================================================== --- branches/gff_refactor/Bio-SeqFeature-Typed/lib/Bio/SeqFeature/Typed.pm (rev 0) +++ branches/gff_refactor/Bio-SeqFeature-Typed/lib/Bio/SeqFeature/Typed.pm 2009-09-16 04:15:21 UTC (rev 16098) @@ -0,0 +1,87 @@ +package Bio::SeqFeature::Typed; +use strict; +use warnings; + + +use base qw/ Bio::SeqFeature::Generic /; + + + + + + +__END__ + +=head1 NAME + +Bio::SeqFeature::Typed - SeqFeature with ontology terms as source and +type + +=head1 SYNOPSIS + + +=head1 DESCRIPTION + + +=head1 Implemented Interfaces + +This class implementes the following interfaces. + +=over 4 + +=item L + +Note that this includes implementing L and +L + +=item L + +=item L + +Features held by a feature are essentially sub-features. + +=back + +=head1 FEEDBACK + +=head2 Mailing Lists + +User feedback is an integral part of the evolution of this and other +Bioperl modules. Send your comments and suggestions preferably to one +of the Bioperl mailing lists. Your participation is much appreciated. + + bioperl-l at bioperl.org - General discussion + http://bioperl.org/wiki/Mailing_lists - About the mailing lists + +=head2 Support + +Please direct usage questions or support issues to the mailing list: + +L + +rather than to the module maintainer directly. Many experienced and +reponsive experts will be able look at the problem and quickly +address it. Please include a thorough description of the problem +with code and data examples if at all possible. + +=head2 Reporting Bugs + +Report bugs to the Bioperl bug tracking system to help us keep track +the bugs and their resolution. Bug reports can be submitted via +the web: + + http://bugzilla.open-bio.org/ + +=head1 AUTHOR + +Robert Buels Ermb32 at cornell.eduE + +=head1 APPENDIX + +The rest of the documentation details each of the object +methods. Internal methods are usually preceded with a _ + +=cut + + + From rbuels at dev.open-bio.org Wed Sep 16 00:15:23 2009 From: rbuels at dev.open-bio.org (Robert Buels) Date: Wed, 16 Sep 2009 00:15:23 -0400 Subject: [Bioperl-guts-l] [16099] branches/gff_refactor/Bio-FeatureIO/.gitignore: added gitignore file to Bio-FeatureIO distribution Message-ID: <200909160415.n8G4FNfC024438@dev.open-bio.org> Revision: 16099 Author: rbuels Date: 2009-09-16 00:15:23 -0400 (Wed, 16 Sep 2009) Log Message: ----------- added gitignore file to Bio-FeatureIO distribution Added Paths: ----------- branches/gff_refactor/Bio-FeatureIO/.gitignore Added: branches/gff_refactor/Bio-FeatureIO/.gitignore =================================================================== --- branches/gff_refactor/Bio-FeatureIO/.gitignore (rev 0) +++ branches/gff_refactor/Bio-FeatureIO/.gitignore 2009-09-16 04:15:23 UTC (rev 16099) @@ -0,0 +1,2 @@ +TAGS +*~ From rbuels at dev.open-bio.org Wed Sep 16 00:15:25 2009 From: rbuels at dev.open-bio.org (Robert Buels) Date: Wed, 16 Sep 2009 00:15:25 -0400 Subject: [Bioperl-guts-l] [16100] branches/gff_refactor/bioperl-live/trunk/.gitignore: added TAGS to bioperl-live gitignore Message-ID: <200909160415.n8G4FPF1024449@dev.open-bio.org> Revision: 16100 Author: rbuels Date: 2009-09-16 00:15:25 -0400 (Wed, 16 Sep 2009) Log Message: ----------- added TAGS to bioperl-live gitignore Modified Paths: -------------- branches/gff_refactor/bioperl-live/trunk/.gitignore Modified: branches/gff_refactor/bioperl-live/trunk/.gitignore =================================================================== --- branches/gff_refactor/bioperl-live/trunk/.gitignore 2009-09-16 04:15:23 UTC (rev 16099) +++ branches/gff_refactor/bioperl-live/trunk/.gitignore 2009-09-16 04:15:25 UTC (rev 16100) @@ -1 +1,2 @@ *~ +TAGS From rbuels at dev.open-bio.org Wed Sep 16 00:15:29 2009 From: rbuels at dev.open-bio.org (Robert Buels) Date: Wed, 16 Sep 2009 00:15:29 -0400 Subject: [Bioperl-guts-l] [16102] branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL: added some Bio ::* module dependencies to Bio-SeqFeature-Typed dist Message-ID: <200909160415.n8G4FTLG024471@dev.open-bio.org> Revision: 16102 Author: rbuels Date: 2009-09-16 00:15:28 -0400 (Wed, 16 Sep 2009) Log Message: ----------- added some Bio::* module dependencies to Bio-SeqFeature-Typed dist Modified Paths: -------------- branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL Modified: branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL =================================================================== --- branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL 2009-09-16 04:15:27 UTC (rev 16101) +++ branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL 2009-09-16 04:15:28 UTC (rev 16102) @@ -25,8 +25,10 @@ # add version numbers to the below as they are split # off into their own versioned distributions - - + 'Bio::Root::Root' => 0, + 'Bio::SeqFeature::TypedSeqFeatureI' => 0, + 'Bio::FeatureHolderI' => 0, + 'Bio::AnnotatableI' => 0, }, ); $build->create_build_script; From rbuels at dev.open-bio.org Wed Sep 16 00:15:27 2009 From: rbuels at dev.open-bio.org (Robert Buels) Date: Wed, 16 Sep 2009 00:15:27 -0400 Subject: [Bioperl-guts-l] [16101] branches/gff_refactor/Bio-SeqFeature-Typed: intermediate work on SF ::T Message-ID: <200909160415.n8G4FR41024460@dev.open-bio.org> Revision: 16101 Author: rbuels Date: 2009-09-16 00:15:27 -0400 (Wed, 16 Sep 2009) Log Message: ----------- intermediate work on SF::T Modified Paths: -------------- branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL branches/gff_refactor/Bio-SeqFeature-Typed/lib/Bio/SeqFeature/Typed.pm Modified: branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL =================================================================== --- branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL 2009-09-16 04:15:25 UTC (rev 16100) +++ branches/gff_refactor/Bio-SeqFeature-Typed/Build.PL 2009-09-16 04:15:27 UTC (rev 16101) @@ -18,11 +18,15 @@ }, requires => { 'perl' => '5.8.0', + + 'Params::Validate' => 0, + 'Bio::Root::Version' => '1.6.1', # add version numbers to the below as they are split # off into their own versioned distributions + }, ); $build->create_build_script; Modified: branches/gff_refactor/Bio-SeqFeature-Typed/lib/Bio/SeqFeature/Typed.pm =================================================================== --- branches/gff_refactor/Bio-SeqFeature-Typed/lib/Bio/SeqFeature/Typed.pm 2009-09-16 04:15:25 UTC (rev 16100) +++ branches/gff_refactor/Bio-SeqFeature-Typed/lib/Bio/SeqFeature/Typed.pm 2009-09-16 04:15:27 UTC (rev 16101) @@ -2,14 +2,117 @@ use strict; use warnings; +use Params::Validate (); -use base qw/ Bio::SeqFeature::Generic /; +use base qw( Bio::Root::Root Bio::SeqFeature::TypedSeqFeatureI Bio::FeatureHolderI Bio::AnnotatableI ); +sub new { + my $class = shift; + my $self = $class->SUPER::new(@_); + Params::Validate::validate + ( @_, { + type_term => { isa => 'Bio::Ontology::TermI' }, + source_term => { isa => 'Bio::Ontology::TermI' }, + }); + return bless {@_}, $class; +} +=head2 type_term + Title : type_term + Usage : my $ot = $seqfeature->type_term() + Returns : a Bio::Ontology::TermI compliant object + Args : none + Status : public + +This method returns the ontology term representing the type of a +strongly-typed sequence feature. + +=cut + +sub type_term { + shift->{type_term} +} + + +=head2 source_term + + Title : source_term + Usage : my $ot = $seqfeature->source_term() + Returns : a Bio::Ontology::TermI compliant object + Args : none + Status : public + +This method returns the ontology term representing the source of a +strongly-typed sequence feature. + +=cut + +# also define a source_term method +sub source_term { + shift->{source_term} +} + + +=head2 get_SeqFeatures() + + Usage : + Function: Get the feature objects held by this feature holder. + Example : + Returns : an array of Bio::SeqFeatureI implementing objects + Args : none + +At some day we may want to expand this method to allow for a feature +filter to be passed in. + +=cut + +sub get_SeqFeatures { + shift->throw_not_implemented(); +} + +=head2 add_SeqFeature() + + Usage : $feat->add_SeqFeature($subfeat); + $feat->add_SeqFeature($subfeat,'EXPAND') + Function: adds a SeqFeature into the subSeqFeature array. + with no 'EXPAND' qualifer, subfeat will be tested + as to whether it lies inside the parent, and throw + an exception if not. + + If EXPAND is used, the parent''s start/end/strand will + be adjusted so that it grows to accommodate the new + subFeature + Example : + Returns : nothing + Args : a Bio::SeqFeatureI object + +=cut + +sub add_SeqFeature { + shift->throw_not_implemented(); +} + + +=head2 remove_SeqFeatures() + + Usage : $obj->remove_SeqFeatures + Function: Removes all sub SeqFeatures. If you want to remove only a subset, + remove that subset from the returned array, and add back the rest. + Returns : The array of Bio::SeqFeatureI implementing sub-features that was + deleted from this feature. + Args : none + +=cut + +sub remove_SeqFeatures { + shift->throw_not_implemented(); +} + + __END__ =head1 NAME From rbuels at dev.open-bio.org Wed Sep 16 00:15:20 2009 From: rbuels at dev.open-bio.org (Robert Buels) Date: Wed, 16 Sep 2009 00:15:20 -0400 Subject: [Bioperl-guts-l] [16097] branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/ TypedSeqFeatureI.pm: added deprecation message to ontology_term() method in TypedSeqFeatureI Message-ID: <200909160415.n8G4FKoe024416@dev.open-bio.org> Revision: 16097 Author: rbuels Date: 2009-09-16 00:15:19 -0400 (Wed, 16 Sep 2009) Log Message: ----------- added deprecation message to ontology_term() method in TypedSeqFeatureI Modified Paths: -------------- branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/TypedSeqFeatureI.pm Modified: branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/TypedSeqFeatureI.pm =================================================================== --- branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/TypedSeqFeatureI.pm 2009-09-16 04:15:17 UTC (rev 16096) +++ branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/TypedSeqFeatureI.pm 2009-09-16 04:15:19 UTC (rev 16097) @@ -9,7 +9,12 @@ # alias the old ontology_term method to type_term sub ontology_term { - shift->type_term(@_) + my $self = shift; + $self->deprecated( -message => 'ontology_term() method is deprecated, use type_term() instead', + -warn_version => 1.007, + -throw_version => 1.008, + ); + $self->type_term(@_) } # also define a source_term method From cjfields at dev.open-bio.org Wed Sep 16 00:27:51 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Wed, 16 Sep 2009 00:27:51 -0400 Subject: [Bioperl-guts-l] [16103] bioperl-live/branches/branch-1-6: sync with main trunk Message-ID: <200909160427.n8G4Rpga024602@dev.open-bio.org> Revision: 16103 Author: cjfields Date: 2009-09-16 00:27:51 -0400 (Wed, 16 Sep 2009) Log Message: ----------- sync with main trunk Modified Paths: -------------- bioperl-live/branches/branch-1-6/Bio/SimpleAlign.pm bioperl-live/branches/branch-1-6/Changes bioperl-live/branches/branch-1-6/t/Align/SimpleAlign.t bioperl-live/branches/branch-1-6/t/SearchIO/exonerate.t bioperl-live/branches/branch-1-6/t/SearchIO/fasta.t bioperl-live/branches/branch-1-6/t/SearchIO/psl.t bioperl-live/branches/branch-1-6/t/Seq/Quality.t Added Paths: ----------- bioperl-live/branches/branch-1-6/t/data/exonerate.output.dontwork bioperl-live/branches/branch-1-6/t/data/exonerate.output.works bioperl-live/branches/branch-1-6/t/data/headerless.psl bioperl-live/branches/branch-1-6/t/data/in.fasta bioperl-live/branches/branch-1-6/t/data/test_clear_range.fastq Removed Paths: ------------- bioperl-live/branches/branch-1-6/t/bugzilla/ Modified: bioperl-live/branches/branch-1-6/Bio/SimpleAlign.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/SimpleAlign.pm 2009-09-16 04:15:28 UTC (rev 16102) +++ bioperl-live/branches/branch-1-6/Bio/SimpleAlign.pm 2009-09-16 04:27:51 UTC (rev 16103) @@ -3200,8 +3200,9 @@ -alphabet => $seq->alphabet, -strand => $seq->strand, -verbose => $self->verbose); - - my $masked_string = substr($seq->seq,$start, $end - $start +1); + + # convert from 1-based alignment coords! + my $masked_string = substr($seq->seq, $start - 1, $end - $start + 1); $masked_string =~ s{[^$nonres]}{$mask_char}g; my $new_dna_string = substr($seq->seq,0,$start-1) . $masked_string . substr($seq->seq,$end); $new_seq->seq($new_dna_string); Modified: bioperl-live/branches/branch-1-6/Changes =================================================================== --- bioperl-live/branches/branch-1-6/Changes 2009-09-16 04:15:28 UTC (rev 16102) +++ bioperl-live/branches/branch-1-6/Changes 2009-09-16 04:27:51 UTC (rev 16103) @@ -17,7 +17,7 @@ are online at http://bugzilla.open-bio.org, with specific bugs intended for this release series highlighted in BUGS. -1.6.0_1 Sept. 15, 2009 +1.6.0_1 Sept. 15, 2009 (first 1.6.1 alpha) * Bio::Align::DNAStatistics - fix divide by zero problem [jason] * Bio::AlignIO::* Modified: bioperl-live/branches/branch-1-6/t/Align/SimpleAlign.t =================================================================== --- bioperl-live/branches/branch-1-6/t/Align/SimpleAlign.t 2009-09-16 04:15:28 UTC (rev 16102) +++ bioperl-live/branches/branch-1-6/t/Align/SimpleAlign.t 2009-09-16 04:27:51 UTC (rev 16103) @@ -7,7 +7,7 @@ use lib '.'; use Bio::Root::Test; - test_begin( -tests => 173 ); + test_begin( -tests => 179 ); use_ok('Bio::SimpleAlign'); use_ok('Bio::AlignIO'); @@ -684,6 +684,77 @@ } } +# work out mask_columns(), see bug 2842 +SKIP: { + test_skip(-tests => 6, -requires_module => 'IO::String'); + my $io = Bio::AlignIO->new( -file => test_input_file("testaln.aln") ); + my $aln = $io->next_aln(); + isa_ok( $aln, 'Bio::SimpleAlign' ); + my $consensus = <consensus_string, $consensus, 'consensus string looks ok' ); + + is( aln2str( $aln => 'pfam' ), <mask_columns(12,20,'?'); + is( aln2str( $newaln, 'pfam' ), <new( <new( -fh => $phy_fh, -format => 'phylip' ); + + $aln = $in->next_aln(); + is( aln2str( $aln, 'phylip' ), <mask_columns(15,20,'?'); + is( aln2str( $newaln,'phylip' ), <write_aln( $aln ); return $out; } + Modified: bioperl-live/branches/branch-1-6/t/SearchIO/exonerate.t =================================================================== --- bioperl-live/branches/branch-1-6/t/SearchIO/exonerate.t 2009-09-16 04:15:28 UTC (rev 16102) +++ bioperl-live/branches/branch-1-6/t/SearchIO/exonerate.t 2009-09-16 04:27:51 UTC (rev 16103) @@ -7,7 +7,7 @@ use lib '.'; use Bio::Root::Test; - test_begin( -tests => 45 ); + test_begin( -tests => 49 ); use_ok('Bio::SearchIO'); } @@ -74,3 +74,34 @@ is( $hsp->hit->strand, shift @$d ); } } + +# bug 2346 + @@ Diff output truncated at 10000 characters. @@ From cjfields at illinois.edu Wed Sep 16 00:40:36 2009 From: cjfields at illinois.edu (Chris Fields) Date: Tue, 15 Sep 2009 23:40:36 -0500 Subject: [Bioperl-guts-l] [16097] branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/ TypedSeqFeatureI.pm: added deprecation message to ontology_term() method in TypedSeqFeatureI In-Reply-To: <200909160415.n8G4FKoe024416@dev.open-bio.org> References: <200909160415.n8G4FKoe024416@dev.open-bio.org> Message-ID: <55653FED-DA7A-401E-B66B-8E9A581F495F@illinois.edu> Robert, You probably don't want to split things up *too* much (single module releases) unless there is a very specific purpose, such as certain non- bp prereqs or similar. A couple of us (Sendu and I) have separately discussed the possibility of splitting up bioperl in the past with cpan-authors and with Andreas K?nig. They were very much in favor of it, but Andreas and others suggested against splitting up into individual modules where possible, and were much more in favor of focused splits (on which I tend to agree). On that point, since any typed seqfeature would be predominately used in FeatureIO, maybe that's where Bio::SeqFeature::Typed would go as well? chris On Sep 15, 2009, at 11:15 PM, Robert Buels wrote: > Revision: 16097 > Author: rbuels > Date: 2009-09-16 00:15:19 -0400 (Wed, 16 Sep 2009) > > Log Message: > ----------- > added deprecation message to ontology_term() method in > TypedSeqFeatureI > > Modified Paths: > -------------- > branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/ > TypedSeqFeatureI.pm > > Modified: branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/ > TypedSeqFeatureI.pm > =================================================================== > --- branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/ > TypedSeqFeatureI.pm 2009-09-16 04:15:17 UTC (rev 16096) > +++ branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/ > TypedSeqFeatureI.pm 2009-09-16 04:15:19 UTC (rev 16097) > @@ -9,7 +9,12 @@ > > # alias the old ontology_term method to type_term > sub ontology_term { > - shift->type_term(@_) > + my $self = shift; > + $self->deprecated( -message => 'ontology_term() method is > deprecated, use type_term() instead', > + -warn_version => 1.007, > + -throw_version => 1.008, > + ); > + $self->type_term(@_) > } > > # also define a source_term method > > > _______________________________________________ > Bioperl-guts-l mailing list > Bioperl-guts-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/bioperl-guts-l From cjfields at dev.open-bio.org Wed Sep 16 00:53:29 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Wed, 16 Sep 2009 00:53:29 -0400 Subject: [Bioperl-guts-l] [16104] bioperl-live/branches/branch-1-6/Bio/Root: bump to alpha 1 Message-ID: <200909160453.n8G4rTaT024702@dev.open-bio.org> Revision: 16104 Author: cjfields Date: 2009-09-16 00:53:29 -0400 (Wed, 16 Sep 2009) Log Message: ----------- bump to alpha 1 Modified Paths: -------------- bioperl-live/branches/branch-1-6/Bio/Root/Build.pm bioperl-live/branches/branch-1-6/Bio/Root/Version.pm Modified: bioperl-live/branches/branch-1-6/Bio/Root/Build.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/Root/Build.pm 2009-09-16 04:27:51 UTC (rev 16103) +++ bioperl-live/branches/branch-1-6/Bio/Root/Build.pm 2009-09-16 04:53:29 UTC (rev 16104) @@ -87,7 +87,7 @@ use strict; use warnings; -our $VERSION = '1.006000'; +our $VERSION = '1.006000_001'; our @extra_types = qw(options excludes_os feature_requires test); # test must always be last in the list! our $checking_types = "requires|conflicts|".join("|", @extra_types); Modified: bioperl-live/branches/branch-1-6/Bio/Root/Version.pm =================================================================== --- bioperl-live/branches/branch-1-6/Bio/Root/Version.pm 2009-09-16 04:27:51 UTC (rev 16103) +++ bioperl-live/branches/branch-1-6/Bio/Root/Version.pm 2009-09-16 04:53:29 UTC (rev 16104) @@ -98,7 +98,7 @@ package Bio::Root::Version; use strict; -our $VERSION = '1.006000'; +our $VERSION = '1.006000_001'; $VERSION = eval $VERSION; sub import { From cjfields at dev.open-bio.org Wed Sep 16 10:22:17 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Wed, 16 Sep 2009 10:22:17 -0400 Subject: [Bioperl-guts-l] [16105] bioperl-live/trunk/maintenance/pod.pl: simplify script Message-ID: <200909161422.n8GEMHiJ027652@dev.open-bio.org> Revision: 16105 Author: cjfields Date: 2009-09-16 10:22:16 -0400 (Wed, 16 Sep 2009) Log Message: ----------- simplify script Modified Paths: -------------- bioperl-live/trunk/maintenance/pod.pl Modified: bioperl-live/trunk/maintenance/pod.pl =================================================================== --- bioperl-live/trunk/maintenance/pod.pl 2009-09-16 04:53:29 UTC (rev 16104) +++ bioperl-live/trunk/maintenance/pod.pl 2009-09-16 14:22:16 UTC (rev 16105) @@ -21,10 +21,6 @@ on every file. -You are expected to have checked out CVS module 'bioperl_all'. -Otherwise, bioperl-run module is not found. - - =head2 Results The results are written into file '/tmp/bioperl_pod_check' and @@ -53,7 +49,7 @@ # ## Directories to check # -my @dirs = qw( ../Bio/ ../../bioperl-run/Bio ../scripts ../../bioperl-run/scripts . ); +my @dirs = qw( ../Bio/ ../scripts . ); # command line options my ($verbose, $blankline, $dir, $help) = (0, undef, undef, undef); @@ -88,7 +84,7 @@ return unless /\.PLS$/ or /\.p[ml]$/ ; return unless -e $_; print "$_\n" if $verbose; - my $checker = new Pod::Checker %POD_CHECKER_OPTIONS; + my $checker = Pod::Checker->new( %POD_CHECKER_OPTIONS ); $checker->parse_from_file($_, \*F); print "$_\tno POD\n" if $checker->num_errors() < 0; } From rmb32 at cornell.edu Wed Sep 16 11:03:21 2009 From: rmb32 at cornell.edu (Robert Buels) Date: Wed, 16 Sep 2009 08:03:21 -0700 Subject: [Bioperl-guts-l] [16097] branches/gff_refactor/bioperl-live/trunk/Bio/SeqFeature/ TypedSeqFeatureI.pm: added deprecation message to ontology_term() method in TypedSeqFeatureI In-Reply-To: <55653FED-DA7A-401E-B66B-8E9A581F495F@illinois.edu> References: <200909160415.n8G4FKoe024416@dev.open-bio.org> <55653FED-DA7A-401E-B66B-8E9A581F495F@illinois.edu> Message-ID: <4AB0FE39.9000503@cornell.edu> Yeah, I'm not sure about it either. It probably makes more sense to put it in with the FeatureIO dist. I'll do that. From maj at dev.open-bio.org Wed Sep 16 12:35:47 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Wed, 16 Sep 2009 12:35:47 -0400 Subject: [Bioperl-guts-l] [16106] bioperl-live/trunk/t/RemoteDB/HIV: changes re: warnings Message-ID: <200909161635.n8GGZlH1028677@dev.open-bio.org> Revision: 16106 Author: maj Date: 2009-09-16 12:35:47 -0400 (Wed, 16 Sep 2009) Log Message: ----------- changes re: warnings Modified Paths: -------------- bioperl-live/trunk/t/RemoteDB/HIV/HIVQuery.t bioperl-live/trunk/t/RemoteDB/HIV/HIVQueryHelper.t Modified: bioperl-live/trunk/t/RemoteDB/HIV/HIVQuery.t =================================================================== --- bioperl-live/trunk/t/RemoteDB/HIV/HIVQuery.t 2009-09-16 14:22:16 UTC (rev 16105) +++ bioperl-live/trunk/t/RemoteDB/HIV/HIVQuery.t 2009-09-16 16:35:47 UTC (rev 16106) @@ -5,7 +5,6 @@ BEGIN { use Bio::Root::Test; - test_begin( -tests => 41, -requires_modules => [qw( XML::Simple )] @@ -16,8 +15,7 @@ use_ok( 'Bio::Annotation::Comment' ); use_ok( 'Bio::Annotation::Reference' ); use_ok( 'Bio::DB::HIV::HIVQueryHelper' ); - #use_ok( 'HTML::Parser' ); # this is for the test of the help function below - # not necessary for module + } my $tobj= new Bio::DB::Query::HIVQuery(-RUN_OPTION=>0); @@ -97,7 +95,9 @@ SKIP: { test_skip(-requires_module => 'HTML::Parser', -tests => 3); + no warnings; # HTML::Parser has an uninited value issue use_ok('HTML::Parser'); + use warnings; # help test; just tests that file can be written and that tags are in matching # pairs, with reasonable placement of and my $hlpf = test_output_file(); Modified: bioperl-live/trunk/t/RemoteDB/HIV/HIVQueryHelper.t =================================================================== --- bioperl-live/trunk/t/RemoteDB/HIV/HIVQueryHelper.t 2009-09-16 14:22:16 UTC (rev 16105) +++ bioperl-live/trunk/t/RemoteDB/HIV/HIVQueryHelper.t 2009-09-16 16:35:47 UTC (rev 16106) @@ -1,3 +1,4 @@ +#-*-perl-*- # testing HIVQueryHelper.pm and lanl-schema.xml indirectly # $Id: HIVQueryHelper.t 231 2008-12-11 14:32:00Z maj $ From maj at dev.open-bio.org Wed Sep 16 12:36:38 2009 From: maj at dev.open-bio.org (Mark Allen Jensen) Date: Wed, 16 Sep 2009 12:36:38 -0400 Subject: [Bioperl-guts-l] [16107] bioperl-live/trunk/Bio/DB/Query/HIVQuery.pm: patch to track new return format @ LANL Message-ID: <200909161636.n8GGacFW028708@dev.open-bio.org> Revision: 16107 Author: maj Date: 2009-09-16 12:36:38 -0400 (Wed, 16 Sep 2009) Log Message: ----------- patch to track new return format @ LANL Modified Paths: -------------- bioperl-live/trunk/Bio/DB/Query/HIVQuery.pm Modified: bioperl-live/trunk/Bio/DB/Query/HIVQuery.pm =================================================================== --- bioperl-live/trunk/Bio/DB/Query/HIVQuery.pm 2009-09-16 16:35:47 UTC (rev 16106) +++ bioperl-live/trunk/Bio/DB/Query/HIVQuery.pm 2009-09-16 16:36:38 UTC (rev 16107) @@ -771,7 +771,24 @@ return $self->{'_session_id'} = shift if @_; return $self->{'_session_id'}; } +=head2 _run_level + Title : _run_level + Usage : $obj->_run_level($newval) + Function: returns the level at which the query has so far been run + Example : + Returns : value of _run_level (a scalar) + Args : on set, new value (a scalar or undef, optional) + +=cut + +sub _run_level{ + my $self = shift; + + return $self->{'_RUN_LEVEL'} = shift if @_; + return $self->{'_RUN_LEVEL'}; +} + =head2 _run_option Title : _run_option @@ -1442,10 +1459,12 @@ -value=>""); foreach my $rsp (@{$self->_lanl_response}) { @data = split(/\r|\n/, $rsp->content); - my $line = shift @data; - $numseq += ( $line =~ /Number.*:\s([0-9]+)/ )[0]; - @cols = split(/\t/, shift @data); - + my $l; + do { + $l = shift @data; + } while ($l !~ /Number/); + $numseq += ( $l =~ /Number.*:\s([0-9]+)/ )[0]; + @cols = split(/\t/, shift(@data)); # mappings from column headings to annotation keys # squish into hash keys my %q = @{ shift @{$self->_lanl_query} }; From cjfields at dev.open-bio.org Wed Sep 16 13:07:50 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Wed, 16 Sep 2009 13:07:50 -0400 Subject: [Bioperl-guts-l] [16108] bioperl-live/trunk/Bio: [cage cleaning] Message-ID: <200909161707.n8GH7oDl029013@dev.open-bio.org> Revision: 16108 Author: cjfields Date: 2009-09-16 13:07:49 -0400 (Wed, 16 Sep 2009) Log Message: ----------- [cage cleaning] * the POD parser doesn't like whitespace in paragraphs * can't use L<> with emails Modified Paths: -------------- bioperl-live/trunk/Bio/Align/AlignI.pm bioperl-live/trunk/Bio/Align/DNAStatistics.pm bioperl-live/trunk/Bio/Align/PairwiseStatistics.pm bioperl-live/trunk/Bio/Align/ProteinStatistics.pm bioperl-live/trunk/Bio/Align/StatisticsI.pm bioperl-live/trunk/Bio/Align/Utilities.pm bioperl-live/trunk/Bio/AlignIO/Handler/GenericAlignHandler.pm bioperl-live/trunk/Bio/AlignIO/arp.pm bioperl-live/trunk/Bio/AlignIO/bl2seq.pm bioperl-live/trunk/Bio/AlignIO/clustalw.pm bioperl-live/trunk/Bio/AlignIO/emboss.pm bioperl-live/trunk/Bio/AlignIO/fasta.pm bioperl-live/trunk/Bio/AlignIO/largemultifasta.pm bioperl-live/trunk/Bio/AlignIO/maf.pm bioperl-live/trunk/Bio/AlignIO/mase.pm bioperl-live/trunk/Bio/AlignIO/mega.pm bioperl-live/trunk/Bio/AlignIO/meme.pm bioperl-live/trunk/Bio/AlignIO/metafasta.pm bioperl-live/trunk/Bio/AlignIO/msf.pm bioperl-live/trunk/Bio/AlignIO/nexml.pm bioperl-live/trunk/Bio/AlignIO/nexus.pm bioperl-live/trunk/Bio/AlignIO/pfam.pm bioperl-live/trunk/Bio/AlignIO/phylip.pm bioperl-live/trunk/Bio/AlignIO/po.pm bioperl-live/trunk/Bio/AlignIO/proda.pm bioperl-live/trunk/Bio/AlignIO/prodom.pm bioperl-live/trunk/Bio/AlignIO/psi.pm bioperl-live/trunk/Bio/AlignIO/selex.pm bioperl-live/trunk/Bio/AlignIO/stockholm.pm bioperl-live/trunk/Bio/AlignIO/xmfa.pm bioperl-live/trunk/Bio/AlignIO.pm bioperl-live/trunk/Bio/AnalysisI.pm bioperl-live/trunk/Bio/AnalysisParserI.pm bioperl-live/trunk/Bio/AnalysisResultI.pm bioperl-live/trunk/Bio/AnnotatableI.pm bioperl-live/trunk/Bio/Annotation/AnnotationFactory.pm bioperl-live/trunk/Bio/Annotation/Collection.pm bioperl-live/trunk/Bio/Annotation/OntologyTerm.pm bioperl-live/trunk/Bio/Annotation/Relation.pm bioperl-live/trunk/Bio/Annotation/SimpleValue.pm bioperl-live/trunk/Bio/Annotation/StructuredValue.pm bioperl-live/trunk/Bio/Annotation/TagTree.pm bioperl-live/trunk/Bio/Annotation/TypeManager.pm bioperl-live/trunk/Bio/AnnotationCollectionI.pm bioperl-live/trunk/Bio/AnnotationI.pm bioperl-live/trunk/Bio/Assembly/Contig.pm bioperl-live/trunk/Bio/Assembly/ContigAnalysis.pm bioperl-live/trunk/Bio/Assembly/IO/ace.pm bioperl-live/trunk/Bio/Assembly/IO/phrap.pm bioperl-live/trunk/Bio/Assembly/IO/tigr.pm bioperl-live/trunk/Bio/Assembly/IO.pm bioperl-live/trunk/Bio/Assembly/Scaffold.pm bioperl-live/trunk/Bio/Assembly/ScaffoldI.pm bioperl-live/trunk/Bio/Assembly/Singlet.pm bioperl-live/trunk/Bio/Assembly/Tools/ContigSpectrum.pm bioperl-live/trunk/Bio/Biblio/Article.pm bioperl-live/trunk/Bio/Biblio/BiblioBase.pm bioperl-live/trunk/Bio/Biblio/Book.pm bioperl-live/trunk/Bio/Biblio/BookArticle.pm bioperl-live/trunk/Bio/Biblio/IO/medline2ref.pm bioperl-live/trunk/Bio/Biblio/IO/medlinexml.pm bioperl-live/trunk/Bio/Biblio/IO/pubmed2ref.pm bioperl-live/trunk/Bio/Biblio/IO/pubmedxml.pm bioperl-live/trunk/Bio/Biblio/IO.pm bioperl-live/trunk/Bio/Biblio/Journal.pm bioperl-live/trunk/Bio/Biblio/JournalArticle.pm bioperl-live/trunk/Bio/Biblio/MedlineArticle.pm bioperl-live/trunk/Bio/Biblio/MedlineBook.pm bioperl-live/trunk/Bio/Biblio/MedlineBookArticle.pm bioperl-live/trunk/Bio/Biblio/MedlineJournal.pm bioperl-live/trunk/Bio/Biblio/MedlineJournalArticle.pm bioperl-live/trunk/Bio/Biblio/Organisation.pm bioperl-live/trunk/Bio/Biblio/Patent.pm bioperl-live/trunk/Bio/Biblio/Person.pm bioperl-live/trunk/Bio/Biblio/Proceeding.pm bioperl-live/trunk/Bio/Biblio/Provider.pm bioperl-live/trunk/Bio/Biblio/PubmedArticle.pm bioperl-live/trunk/Bio/Biblio/PubmedBookArticle.pm bioperl-live/trunk/Bio/Biblio/PubmedJournalArticle.pm bioperl-live/trunk/Bio/Biblio/Ref.pm bioperl-live/trunk/Bio/Biblio/Service.pm bioperl-live/trunk/Bio/Biblio/TechReport.pm bioperl-live/trunk/Bio/Biblio/Thesis.pm bioperl-live/trunk/Bio/Biblio/WebResource.pm bioperl-live/trunk/Bio/Biblio.pm bioperl-live/trunk/Bio/Cluster/ClusterFactory.pm bioperl-live/trunk/Bio/Cluster/FamilyI.pm bioperl-live/trunk/Bio/Cluster/SequenceFamily.pm bioperl-live/trunk/Bio/Cluster/UniGene.pm bioperl-live/trunk/Bio/Cluster/UniGeneI.pm bioperl-live/trunk/Bio/ClusterI.pm bioperl-live/trunk/Bio/ClusterIO/dbsnp.pm bioperl-live/trunk/Bio/ClusterIO/unigene.pm bioperl-live/trunk/Bio/ClusterIO.pm bioperl-live/trunk/Bio/CodonUsage/IO.pm bioperl-live/trunk/Bio/CodonUsage/Table.pm bioperl-live/trunk/Bio/Coordinate/Chain.pm bioperl-live/trunk/Bio/Coordinate/Collection.pm bioperl-live/trunk/Bio/Coordinate/ExtrapolatingPair.pm bioperl-live/trunk/Bio/Coordinate/GeneMapper.pm bioperl-live/trunk/Bio/Coordinate/Graph.pm bioperl-live/trunk/Bio/Coordinate/MapperI.pm bioperl-live/trunk/Bio/Coordinate/Pair.pm bioperl-live/trunk/Bio/Coordinate/Result/Gap.pm bioperl-live/trunk/Bio/Coordinate/Result/Match.pm bioperl-live/trunk/Bio/Coordinate/Result.pm bioperl-live/trunk/Bio/Coordinate/ResultI.pm bioperl-live/trunk/Bio/Coordinate/Utils.pm bioperl-live/trunk/Bio/DB/Ace.pm bioperl-live/trunk/Bio/DB/Biblio/biofetch.pm bioperl-live/trunk/Bio/DB/Biblio/eutils.pm bioperl-live/trunk/Bio/DB/Biblio/soap.pm bioperl-live/trunk/Bio/DB/BiblioI.pm bioperl-live/trunk/Bio/DB/BioFetch.pm bioperl-live/trunk/Bio/DB/CUTG.pm bioperl-live/trunk/Bio/DB/DBFetch.pm bioperl-live/trunk/Bio/DB/EMBL.pm bioperl-live/trunk/Bio/DB/EUtilities.pm bioperl-live/trunk/Bio/DB/EntrezGene.pm bioperl-live/trunk/Bio/DB/Expression/geo.pm bioperl-live/trunk/Bio/DB/Expression.pm bioperl-live/trunk/Bio/DB/Failover.pm bioperl-live/trunk/Bio/DB/FileCache.pm bioperl-live/trunk/Bio/DB/Flat/BDB/embl.pm bioperl-live/trunk/Bio/DB/Flat/BDB/fasta.pm bioperl-live/trunk/Bio/DB/Flat/BDB/genbank.pm bioperl-live/trunk/Bio/DB/Flat/BDB/swiss.pm bioperl-live/trunk/Bio/DB/Flat/BDB.pm bioperl-live/trunk/Bio/DB/Flat/BinarySearch.pm bioperl-live/trunk/Bio/DB/Flat.pm bioperl-live/trunk/Bio/DB/GenBank.pm bioperl-live/trunk/Bio/DB/GenPept.pm bioperl-live/trunk/Bio/DB/GenericWebAgent.pm bioperl-live/trunk/Bio/DB/HIV/HIVAnnotProcessor.pm bioperl-live/trunk/Bio/DB/HIV/HIVQueryHelper.pm bioperl-live/trunk/Bio/DB/HIV.pm bioperl-live/trunk/Bio/DB/InMemoryCache.pm bioperl-live/trunk/Bio/DB/LocationI.pm bioperl-live/trunk/Bio/DB/MeSH.pm bioperl-live/trunk/Bio/DB/NCBIHelper.pm bioperl-live/trunk/Bio/DB/Query/GenBank.pm bioperl-live/trunk/Bio/DB/Query/HIVQuery.pm bioperl-live/trunk/Bio/DB/Query/WebQuery.pm bioperl-live/trunk/Bio/DB/QueryI.pm bioperl-live/trunk/Bio/DB/RandomAccessI.pm bioperl-live/trunk/Bio/DB/RefSeq.pm bioperl-live/trunk/Bio/DB/ReferenceI.pm bioperl-live/trunk/Bio/DB/Registry.pm bioperl-live/trunk/Bio/DB/SeqI.pm bioperl-live/trunk/Bio/DB/SeqVersion/gi.pm bioperl-live/trunk/Bio/DB/SeqVersion.pm bioperl-live/trunk/Bio/DB/SwissProt.pm bioperl-live/trunk/Bio/DB/TFBS/transfac_pro.pm bioperl-live/trunk/Bio/DB/TFBS.pm bioperl-live/trunk/Bio/DB/Taxonomy/entrez.pm bioperl-live/trunk/Bio/DB/Taxonomy/flatfile.pm bioperl-live/trunk/Bio/DB/Taxonomy/list.pm bioperl-live/trunk/Bio/DB/Taxonomy.pm bioperl-live/trunk/Bio/DB/Universal.pm bioperl-live/trunk/Bio/DB/UpdateableSeqI.pm bioperl-live/trunk/Bio/DB/WebDBSeqI.pm bioperl-live/trunk/Bio/DBLinkContainerI.pm bioperl-live/trunk/Bio/Das/FeatureTypeI.pm bioperl-live/trunk/Bio/Das/SegmentI.pm bioperl-live/trunk/Bio/DasI.pm bioperl-live/trunk/Bio/DescribableI.pm bioperl-live/trunk/Bio/Draw/Pictogram.pm bioperl-live/trunk/Bio/Event/EventGeneratorI.pm bioperl-live/trunk/Bio/Event/EventHandlerI.pm bioperl-live/trunk/Bio/Expression/Contact.pm bioperl-live/trunk/Bio/Expression/DataSet.pm bioperl-live/trunk/Bio/Expression/FeatureGroup.pm bioperl-live/trunk/Bio/Expression/FeatureI.pm bioperl-live/trunk/Bio/Expression/Platform.pm bioperl-live/trunk/Bio/Expression/ProbeI.pm bioperl-live/trunk/Bio/Expression/Sample.pm bioperl-live/trunk/Bio/Factory/AnalysisI.pm bioperl-live/trunk/Bio/Factory/ApplicationFactoryI.pm bioperl-live/trunk/Bio/Factory/DriverFactory.pm bioperl-live/trunk/Bio/Factory/FTLocationFactory.pm bioperl-live/trunk/Bio/Factory/LocationFactoryI.pm bioperl-live/trunk/Bio/Factory/MapFactoryI.pm bioperl-live/trunk/Bio/Factory/ObjectBuilderI.pm bioperl-live/trunk/Bio/Factory/ObjectFactory.pm bioperl-live/trunk/Bio/Factory/ObjectFactoryI.pm bioperl-live/trunk/Bio/Factory/SeqAnalysisParserFactory.pm bioperl-live/trunk/Bio/Factory/SeqAnalysisParserFactoryI.pm bioperl-live/trunk/Bio/Factory/SequenceFactoryI.pm bioperl-live/trunk/Bio/Factory/SequenceProcessorI.pm bioperl-live/trunk/Bio/Factory/SequenceStreamI.pm bioperl-live/trunk/Bio/Factory/TreeFactoryI.pm bioperl-live/trunk/Bio/FeatureHolderI.pm bioperl-live/trunk/Bio/FeatureIO/bed.pm bioperl-live/trunk/Bio/FeatureIO/gff.pm bioperl-live/trunk/Bio/FeatureIO/gtf.pm bioperl-live/trunk/Bio/FeatureIO/interpro.pm bioperl-live/trunk/Bio/FeatureIO/ptt.pm bioperl-live/trunk/Bio/FeatureIO/vecscreen_simple.pm bioperl-live/trunk/Bio/FeatureIO.pm bioperl-live/trunk/Bio/HandlerBaseI.pm bioperl-live/trunk/Bio/IdCollectionI.pm bioperl-live/trunk/Bio/IdentifiableI.pm bioperl-live/trunk/Bio/Index/Abstract.pm bioperl-live/trunk/Bio/Index/AbstractSeq.pm bioperl-live/trunk/Bio/Index/Blast.pm bioperl-live/trunk/Bio/Index/BlastTable.pm bioperl-live/trunk/Bio/Index/EMBL.pm bioperl-live/trunk/Bio/Index/Fasta.pm bioperl-live/trunk/Bio/Index/Fastq.pm bioperl-live/trunk/Bio/Index/GenBank.pm bioperl-live/trunk/Bio/Index/Hmmer.pm bioperl-live/trunk/Bio/Index/Qual.pm bioperl-live/trunk/Bio/Index/Stockholm.pm bioperl-live/trunk/Bio/Index/SwissPfam.pm bioperl-live/trunk/Bio/Index/Swissprot.pm bioperl-live/trunk/Bio/LiveSeq/ChainI.pm bioperl-live/trunk/Bio/LiveSeq/Mutation.pm bioperl-live/trunk/Bio/LiveSeq/Mutator.pm bioperl-live/trunk/Bio/LiveSeq/SeqI.pm bioperl-live/trunk/Bio/LocatableSeq.pm bioperl-live/trunk/Bio/Location/Atomic.pm bioperl-live/trunk/Bio/Location/AvWithinCoordPolicy.pm bioperl-live/trunk/Bio/Location/CoordinatePolicyI.pm bioperl-live/trunk/Bio/Location/Fuzzy.pm bioperl-live/trunk/Bio/Location/FuzzyLocationI.pm bioperl-live/trunk/Bio/Location/NarrowestCoordPolicy.pm bioperl-live/trunk/Bio/Location/Simple.pm bioperl-live/trunk/Bio/Location/Split.pm bioperl-live/trunk/Bio/Location/SplitLocationI.pm bioperl-live/trunk/Bio/Location/WidestCoordPolicy.pm bioperl-live/trunk/Bio/LocationI.pm bioperl-live/trunk/Bio/Map/Clone.pm bioperl-live/trunk/Bio/Map/Contig.pm bioperl-live/trunk/Bio/Map/CytoMap.pm bioperl-live/trunk/Bio/Map/CytoMarker.pm bioperl-live/trunk/Bio/Map/CytoPosition.pm bioperl-live/trunk/Bio/Map/EntityI.pm bioperl-live/trunk/Bio/Map/FPCMarker.pm bioperl-live/trunk/Bio/Map/Gene.pm bioperl-live/trunk/Bio/Map/GeneMap.pm bioperl-live/trunk/Bio/Map/GenePosition.pm bioperl-live/trunk/Bio/Map/GeneRelative.pm bioperl-live/trunk/Bio/Map/LinkageMap.pm bioperl-live/trunk/Bio/Map/LinkagePosition.pm bioperl-live/trunk/Bio/Map/MapI.pm bioperl-live/trunk/Bio/Map/Mappable.pm bioperl-live/trunk/Bio/Map/MappableI.pm bioperl-live/trunk/Bio/Map/Marker.pm bioperl-live/trunk/Bio/Map/MarkerI.pm bioperl-live/trunk/Bio/Map/Microsatellite.pm bioperl-live/trunk/Bio/Map/OrderedPosition.pm bioperl-live/trunk/Bio/Map/OrderedPositionWithDistance.pm bioperl-live/trunk/Bio/Map/Physical.pm bioperl-live/trunk/Bio/Map/Position.pm bioperl-live/trunk/Bio/Map/PositionHandler.pm bioperl-live/trunk/Bio/Map/PositionHandlerI.pm bioperl-live/trunk/Bio/Map/PositionI.pm bioperl-live/trunk/Bio/Map/PositionWithSequence.pm bioperl-live/trunk/Bio/Map/Prediction.pm bioperl-live/trunk/Bio/Map/Relative.pm bioperl-live/trunk/Bio/Map/RelativeI.pm bioperl-live/trunk/Bio/Map/SimpleMap.pm bioperl-live/trunk/Bio/Map/TranscriptionFactor.pm bioperl-live/trunk/Bio/MapIO/fpc.pm bioperl-live/trunk/Bio/MapIO/mapmaker.pm bioperl-live/trunk/Bio/MapIO.pm bioperl-live/trunk/Bio/Matrix/Generic.pm bioperl-live/trunk/Bio/Matrix/IO/mlagan.pm bioperl-live/trunk/Bio/Matrix/IO/phylip.pm bioperl-live/trunk/Bio/Matrix/IO/scoring.pm bioperl-live/trunk/Bio/Matrix/IO.pm bioperl-live/trunk/Bio/Matrix/MatrixI.pm bioperl-live/trunk/Bio/Matrix/Mlagan.pm bioperl-live/trunk/Bio/Matrix/PSM/IO/mast.pm bioperl-live/trunk/Bio/Matrix/PSM/IO/masta.pm bioperl-live/trunk/Bio/Matrix/PSM/IO/meme.pm bioperl-live/trunk/Bio/Matrix/PSM/IO/psiblast.pm bioperl-live/trunk/Bio/Matrix/PSM/IO/transfac.pm bioperl-live/trunk/Bio/Matrix/PSM/IO.pm bioperl-live/trunk/Bio/Matrix/PSM/InstanceSite.pm bioperl-live/trunk/Bio/Matrix/PSM/InstanceSiteI.pm bioperl-live/trunk/Bio/Matrix/PSM/ProtMatrix.pm bioperl-live/trunk/Bio/Matrix/PSM/ProtPsm.pm bioperl-live/trunk/Bio/Matrix/PSM/Psm.pm bioperl-live/trunk/Bio/Matrix/PSM/PsmHeader.pm bioperl-live/trunk/Bio/Matrix/PSM/PsmHeaderI.pm bioperl-live/trunk/Bio/Matrix/PSM/PsmI.pm bioperl-live/trunk/Bio/Matrix/PSM/SiteMatrix.pm bioperl-live/trunk/Bio/Matrix/PSM/SiteMatrixI.pm bioperl-live/trunk/Bio/Matrix/PhylipDist.pm bioperl-live/trunk/Bio/Matrix/Scoring.pm bioperl-live/trunk/Bio/Microarray/Tools/MitoChipV2Parser.pm bioperl-live/trunk/Bio/Microarray/Tools/ReseqChip.pm bioperl-live/trunk/Bio/MolEvol/CodonModel.pm bioperl-live/trunk/Bio/Nexml/Factory.pm bioperl-live/trunk/Bio/NexmlIO.pm bioperl-live/trunk/Bio/Ontology/DocumentRegistry.pm bioperl-live/trunk/Bio/Ontology/GOterm.pm bioperl-live/trunk/Bio/Ontology/InterProTerm.pm bioperl-live/trunk/Bio/Ontology/OBOEngine.pm bioperl-live/trunk/Bio/Ontology/OBOterm.pm bioperl-live/trunk/Bio/Ontology/Ontology.pm bioperl-live/trunk/Bio/Ontology/OntologyEngineI.pm bioperl-live/trunk/Bio/Ontology/OntologyI.pm bioperl-live/trunk/Bio/Ontology/OntologyStore.pm bioperl-live/trunk/Bio/Ontology/Path.pm bioperl-live/trunk/Bio/Ontology/PathI.pm bioperl-live/trunk/Bio/Ontology/Relationship.pm bioperl-live/trunk/Bio/Ontology/RelationshipFactory.pm bioperl-live/trunk/Bio/Ontology/RelationshipI.pm bioperl-live/trunk/Bio/Ontology/RelationshipType.pm bioperl-live/trunk/Bio/Ontology/SimpleGOEngine/GraphAdaptor.pm bioperl-live/trunk/Bio/Ontology/SimpleGOEngine/GraphAdaptor02.pm bioperl-live/trunk/Bio/Ontology/SimpleOntologyEngine.pm bioperl-live/trunk/Bio/Ontology/Term.pm bioperl-live/trunk/Bio/Ontology/TermFactory.pm bioperl-live/trunk/Bio/Ontology/TermI.pm bioperl-live/trunk/Bio/OntologyIO/Handlers/BaseSAXHandler.pm bioperl-live/trunk/Bio/OntologyIO/Handlers/InterProHandler.pm bioperl-live/trunk/Bio/OntologyIO/InterProParser.pm bioperl-live/trunk/Bio/OntologyIO/dagflat.pm bioperl-live/trunk/Bio/OntologyIO/goflat.pm bioperl-live/trunk/Bio/OntologyIO/obo.pm bioperl-live/trunk/Bio/OntologyIO/simplehierarchy.pm bioperl-live/trunk/Bio/OntologyIO/soflat.pm bioperl-live/trunk/Bio/OntologyIO.pm bioperl-live/trunk/Bio/ParameterBaseI.pm bioperl-live/trunk/Bio/Perl.pm bioperl-live/trunk/Bio/Phenotype/Correlate.pm bioperl-live/trunk/Bio/Phenotype/MeSH/Term.pm bioperl-live/trunk/Bio/Phenotype/MeSH/Twig.pm bioperl-live/trunk/Bio/Phenotype/Measure.pm bioperl-live/trunk/Bio/Phenotype/OMIM/MiniMIMentry.pm bioperl-live/trunk/Bio/Phenotype/OMIM/OMIMentry.pm bioperl-live/trunk/Bio/Phenotype/OMIM/OMIMentryAllelicVariant.pm bioperl-live/trunk/Bio/Phenotype/OMIM/OMIMparser.pm bioperl-live/trunk/Bio/Phenotype/Phenotype.pm bioperl-live/trunk/Bio/Phenotype/PhenotypeI.pm bioperl-live/trunk/Bio/PopGen/Genotype.pm bioperl-live/trunk/Bio/PopGen/GenotypeI.pm bioperl-live/trunk/Bio/PopGen/HtSNP.pm bioperl-live/trunk/Bio/PopGen/IO/csv.pm bioperl-live/trunk/Bio/PopGen/IO/hapmap.pm bioperl-live/trunk/Bio/PopGen/IO/phase.pm bioperl-live/trunk/Bio/PopGen/IO/prettybase.pm bioperl-live/trunk/Bio/PopGen/IO.pm bioperl-live/trunk/Bio/PopGen/Individual.pm bioperl-live/trunk/Bio/PopGen/IndividualI.pm bioperl-live/trunk/Bio/PopGen/Marker.pm bioperl-live/trunk/Bio/PopGen/MarkerI.pm bioperl-live/trunk/Bio/PopGen/PopStats.pm bioperl-live/trunk/Bio/PopGen/Population.pm bioperl-live/trunk/Bio/PopGen/PopulationI.pm bioperl-live/trunk/Bio/PopGen/Simulation/Coalescent.pm bioperl-live/trunk/Bio/PopGen/Simulation/GeneticDrift.pm bioperl-live/trunk/Bio/PopGen/Statistics.pm bioperl-live/trunk/Bio/PopGen/TagHaplotype.pm bioperl-live/trunk/Bio/PopGen/Utilities.pm bioperl-live/trunk/Bio/PrimarySeq.pm bioperl-live/trunk/Bio/PrimarySeqI.pm bioperl-live/trunk/Bio/PullParserI.pm bioperl-live/trunk/Bio/Range.pm bioperl-live/trunk/Bio/RangeI.pm bioperl-live/trunk/Bio/Restriction/Analysis.pm bioperl-live/trunk/Bio/Restriction/Enzyme/MultiCut.pm bioperl-live/trunk/Bio/Restriction/Enzyme/MultiSite.pm bioperl-live/trunk/Bio/Restriction/Enzyme.pm bioperl-live/trunk/Bio/Restriction/EnzymeCollection.pm bioperl-live/trunk/Bio/Restriction/EnzymeI.pm bioperl-live/trunk/Bio/Restriction/IO/bairoch.pm bioperl-live/trunk/Bio/Restriction/IO/base.pm bioperl-live/trunk/Bio/Restriction/IO/itype2.pm bioperl-live/trunk/Bio/Restriction/IO/prototype.pm bioperl-live/trunk/Bio/Restriction/IO/withrefm.pm bioperl-live/trunk/Bio/Restriction/IO.pm bioperl-live/trunk/Bio/Root/Build.pm bioperl-live/trunk/Bio/Root/IO.pm bioperl-live/trunk/Bio/Root/Root.pm bioperl-live/trunk/Bio/Root/Storable.pm bioperl-live/trunk/Bio/Root/Test/Warn.pm bioperl-live/trunk/Bio/Root/Test.pm bioperl-live/trunk/Bio/Root/Utilities.pm bioperl-live/trunk/Bio/Root/Version.pm bioperl-live/trunk/Bio/Search/BlastStatistics.pm bioperl-live/trunk/Bio/Search/DatabaseI.pm bioperl-live/trunk/Bio/Search/GenericDatabase.pm bioperl-live/trunk/Bio/Search/GenericStatistics.pm bioperl-live/trunk/Bio/Search/HSP/BlastHSP.pm bioperl-live/trunk/Bio/Search/HSP/BlastPullHSP.pm bioperl-live/trunk/Bio/Search/HSP/FastaHSP.pm bioperl-live/trunk/Bio/Search/HSP/GenericHSP.pm bioperl-live/trunk/Bio/Search/HSP/HMMERHSP.pm bioperl-live/trunk/Bio/Search/HSP/HSPFactory.pm bioperl-live/trunk/Bio/Search/HSP/HSPI.pm bioperl-live/trunk/Bio/Search/HSP/HmmpfamHSP.pm bioperl-live/trunk/Bio/Search/HSP/ModelHSP.pm bioperl-live/trunk/Bio/Search/HSP/PSLHSP.pm bioperl-live/trunk/Bio/Search/HSP/PsiBlastHSP.pm bioperl-live/trunk/Bio/Search/HSP/PullHSPI.pm bioperl-live/trunk/Bio/Search/HSP/WABAHSP.pm bioperl-live/trunk/Bio/Search/Hit/BlastHit.pm bioperl-live/trunk/Bio/Search/Hit/BlastPullHit.pm bioperl-live/trunk/Bio/Search/Hit/Fasta.pm bioperl-live/trunk/Bio/Search/Hit/GenericHit.pm bioperl-live/trunk/Bio/Search/Hit/HMMERHit.pm bioperl-live/trunk/Bio/Search/Hit/HitFactory.pm bioperl-live/trunk/Bio/Search/Hit/HitI.pm bioperl-live/trunk/Bio/Search/Hit/HmmpfamHit.pm bioperl-live/trunk/Bio/Search/Hit/ModelHit.pm bioperl-live/trunk/Bio/Search/Hit/PsiBlastHit.pm bioperl-live/trunk/Bio/Search/Hit/PullHitI.pm bioperl-live/trunk/Bio/Search/Iteration/GenericIteration.pm bioperl-live/trunk/Bio/Search/Iteration/IterationI.pm bioperl-live/trunk/Bio/Search/Processor.pm bioperl-live/trunk/Bio/Search/Result/BlastPullResult.pm bioperl-live/trunk/Bio/Search/Result/BlastResult.pm bioperl-live/trunk/Bio/Search/Result/CrossMatchResult.pm bioperl-live/trunk/Bio/Search/Result/GenericResult.pm bioperl-live/trunk/Bio/Search/Result/HMMERResult.pm bioperl-live/trunk/Bio/Search/Result/HmmpfamResult.pm bioperl-live/trunk/Bio/Search/Result/PullResultI.pm bioperl-live/trunk/Bio/Search/Result/ResultFactory.pm bioperl-live/trunk/Bio/Search/Result/ResultI.pm bioperl-live/trunk/Bio/Search/Result/WABAResult.pm bioperl-live/trunk/Bio/Search/StatisticsI.pm bioperl-live/trunk/Bio/Search/Tiling/MapTiling.pm bioperl-live/trunk/Bio/Search/Tiling/TilingI.pm bioperl-live/trunk/Bio/SearchDist.pm bioperl-live/trunk/Bio/SearchIO/EventHandlerI.pm bioperl-live/trunk/Bio/SearchIO/FastHitEventBuilder.pm bioperl-live/trunk/Bio/SearchIO/IteratedSearchResultEventBuilder.pm bioperl-live/trunk/Bio/SearchIO/SearchResultEventBuilder.pm bioperl-live/trunk/Bio/SearchIO/Writer/BSMLResultWriter.pm bioperl-live/trunk/Bio/SearchIO/Writer/GbrowseGFF.pm bioperl-live/trunk/Bio/SearchIO/Writer/HSPTableWriter.pm bioperl-live/trunk/Bio/SearchIO/Writer/HTMLResultWriter.pm bioperl-live/trunk/Bio/SearchIO/Writer/HitTableWriter.pm bioperl-live/trunk/Bio/SearchIO/Writer/ResultTableWriter.pm bioperl-live/trunk/Bio/SearchIO/Writer/TextResultWriter.pm bioperl-live/trunk/Bio/SearchIO/XML/BlastHandler.pm bioperl-live/trunk/Bio/SearchIO/XML/PsiBlastHandler.pm bioperl-live/trunk/Bio/SearchIO/axt.pm bioperl-live/trunk/Bio/SearchIO/blast.pm bioperl-live/trunk/Bio/SearchIO/blast_pull.pm bioperl-live/trunk/Bio/SearchIO/blasttable.pm bioperl-live/trunk/Bio/SearchIO/blastxml.pm bioperl-live/trunk/Bio/SearchIO/cross_match.pm bioperl-live/trunk/Bio/SearchIO/erpin.pm bioperl-live/trunk/Bio/SearchIO/exonerate.pm bioperl-live/trunk/Bio/SearchIO/fasta.pm bioperl-live/trunk/Bio/SearchIO/hmmer.pm bioperl-live/trunk/Bio/SearchIO/hmmer_pull.pm bioperl-live/trunk/Bio/SearchIO/infernal.pm bioperl-live/trunk/Bio/SearchIO/megablast.pm bioperl-live/trunk/Bio/SearchIO/psl.pm bioperl-live/trunk/Bio/SearchIO/rnamotif.pm bioperl-live/trunk/Bio/SearchIO/sim4.pm bioperl-live/trunk/Bio/SearchIO/waba.pm bioperl-live/trunk/Bio/SearchIO/wise.pm bioperl-live/trunk/Bio/SearchIO.pm bioperl-live/trunk/Bio/Seq/BaseSeqProcessor.pm bioperl-live/trunk/Bio/Seq/EncodedSeq.pm bioperl-live/trunk/Bio/Seq/LargeLocatableSeq.pm bioperl-live/trunk/Bio/Seq/LargePrimarySeq.pm bioperl-live/trunk/Bio/Seq/LargeSeq.pm bioperl-live/trunk/Bio/Seq/LargeSeqI.pm bioperl-live/trunk/Bio/Seq/Meta/Array.pm bioperl-live/trunk/Bio/Seq/Meta.pm bioperl-live/trunk/Bio/Seq/MetaI.pm bioperl-live/trunk/Bio/Seq/PrimaryQual.pm bioperl-live/trunk/Bio/Seq/PrimedSeq.pm bioperl-live/trunk/Bio/Seq/QualI.pm bioperl-live/trunk/Bio/Seq/Quality.pm bioperl-live/trunk/Bio/Seq/RichSeq.pm bioperl-live/trunk/Bio/Seq/RichSeqI.pm bioperl-live/trunk/Bio/Seq/SeqBuilder.pm bioperl-live/trunk/Bio/Seq/SeqFactory.pm bioperl-live/trunk/Bio/Seq/SeqFastaSpeedFactory.pm bioperl-live/trunk/Bio/Seq/SeqWithQuality.pm bioperl-live/trunk/Bio/Seq/SequenceTrace.pm bioperl-live/trunk/Bio/Seq/TraceI.pm bioperl-live/trunk/Bio/Seq.pm bioperl-live/trunk/Bio/SeqAnalysisParserI.pm bioperl-live/trunk/Bio/SeqEvolution/DNAPoint.pm bioperl-live/trunk/Bio/SeqEvolution/EvolutionI.pm bioperl-live/trunk/Bio/SeqEvolution/Factory.pm bioperl-live/trunk/Bio/SeqFeature/Annotated.pm bioperl-live/trunk/Bio/SeqFeature/AnnotationAdaptor.pm bioperl-live/trunk/Bio/SeqFeature/Collection.pm bioperl-live/trunk/Bio/SeqFeature/CollectionI.pm bioperl-live/trunk/Bio/SeqFeature/Computation.pm bioperl-live/trunk/Bio/SeqFeature/Gene/Exon.pm bioperl-live/trunk/Bio/SeqFeature/Gene/ExonI.pm bioperl-live/trunk/Bio/SeqFeature/Gene/GeneStructure.pm bioperl-live/trunk/Bio/SeqFeature/Gene/GeneStructureI.pm bioperl-live/trunk/Bio/SeqFeature/Gene/Intron.pm bioperl-live/trunk/Bio/SeqFeature/Gene/NC_Feature.pm bioperl-live/trunk/Bio/SeqFeature/Gene/Poly_A_site.pm bioperl-live/trunk/Bio/SeqFeature/Gene/Promoter.pm bioperl-live/trunk/Bio/SeqFeature/Gene/Transcript.pm bioperl-live/trunk/Bio/SeqFeature/Gene/TranscriptI.pm bioperl-live/trunk/Bio/SeqFeature/Gene/UTR.pm bioperl-live/trunk/Bio/SeqFeature/Generic.pm bioperl-live/trunk/Bio/SeqFeature/PositionProxy.pm bioperl-live/trunk/Bio/SeqFeature/Primer.pm bioperl-live/trunk/Bio/SeqFeature/SiRNA/Oligo.pm bioperl-live/trunk/Bio/SeqFeature/SiRNA/Pair.pm bioperl-live/trunk/Bio/SeqFeature/Similarity.pm bioperl-live/trunk/Bio/SeqFeature/SimilarityPair.pm bioperl-live/trunk/Bio/SeqFeature/Tools/FeatureNamer.pm bioperl-live/trunk/Bio/SeqFeature/Tools/IDHandler.pm bioperl-live/trunk/Bio/SeqFeature/Tools/TypeMapper.pm bioperl-live/trunk/Bio/SeqFeature/Tools/Unflattener.pm bioperl-live/trunk/Bio/SeqFeature/TypedSeqFeatureI.pm bioperl-live/trunk/Bio/SeqFeatureI.pm bioperl-live/trunk/Bio/SeqI.pm bioperl-live/trunk/Bio/SeqIO/FTHelper.pm bioperl-live/trunk/Bio/SeqIO/Handler/GenericRichSeqHandler.pm bioperl-live/trunk/Bio/SeqIO/MultiFile.pm bioperl-live/trunk/Bio/SeqIO/abi.pm bioperl-live/trunk/Bio/SeqIO/ace.pm bioperl-live/trunk/Bio/SeqIO/agave.pm bioperl-live/trunk/Bio/SeqIO/alf.pm bioperl-live/trunk/Bio/SeqIO/asciitree.pm bioperl-live/trunk/Bio/SeqIO/bsml.pm bioperl-live/trunk/Bio/SeqIO/bsml_sax.pm bioperl-live/trunk/Bio/SeqIO/chadoxml.pm bioperl-live/trunk/Bio/SeqIO/chaos.pm bioperl-live/trunk/Bio/SeqIO/chaosxml.pm bioperl-live/trunk/Bio/SeqIO/ctf.pm bioperl-live/trunk/Bio/SeqIO/embl.pm bioperl-live/trunk/Bio/SeqIO/embldriver.pm bioperl-live/trunk/Bio/SeqIO/entrezgene.pm bioperl-live/trunk/Bio/SeqIO/excel.pm bioperl-live/trunk/Bio/SeqIO/exp.pm bioperl-live/trunk/Bio/SeqIO/fasta.pm bioperl-live/trunk/Bio/SeqIO/fastq.pm bioperl-live/trunk/Bio/SeqIO/flybase_chadoxml.pm bioperl-live/trunk/Bio/SeqIO/game/featHandler.pm bioperl-live/trunk/Bio/SeqIO/game/gameHandler.pm bioperl-live/trunk/Bio/SeqIO/game/gameSubs.pm bioperl-live/trunk/Bio/SeqIO/game/gameWriter.pm bioperl-live/trunk/Bio/SeqIO/game/seqHandler.pm bioperl-live/trunk/Bio/SeqIO/game.pm bioperl-live/trunk/Bio/SeqIO/gbdriver.pm bioperl-live/trunk/Bio/SeqIO/gcg.pm bioperl-live/trunk/Bio/SeqIO/genbank.pm bioperl-live/trunk/Bio/SeqIO/interpro.pm bioperl-live/trunk/Bio/SeqIO/kegg.pm bioperl-live/trunk/Bio/SeqIO/largefasta.pm bioperl-live/trunk/Bio/SeqIO/lasergene.pm bioperl-live/trunk/Bio/SeqIO/locuslink.pm bioperl-live/trunk/Bio/SeqIO/metafasta.pm bioperl-live/trunk/Bio/SeqIO/nexml.pm bioperl-live/trunk/Bio/SeqIO/phd.pm bioperl-live/trunk/Bio/SeqIO/pir.pm bioperl-live/trunk/Bio/SeqIO/pln.pm bioperl-live/trunk/Bio/SeqIO/qual.pm bioperl-live/trunk/Bio/SeqIO/raw.pm bioperl-live/trunk/Bio/SeqIO/scf.pm bioperl-live/trunk/Bio/SeqIO/strider.pm bioperl-live/trunk/Bio/SeqIO/swiss.pm bioperl-live/trunk/Bio/SeqIO/swissdriver.pm bioperl-live/trunk/Bio/SeqIO/tab.pm bioperl-live/trunk/Bio/SeqIO/table.pm bioperl-live/trunk/Bio/SeqIO/tigr.pm bioperl-live/trunk/Bio/SeqIO/tigrxml.pm bioperl-live/trunk/Bio/SeqIO/tinyseq/tinyseqHandler.pm bioperl-live/trunk/Bio/SeqIO/tinyseq.pm bioperl-live/trunk/Bio/SeqIO/ztr.pm bioperl-live/trunk/Bio/SeqUtils.pm bioperl-live/trunk/Bio/SimpleAlign.pm bioperl-live/trunk/Bio/SimpleAnalysisI.pm bioperl-live/trunk/Bio/Species.pm bioperl-live/trunk/Bio/Structure/Atom.pm bioperl-live/trunk/Bio/Structure/Chain.pm bioperl-live/trunk/Bio/Structure/Entry.pm bioperl-live/trunk/Bio/Structure/IO/pdb.pm bioperl-live/trunk/Bio/Structure/IO.pm bioperl-live/trunk/Bio/Structure/Model.pm bioperl-live/trunk/Bio/Structure/Residue.pm bioperl-live/trunk/Bio/Structure/SecStr/DSSP/Res.pm bioperl-live/trunk/Bio/Structure/SecStr/STRIDE/Res.pm bioperl-live/trunk/Bio/Structure/StructureI.pm bioperl-live/trunk/Bio/Symbol/Alphabet.pm bioperl-live/trunk/Bio/Symbol/AlphabetI.pm bioperl-live/trunk/Bio/Symbol/DNAAlphabet.pm bioperl-live/trunk/Bio/Symbol/ProteinAlphabet.pm bioperl-live/trunk/Bio/Symbol/Symbol.pm bioperl-live/trunk/Bio/Symbol/SymbolI.pm bioperl-live/trunk/Bio/Taxon.pm bioperl-live/trunk/Bio/Taxonomy/Node.pm bioperl-live/trunk/Bio/Taxonomy.pm bioperl-live/trunk/Bio/Tools/Alignment/Consed.pm bioperl-live/trunk/Bio/Tools/Alignment/Trim.pm bioperl-live/trunk/Bio/Tools/Analysis/DNA/ESEfinder.pm bioperl-live/trunk/Bio/Tools/Analysis/Protein/Domcut.pm bioperl-live/trunk/Bio/Tools/Analysis/Protein/ELM.pm bioperl-live/trunk/Bio/Tools/Analysis/Protein/GOR4.pm bioperl-live/trunk/Bio/Tools/Analysis/Protein/HNN.pm bioperl-live/trunk/Bio/Tools/Analysis/Protein/Mitoprot.pm bioperl-live/trunk/Bio/Tools/Analysis/Protein/NetPhos.pm bioperl-live/trunk/Bio/Tools/Analysis/Protein/Scansite.pm bioperl-live/trunk/Bio/Tools/Analysis/Protein/Sopma.pm bioperl-live/trunk/Bio/Tools/Analysis/SimpleAnalysisBase.pm bioperl-live/trunk/Bio/Tools/AnalysisResult.pm bioperl-live/trunk/Bio/Tools/Blat.pm bioperl-live/trunk/Bio/Tools/CodonTable.pm bioperl-live/trunk/Bio/Tools/Coil.pm bioperl-live/trunk/Bio/Tools/ECnumber.pm bioperl-live/trunk/Bio/Tools/EMBOSS/Palindrome.pm bioperl-live/trunk/Bio/Tools/EPCR.pm bioperl-live/trunk/Bio/Tools/ERPIN.pm bioperl-live/trunk/Bio/Tools/ESTScan.pm bioperl-live/trunk/Bio/Tools/EUtilities/Cookie.pm bioperl-live/trunk/Bio/Tools/EUtilities/EUtilDataI.pm bioperl-live/trunk/Bio/Tools/EUtilities/EUtilParameters.pm bioperl-live/trunk/Bio/Tools/EUtilities/History.pm bioperl-live/trunk/Bio/Tools/EUtilities/HistoryI.pm bioperl-live/trunk/Bio/Tools/EUtilities/Info/FieldInfo.pm bioperl-live/trunk/Bio/Tools/EUtilities/Info/LinkInfo.pm bioperl-live/trunk/Bio/Tools/EUtilities/Info.pm bioperl-live/trunk/Bio/Tools/EUtilities/Link/LinkSet.pm bioperl-live/trunk/Bio/Tools/EUtilities/Link/UrlLink.pm bioperl-live/trunk/Bio/Tools/EUtilities/Link.pm bioperl-live/trunk/Bio/Tools/EUtilities/Query/GlobalQuery.pm bioperl-live/trunk/Bio/Tools/EUtilities/Query.pm bioperl-live/trunk/Bio/Tools/EUtilities/Summary/DocSum.pm bioperl-live/trunk/Bio/Tools/EUtilities/Summary/Item.pm bioperl-live/trunk/Bio/Tools/EUtilities/Summary/ItemContainerI.pm bioperl-live/trunk/Bio/Tools/EUtilities/Summary.pm bioperl-live/trunk/Bio/Tools/EUtilities.pm bioperl-live/trunk/Bio/Tools/Eponine.pm bioperl-live/trunk/Bio/Tools/Est2Genome.pm bioperl-live/trunk/Bio/Tools/Fgenesh.pm bioperl-live/trunk/Bio/Tools/FootPrinter.pm bioperl-live/trunk/Bio/Tools/GFF.pm bioperl-live/trunk/Bio/Tools/Gel.pm bioperl-live/trunk/Bio/Tools/Geneid.pm bioperl-live/trunk/Bio/Tools/Genemark.pm bioperl-live/trunk/Bio/Tools/Genewise.pm bioperl-live/trunk/Bio/Tools/Genomewise.pm bioperl-live/trunk/Bio/Tools/Genscan.pm bioperl-live/trunk/Bio/Tools/Glimmer.pm bioperl-live/trunk/Bio/Tools/Grail.pm bioperl-live/trunk/Bio/Tools/GuessSeqFormat.pm bioperl-live/trunk/Bio/Tools/HMMER/Results.pm bioperl-live/trunk/Bio/Tools/HMMER/Set.pm bioperl-live/trunk/Bio/Tools/Hmmpfam.pm bioperl-live/trunk/Bio/Tools/IUPAC.pm bioperl-live/trunk/Bio/Tools/Infernal.pm bioperl-live/trunk/Bio/Tools/Lucy.pm bioperl-live/trunk/Bio/Tools/MZEF.pm bioperl-live/trunk/Bio/Tools/Match.pm bioperl-live/trunk/Bio/Tools/OddCodes.pm bioperl-live/trunk/Bio/Tools/Phylo/Gerp.pm bioperl-live/trunk/Bio/Tools/Phylo/Gumby.pm bioperl-live/trunk/Bio/Tools/Phylo/Molphy/Result.pm bioperl-live/trunk/Bio/Tools/Phylo/Molphy.pm bioperl-live/trunk/Bio/Tools/Phylo/PAML/ModelResult.pm bioperl-live/trunk/Bio/Tools/Phylo/PAML/Result.pm bioperl-live/trunk/Bio/Tools/Phylo/PAML.pm bioperl-live/trunk/Bio/Tools/Phylo/Phylip/ProtDist.pm bioperl-live/trunk/Bio/Tools/Prediction/Exon.pm bioperl-live/trunk/Bio/Tools/Prediction/Gene.pm bioperl-live/trunk/Bio/Tools/Primer/Assessor/Base.pm bioperl-live/trunk/Bio/Tools/Primer/AssessorI.pm bioperl-live/trunk/Bio/Tools/Primer/Feature.pm bioperl-live/trunk/Bio/Tools/Primer/Pair.pm bioperl-live/trunk/Bio/Tools/Primer3.pm bioperl-live/trunk/Bio/Tools/Prints.pm bioperl-live/trunk/Bio/Tools/Profile.pm bioperl-live/trunk/Bio/Tools/Promoterwise.pm bioperl-live/trunk/Bio/Tools/Pseudowise.pm bioperl-live/trunk/Bio/Tools/QRNA.pm bioperl-live/trunk/Bio/Tools/RNAMotif.pm bioperl-live/trunk/Bio/Tools/RandomDistFunctions.pm bioperl-live/trunk/Bio/Tools/RepeatMasker.pm bioperl-live/trunk/Bio/Tools/Run/GenericParameters.pm bioperl-live/trunk/Bio/Tools/Run/ParametersI.pm bioperl-live/trunk/Bio/Tools/Run/RemoteBlast.pm bioperl-live/trunk/Bio/Tools/Run/StandAloneBlast.pm bioperl-live/trunk/Bio/Tools/Run/StandAloneNCBIBlast.pm bioperl-live/trunk/Bio/Tools/Run/StandAloneWUBlast.pm bioperl-live/trunk/Bio/Tools/Run/WrapperBase.pm bioperl-live/trunk/Bio/Tools/Seg.pm bioperl-live/trunk/Bio/Tools/SeqPattern.pm bioperl-live/trunk/Bio/Tools/SeqStats.pm bioperl-live/trunk/Bio/Tools/SeqWords.pm bioperl-live/trunk/Bio/Tools/SiRNA/Ruleset/saigo.pm bioperl-live/trunk/Bio/Tools/SiRNA/Ruleset/tuschl.pm bioperl-live/trunk/Bio/Tools/SiRNA.pm bioperl-live/trunk/Bio/Tools/Sigcleave.pm bioperl-live/trunk/Bio/Tools/Signalp/ExtendedSignalp.pm bioperl-live/trunk/Bio/Tools/Signalp.pm bioperl-live/trunk/Bio/Tools/Sim4/Exon.pm bioperl-live/trunk/Bio/Tools/Sim4/Results.pm bioperl-live/trunk/Bio/Tools/Spidey/Exon.pm bioperl-live/trunk/Bio/Tools/Spidey/Results.pm bioperl-live/trunk/Bio/Tools/TandemRepeatsFinder.pm bioperl-live/trunk/Bio/Tools/TargetP.pm bioperl-live/trunk/Bio/Tools/Tmhmm.pm bioperl-live/trunk/Bio/Tools/dpAlign.pm bioperl-live/trunk/Bio/Tools/ipcress.pm bioperl-live/trunk/Bio/Tools/isPcr.pm bioperl-live/trunk/Bio/Tools/pSW.pm bioperl-live/trunk/Bio/Tools/tRNAscanSE.pm bioperl-live/trunk/Bio/Tree/AlleleNode.pm bioperl-live/trunk/Bio/Tree/AnnotatableNode.pm bioperl-live/trunk/Bio/Tree/Compatible.pm bioperl-live/trunk/Bio/Tree/DistanceFactory.pm bioperl-live/trunk/Bio/Tree/Draw/Cladogram.pm bioperl-live/trunk/Bio/Tree/Node.pm bioperl-live/trunk/Bio/Tree/NodeI.pm bioperl-live/trunk/Bio/Tree/NodeNHX.pm bioperl-live/trunk/Bio/Tree/RandomFactory.pm bioperl-live/trunk/Bio/Tree/Statistics.pm bioperl-live/trunk/Bio/Tree/Tree.pm bioperl-live/trunk/Bio/Tree/TreeFunctionsI.pm bioperl-live/trunk/Bio/Tree/TreeI.pm bioperl-live/trunk/Bio/TreeIO/TreeEventBuilder.pm bioperl-live/trunk/Bio/TreeIO/cluster.pm bioperl-live/trunk/Bio/TreeIO/lintree.pm bioperl-live/trunk/Bio/TreeIO/newick.pm bioperl-live/trunk/Bio/TreeIO/nexml.pm bioperl-live/trunk/Bio/TreeIO/nexus.pm bioperl-live/trunk/Bio/TreeIO/nhx.pm bioperl-live/trunk/Bio/TreeIO/pag.pm bioperl-live/trunk/Bio/TreeIO/phyloxml.pm bioperl-live/trunk/Bio/TreeIO/svggraph.pm bioperl-live/trunk/Bio/TreeIO/tabtree.pm bioperl-live/trunk/Bio/TreeIO.pm bioperl-live/trunk/Bio/UpdateableSeqI.pm bioperl-live/trunk/Bio/Variation/AAChange.pm bioperl-live/trunk/Bio/Variation/AAReverseMutate.pm bioperl-live/trunk/Bio/Variation/Allele.pm bioperl-live/trunk/Bio/Variation/DNAMutation.pm bioperl-live/trunk/Bio/Variation/IO/flat.pm bioperl-live/trunk/Bio/Variation/IO/xml.pm bioperl-live/trunk/Bio/Variation/IO.pm bioperl-live/trunk/Bio/Variation/RNAChange.pm bioperl-live/trunk/Bio/Variation/SNP.pm bioperl-live/trunk/Bio/Variation/SeqDiff.pm bioperl-live/trunk/Bio/Variation/VariantI.pm bioperl-live/trunk/Bio/WebAgent.pm Modified: bioperl-live/trunk/Bio/Align/AlignI.pm =================================================================== --- bioperl-live/trunk/Bio/Align/AlignI.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/Align/AlignI.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -55,11 +55,11 @@ http://bioperl.org/wiki/Mailing_lists - About the mailing lists =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem @@ -650,7 +650,7 @@ Returns : integer Argument : None Note : replaces no_sequences - + =cut sub num_sequences { @@ -843,7 +843,7 @@ Returns : integer Argument : Note : deprecated in favor of num_residues() - + =cut sub no_residues { Modified: bioperl-live/trunk/Bio/Align/DNAStatistics.pm =================================================================== --- bioperl-live/trunk/Bio/Align/DNAStatistics.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/Align/DNAStatistics.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -269,11 +269,11 @@ http://bioperl.org/wiki/Mailing_lists - About the mailing lists =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem Modified: bioperl-live/trunk/Bio/Align/PairwiseStatistics.pm =================================================================== --- bioperl-live/trunk/Bio/Align/PairwiseStatistics.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/Align/PairwiseStatistics.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -43,11 +43,11 @@ http://bioperl.org/wiki/Mailing_lists - About the mailing lists =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem Modified: bioperl-live/trunk/Bio/Align/ProteinStatistics.pm =================================================================== --- bioperl-live/trunk/Bio/Align/ProteinStatistics.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/Align/ProteinStatistics.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -53,11 +53,11 @@ http://bioperl.org/wiki/Mailing_lists - About the mailing lists =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem Modified: bioperl-live/trunk/Bio/Align/StatisticsI.pm =================================================================== --- bioperl-live/trunk/Bio/Align/StatisticsI.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/Align/StatisticsI.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -36,11 +36,11 @@ http://bioperl.org/wiki/Mailing_lists - About the mailing lists =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem Modified: bioperl-live/trunk/Bio/Align/Utilities.pm =================================================================== --- bioperl-live/trunk/Bio/Align/Utilities.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/Align/Utilities.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -59,11 +59,11 @@ http://bioperl.org/wiki/Mailing_lists - About the mailing lists =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem Modified: bioperl-live/trunk/Bio/AlignIO/Handler/GenericAlignHandler.pm =================================================================== --- bioperl-live/trunk/Bio/AlignIO/Handler/GenericAlignHandler.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/AlignIO/Handler/GenericAlignHandler.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -214,7 +214,7 @@ Function: Convenience method used to set specific parameters Returns : None Args : Hash ref containing the data to be passed as key-value pairs - + =cut sub set_params { @@ -624,7 +624,7 @@ 'JOURNAL' => 'Unpublished (2003)' 'ALIGNMENT' => 1, }; - + In the case of LocatableSeqs, one can pass them in as follows for simplicity (note the block line): @@ -667,7 +667,7 @@ 'DATA' => 'VALILGVYRRL...CYVNREM..RAG....QW', 'ALIGNMENT' => 1 }; - + A consensus meta sequence: $VAR1 = { @@ -689,11 +689,11 @@ http://bioperl.org/wiki/Mailing_lists - About the mailing lists =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem Modified: bioperl-live/trunk/Bio/AlignIO/arp.pm =================================================================== --- bioperl-live/trunk/Bio/AlignIO/arp.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/AlignIO/arp.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -62,11 +62,11 @@ =head1 FEEDBACK =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem Modified: bioperl-live/trunk/Bio/AlignIO/bl2seq.pm =================================================================== --- bioperl-live/trunk/Bio/AlignIO/bl2seq.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/AlignIO/bl2seq.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -72,11 +72,11 @@ http://bioperl.org/wiki/Mailing_lists - About the mailing lists =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem Modified: bioperl-live/trunk/Bio/AlignIO/clustalw.pm =================================================================== --- bioperl-live/trunk/Bio/AlignIO/clustalw.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/AlignIO/clustalw.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -39,11 +39,11 @@ http://bioperl.org/wiki/Mailing_lists - About the mailing lists =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem Modified: bioperl-live/trunk/Bio/AlignIO/emboss.pm =================================================================== --- bioperl-live/trunk/Bio/AlignIO/emboss.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/AlignIO/emboss.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -44,11 +44,11 @@ http://bioperl.org/wiki/Mailing_lists - About the mailing lists =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem Modified: bioperl-live/trunk/Bio/AlignIO/fasta.pm =================================================================== --- bioperl-live/trunk/Bio/AlignIO/fasta.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/AlignIO/fasta.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -26,11 +26,11 @@ =head1 FEEDBACK =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem Modified: bioperl-live/trunk/Bio/AlignIO/largemultifasta.pm =================================================================== --- bioperl-live/trunk/Bio/AlignIO/largemultifasta.pm 2009-09-16 16:36:38 UTC (rev 16107) +++ bioperl-live/trunk/Bio/AlignIO/largemultifasta.pm 2009-09-16 17:07:49 UTC (rev 16108) @@ -37,11 +37,11 @@ =head1 FEEDBACK =head2 Support - + Please direct usage questions or support issues to the mailing list: - -L - + +I + rather than to the module maintainer directly. Many experienced and @@ Diff output truncated at 10000 characters. @@ From cjfields at dev.open-bio.org Wed Sep 16 13:21:47 2009 From: cjfields at dev.open-bio.org (Christopher John Fields) Date: Wed, 16 Sep 2009 13:21:47 -0400 Subject: [Bioperl-guts-l] [16109] bioperl-live/trunk/Bio: [cage cleaning] Message-ID: <200909161721.n8GHLlrO029064@dev.open-bio.org> Revision: 16109 Author: cjfields Date: 2009-09-16 13:21:47 -0400 (Wed, 16 Sep 2009) Log Message: ----------- [cage cleaning] * fix most blatant pod parser errors Modified Paths: -------------- bioperl-live/trunk/Bio/SeqIO/fastq.pm bioperl-live/trunk/Bio/TreeIO/nexml.pm Modified: bioperl-live/trunk/Bio/SeqIO/fastq.pm =================================================================== --- bioperl-live/trunk/Bio/SeqIO/fastq.pm 2009-09-16 17:07:49 UTC (rev 16108) +++ bioperl-live/trunk/Bio/SeqIO/fastq.pm 2009-09-16 17:21:47 UTC (rev 16109) @@ -363,7 +363,7 @@ + = optional descriptor (if present, must match first one), followed by one or more qual lines -=head2 FASTQ<->Bio::Seq::Quality mapping +=head2 FASTQ and Bio::Seq::Quality mapping FASTQ files have sequence and quality data on single line or multiple lines, and the quality values are single-byte encoded. Data are mapped very simply to Modified: bioperl-live/trunk/Bio/TreeIO/nexml.pm =================================================================== --- bioperl-live/trunk/Bio/TreeIO/nexml.pm 2009-09-16 17:07:49 UTC (rev 16108) +++ bioperl-live/trunk/Bio/TreeIO/nexml.pm 2009-09-16 17:21:47 UTC (rev 16109) @@ -136,8 +136,8 @@ Returns : none Args : none +=cut -=cut sub rewind { my $self = shift; $self->{'_treeiter'} = 0; From cjfields at dev.open-bio.org Wed