[Bioc-devel] package RBGL requires CRAN dependency on devel branch
Aaron Lun
|n||n|te@monkey@@w|th@keybo@rd@ @end|ng |rom gm@||@com
Wed Mar 27 06:06:31 CET 2019
> well, we can't fix this in old branches of Bioc.
Sure, but one could say that about breaking changes to any CRAN package.
Nothing particularly special about BH on that point.
> My POV is that we need to consider - in some sense - lock down CRAN with
> a Bioc release.
That's probably worth considering. For example, it would be pretty cool
to just supply a date and BiocManager could figure out the last
successful release versions of all CRAN/BioC packages at that time.
-A
> On Tue, Mar 26, 2019 at 12:45 AM Aaron Lun
> <infinite.monkeys.with.keyboards using gmail.com
> <mailto:infinite.monkeys.with.keyboards using gmail.com>> wrote:
>
> My 2 cents - API-breaking changes to BH are no more of an issue than
> breaking changes to any other CRAN package. We just hope that it
> doesn't
> happen too often and we deal with it when the time comes; that's the
> whole point of getting frequent release builds to check for these cases.
>
> If we were discussing a package that distributed a shared library, then
> greater concern would be warranted if updates to the library
> resulted in
> ABI incompatibilities. This could result in very cryptic errors at link
> time, load time, or possibly segmentation faults, who knows.
>
> But BH is a header-only library, so breaking changes will most likely
> cause compilation errors that are obvious and easy to fix. Well, easy
> enough if you were able to write C++ code in the first place.
>
> -A
>
>
> On 25/03/2019 08:39, Vincent Carey wrote:
> > On Mon, Mar 25, 2019 at 10:57 AM Kasper Daniel Hansen <
> > kasperdanielhansen using gmail.com
> <mailto:kasperdanielhansen using gmail.com>> wrote:
> >
> >> There are no issues with depending on CRAN packages.
> >>
> >> But I would advise caution. On one hand it is great that boost gets
> >> updated regularly. On the other hand, it could lead to
> incompatibilities
> >> with RBGL and then you have to update that package rapidly. Also
> - and this
> >> is something we could consider addressing - the CRAN imports of
> Bioc are
> >> not locked down. By which I mean, you release RBGL in
> Bioconductor X. After
> >> release (or perhaps even after next Bioc release) BH is updated in a
> >> non-backwards compatible way and now the old code is hosed.
> Having said
> >> that, so far we have been ignoring it (I think) and the same
> issue arises
> >> with Rcpp.
> >>
> >> Do you have any idea how often Boost breaks compatibility? I would
> >> strongly advise to download the last couple of BH releases and
> test with
> >> RBGL. While kind of irrelevant in some sense, it will give you
> an idea of
> >> how fast Boost / BH evolves.
> >>
> >
> > These are good points. In this particular case I believe that
> Boost Graph
> > Library evolves very slowly and
> > backwards compatibility is not endangered. It is an early
> component of
> > Boost. On the other hand, BH has
> > no obligation to provide the graph (BGL) headers, and I believe
> that in
> > early incarnations of BH, some headers
> > needed for RBGL were not there. So there are maintenance
> vulnerabilities
> > to this approach, but I think it is better
> > if we stick with the maintained BH as long as this works. Should
> this
> > approach fail (and your scenario of
> > CRAN package changes breaking bioc must be kept in mind) we can
> go back to
> > tarball distribution if necessary.
> >
> >
> >>
> >> On Mon, Mar 25, 2019 at 8:03 AM Martin Morgan
> <mtmorgan.bioc using gmail.com <mailto:mtmorgan.bioc using gmail.com>>
> >> wrote:
> >>
> >>> ...also Bioconductor knows all about CRAN -- see the repositories
> >>> returned by
> >>>
> >>>> BiocManager::repositories()
> >>> BioCsoft
> >>> "https://bioconductor.org/packages/3.9/bioc"
> >>> BioCann
> >>> "https://bioconductor.org/packages/3.9/data/annotation"
> >>> BioCexp
> >>> "https://bioconductor.org/packages/3.9/data/experiment"
> >>> BioCworkflows
> >>> "https://bioconductor.org/packages/3.9/workflows"
> >>> CRAN
> >>> "https://cran.rstudio.com"
> >>>>
> >>>
> >>> On 3/25/19, 7:42 AM, "Martin Morgan" <mtmorgan.bioc using gmail.com
> <mailto:mtmorgan.bioc using gmail.com>> wrote:
> >>>
> >>> I think the usual incantation in configure files is
> ${R_HOME}/bin/R
> >>> ... R_HOME is the path to R set by the command that starts to
> build or
> >>> install the package, whereas Rscript is found on the search path.
> >>>
> >>> Martin
> >>>
> >>> On 3/25/19, 7:33 AM, "Bioc-devel on behalf of Vincent
> Carey" <
> >>> bioc-devel-bounces using r-project.org
> <mailto:bioc-devel-bounces using r-project.org> on behalf of
> stvjc using channing.harvard.edu <mailto:stvjc using channing.harvard.edu>>
> >>> wrote:
> >>>
> >>> The error on linux for 3.9:
> >>>
> >>>
> >>>
> ##############################################################################
> >>>
> >>>
> ##############################################################################
> >>> ###
> >>> ### Running command:
> >>> ###
> >>> ### /home/biocbuild/bbs-3.9-bioc/R/bin/R CMD INSTALL
> RBGL
> >>> ###
> >>>
> >>>
> ##############################################################################
> >>>
> >>>
> ##############################################################################
> >>>
> >>>
> >>> * installing to library
> ‘/home/biocbuild/bbs-3.9-bioc/R/library’
> >>> * installing *source* package ‘RBGL’ ...
> >>> ** using staged installation
> >>> checking R package BH ... no
> >>> configure: error: R package BH not found.
> >>> ERROR: configuration failed for package ‘RBGL’
> >>> * removing ‘/home/biocbuild/bbs-3.9-bioc/R/library/RBGL’
> >>> * restoring previous
> ‘/home/biocbuild/bbs-3.9-bioc/R/library/RBGL’
> >>>
> >>> Note that BiocParallel also uses BH and succeeds
> >>>
> >>> configure: creating ./config.status
> >>> config.status: creating src/Makevars
> >>> ** libs
> >>> g++ -std=gnu++11
> -I"/home/biocbuild/bbs-3.9-bioc/R/include"
> >>> -DNDEBUG
> >>> -I"/home/biocbuild/bbs-3.9-bioc/R/library/BH/include"
> >>> -I/usr/local/include -fpic -g -O2 -Wall -c
> ipcmutex.cpp -o
> >>> ipcmutex.o
> >>> In file included from
> >>>
> >>>
> /home/biocbuild/bbs-3.9-bioc/R/library/BH/include/boost/random/detail/integer_log2.hpp:19:0,
> >>> from
> >>>
> >>>
> /home/biocbuild/bbs-3.9-bioc/R/library/BH/include/boost/random/detail/large_arithmetic.hpp:19,
> >>> from
> >>>
> >>>
> /home/biocbuild/bbs-3.9-bioc/R/library/BH/include/boost/random/detail/const_mod.hpp:23,
> >>> from
> >>>
> >>>
> /home/biocbuild/bbs-3.9-bioc/R/library/BH/include/boost/random/detail/seed_impl.hpp:26,
> >>> from
> >>>
> >>>
> /home/biocbuild/bbs-3.9-bioc/R/library/BH/include/boost/random/mersenne_twister.hpp:30,
> >>> from
> >>>
> >>>
> /home/biocbuild/bbs-3.9-bioc/R/library/BH/include/boost/uuid/random_generator.hpp:17,
> >>>
> >>> So could it be an issue with the configure script?
> >>>
> >>>
> >>> On Mon, Mar 25, 2019 at 7:22 AM Samuela Pollack <
> >>> spollack using jimmy.harvard.edu <mailto:spollack using jimmy.harvard.edu>>
> >>> wrote:
> >>>
> >>> > Dear Bioconductor,
> >>> >
> >>> > The devel version of package RBGL is flunking build.
> >>> >
> >>> > This package has been modified to include header
> files in the
> >>> CRAN
> >>> > package 'BH' instead of using a local tarball of the
> header
> >>> files. We
> >>> > consider this an improvement because the 'BH'
> maintainers
> >>> update their
> >>> > package every time a new version of boost is
> released, but
> >>> rebuilding
> >>> > the included tarball is unreliable.
> >>> >
> >>> > Is it possible to request inclusion of a CRAN package
> >>> dependency in a
> >>> > Bioconductor package? If not, how would Bioconductor
> recommend
> >>> we handle
> >>> > this?
> >>> >
> >>> > (Full disclosure: the BH package has all the header
> files for
> >>> all of
> >>> > boost. This is a lot more disk space then we need,
> because we
> >>> only need
> >>> > the BGL.)
> >>> >
> >>> > thanks,
> >>> >
> >>> > - Sam
> >>> >
> >>> >
> >>> >
> >>> > On 3/22/19 7:28 AM, Morgan, Martin wrote:
> >>> > > External Email - Use Caution
> >>> > >
> >>> > > Thanks for the explanation and exemplary detective
> work. Will
> >>> you push
> >>> > these changes to the release and devel branches of
> RBGL? I've
> >>> given you
> >>> > permissions... Martin
> >>> > >
> >>> > > On 3/22/19, 5:15 AM, "Samuela Pollack" <
> >>> spollack using jimmy.harvard.edu <mailto:spollack using jimmy.harvard.edu>>
> >>> > wrote:
> >>> > >
> >>> > > We have a temporary fix which we believe will
> alleviate
> >>> the
> >>> > difficulty.
> >>> > >
> >>> > > The only routine in RBGL that does not
> compile under the
> >>> LLVM-9.0
> >>> > system
> >>> > > is the routine that implements betweenness
> connectivity
> >>> clustering.
> >>> > This
> >>> > > seems to be a rarely-used routine, so we have
> >>> temporarily removed it
> >>> > > from RBGL and put in a message explaining how
> users may
> >>> replace it
> >>> > easily.
> >>> > >
> >>> > > I have contacted Professor Jeremy Siek at in
> Bloomington
> >>> to discuss
> >>> > how
> >>> > > best to proceed. It is possible this will
> have to be
> >>> fixed in BGL,
> >>> > > probably not in time for boost 1.70.
> >>> > >
> >>> > > For clarity: the incompatibility is not in
> clang. The
> >>> > incompatibility is
> >>> > > in the llvm c++ standard library. Mac users
> who build
> >>> with clang
> >>> > will be
> >>> > > fine, as long as they don't link in the llvm
> C++ stdlib,
> >>> which most
> >>> > > wouldn't think to do and Apple does not
> encourage.
> >>> > >
> >>> > > We hope this will be sufficient for now.
> >>> > >
> >>> > > - Sam
> >>> > >
> >>> > >
> >>> > > On 3/22/19 4:18 AM, Morgan, Martin wrote:
> >>> > > > External Email - Use Caution
> >>> > > >
> >>> > > > What's the status for RBGL?
> >>> > > >
> >>> > > > Thanks, Martin
> >>> > > >
> >>> > > > On 3/22/19, 3:57 AM, "Prof Brian Ripley" <
> >>> ripley using stats.ox.ac.uk <mailto:ripley using stats.ox.ac.uk>>
> >>> > wrote:
> >>> > > >
> >>> > > > clang 8.0.0 is now released, and these
> fail there
> >>> too (and
> >>> > break about
> >>> > > > 50 CRAN packages which depend on them).
> >>> > > >
> >>> > > > Reminder: this is with clang's native
> libc++, as
> >>> documented
> >>> > at
> >>> > > >
> >>> >
> >>>
> https://www.stats.ox.ac.uk/pub/bdr/Rconfig/r-devel-linux-x86_64-fedora-clang
> >>> > > >
> >>> > > > We really need fixes in both 3.8 and 3.9.
> >>> > > >
> >>> > > > BDR
> >>> > > >
> >>> > > > On 28/02/2019 18:52, Prof Brian Ripley
> wrote:
> >>> > > > > These packages fail to install with
> clang
> >>> 8.0.0rc3, which
> >>> > is supposed to
> >>> > > > > be near-final (it is overdue for
> release).
> >>> (AFAIR they
> >>> > did install with
> >>> > > > > rc1.) In both cases the problems
> are with
> >>> Boost.
> >>> > > > >
> >>> > > > > RBGL 1.95.1
> >>> > > > >
> >>> > > > > In file included from bbc.cpp:1:
> >>> > > > > In file included from ./RBGL.hpp:7:
> >>> > > > > In file included from
> >>> > /usr/local/clang8/bin/../include/c++/v1/iostream:38:
> >>> > > > > In file included from
> >>> > /usr/local/clang8/bin/../include/c++/v1/ios:216:
> >>> > > > > In file included from
> >>> > /usr/local/clang8/bin/../include/c++/v1/__locale:15:
> >>> > > > > In file included from
> >>> > /usr/local/clang8/bin/../include/c++/v1/string:505:
> >>> > > > > In file included from
> >>> > > > >
> >>> /usr/local/clang8/bin/../include/c++/v1/string_view:176:
> >>> > > > > In file included from
> >>> > /usr/local/clang8/bin/../include/c++/v1/__string:57:
> >>> > > > >
> >>> /usr/local/clang8/bin/../include/c++/v1/algorithm:2494:5:
> >>> > error:
> >>> > > > > static_assert
> >>> > > > > failed due to requirement
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> '__is_forward_iterator<boost::detail::undirected_edge_iter<std::__1::__list_iterator<boost::list_edge<unsigned
> >>> > > > >
> >>> > > > > long,
> >>> boost::property<boost::edge_weight_t, double,
> >>> > > > >
> >>> boost::property<boost::edge_centrality_t, double,
> >>> > > > > boost::no_property> > >,
> >>> > > > > void *>,
> >>> > boost::detail::edge_desc_impl<boost::undirected_tag,
> >>> > > > > unsigned
> >>> > > > > long>, long> >::value'
> "std::max_element
> >>> requires a
> >>> > ForwardIterator"
> >>> > > > >
> >>> >
> static_assert(__is_forward_iterator<_ForwardIterator>::value,
> >>> > > > > ^
> >>> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >>> > > > >
> >>> >
> rbgl_trimmed_boost_1_61_0/boost/graph/bc_clustering.hpp:132:26:
> >>> note: in
> >>> > > > > instantiation of function
> template
> >>> specialization
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> 'std::__1::max_element<boost::detail::undirected_edge_iter<std::__1::__list_iterator<boost::list_edge<unsigned
> >>> > > > >
> >>> > > > > long,
> >>> boost::property<boost::edge_weight_t, double,
> >>> > > > >
> >>> boost::property<boost::edge_centrality_t, double,
> >>> > > > > boost::no_property> > >,
> >>> > > > > void *>,
> >>> > boost::detail::edge_desc_impl<boost::undirected_tag,
> >>> > > > > unsigned
> >>> > > > > long>, long>,
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> boost::indirect_cmp<boost::adj_list_edge_property_map<boost::undirected_tag,
> >>> > > > >
> >>> > > > > double, double &, unsigned long,
> >>> > > > > boost::property<boost::edge_weight_t,
> >>> > > > > double,
> >>> boost::property<boost::edge_centrality_t,
> >>> > double,
> >>> > > > > boost::no_property> >,
> >>> boost::edge_centrality_t>,
> >>> > > > > std::__1::less<double> >
> >>> > > > > >' requested here
> >>> > > > > edge_descriptor e =
> >>> *max_element(edges_iters.first,
> >>> > > > > edges_iters.seco...
> >>> > > > >
> >>> >
> rbgl_trimmed_boost_1_61_0/boost/graph/bc_clustering.hpp:146:3:
> >>> note: in
> >>> > > > > instantiation of function
> template
> >>> specialization
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> 'boost::betweenness_centrality_clustering<boost::adjacency_list<boost::vecS,
> >>> > > > >
> >>> > > > > boost::vecS, boost::undirectedS,
> >>> > > > > boost::property<boost::vertex_index_t,
> >>> > > > > int,
> >>> boost::property<boost::vertex_centrality_t,
> >>> > double,
> >>> > > > > boost::no_property> >,
> >>> > boost::property<boost::edge_weight_t, double,
> >>> > > > >
> >>> boost::property<boost::edge_centrality_t, double,
> >>> > > > > boost::no_property> >,
> >>> > > > > boost::no_property,
> boost::listS>,
> >>> > clustering_threshold,
> >>> > > > >
> >>> >
> boost::adj_list_edge_property_map<boost::undirected_tag, double,
> >>> > > > > double &,
> >>> > > > > unsigned long,
> >>> > boost::property<boost::edge_weight_t, double,
> >>> > > > >
> >>> boost::property<boost::edge_centrality_t, double,
> >>> > > > > boost::no_property> >,
> >>> > > > > boost::edge_centrality_t>,
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> boost::vec_adj_list_vertex_id_map<boost::property<boost::vertex_index_t,
> >>> > > > > int,
> >>> boost::property<boost::vertex_centrality_t,
> >>> > double,
> >>> > > > > boost::no_property> >,
> unsigned long> >'
> >>> requested
> >>> > here
> >>> > > > >
> betweenness_centrality_clustering(g, done,
> >>> > edge_centrality,
> >>> > > > > ^
> >>> > > > > bbc.cpp:122:3: note: in instantiation of
> >>> function template
> >>> > specialization
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> 'boost::betweenness_centrality_clustering<boost::adjacency_list<boost::vecS,
> >>> > > > >
> >>> > > > > boost::vecS, boost::undirectedS,
> >>> > > > > boost::property<boost::vertex_index_t,
> >>> > > > > int,
> >>> boost::property<boost::vertex_centrality_t,
> >>> > double,
> >>> > > > > boost::no_property> >,
> >>> > boost::property<boost::edge_weight_t, double,
> >>> > > > >
> >>> boost::property<boost::edge_centrality_t, double,
> >>> > > > > boost::no_property> >,
> >>> > > > > boost::no_property,
> boost::listS>,
> >>> > clustering_threshold,
> >>> > > > >
> >>> >
> boost::adj_list_edge_property_map<boost::undirected_tag, double,
> >>> > > > > double &,
> >>> > > > > unsigned long,
> >>> > boost::property<boost::edge_weight_t, double,
> >>> > > > >
> >>> boost::property<boost::edge_centrality_t, double,
> >>> > > > > boost::no_property> >,
> >>> > > > > boost::edge_centrality_t> >'
> requested
> >>> here
> >>> > > > >
> >>> betweenness_centrality_clustering(g,
> >>> > > > > ^
> >>> > > > >
> >>> > > > > mzR 2.17.1
> >>> > > > >
> >>> > > > > In file included from
> >>> > pwiz/data/identdata/Serializer_pepXML.cpp:25:
> >>> > > > > In file included from
> >>> > pwiz/data/identdata/Serializer_pepXML.hpp:27:
> >>> > > > > In file included from
> >>> pwiz/data/identdata/IdentData.hpp:29:
> >>> > > > > In file included from
> >>> ./pwiz/utility/misc/Exception.hpp:29:
> >>> > > > > In file included from
> >>> > /usr/local/clang8/bin/../include/c++/v1/string:505:
> >>> > > > > In file included from
> >>> > > > >
> >>> /usr/local/clang8/bin/../include/c++/v1/string_view:176:
> >>> > > > > In file included from
> >>> > /usr/local/clang8/bin/../include/c++/v1/__string:57:
> >>> > > > >
> >>> /usr/local/clang8/bin/../include/c++/v1/algorithm:2428:5:
> >>> > error:
> >>> > > > > static_assert
> >>> > > > > failed due to requirement
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> '__is_forward_iterator<boost::iterators::transform_iterator<pwiz::identdata::(anonymous
> >>> > > > >
> >>> > > > >
> namespace)::EnzymePtr_specificity,
> >>> > std::__1::__wrap_iter<const
> >>> > > > >
> >>> boost::shared_ptr<pwiz::identdata::Enzyme> *>,
> >>> > > > > boost::iterators::use_default,
> >>> > boost::iterators::use_default>
> >>> > > > > >::value'
> >>> > > > > "std::min_element requires a
> >>> ForwardIterator"
> >>> > > > >
> >>> >
> static_assert(__is_forward_iterator<_ForwardIterator>::value,
> >>> > > > > ^
> >>> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >>> > > > >
> >>> /usr/local/clang8/bin/../include/c++/v1/algorithm:2445:19:
> >>> > note: in
> >>> > > > > instantiation of function
> template
> >>> specialization
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> 'std::__1::min_element<boost::iterators::transform_iterator<pwiz::identdata::(anonymous
> >>> > > > >
> >>> > > > >
> namespace)::EnzymePtr_specificity,
> >>> > std::__1::__wrap_iter<const
> >>> > > > >
> >>> boost::shared_ptr<pwiz::identdata::Enzyme> *>,
> >>> > > > > boost::iterators::use_default,
> >>> > boost::iterators::use_default>,
> >>> > > > > std::__1::__less<int, int> >'
> requested
> >>> here
> >>> > > > > return
> _VSTD::min_element(__first, __last,
> >>> > > > > ^
> >>> > > > >
> >>> ./boost/boost/range/algorithm/min_element.hpp:44:17: note:
> >>> > in
> >>> > > > > instantiation of
> >>> > > > > function template specialization
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> 'std::__1::min_element<boost::iterators::transform_iterator<pwiz::identdata::(anonymous
> >>> > > > >
> >>> > > > >
> namespace)::EnzymePtr_specificity,
> >>> > std::__1::__wrap_iter<const
> >>> > > > >
> >>> boost::shared_ptr<pwiz::identdata::Enzyme> *>,
> >>> > > > > boost::iterators::use_default,
> >>> > boost::iterators::use_default> >'
> >>> > > > > requested
> >>> > > > > here
> >>> > > > > return
> std::min_element(boost::begin(rng),
> >>> > boost::end(rng));
> >>> > > > >
> >>> > > > >
> >>> > > > >
> >>> > > > >
> >>> pwiz/data/identdata/Serializer_pepXML.cpp:418:41: note: in
> >>> > instantiation of
> >>> > > > > function template specialization
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> 'boost::range::min_element<boost::range_detail::transformed_range<pwiz::identdata::(anonymous
> >>> > > > >
> >>> > > > >
> namespace)::EnzymePtr_specificity, const
> >>> > > > >
> >>> >
> std::__1::vector<boost::shared_ptr<pwiz::identdata::Enzyme>,
> >>> > > > >
> >>> >
> std::__1::allocator<boost::shared_ptr<pwiz::identdata::Enzyme> >
> >>> > > > > > > >'
> >>> > > > > requested here
> >>> > > > > int minSpecificity =
> >>> > *boost::range::min_element(sip.enzymes.enzymes
> >>> > > > > ...
> >>> > > > >
> ^
> >>> > > > > In file included from
> >>> > pwiz/data/identdata/Serializer_pepXML.cpp:25:
> >>> > > > > In file included from
> >>> > pwiz/data/identdata/Serializer_pepXML.hpp:27:
> >>> > > > > In file included from
> >>> pwiz/data/identdata/IdentData.hpp:29:
> >>> > > > > In file included from
> >>> ./pwiz/utility/misc/Exception.hpp:29:
> >>> > > > > In file included from
> >>> > /usr/local/clang8/bin/../include/c++/v1/string:505:
> >>> > > > > In file included from
> >>> > > > >
> >>> /usr/local/clang8/bin/../include/c++/v1/string_view:176:
> >>> > > > > In file included from
> >>> > /usr/local/clang8/bin/../include/c++/v1/__string:57:
> >>> > > > >
> >>> /usr/local/clang8/bin/../include/c++/v1/algorithm:2494:5:
> >>> > error:
> >>> > > > > static_assert
> >>> > > > > failed due to requirement
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> '__is_forward_iterator<boost::iterators::transform_iterator<pwiz::identdata::(anonymous
> >>> > > > >
> >>> > > > >
> namespace)::EnzymePtr_missedCleavages,
> >>> > std::__1::__wrap_iter<const
> >>> > > > >
> >>> boost::shared_ptr<pwiz::identdata::Enzyme> *>,
> >>> > > > > boost::iterators::use_default,
> >>> > boost::iterators::use_default>
> >>> > > > > >::value'
> >>> > > > > "std::max_element requires a
> >>> ForwardIterator"
> >>> > > > >
> >>> >
> static_assert(__is_forward_iterator<_ForwardIterator>::value,
> >>> > > > > ^
> >>> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >>> > > > >
> >>> /usr/local/clang8/bin/../include/c++/v1/algorithm:2512:19:
> >>> > note: in
> >>> > > > > instantiation of function
> template
> >>> specialization
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> 'std::__1::max_element<boost::iterators::transform_iterator<pwiz::identdata::(anonymous
> >>> > > > >
> >>> > > > >
> namespace)::EnzymePtr_missedCleavages,
> >>> > std::__1::__wrap_iter<const
> >>> > > > >
> >>> boost::shared_ptr<pwiz::identdata::Enzyme> *>,
> >>> > > > > boost::iterators::use_default,
> >>> > boost::iterators::use_default>,
> >>> > > > > std::__1::__less<int, int> >'
> requested
> >>> here
> >>> > > > > return
> _VSTD::max_element(__first, __last,
> >>> > > > > ^
> >>> > > > >
> >>> ./boost/boost/range/algorithm/max_element.hpp:44:17: note:
> >>> > in
> >>> > > > > instantiation of
> >>> > > > > function template specialization
> >>> > > > >
> >>> > > > >
> >>> >
> >>>
> 'std::__1::max_element<boost::iterators::transform_iterator<pwiz::identdata::(anonymous
> >>> > > > >
> >>> > > > >
> namespace)::EnzymePtr_missedCleavages,
> >>> > std::__1::__wrap_iter<const
> >>> > > > >
> >>> boost::shared_ptr<pwiz::identdata::Enzyme> *>,
> >>> > > > > boost::iterators::use_default,
> >>> > boost::iterators::use_default> >'
> >>> > > > > requested
> >>> > > > > here
> >>> > > > > return
> std::max_element(boost::begin(rng),
> >>> > boost::end(rng));
> >>> > > > > ...
> >>> > > > >
> >>> > > >
> >>> > > >
> >>> > > > --
> >>> > > > Brian D. Ripley,
> >>> ripley using stats.ox.ac.uk <mailto:ripley using stats.ox.ac.uk>
> >>> > > > Emeritus Professor of Applied Statistics,
> >>> University of
> >>> > Oxford
> >>> > > >
> >>> > > >
> >>> > > >
> >>> > > >
> >>> > > > This email message may contain legally
> privileged
> >>> and/or
> >>> > confidential information. If you are not the intended
> >>> recipient(s), or the
> >>> > employee or agent responsible for the delivery of
> this message
> >>> to the
> >>> > intended recipient(s), you are hereby notified that any
> >>> disclosure,
> >>> > copying, distribution, or use of this email message is
> >>> prohibited. If you
> >>> > have received this message in error, please notify
> the sender
> >>> immediately
> >>> > by e-mail and delete this email message from your
> computer.
> >>> Thank you.
> >>> > >
> >>> > >
> >>> > >
> >>> > >
> >>> > > This email message may contain legally privileged
> and/or
> >>> confidential
> >>> > information. If you are not the intended
> recipient(s), or the
> >>> employee or
> >>> > agent responsible for the delivery of this message
> to the
> >>> intended
> >>> > recipient(s), you are hereby notified that any
> disclosure,
> >>> copying,
> >>> > distribution, or use of this email message is
> prohibited. If
> >>> you have
> >>> > received this message in error, please notify the sender
> >>> immediately by
> >>> > e-mail and delete this email message from your
> computer. Thank
> >>> you.
> >>> >
> >>>
> >>> --
> >>> The information in this e-mail is intended only for the
> >>> ...{{dropped:18}}
> >>>
> >>> _______________________________________________
> >>> Bioc-devel using r-project.org <mailto:Bioc-devel using r-project.org>
> mailing list
> >>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
> >>>
> >>>
> >>> _______________________________________________
> >>> Bioc-devel using r-project.org <mailto:Bioc-devel using r-project.org>
> mailing list
> >>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
> >>>
> >>
> >
>
> _______________________________________________
> Bioc-devel using r-project.org <mailto:Bioc-devel using r-project.org> mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>
More information about the Bioc-devel
mailing list