Py_RETURN_NONE;
}
+static PyObject* Pakfire_sync(PakfireObject* self) {
+ int r = pakfire_sync(self->pakfire, NULL);
+ if (r) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ return NULL;
+ }
+
+ Py_RETURN_NONE;
+}
+
static struct PyMethodDef Pakfire_methods[] = {
{
"bind",
METH_NOARGS,
NULL,
},
+ {
+ "sync",
+ (PyCFunction)Pakfire_sync,
+ METH_NOARGS,
+ NULL,
+ },
{
"update",
(PyCFunction)Pakfire_update,
Py_RETURN_NONE;
}
-static PyObject* Request_distupgrade(RequestObject* self) {
- int r = pakfire_request_distupgrade(self->request);
+static PyObject* Request_sync(RequestObject* self) {
+ int r = pakfire_request_sync(self->request);
if (r) {
PyErr_SetFromErrno(PyExc_OSError);
return NULL;
NULL
},
{
- "distupgrade",
- (PyCFunction)Request_distupgrade,
+ "sync",
+ (PyCFunction)Request_sync,
METH_NOARGS,
NULL
},
int pakfire_check(Pakfire pakfire);
+// Sync
+
+int pakfire_sync(Pakfire pakfire, int* changed);
+
#ifdef PAKFIRE_PRIVATE
#include <solv/pool.h>
int pakfire_request_upgrade_package(struct pakfire_request* request, PakfirePackage package);
int pakfire_request_upgrade_all(struct pakfire_request* request);
-int pakfire_request_distupgrade(struct pakfire_request* request);
+int pakfire_request_sync(struct pakfire_request* request);
int pakfire_request_lock(struct pakfire_request* request, const char* what);
int pakfire_request_lock_package(struct pakfire_request* request, PakfirePackage package);
pakfire_refresh;
pakfire_search;
pakfire_set_installonly;
+ pakfire_sync;
pakfire_unref;
pakfire_update;
pakfire_version_compare;
# request
pakfire_request_create;
- pakfire_request_distupgrade;
pakfire_request_erase;
pakfire_request_erase_package;
pakfire_request_get_pool;
pakfire_request_lock_package;
pakfire_request_ref;
pakfire_request_solve;
+ pakfire_request_sync;
pakfire_request_upgrade;
pakfire_request_upgrade_all;
pakfire_request_upgrade_package;
return r;
}
+
+PAKFIRE_EXPORT int pakfire_sync(Pakfire pakfire, int* changed) {
+ return pakfire_perform_transaction_simple(pakfire, pakfire_request_sync, changed);
+}
return 0;
}
-PAKFIRE_EXPORT int pakfire_request_distupgrade(struct pakfire_request* request) {
- queue_push2(&request->jobs, SOLVER_SOLVABLE_ALL|SOLVER_DISTUPGRADE, 0);
+PAKFIRE_EXPORT int pakfire_request_sync(struct pakfire_request* request) {
+ queue_push2(&request->jobs, SOLVER_SOLVABLE_ALL|SOLVER_DISTUPGRADE|SOLVER_DROP_ORPHANED, 0);
return 0;
}
)
def handle_sync(self, ns):
- with self.pakfire(ns) as p:
- transaction = p.update(
- allow_archchange=True,
- allow_vendorchange=True,
- )
-
- self._execute_transaction(transaction)
+ self.pakfire(ns).sync()
def handle_install(self, ns):
p = self.pakfire(ns)