mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
Store conflicts, provides and replaces in the DB
Package conflicts, provides and replaces are now stored in the new PackageRelations table. The gendummydata script generates test entries for these relations. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
This commit is contained in:
parent
34453d3295
commit
92812050a0
5 changed files with 122 additions and 13 deletions
|
@ -155,7 +155,10 @@ if ($uid):
|
|||
'makedepends' => array(),
|
||||
'checkdepends' => array(),
|
||||
'optdepends' => array(),
|
||||
'source' => array()
|
||||
'source' => array(),
|
||||
'conflicts' => array(),
|
||||
'provides' => array(),
|
||||
'replaces' => array()
|
||||
);
|
||||
/* Fall-through case. */
|
||||
case 'epoch':
|
||||
|
@ -171,6 +174,9 @@ if ($uid):
|
|||
case 'makedepends':
|
||||
case 'checkdepends':
|
||||
case 'optdepends':
|
||||
case 'conflicts':
|
||||
case 'provides':
|
||||
case 'replaces':
|
||||
$section_info[$key][] = $value;
|
||||
break;
|
||||
}
|
||||
|
@ -190,7 +196,7 @@ if ($uid):
|
|||
if (!isset($pkgbase_info['pkgbase'])) {
|
||||
$pkgbase_info['pkgbase'] = $pkgbase_info['pkgname'];
|
||||
}
|
||||
foreach (array('source', 'depends', 'makedepends', 'checkdepends', 'optdepends') as $array_opt) {
|
||||
foreach (array('source', 'depends', 'makedepends', 'checkdepends', 'optdepends', 'conflicts', 'provides', 'replaces') as $array_opt) {
|
||||
if (empty($pkgbase_info[$array_opt])) {
|
||||
$pkgbase_info[$array_opt] = array();
|
||||
} else {
|
||||
|
@ -359,6 +365,14 @@ if ($uid):
|
|||
}
|
||||
}
|
||||
|
||||
foreach (array('conflicts', 'provides', 'replaces') as $reltype) {
|
||||
foreach ($pi[$reltype] as $rel) {
|
||||
$relpkgname = preg_replace("/(<|=|>).*/", "", $rel);
|
||||
$relcondition = str_replace($relpkgname, "", $rel);
|
||||
pkg_add_rel($pkgid, $reltype, $relpkgname, $relcondition);
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($pi['source'] as $src) {
|
||||
pkg_add_src($pkgid, $src);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue