Closed sjackman closed 10 years ago
$ curl http://www.cpan.org/modules/02packages.details.txt.gz |gzcat |grep Bio:: |grep -o '1.6.92.' |sort |uniq -c
821 1.6.922
3 1.6.923
$ curl http://www.cpan.org/modules/02packages.details.txt.gz |gzcat |grep Bio:: |grep '1.6.923'
Bio::DB::SeqFeature::Store::LoadHelper 1.10 C/CJ/CJFIELDS/BioPerl-1.6.923.tar.gz
Bio::Root::Build 1.006923 C/CJ/CJFIELDS/BioPerl-1.6.923.tar.gz
Bio::Root::Version 1.006923 C/CJ/CJFIELDS/BioPerl-1.6.923.tar.gz
This issue was originally reported at https://github.com/miyagawa/cpanmetadb-perl/issues/3
@cjfields Ping
On Tue, Feb 25, 2014 at 02:34:16PM -0800, Shaun Jackman wrote:
Why do these two packages of the same distribution file return different versions?
➜ ~ curl http://cpanmetadb.plackperl.org/v1.0/package/Bio::Root::Version --- distfile: C/CJ/CJFIELDS/BioPerl-1.6.923.tar.gz version: 1.006923 ➜ ~ curl http://cpanmetadb.plackperl.org/v1.0/package/Bio::Perl --- distfile: C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz version: 1.006922
See http://search.cpan.org/~cjfields/BioPerl-1.6.923/Bio/Perl.pm http://search.cpan.org/~cjfields/BioPerl-1.6.923/Bio/Root/Version.pm
Bio::Perl in the 1.6.923 release did not get indexed. Without access to the PAUSE logs (or the email receipt that the author would have received after performing the upload) I cannot tell you why precisely, but I can tell you that specifying the version number like that is going to be problematic. Versions are extracted by static analysis, and all the information necessary to resolve the version must be on one line, which is not the case in this module.
Karen Etheridge notifications@github.com writes:
Bio::Perl in the 1.6.923 release did not get indexed. Without access to the PAUSE logs (or the email receipt that the author would have received after performing the upload) I cannot tell you why precisely, but I can tell you that specifying the version number like that is going to be problematic. Versions are extracted by static analysis, and all the information necessary to resolve the version must be on one line, which is not the case in this module.
Here is the mail that was sent to cjfields from pause, email addresses are edited, large, boring block is marked with an ellipsis. The whole thing would be ~5800 lines.
From: PAUSE <upload@pause.perl.org>
Subject: Failed: PAUSE indexer report CJFIELDS/BioPerl-1.6.923.tar.gz
To: cjfields..., andreas.koenig...
Date: Wed, 18 Dec 2013 05:26:49 +0000
The following report has been written by the PAUSE namespace indexer.
Please contact modules@perl.org if there are any open questions.
User: CJFIELDS (Christopher Fields)
Distribution file: BioPerl-1.6.923.tar.gz
Number of files: 2124
*.pm files: 822
README: BioPerl-1.6.923/README
META-File: BioPerl-1.6.923/META.json
META-Parser: Parse::CPAN::Meta 1.4404
META-driven index: no
Timestamp of file: Wed Dec 18 05:15:50 2013 UTC
Time of this run: Wed Dec 18 05:26:49 2013 UTC
Status of this distro: Version parsing problem
==============================================
The following packages (grouped by status) have been found in the distro:
Status: Version parsing problem
===============================
module: Bio::Root::RootI
version: undef
in file: BioPerl-1.6.923/Bio/Root/RootI.pm
status: The PAUSE indexer was not able to parse the following line
in that file: C< if ($Bio::Root::Version::VERSION >=
$version) { > Note: the indexer is running in a Safe
compartement and cannot provide the full functionality of
perl in the VERSION line. It is trying hard, but sometime
it fails. As a workaround, please consider writing a
META.yml that contains a 'provides' attribute or contact
the CPAN admins to investigate (yet another) workaround
against "Safe" limitations.)
Status: Decreasing version number
=================================
module: Bio::Align::AlignI
version: undef
in file: BioPerl-1.6.923/Bio/Align/AlignI.pm
status: Not indexed because Bio/Align/AlignI.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::Align::DNAStatistics
version: undef
in file: BioPerl-1.6.923/Bio/Align/DNAStatistics.pm
status: Not indexed because Bio/Align/DNAStatistics.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::Align::Graphics
version: undef
in file: BioPerl-1.6.923/Bio/Align/Graphics.pm
status: Not indexed because Bio/Align/Graphics.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::Align::PairwiseStatistics
version: undef
in file: BioPerl-1.6.923/Bio/Align/PairwiseStatistics.pm
status: Not indexed because Bio/Align/PairwiseStatistics.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::Align::ProteinStatistics
version: undef
in file: BioPerl-1.6.923/Bio/Align/ProteinStatistics.pm
status: Not indexed because Bio/Align/ProteinStatistics.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::Align::StatisticsI
version: undef
in file: BioPerl-1.6.923/Bio/Align/StatisticsI.pm
status: Not indexed because Bio/Align/StatisticsI.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::Align::Utilities
version: undef
in file: BioPerl-1.6.923/Bio/Align/Utilities.pm
status: Not indexed because Bio/Align/Utilities.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO.pm
status: Not indexed because Bio/AlignIO.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::Handler::GenericAlignHandler
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/Handler/GenericAlignHandler.pm
status: Not indexed because
Bio/AlignIO/Handler/GenericAlignHandler.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::arp
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/arp.pm
status: Not indexed because Bio/AlignIO/arp.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::bl2seq
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/bl2seq.pm
status: Not indexed because Bio/AlignIO/bl2seq.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::clustalw
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/clustalw.pm
status: Not indexed because Bio/AlignIO/clustalw.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::emboss
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/emboss.pm
status: Not indexed because Bio/AlignIO/emboss.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::fasta
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/fasta.pm
status: Not indexed because Bio/AlignIO/fasta.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::largemultifasta
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/largemultifasta.pm
status: Not indexed because Bio/AlignIO/largemultifasta.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::maf
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/maf.pm
status: Not indexed because Bio/AlignIO/maf.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::mase
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/mase.pm
status: Not indexed because Bio/AlignIO/mase.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::mega
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/mega.pm
status: Not indexed because Bio/AlignIO/mega.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::meme
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/meme.pm
status: Not indexed because Bio/AlignIO/meme.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::metafasta
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/metafasta.pm
status: Not indexed because Bio/AlignIO/metafasta.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::msf
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/msf.pm
status: Not indexed because Bio/AlignIO/msf.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::nexml
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/nexml.pm
status: Not indexed because Bio/AlignIO/nexml.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::nexus
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/nexus.pm
status: Not indexed because Bio/AlignIO/nexus.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::pfam
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/pfam.pm
status: Not indexed because Bio/AlignIO/pfam.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::phylip
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/phylip.pm
status: Not indexed because Bio/AlignIO/phylip.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::po
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/po.pm
status: Not indexed because Bio/AlignIO/po.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::proda
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/proda.pm
status: Not indexed because Bio/AlignIO/proda.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::prodom
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/prodom.pm
status: Not indexed because Bio/AlignIO/prodom.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::psi
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/psi.pm
status: Not indexed because Bio/AlignIO/psi.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::selex
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/selex.pm
status: Not indexed because Bio/AlignIO/selex.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::stockholm
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/stockholm.pm
status: Not indexed because Bio/AlignIO/stockholm.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AlignIO::xmfa
version: undef
in file: BioPerl-1.6.923/Bio/AlignIO/xmfa.pm
status: Not indexed because Bio/AlignIO/xmfa.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AnalysisI
version: undef
in file: BioPerl-1.6.923/Bio/AnalysisI.pm
status: Not indexed because Bio/AnalysisI.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AnalysisI::JobI
version: undef
in file: BioPerl-1.6.923/Bio/AnalysisI.pm
status: Not indexed because Bio/AnalysisI.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AnalysisParserI
version: undef
in file: BioPerl-1.6.923/Bio/AnalysisParserI.pm
status: Not indexed because Bio/AnalysisParserI.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AnalysisResultI
version: undef
in file: BioPerl-1.6.923/Bio/AnalysisResultI.pm
status: Not indexed because Bio/AnalysisResultI.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::AnnotatableI
version: undef
in file: BioPerl-1.6.923/Bio/AnnotatableI.pm
status: Not indexed because Bio/AnnotatableI.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::Annotation::AnnotationFactory
version: undef
in file: BioPerl-1.6.923/Bio/Annotation/AnnotationFactory.pm
status: Not indexed because Bio/Annotation/AnnotationFactory.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::Annotation::Collection
version: undef
in file: BioPerl-1.6.923/Bio/Annotation/Collection.pm
status: Not indexed because Bio/Annotation/Collection.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::Annotation::Comment
version: undef
in file: BioPerl-1.6.923/Bio/Annotation/Comment.pm
status: Not indexed because Bio/Annotation/Comment.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::Annotation::DBLink
version: undef
in file: BioPerl-1.6.923/Bio/Annotation/DBLink.pm
status: Not indexed because Bio/Annotation/DBLink.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::Annotation::OntologyTerm
version: undef
in file: BioPerl-1.6.923/Bio/Annotation/OntologyTerm.pm
status: Not indexed because Bio/Annotation/OntologyTerm.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::Annotation::Reference
version: undef
in file: BioPerl-1.6.923/Bio/Annotation/Reference.pm
status: Not indexed because Bio/Annotation/Reference.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
[...]
module: Bio::Variation::VariantI
version: undef
in file: BioPerl-1.6.923/Bio/Variation/VariantI.pm
status: Not indexed because Bio/Variation/VariantI.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: Bio::WebAgent
version: undef
in file: BioPerl-1.6.923/Bio/WebAgent.pm
status: Not indexed because Bio/WebAgent.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
module: FeatureStore
version: undef
in file: BioPerl-1.6.923/Bio/DB/GFF/Adaptor/berkeleydb.pm
status: Not indexed because Bio/DB/GFF/Adaptor/berkeleydb.pm in
C/CJ/CJFIELDS/BioPerl-1.6.922.tar.gz has a higher version
number (1.006922)
Status: Successfully indexed
============================
module: Bio::DB::SeqFeature::Store::LoadHelper
version: 1.10
in file: BioPerl-1.6.923/Bio/DB/SeqFeature/Store/LoadHelper.pm
status: indexed
module: Bio::Root::Build
version: 1.006923
in file: BioPerl-1.6.923/Bio/Root/Build.pm
status: indexed
module: Bio::Root::Version
version: 1.006923
in file: BioPerl-1.6.923/Bio/Root/Version.pm
status: indexed
module: BioPerl
version: undef
in file: BioPerl-1.6.923/BioPerl.pm
status: indexed
module: Deobfuscator
version: 0.000003
in file: BioPerl-1.6.923/doc/Deobfuscator/lib/Deobfuscator.pm
status: indexed
module: TestInterface
version: undef
in file: BioPerl-1.6.923/examples/root/lib/TestInterface.pm
status: indexed
module: TestObject
version: undef
in file: BioPerl-1.6.923/examples/root/lib/TestObject.pm
status: indexed
module: required
version: undef
in file: BioPerl-1.6.923/Bio/Nexml/Factory.pm
status: indexed
__END__
@cjfields Would you be able to respond to Karen's (@andk) comment above?
The same issue was also raised on rt.cpan.org's BioPerl queue: https://rt.cpan.org/Ticket/Display.html?id=92064
@sjackman pings on my account are going to a different email that I check irregularly (in fact, @tsibley added a comment to RT that came up).
The main problem is the hacky way that Bioperl assigns a VERSION to each of the Bio::Root::RootI-based classes through a have using a BEGIN block. This worked until fairly recently. I can attempt a re-indexing, but the fact is that the hack is still there, and it should probably be fixed at either the META level or by an explicit version in each of the modules.
I'll try to have a look at it this weekend, can't promise much. Fulltime job and all.
Thanks, Chris.
I don't believe this a bug in PAUSE, so this issue should be closed. The BioPerl ticket in rt.cpan.org, mentioned above, is the appropriate forum.
This issue is beyond my PERL fu. Could you please follow up on the appropriate forum?
@tsibley the official bug tracker is not RT but github (e.g. this tracker). We're working on consolidating the various teachers into one place.
re: versioning issues: the main problem we currently appear to have is a legacy hacky method for assigning versions that needs to be replaced. Secondary but related, a few modules arbitrarily have a different version number that also causes problems. So, it will prob require some meta data fiddling to get right.
Sorry, I meant the Issues tracker for Bioperl on github. Happens when I reply by phone :p
Posted on bioperl tracker since the problem is really there:
https://github.com/bioperl/bioperl-live/issues/87
Should this ticket be closed out?
Looks like closing on the pause tracker is being called for. Thanks, everybody!
Why do these two packages of the same distribution file return different versions?
See http://search.cpan.org/~cjfields/BioPerl-1.6.923/Bio/Perl.pm http://search.cpan.org/~cjfields/BioPerl-1.6.923/Bio/Root/Version.pm