Skip Menu |

This queue is for tickets about the CPANDB CPAN distribution.

Report information
The Basics
Id: 63731
Status: open
Priority: 0/
Queue: CPANDB

People
Owner: Nobody in particular
Requestors: eternaleye [...] gmail.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: CPANDB only handles a single version of any given module or distribution
Date: Wed, 8 Dec 2010 01:50:47 -0800
To: bug-CPANDB [...] rt.cpan.org
From: Alex Elsayed <eternaleye [...] gmail.com>
I'm currently working on adding support for CPAN to the Paludis package manager by way of generating a repository of JSON files containing the information Paludis needs. CPANDB is almost entirely sufficient for this purpose, save for one thing: While CPANDB contains information on what distribution a given version of a module is in, it does *not* specify which release, nor does it support having more than one release of a distribution in the database. This is problematic, especially if someone wants to install an older version of a module. Is there any chance support could be added for specifying the version of a distribution a given version of a module is in and having multiple version of modules and distributions in the database? I think it could be done by changing the primary key constraint of the 'distribution' table from the distribution to the (distribution, version) tuple, change the primary key of the module table to the (module, version) tuple, and change the foreign keys in the other tables to match,
Subject: Re: [rt.cpan.org #63731] AutoReply: CPANDB only handles a single version of any given module or distribution
Date: Wed, 8 Dec 2010 02:06:08 -0800
To: bug-CPANDB [...] rt.cpan.org
From: Alex Elsayed <eternaleye [...] gmail.com>
Looking deeper into the relevant modules, I see that the relevant limitation is in CPAN::SQlite. I'll file a bug on that, and link to it here, so that if/when it is solved, CPANDB can use the new functionality.
Subject: Re: [rt.cpan.org #63731] AutoReply: CPANDB only handles a single version of any given module or distribution
Date: Wed, 8 Dec 2010 02:13:47 -0800
To: bug-CPANDB [...] rt.cpan.org
From: Alex Elsayed <eternaleye [...] gmail.com>
Subject: Re: [rt.cpan.org #63731] AutoReply: CPANDB only handles a single version of any given module or distribution
Date: Thu, 9 Dec 2010 10:43:22 +1100
To: bug-CPANDB [...] rt.cpan.org
From: Adam Kennedy <adamkennedybackup [...] gmail.com>
The single module part is intentional, because CPANDB is related to the underlying index. There was a plan to make a second "PAUSEDB" or sorts, which would contain information on everything in PAUSE. All versions across all releases by all authors, even those without permissions. But the current module is intentionally only using the latest. Adam K On 8 December 2010 21:06, Alex Elsayed via RT <bug-CPANDB@rt.cpan.org> wrote: Show quoted text
>       Queue: CPANDB >  Ticket <URL: http://rt.cpan.org/Ticket/Display.html?id=63731 > > > Looking deeper into the relevant modules, I see that the relevant > limitation is in CPAN::SQlite. I'll file a bug on that, and link to it > here, so that if/when it is solved, CPANDB can use the new > functionality. > >
Subject: Re: [rt.cpan.org #63731] CPANDB only handles a single version of any given module or distribution
Date: Thu, 9 Dec 2010 11:48:12 +1100
To: bug-CPANDB [...] rt.cpan.org
From: Adam Kennedy <adamkennedybackup [...] gmail.com>
CPANDB is based on the CPAN index, which only supports the most recent version. Further, the full backpan equivalent would mean that you couldn't always rely on CPAN mirrors. Dependencies on CPAN modules are always treated as "greater than" and installing the latest version if no current version is installed, is considered normal. Adam K On 8 December 2010 20:54, Alex Elsayed via RT <bug-CPANDB@rt.cpan.org> wrote: Show quoted text
> Wed Dec 08 04:54:59 2010: Request 63731 was acted upon. > Transaction: Ticket created by eternaleye@gmail.com >       Queue: CPANDB >     Subject: CPANDB only handles a single version of any given module or distribution >   Broken in: (no value) >    Severity: (no value) >       Owner: Nobody >  Requestors: eternaleye@gmail.com >      Status: new >  Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=63731 > > > > I'm currently working on adding support for CPAN to the Paludis > package manager by way of generating a repository of JSON files > containing the information Paludis needs. CPANDB is almost entirely > sufficient for this purpose, save for one thing: > > While CPANDB contains information on what distribution a given version > of a module is in, it does *not* specify which release, nor does it > support having more than one release of a distribution in the > database. This is problematic, especially if someone wants to install > an older version of a module. Is there any chance support could be > added for specifying the version of a distribution a given version of > a module is in and having multiple version of modules and > distributions in the database? > > I think it could be done by changing the primary key constraint of the > 'distribution' table from the distribution to the (distribution, > version) tuple, change the primary key of the module table to the > (module, version) tuple, and change the foreign keys in the other > tables to match, > >