# argh, p is just the name of the package
if p in erasenamehelper:
p = erasenamehelper[p]
- print "erase", p
+ print "erase", p
runproblems = ts.run(runCallback, '')
if runproblems:
print runproblems
repo_matchvalue;
repo_reserve_ids;
repo_search;
+ repo_set_deleted;
repo_set_deparray;
repo_set_id;
repo_set_idarray;
repodata_add_poolstr_array;
repodata_chk2str;
repodata_create_stubs;
- repodata_delete;
- repodata_delete_uninternalized;
repodata_dir2str;
repodata_disable_paging;
repodata_empty;
repodata_set_checksum;
repodata_set_constant;
repodata_set_constantid;
+ repodata_set_deleted;
+ repodata_set_deleted_uninternalized;
repodata_set_id;
repodata_set_idarray;
repodata_set_location;
solvable_lookup_type;
solvable_lookup_void;
solvable_selfprovidedep;
+ solvable_set_deleted;
solvable_set_deparray;
solvable_set_id;
solvable_set_idarray;
}
void
+repo_set_deleted(Repo *repo, Id p, Id keyname)
+{
+ Repodata *data;
+ if (p >= 0)
+ {
+ Solvable *s = repo->pool->solvables + p;
+ switch (keyname)
+ {
+ case SOLVABLE_NAME:
+ s->name = 0;
+ return;
+ case SOLVABLE_ARCH:
+ s->arch = 0;
+ return;
+ case SOLVABLE_EVR:
+ s->evr = 0;
+ return;
+ case SOLVABLE_VENDOR:
+ s->vendor = 0;
+ return;
+ case RPM_RPMDBID:
+ if (repo->rpmdbid)
+ repo->rpmdbid[p] = 0;
+ return;
+ case SOLVABLE_PROVIDES:
+ s->provides = 0;
+ return;
+ case SOLVABLE_OBSOLETES:
+ s->obsoletes = 0;
+ return;
+ case SOLVABLE_CONFLICTS:
+ s->conflicts = 0;
+ return;
+ case SOLVABLE_REQUIRES:
+ s->requires = 0;
+ return;
+ case SOLVABLE_RECOMMENDS:
+ s->recommends = 0;
+ return;
+ case SOLVABLE_SUGGESTS:
+ s->suggests = 0;
+ return;
+ case SOLVABLE_SUPPLEMENTS:
+ s->supplements = 0;
+ case SOLVABLE_ENHANCES:
+ s->enhances = 0;
+ return;
+ default:
+ break;
+ }
+ }
+ data = repo_last_repodata(repo);
+ repodata_set_deleted(data, p, keyname);
+}
+
+void
repo_internalize(Repo *repo)
{
int i;
void repo_add_deparray(Repo *repo, Id p, Id keyname, Id dep, Id marker);
void repo_set_idarray(Repo *repo, Id p, Id keyname, Queue *q);
void repo_set_deparray(Repo *repo, Id p, Id keyname, Queue *q, Id marker);
+void repo_set_deleted(Repo *repo, Id p, Id keyname);
void repo_internalize(Repo *repo);
void repo_disable_paging(Repo *repo);
}
void
-repodata_delete_uninternalized(Repodata *data, Id solvid, Id keyname)
+repodata_set_deleted_uninternalized(Repodata *data, Id solvid, Id keyname)
{
Id *pp, *ap, **app;
app = repodata_get_attrp(data, solvid);
/* XXX: does not work correctly, needs fix in iterators! */
void
-repodata_delete(Repodata *data, Id solvid, Id keyname)
+repodata_set_deleted(Repodata *data, Id solvid, Id keyname)
{
Repokey key;
key.name = keyname;
void repodata_add_fixarray(Repodata *data, Id solvid, Id keyname, Id ghandle);
void repodata_add_flexarray(Repodata *data, Id solvid, Id keyname, Id ghandle);
-void repodata_delete(Repodata *data, Id solvid, Id keyname);
-void repodata_delete_uninternalized(Repodata *data, Id solvid, Id keyname);
+void repodata_set_deleted(Repodata *data, Id solvid, Id keyname);
+void repodata_set_deleted_uninternalized(Repodata *data, Id solvid, Id keyname);
/*
merge/swap attributes from one solvable to another
repo_set_deparray(s->repo, s - s->repo->pool->solvables, keyname, q, marker);
}
+void
+solvable_set_deleted(Solvable *s, Id keyname)
+{
+ repo_set_deleted(s->repo, s - s->repo->pool->solvables, keyname);
+}
void solvable_add_deparray(Solvable *s, Id keyname, Id dep, Id marker);
void solvable_set_idarray(Solvable *s, Id keyname, Queue *q);
void solvable_set_deparray(Solvable *s, Id keyname, Queue *q, Id marker);
+void solvable_set_deleted(Solvable *s, Id keyname);
int solvable_identical(Solvable *s1, Solvable *s2);
Id solvable_selfprovidedep(Solvable *s);