1.1 --- a/razor.h Wed Jun 04 13:27:49 2008 -0400
1.2 +++ b/razor.h Mon Jun 09 15:39:23 2008 -0400
1.3 @@ -108,45 +108,14 @@
1.4
1.5 /* Package transactions */
1.6
1.7 -enum razor_transaction_package_state {
1.8 - /* Basic states */
1.9 - RAZOR_PACKAGE_INSTALL,
1.10 - RAZOR_PACKAGE_FORCED_UPDATE,
1.11 - RAZOR_PACKAGE_REMOVE,
1.12 - RAZOR_PACKAGE_OBSOLETED,
1.13 -
1.14 - /* Error states */
1.15 -
1.16 - RAZOR_PACKAGE_FIRST_ERROR_STATE = 0x4,
1.17 - RAZOR_PACKAGE_UNAVAILABLE_FLAG = 0x4,
1.18 -
1.19 - /* Package requested for install does not exist */
1.20 - RAZOR_PACKAGE_INSTALL_UNAVAILABLE = RAZOR_PACKAGE_INSTALL | RAZOR_PACKAGE_UNAVAILABLE_FLAG,
1.21 - /* Package requiring update does not have any update */
1.22 - RAZOR_PACKAGE_UPDATE_UNAVAILABLE = RAZOR_PACKAGE_FORCED_UPDATE | RAZOR_PACKAGE_UNAVAILABLE_FLAG,
1.23 - /* Package requested for removal does not exist */
1.24 - RAZOR_PACKAGE_REMOVE_NOT_INSTALLED = RAZOR_PACKAGE_REMOVE | RAZOR_PACKAGE_UNAVAILABLE_FLAG,
1.25 - /* (not used) */
1.26 - RAZOR_PACKAGE_OBSOLETE_UNAVAILABLE = RAZOR_PACKAGE_OBSOLETED | RAZOR_PACKAGE_UNAVAILABLE_FLAG,
1.27 -
1.28 - /* No newer version of package is available */
1.29 - RAZOR_PACKAGE_UP_TO_DATE,
1.30 - /* Package marked for both install and remove */
1.31 - RAZOR_PACKAGE_CONTRADICTION,
1.32 - /* Package would add a conflict with an already-installed package */
1.33 - RAZOR_PACKAGE_NEW_CONFLICT,
1.34 - /* Already-installed package has a conflict against this package */
1.35 - RAZOR_PACKAGE_OLD_CONFLICT,
1.36 - /* Requirement of to-be-installed package can't be satisfied */
1.37 - RAZOR_PACKAGE_UNSATISFIABLE,
1.38 -};
1.39 -
1.40 struct razor_transaction *
1.41 razor_transaction_create(struct razor_set *system, struct razor_set *upstream);
1.42 void razor_transaction_install_package(struct razor_transaction *transaction,
1.43 struct razor_package *package);
1.44 void razor_transaction_remove_package(struct razor_transaction *transaction,
1.45 struct razor_package *package);
1.46 +void razor_transaction_update_package(struct razor_transaction *trans,
1.47 + struct razor_package *package);
1.48 void razor_transaction_update_all(struct razor_transaction *transaction);
1.49 int razor_transaction_resolve(struct razor_transaction *trans);
1.50 struct razor_set *razor_transaction_finish(struct razor_transaction *trans);
1.51 @@ -156,7 +125,8 @@
1.52 int razor_transaction_unsatisfied_property(struct razor_transaction *trans,
1.53 const char *name,
1.54 enum razor_version_relation rel,
1.55 - const char *version);
1.56 + const char *version,
1.57 + enum razor_property_type type);
1.58
1.59 /* Importer interface; for building a razor set from external sources,
1.60 * like yum, rpmdb or razor package files. */