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,