Hello community, here is the log from the commit of package yum-metadata-parser checked in at Mon Apr 9 11:46:02 CEST 2007. -------- --- yum-metadata-parser/yum-metadata-parser.changes 2007-02-16 13:00:54.000000000 +0100 +++ /mounts/work_src_done/STABLE/yum-metadata-parser/yum-metadata-parser.changes 2007-04-06 11:42:08.000000000 +0200 @@ -1,0 +2,8 @@ +Fri Apr 6 11:40:39 CEST 2007 - cthiel@suse.de + +- update to version 1.0.4 + * db.c: Create a pkgKey index for provides, requires, conflicts, and + obsoletes + * db.c, db.h, package.h, sqlitecache.c, xml-parser.c: include Prereqs + +------------------------------------------------------------------- Old: ---- yum-metadata-parser-1.0.3.tar.bz2 New: ---- yum-metadata-parser-1.0.4.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yum-metadata-parser.spec ++++++ --- /var/tmp/diff_new_pack.v12651/_old 2007-04-09 11:45:54.000000000 +0200 +++ /var/tmp/diff_new_pack.v12651/_new 2007-04-09 11:45:54.000000000 +0200 @@ -1,5 +1,5 @@ # -# spec file for package yum-metadata-parser (Version 1.0.3) +# spec file for package yum-metadata-parser (Version 1.0.4) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -13,8 +13,8 @@ Name: yum-metadata-parser BuildRequires: glib2-devel libxml2-devel pkgconfig python-devel sqlite-devel Summary: A fast metadata parser for yum -Version: 1.0.3 -Release: 6 +Version: 1.0.4 +Release: 1 Source: %{name}-%{version}.tar.bz2 Patch: %{name}-1.0-quiet.patch License: GNU General Public License (GPL) @@ -56,6 +56,11 @@ %{py_sitedir}/* %changelog +* Fri Apr 06 2007 - cthiel@suse.de +- update to version 1.0.4 + * db.c: Create a pkgKey index for provides, requires, conflicts, and + obsoletes + * db.c, db.h, package.h, sqlitecache.c, xml-parser.c: include Prereqs * Fri Feb 16 2007 - cthiel@suse.de - Requires: python-sqlite * Fri Feb 16 2007 - cthiel@suse.de ++++++ yum-metadata-parser-1.0.3.tar.bz2 -> yum-metadata-parser-1.0.4.tar.bz2 ++++++ diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yum-metadata-parser-1.0.3/ChangeLog new/yum-metadata-parser-1.0.4/ChangeLog --- old/yum-metadata-parser-1.0.3/ChangeLog 2007-01-07 21:34:09.000000000 +0100 +++ new/yum-metadata-parser-1.0.4/ChangeLog 2007-04-04 06:10:02.000000000 +0200 @@ -1,3 +1,25 @@ +2007-04-04 00:07 skvidal + + * setup.py, yum-metadata-parser.spec: + mark as 1.0.4 + +2007-04-03 10:02 jbowes + + * db.c: Create a pkgKey index for provides, requires, conflicts, + and obsoletes. + + Originally suggested by Florian Festi on yum-devel. + +2007-02-17 22:38 jbowes + + * db.c, db.h, package.h, sqlitecache.c, xml-parser.c: Apply patch + from Florian Festi to include Prereqs. + +2007-01-07 15:31 skvidal + + * ChangeLog: + check in changelog + 2007-01-07 15:31 skvidal * setup.py, yum-metadata-parser.spec: diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yum-metadata-parser-1.0.3/db.c new/yum-metadata-parser-1.0.4/db.c --- old/yum-metadata-parser-1.0.3/db.c 2006-07-12 05:20:17.000000000 +0200 +++ new/yum-metadata-parser-1.0.4/db.c 2007-04-04 06:08:35.000000000 +0200 @@ -393,14 +393,18 @@ const char *deps[] = { "requires", "provides", "conflicts", "obsoletes", NULL }; int i; + const char *indexsql = "CREATE INDEX IF NOT EXISTS pkg%s on %s (pkgKey)"; + for (i = 0; deps[i]; i++) { const char *prereq; + char *query; + if (!strcmp(deps[i], "requires")) { prereq = ", pre BOOLEAN DEFAULT FALSE"; } else prereq = ""; - char *query = g_strdup_printf (sql, deps[i], prereq); + query = g_strdup_printf (sql, deps[i], prereq); rc = sqlite3_exec (db, query, NULL, NULL, NULL); g_free (query); @@ -410,6 +414,17 @@ deps[i], sqlite3_errmsg (db)); return; } + + query = g_strdup_printf(indexsql, deps[i], deps[i]); + rc = sqlite3_exec (db, query, NULL, NULL, NULL); + g_free (query); + + if (rc != SQLITE_OK) { + g_set_error (err, YUM_DB_ERROR, YUM_DB_ERROR, + "Can not create index on %s table: %s", + deps[i], sqlite3_errmsg (db)); + return; + } } sql = "CREATE INDEX providesname ON provides (name)"; @@ -520,9 +535,17 @@ sqlite3_stmt *handle = NULL; char *query; + const char *pre_name = ""; + const char *pre_value = ""; + + if (!strcmp (table, "requires")) { + pre_name = ", pre"; + pre_value = ", ?"; + } + query = g_strdup_printf - ("INSERT INTO %s (name, flags, epoch, version, release, pkgKey) " - "VALUES (?, ?, ?, ?, ?, ?)", table); + ("INSERT INTO %s (name, flags, epoch, version, release, pkgKey%s) " + "VALUES (?, ?, ?, ?, ?, ?%s)", table, pre_name, pre_value); rc = sqlite3_prepare (db, query, -1, &handle, NULL); g_free (query); @@ -542,7 +565,8 @@ yum_db_dependency_write (sqlite3 *db, sqlite3_stmt *handle, gint64 pkgKey, - Dependency *dep) + Dependency *dep, + gboolean isRequirement) { int rc; @@ -553,6 +577,13 @@ sqlite3_bind_text (handle, 5, dep->release, -1, SQLITE_STATIC); sqlite3_bind_int (handle, 6, pkgKey); + if (isRequirement) { + if (dep->pre) + sqlite3_bind_text (handle, 7, "TRUE", -1, SQLITE_TRANSIENT); + else + sqlite3_bind_text (handle, 7, "FALSE", -1, SQLITE_TRANSIENT); + } + rc = sqlite3_step (handle); sqlite3_reset (handle); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yum-metadata-parser-1.0.3/db.h new/yum-metadata-parser-1.0.4/db.h --- old/yum-metadata-parser-1.0.3/db.h 2006-07-12 05:20:17.000000000 +0200 +++ new/yum-metadata-parser-1.0.4/db.h 2007-03-13 15:43:57.000000000 +0100 @@ -55,7 +55,8 @@ void yum_db_dependency_write (sqlite3 *db, sqlite3_stmt *handle, gint64 pkgKey, - Dependency *dep); + Dependency *dep, + gboolean isRequirement); sqlite3_stmt *yum_db_file_prepare (sqlite3 *db, GError **err); void yum_db_file_write (sqlite3 *db, diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yum-metadata-parser-1.0.3/package.h new/yum-metadata-parser-1.0.4/package.h --- old/yum-metadata-parser-1.0.3/package.h 2006-05-11 19:33:57.000000000 +0200 +++ new/yum-metadata-parser-1.0.4/package.h 2007-03-13 15:43:57.000000000 +0100 @@ -26,6 +26,7 @@ char *epoch; char *version; char *release; + gboolean pre; } Dependency; typedef struct { diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yum-metadata-parser-1.0.3/PKG-INFO new/yum-metadata-parser-1.0.4/PKG-INFO --- old/yum-metadata-parser-1.0.3/PKG-INFO 2007-01-07 21:34:46.000000000 +0100 +++ new/yum-metadata-parser-1.0.4/PKG-INFO 2007-04-04 06:12:53.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.0 Name: yum-metadata-parser -Version: 1.0.3 +Version: 1.0.4 Summary: A fast YUM meta-data parser Home-page: UNKNOWN Author: UNKNOWN diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yum-metadata-parser-1.0.3/setup.py new/yum-metadata-parser-1.0.4/setup.py --- old/yum-metadata-parser-1.0.3/setup.py 2007-01-07 21:28:46.000000000 +0100 +++ new/yum-metadata-parser-1.0.4/setup.py 2007-04-04 06:08:51.000000000 +0200 @@ -23,7 +23,7 @@ 'sqlitecache.c']) setup (name = 'yum-metadata-parser', - version = '1.0.3', + version = '1.0.4', description = 'A fast YUM meta-data parser', py_modules = ['sqlitecachec'], ext_modules = [module]) diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yum-metadata-parser-1.0.3/sqlitecache.c new/yum-metadata-parser-1.0.4/sqlitecache.c --- old/yum-metadata-parser-1.0.3/sqlitecache.c 2007-01-07 21:28:20.000000000 +0100 +++ new/yum-metadata-parser-1.0.4/sqlitecache.c 2007-03-13 15:43:57.000000000 +0100 @@ -179,15 +179,29 @@ } static void -write_deps (sqlite3 *db, sqlite3_stmt *handle, gint64 pkgKey, GSList *deps) +write_deps (sqlite3 *db, sqlite3_stmt *handle, gint64 pkgKey, + GSList *deps) { GSList *iter; for (iter = deps; iter; iter = iter->next) - yum_db_dependency_write (db, handle, pkgKey, (Dependency *) iter->data); + yum_db_dependency_write (db, handle, pkgKey, (Dependency *) iter->data, + FALSE); } static void +write_requirements (sqlite3 *db, sqlite3_stmt *handle, gint64 pkgKey, + GSList *deps) +{ + GSList *iter; + + for (iter = deps; iter; iter = iter->next) + yum_db_dependency_write (db, handle, pkgKey, (Dependency *) iter->data, + TRUE); +} + + +static void write_files (sqlite3 *db, sqlite3_stmt *handle, Package *pkg) { GSList *iter; @@ -204,8 +218,8 @@ yum_db_package_write (update_info->db, info->pkg_handle, package); - write_deps (update_info->db, info->requires_handle, - package->pkgKey, package->requires); + write_requirements (update_info->db, info->requires_handle, + package->pkgKey, package->requires); write_deps (update_info->db, info->provides_handle, package->pkgKey, package->provides); write_deps (update_info->db, info->conflicts_handle, diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yum-metadata-parser-1.0.3/xml-parser.c new/yum-metadata-parser-1.0.4/xml-parser.c --- old/yum-metadata-parser-1.0.3/xml-parser.c 2006-06-19 03:49:32.000000000 +0200 +++ new/yum-metadata-parser-1.0.4/xml-parser.c 2007-03-13 15:43:57.000000000 +0100 @@ -247,6 +247,7 @@ const char *tmp_release = NULL; const char *tmp_epoch = NULL; const char *tmp_flags = NULL; + gboolean tmp_pre = FALSE; Dependency *dep; int i; gboolean ignore = FALSE; @@ -272,6 +273,8 @@ tmp_version = value; else if (!strcmp (attr, "rel")) tmp_release = value; + else if (!strcmp (attr, "pre")) + tmp_pre = TRUE; } if (!ignore) { @@ -287,6 +290,7 @@ dep->version = g_string_chunk_insert (chunk, tmp_version); if (tmp_release) dep->release = g_string_chunk_insert (chunk, tmp_release); + dep->pre = tmp_pre; *ctx->current_dep_list = g_slist_prepend (*ctx->current_dep_list, dep); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yum-metadata-parser-1.0.3/yum-metadata-parser.spec new/yum-metadata-parser-1.0.4/yum-metadata-parser.spec --- old/yum-metadata-parser-1.0.3/yum-metadata-parser.spec 2007-01-07 21:29:09.000000000 +0100 +++ new/yum-metadata-parser-1.0.4/yum-metadata-parser.spec 2007-04-04 06:09:31.000000000 +0200 @@ -2,7 +2,7 @@ Summary: A fast metadata parser for yum Name: yum-metadata-parser -Version: 1.0.3 +Version: 1.0.4 Release: 1%{?dist} Source0: %{name}-%{version}.tar.gz License: GPL @@ -40,6 +40,9 @@ %{python_sitelib_platform}/sqlitecachec.pyo %changelog +* Wed Apr 4 2007 Seth Vidal <skvidal at linux.duke.edu> +- 1.0.4 + * Sun Jan 7 2007 Seth Vidal <skvidal at linux.duke.edu> - 1.0.3 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org