From e51232e710dfd32764e2c2d0599df83ab85a9c74 Mon Sep 17 00:00:00 2001 From: Timo Teräs Date: Thu, 13 Jun 2013 18:20:39 +0300 Subject: errors: rewrite the logic how errors are reported Instead of the dependency oriented logic, switch to print them for each package or name needed. Might give a bit more readable errors now. There's still few corner cases that proper error is not output, which are cought by the test cases. --- src/apk_package.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/apk_package.h') diff --git a/src/apk_package.h b/src/apk_package.h index a5cda2f..44e463c 100644 --- a/src/apk_package.h +++ b/src/apk_package.h @@ -37,6 +37,10 @@ struct apk_provider; #define APK_SIGN_GENERATE 4 #define APK_SIGN_VERIFY_AND_GENERATE 5 +#define APK_DEP_IRRELEVANT 0 +#define APK_DEP_SATISFIED 1 +#define APK_DEP_CONFLICTED 2 + struct apk_sign_ctx { int keys_fd; int action; @@ -129,6 +133,8 @@ void apk_dep_from_pkg(struct apk_dependency *dep, struct apk_database *db, int apk_dep_is_materialized(struct apk_dependency *dep, struct apk_package *pkg); int apk_dep_is_materialized_or_provided(struct apk_dependency *dep, struct apk_package *pkg); int apk_dep_is_provided(struct apk_dependency *dep, struct apk_provider *p); +int apk_dep_analyze(struct apk_dependency *dep, struct apk_package *pkg); +char *apk_dep_snprintf(char *buf, size_t n, struct apk_dependency *dep); void apk_blob_push_dep(apk_blob_t *to, struct apk_database *, struct apk_dependency *dep); void apk_blob_push_deps(apk_blob_t *to, struct apk_database *, struct apk_dependency_array *deps); -- cgit v1.2.3-60-g2f50