[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Debian packaging of phylophlan and using vsearch instead of usearch



Hi Francesco,

thanks for the clarification.  For the moment I've added it to the
documentation of the graphlan package.  I would create a package from
export2graphlan at user request.

Kind regards

       Andreas.

On Tue, Jun 21, 2016 at 06:40:27PM +0200, Francesco Asnicar wrote:
> Hi Andreas,
> 
> regarding the two issues in your previous e-mail, you should be able to get
> export2graphlan by cloning the GraPhlAn repository with the hg clone
> command. Export2graphlan is a sub repository included in GraPhlAn and you
> can find it here: https://bitbucket.org/CibioCM/export2graphlan/
> About the meta_ref example that didn't worked, it should be fixed now!
> Thanks for pointing out this problem, hopefully it will be the last!
> 
> 
> Many thanks,
> 
> Francesco
> 
> On Wed, Jun 1, 2016 at 2:54 PM, Andreas Tille <andreas@an3as.eu> wrote:
> 
> > Hi Francesco,
> >
> > On Tue, May 31, 2016 at 06:07:00PM +0200, Francesco Asnicar wrote:
> > > the usearch version for PhyloPhlAn is "usearch5.2.32". The newest
> > versions
> > > of usearch are supported in a new version of PhyloPhlAn that is currently
> > > under development, so we cannot refer to this as stable.
> >
> > Thanks for the helpful explanation.  This enables me to find at least
> > for local installations some clue.
> >
> > > About the errors you got from the "guide" example, did you run all the
> > > steps in order? Because if you only run "step3.sh", there would be
> > missing
> > > files if the previous steps have not been executed.
> >
> > I *think* I did so, but I'm not sure.  Since it works now we might
> > consider this issue settled. :-)
> >
> > > About the errors you got from the "internal_labels" example, instead, I
> > > found a couple of missing taxa in the tree and a couple of wrong
> > > annotations. I now fixed the example and updated the repository. Many
> > > thanks for pointing out this problem.
> >
> > You are welcome.  I consider this a feature of Debian packaging to get
> > another pair of eyeballs onto a piece of code.
> >
> > > About the real error you got from the "phylo_small" example, I looked
> > into
> > > it, but here the example is working just fine. Could it be related to the
> > > matplotlib version? You mentioned the matplotlib warning, but I couldn't
> > > reproduce it. I am currently using the 1.3.1 version of matplotlib, which
> > > one are you using?
> >
> > On the machine I was doing the test I'm running Debian testing which has
> > python-matplotlib version 1.5.1.
> >
> > > Instead of including PyPhlAn as sub-repository with GraPhlAn, I included
> > > the necessary classes directly in GraPhlAn. I also added a tag ("1.1",
> > > https://bitbucket.org/nsegata/graphlan/commits/tag/1.1) to the latest
> > > commit in Bitbucket.
> >
> > That's very helpful.  Since I did not needed to package any
> > preconditions I was able to upload a package to the Debian new queue[1]
> > where all new packages need to go first for inspection of Debian
> > ftpmaster.
> >
> > Regarding the examples I turned running them into a test suite which
> > Debian tries to provide as Continuous Integration tests.  You might like
> > to have a look at the test script[2] (which assumes that the examples
> > are installed to /usr/share/doc/graphlan/examples).  I have attached the
> > output of this script when running on my machine.  As you can see there
> > are two issues:
> >
> >  1. I needed to skip those tests that are calling export2graphlan
> >     (saliva_microbiome/PIPELINE.sh and other PIPELINE.sh scripts).  I
> >     wonder where I could get export2graphlan to be able to run all tests.
> >  2. metaref_fams/run.sh has some extended output also containing strings
> >     like
> >      Error: No tree file found: mr1.xml
> >
> > Please let me know how to deal with these to issues.
> >
> > > Let us know if you have any other questions.
> >
> > Not really a question but a hint:  I used help2man to create some simple
> > manpages from the output when specifying '-h'.  Feel free to download
> > these[3] and add them to your source distribution.
> >
> > Kind regards and thanks for your cooperation
> >
> >     Andreas.
> >
> > [1] https://ftp-master.debian.org/new/graphlan_1.1-1.html
> > [2]
> > https://anonscm.debian.org/viewvc/debian-med/trunk/packages/graphlan/trunk/debian/tests/run-unit-test?revision=22059&view=markup
> > [3]
> > https://anonscm.debian.org/viewvc/debian-med/trunk/packages/graphlan/trunk/debian/
> >
> > > On Fri, May 27, 2016 at 3:48 PM, Andreas Tille <andreas@fam-tille.de>
> > wrote:
> > >
> > > > Sorry for answering my own mail.  When trying the examples of graphlan
> > I
> > > > noticed that some files are missing:
> > > >
> > > >
> > > > graphlan/examples/guide $ ./step3.sh
> > > > Error: No tree file found: guide_2.xml
> > > > Error: No tree file found: guide_3.xml
> > > > Error: No tree file found: guide_3.xml
> > > >
> > > > graphlan/examples/guide $ ./step4.sh
> > > > Error: No tree file found: guide_3.xml
> > > > Error: No tree file found: guide_4.xml
> > > > Error: No tree file found: guide_4.xml
> > > >
> > > >
> > > > I'm not sure about this, please check:
> > > >
> > > > graphlan/examples/internal_labels $ ./step4.sh
> > > > Classes not implemented for external annotations
> > > > Classes not implemented for external annotations
> > > > ...
> > > >
> > > >
> > > > I also observed two times warnings from matplotlib saying:
> > > >
> > > >
> > /usr/lib/python2.7/dist-packages/matplotlib/projections/polar.py:149:
> > > > RuntimeWarning: invalid value encountered in true_divide
> > > >
> > > >
> > > > A real error occures with
> > > >
> > > > graphlan/examples/phylo_small $ ./run.sh
> > > > Traceback (most recent call last):
> > > >   File "/usr/bin/graphlan", line 70, in <module>
> > > >     external_legends = args['external_legends'])
> > > >   File "/usr/share/graphlan/src/graphlan_lib.py", line 1062, in draw
> > > >     format = out_format,
> > > >   File "/usr/lib/python2.7/dist-packages/matplotlib/pyplot.py", line
> > 577,
> > > > in savefig
> > > >     res = fig.savefig(*args, **kwargs)
> > > >   File "/usr/lib/python2.7/dist-packages/matplotlib/figure.py", line
> > 1470,
> > > > in savefig
> > > >     self.canvas.print_figure(*args, **kwargs)
> > > >   File "/usr/lib/python2.7/dist-packages/matplotlib/backend_bases.py",
> > > > line 2141, in print_figure
> > > >     **kwargs)
> > > >   File
> > > > "/usr/lib/python2.7/dist-packages/matplotlib/backends/backend_agg.py",
> > line
> > > > 521, in print_png
> > > >     FigureCanvasAgg.draw(self)
> > > >   File
> > > > "/usr/lib/python2.7/dist-packages/matplotlib/backends/backend_agg.py",
> > line
> > > > 469, in draw
> > > >     self.figure.draw(self.renderer)
> > > >   File "/usr/lib/python2.7/dist-packages/matplotlib/artist.py", line
> > 59,
> > > > in draw_wrapper
> > > >     draw(artist, renderer, *args, **kwargs)
> > > >   File "/usr/lib/python2.7/dist-packages/matplotlib/figure.py", line
> > 1079,
> > > > in draw
> > > >     func(*args)
> > > >   File "/usr/lib/python2.7/dist-packages/matplotlib/artist.py", line
> > 59,
> > > > in draw_wrapper
> > > >     draw(artist, renderer, *args, **kwargs)
> > > >   File "/usr/lib/python2.7/dist-packages/matplotlib/axes/_base.py",
> > line
> > > > 2092, in draw
> > > >     a.draw(renderer)
> > > >   File "/usr/lib/python2.7/dist-packages/matplotlib/artist.py", line
> > 59,
> > > > in draw_wrapper
> > > >     draw(artist, renderer, *args, **kwargs)
> > > >   File "/usr/lib/python2.7/dist-packages/matplotlib/patches.py", line
> > 462,
> > > > in draw
> > > >     gc.set_alpha(self._alpha)
> > > >   File "/usr/lib/python2.7/dist-packages/matplotlib/backend_bases.py",
> > > > line 923, in set_alpha
> > > >     self.set_foreground(self._orig_color)
> > > >   File "/usr/lib/python2.7/dist-packages/matplotlib/backend_bases.py",
> > > > line 987, in set_foreground
> > > >     self._rgb = colors.colorConverter.to_rgba(fg, self._alpha)
> > > >   File "/usr/lib/python2.7/dist-packages/matplotlib/colors.py", line
> > 376,
> > > > in to_rgba
> > > >     'to_rgba: Invalid rgba arg "%s"\n%s' % (str(arg), exc))
> > > > ValueError: to_rgba: Invalid rgba arg "(0.0, 0.0, 1.0,
> > 1.0175609756098)"
> > > > number in rbga sequence outside 0-1 range
> > > >
> > > >
> > > > BTW, a conversion to Python 3 for graphlan as well as pyphlan would be
> > > > nice.
> > > >
> > > > Kind regards
> > > >
> > > >      Andreas.
> > > >
> > > > On Fri, May 27, 2016 at 03:32:37PM +0200, Andreas Tille wrote:
> > > > > Hi Nicola,
> > > > >
> > > > > On Wed, May 25, 2016 at 07:56:08AM +0000, Nicola Segata wrote:
> > > > > > Hi Adreas,
> > > > > >   we recently updated PhyloPhlAn to support other usearch
> > versions. I'm
> > > > > > CC'ing Francesco (the lead on the project) which can be more
> > accurate
> > > > on
> > > > > > which usearch version we need for the last version of PhyloPhlAn.
> > > > >
> > > > > It would be nice to get some confirmation about the usearch version.
> > > > >
> > > > > > Regarding other software I think it would be fantastic to have
> > > > MetaPhlAn2
> > > > > > as a Debian package. It's here:
> > > > https://bitbucket.org/biobakery/metaphlan2 .
> > > > > > It is widely used and stable (although we are further and actively
> > > > > > developing it) and published a couple of times in Nat Methods.
> > > > >
> > > > > I had a look into this.  It contains quite large binary data chunks.
> > > > > Before I can seriously attempt to package this I would need to know
> > > > > where and how theses data are obtained from, how to possibly change
> > the
> > > > > data (if this makes sense at all - if not why not) and what the
> > > > > copyright of the data would be.  Otherwise Debian ftpmaster will
> > refuse
> > > > > the package to be uploaded.
> > > > >
> > > > > > Another software we developed that would be great to have as a
> > Debian
> > > > > > package is GraPhlAn (
> > https://bitbucket.org/nsegata/graphlan/wiki/Home)
> > > > > > (Described here https://peerj.com/articles/1029/). It's a package
> > to
> > > > > > produce nice graphical representation of phylogenetic trees.
> > > > >
> > > > > That's a really nice one. :-)  I injected packaging code into our
> > > > > packaging version control system.  However, when doing so I noticed
> > that
> > > > > I need to package pyphlan[1] first.  I committed the needed packaging
> > > > > code into our packaging Git and can confirm that the packaging of
> > > > > graphlan works together with this precondition.  Before I can upload
> > > > > pyphlan to the Debian mirror it would be great to have at least a
> > > > > minimum three lines description, what the package is actually
> > doing.  I
> > > > > found something in the code that there are functions you would like
> > to
> > > > > see in Biopython (did you contacted Biopython authors about this - I
> > > > > learned they are very responsive and open for enhancements) but I
> > have
> > > > > no real clue what the code is doing - except that its a precondition
> > for
> > > > > graphlan.  So please provide some sensible description.
> > > > >
> > > > > Another nice thing would to add a version tag to bitbucket.  This
> > would
> > > > > enable me to find a proper Debian package version which is currently
> > > > > simply the date of the youngest file inside the download archive.
> > > > >
> > > > > > Importantly, these two packages don't use any proprietary software
> > so
> > > > it
> > > > > > should be easier to package them than PhyloPhlAn.
> > > > >
> > > > > You are right but as I said above the binary data need some
> > explanation.
> > > > >
> > > > > > Let us know if you have any question and if we can help you
> > somehow!
> > > > >
> > > > > Thanks a lot for your nice hints.  We like to have this kind of
> > > > > cooperation with upstream software authors.
> > > > >
> > > > > Kind regards
> > > > >
> > > > >        Andreas.
> > > > >
> > > > >
> > > > > [1] https://bitbucket.org/nsegata/pyphlan
> > > > > [2] https://anonscm.debian.org/cgit/debian-med/python-pyphlan.git
> > > > >
> > > > > --
> > > > > http://fam-tille.de
> > > >
> > > > --
> > > > http://fam-tille.de
> > > >
> >
> > --
> > http://fam-tille.de
> >

-- 
http://fam-tille.de


Reply to: