[Debian-med-packaging] Bug#921495: libbio-perl-perl: Package not upgradable, file conflicts.

Carnë Draug carandraug+dev at gmail.com
Wed Feb 6 13:18:26 GMT 2019


On Wed, 6 Feb 2019 at 10:57, Andreas Tille <tille at debian.org> wrote:
>
> Control: tags -1 help
>
> Hi David,
>
> as far as I know you are involved into bioperl and might be the most
> competent person for this problem.  I've found the following competing
> filed in bioperl and bioperl-run:
>
>
> bioperl-run(master) $ find . -name "Analysis.pm" -o -name "AnalysisFactory.pm"
> ./lib/Bio/Tools/Run/AnalysisFactory.pm
> ./lib/Bio/Tools/Run/Analysis.pm
>
> bioperl(master) $ find . -name "Analysis.pm" -o -name "AnalysisFactory.pm"
> ./lib/Bio/Tools/Run/AnalysisFactory.pm
> ./lib/Bio/Tools/Run/Analysis.pm
>
>
> Any suggestion how to deal with this sensibly?  I would expect some
> soonish release of bioperl-run which does not contain these files any
> more, but you might know better.

This is by design and is mentioned on the release Changes file:

    * The following modules are new in the BioPerl distribution.  They
      have been previously released in the BioPerl-Run distribution.
      This will enable smaller distributions that provide a
      Bio::Tool::Run interface, to be only dependent on the BioPerl
      distribution instead of the whole (very large) BioPerl-Run:

          Bio::Tools::Run::Analysis
          Bio::Tools::Run::AnalysisFactory
          Bio::Tools::Run::Phylo::PhyloBase
          Bio::Tools::Run::WrapperBase
          Bio::Tools::Run::WrapperBase::CommandExts

I guess the fix for this is to have in bioperl's d/control:

    Breaks: libbio-perl-run-perl (<< 1.7.3)

It would be nice if upstream did a new release of bioperl-run soon
without those modules.  I have prepared the upstream repository and
have requested them to make a release but I don't know when it will
happen.

Alternatively, you could remove those files in Debian and have a
bioperl-run version 1.7.2-4.  This might be better if upstream takes a
long time to make the paired bioperl-run release.  The reason why I
think this might be better is related to the reason why the modules
changed distribution which comes with a bit of history.

BioPerl used to be a single distribution with a lot of modules.  It
was very difficult to maintain, install, and release.  So the plan is
to split into smaller distributions of related modules.  This is the
plan for the 1.7 series of BioPerl releases.

The first split was BioPerl-Run.  This included all the modules to to
run external programs which were among the most difficult to install
and test.  But with all of them in a single distribution, if you
wanted one of those modules, you still needed to install them all.
Then, smaller distributions were made out of BioPerl-Run such as
Bio-Tools-Phylo-PAML and Bio-Tools-Run-Alignment-Clustalw.  But these
were still dependent on BioPerl-Run because the abstract base classes
required by them.

In theory, someone should have made all the small distributions of
BioPerl-Run and leave it only with the abstract base classes.  In
practice, it's like no one in upstream cares about BioPerl-Run.  So
those classes were moved back to BioPerl which means that the
individual *-Run-* distributions can be installed without the whole
BioPerl-Run.



More information about the Debian-med-packaging mailing list