Hello community, here is the log from the commit of package cvsps2 for openSUSE:Factory checked in at 2013-04-26 07:12:34 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/cvsps2 (Old) and /work/SRC/openSUSE:Factory/.cvsps2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cvsps2", Maintainer is "" Changes: -------- New Changes file: --- /dev/null 2013-04-05 00:01:41.916011506 +0200 +++ /work/SRC/openSUSE:Factory/.cvsps2.new/cvsps2.changes 2013-04-26 07:12:35.000000000 +0200 @@ -0,0 +1,52 @@ +------------------------------------------------------------------- +Wed Apr 24 09:59:00 UTC 2013 - pgaj...@suse.com + +- restored 2.x branch, package named cvsps2 [bnc#809800] +- conflicts with cvsps + +------------------------------------------------------------------- +Wed Sep 3 18:06:36 CEST 2008 - sch...@suse.de + +- Fix broken cmakefile. +- Add support for commitid. + +------------------------------------------------------------------- +Tue Nov 6 08:01:14 CET 2007 - crrodrig...@suse.de + +- instead of patching the Makefiles use a simple cmake based build script + +------------------------------------------------------------------- +Tue Jul 31 12:43:37 CEST 2007 - agr...@suse.de + +- Add fixes from http://ydirson.free.fr/soft/git/cvsps.git. +- Use RPM_OPT_FLAGS. + +------------------------------------------------------------------- +Fri Mar 30 02:29:19 CEST 2007 - r...@suse.de + +- added zlib-devel to buildreq + +------------------------------------------------------------------- +Wed Jan 25 21:35:18 CET 2006 - m...@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Wed Oct 5 13:20:44 CEST 2005 - dmuel...@suse.de + + - add norootforbuild + +------------------------------------------------------------------- +Mon May 30 15:51:51 CEST 2005 - agr...@suse.de + +- Updater to version 2.1. + +------------------------------------------------------------------- +Mon May 5 10:46:09 CEST 2003 - agr...@suse.de + +- Update to version 2.0rc1. + +------------------------------------------------------------------- +Thu Mar 20 16:11:41 CET 2003 - agr...@suse.de + +- Initial package. New: ---- CMakeLists.txt bk-cvs.mail commitid.diff cvsps-2.1.tar.bz2 cvsps-bk-cvs.mail cvsps2.changes cvsps2.spec fixes.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cvsps2.spec ++++++ # # spec file for package cvsps (Version 2.1) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: cvsps2 BuildRequires: cmake zlib-devel Conflicts: cvsps Group: Development/Tools/Version Control AutoReqProv: on Summary: A Program for Generating Patch Set Information from a CVS Repository Version: 2.1 Release: 163 %define real_version 2.1 Source: cvsps-%{real_version}.tar.bz2 Source1: bk-cvs.mail Source2: cvsps-bk-cvs.mail Source3: fixes.tar.bz2 Source4: CMakeLists.txt Patch: commitid.diff Url: http://www.cobite.com/cvsps/ License: GPL-2.0+ BuildRoot: %{_tmppath}/%{name}-%{version}-build %description CVSps is a program for generating 'patchset' information from a CVS repository. In this case, a patchset is defined as a set of changes made to a collection of files, all committed at the same time (using a single 'cvs commit' command). This information is valuable for seeing the big picture of the evolution of a CVS project. While CVS tracks revision information, it is often difficult to see what changes were 'atomically' committed to the repository. %prep %setup -q -n cvsps-%{real_version} tar xvfj %{SOURCE3} for patch in $(cat fixes/series); do patch -p1 < fixes/$patch done cp %{SOURCE1} %{SOURCE2} %{SOURCE4} . %patch -p1 %build export CFLAGS="%{optflags}" cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} -DCMAKE_VERBOSE_MAKEFILE=TRUE . %{__make} %{?jobs:-j%jobs} %install %makeinstall %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %doc README CHANGELOG COPYING %doc bk-cvs.mail cvsps-bk-cvs.mail %{_bindir}/cvsps %{_mandir}/man*/* %changelog * Wed Sep 03 2008 sch...@suse.de - Fix broken cmakefile. - Add support for commitid. * Tue Nov 06 2007 crrodrig...@suse.de - instead of patching the Makefiles use a simple cmake based build script * Tue Jul 31 2007 agr...@suse.de - Add fixes from http://ydirson.free.fr/soft/git/cvsps.git. - Use RPM_OPT_FLAGS. * Fri Mar 30 2007 r...@suse.de - added zlib-devel to buildreq * Wed Jan 25 2006 m...@suse.de - converted neededforbuild to BuildRequires * Wed Oct 05 2005 dmuel...@suse.de - add norootforbuild * Mon May 30 2005 agr...@suse.de - Updater to version 2.1. * Mon May 05 2003 agr...@suse.de - Update to version 2.0rc1. * Thu Mar 20 2003 agr...@suse.de - Initial package. ++++++ CMakeLists.txt ++++++ #cmake support for cvsps # author: Cristian Rodriguez crrodrig...@suse.de PROJECT(cvsps C) SET(CVSPS_VERSION_MAJOR 2) SET(CVSPS_VERSION_MINOR 1) SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -Wall -DVERSION=\\\"${CVSPS_VERSION_MAJOR}.${CVSPS_VERSION_MINOR}\\\"") FIND_PACKAGE(ZLIB REQUIRED) INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}) INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR}) SET(CVSPS_SRCS cache.c cap.c cvs_direct.c cvsps.c list_sort.c stats.c util.c cbtcommon/debug.c cbtcommon/hash.c cbtcommon/text_util.c cbtcommon/sio.c cbtcommon/tcpsocket.c ) ADD_EXECUTABLE(cvsps ${CVSPS_SRCS}) TARGET_LINK_LIBRARIES(cvsps ${ZLIB_LIBRARY}) INSTALL(PROGRAMS cvsps DESTINATION bin) INSTALL(FILES cvsps.1 DESTINATION share/man/man1) ++++++ bk-cvs.mail ++++++ Date: Mon, 17 Mar 2003 07:52:20 -0800 From: Larry McVoy <l...@bitmover.com> To: linux-ker...@vger.kernel.org Subject: BK->CVS is live I think those repositories are stable enough you can start to count on them. Sam and others have looked over their changes and think that the CVS tree has accurate data. The CVS repository is at cvs -d:pserver:anonym...@kernel.bkbits.net:/home/cvs and it has two top level directories, linux-2.4 and linux-2.5. ++++++ commitid.diff ++++++ diff --git a/cache.c b/cache.c index 5f67a7c..762cfb7 100644 --- a/cache.c +++ b/cache.c @@ -89,6 +89,7 @@ enum CACHE_NEED_PS_TAG_FLAGS, CACHE_NEED_PS_BRANCH, CACHE_NEED_PS_BRANCH_ADD, + CACHE_NEED_PS_COMMITID_OR_DESCR, CACHE_NEED_PS_DESCR, CACHE_NEED_PS_EOD, CACHE_NEED_PS_MEMBERS, @@ -108,6 +109,7 @@ time_t read_cache() int tag_flags = 0; char branchbuff[LOG_STR_MAX] = ""; int branch_add = 0; + char cidbuff[CID_STR_MAX] = ""; int logbufflen = LOG_STR_MAX + 1; char * logbuff = malloc(logbufflen); time_t cache_date = -1; @@ -286,9 +288,19 @@ time_t read_cache() /* remove prefix "branch_add: " and LF from len */ len -= 12; branch_add = atoi(buff + 12); - state = CACHE_NEED_PS_DESCR; + state = CACHE_NEED_PS_COMMITID_OR_DESCR; } break; + case CACHE_NEED_PS_COMMITID_OR_DESCR: + if (strncmp(buff, "commitid:", 9) == 0) + { + /* remove prefix "commitid: " and LF from len */ + len -= 10; + strzncpy(cidbuff, buff + 10, MIN(len, CID_STR_MAX)); + state = CACHE_NEED_PS_DESCR; + break; + } + /* FALLTHROUGH */ case CACHE_NEED_PS_DESCR: if (strncmp(buff, "descr:", 6) == 0) state = CACHE_NEED_PS_EOD; @@ -296,8 +308,8 @@ time_t read_cache() case CACHE_NEED_PS_EOD: if (strcmp(buff, CACHE_DESCR_BOUNDARY) == 0) { - debug(DEBUG_STATUS, "patch set %s %s %s %s", datebuff, authbuff, logbuff, branchbuff); - ps = get_patch_set(datebuff, logbuff, authbuff, branchbuff, NULL); + debug(DEBUG_STATUS, "patch set %s %s %s %s %s", datebuff, authbuff, logbuff, branchbuff, cidbuff); + ps = get_patch_set(datebuff, logbuff, authbuff, branchbuff, cidbuff, NULL); /* the tag and tag_flags will be assigned by the resolve_global_symbols code * ps->tag = (strlen(tagbuff)) ? get_string(tagbuff) : NULL; * ps->tag_flags = tag_flags; @@ -336,6 +348,7 @@ time_t read_cache() tag_flags = 0; branchbuff[0] = 0; branch_add = 0; + cidbuff[0] = 0; logbuff[0] = 0; state = CACHE_NEED_PS; } @@ -523,6 +536,8 @@ static void dump_patch_set(FILE * fp, PatchSet * ps) fprintf(fp, "tag_flags: %d\n", ps->tag_flags); fprintf(fp, "branch: %s\n", ps->branch); fprintf(fp, "branch_add: %d\n", ps->branch_add); + if (ps->commitid[0]) + fprintf(fp, "commitid: %s\n", ps->commitid); fprintf(fp, "descr:\n%s", ps->descr); /* descr is guaranteed to end with LF */ fprintf(fp, CACHE_DESCR_BOUNDARY); fprintf(fp, "members:\n"); diff --git a/cvsps.c b/cvsps.c index 981cd78..b91f0c7 100644 --- a/cvsps.c +++ b/cvsps.c @@ -268,6 +268,7 @@ static void load_from_cvs() PatchSetMember * psm = NULL; char datebuff[20]; char authbuff[AUTH_STR_MAX]; + char cidbuff[CID_STR_MAX]; int logbufflen = LOG_STR_MAX + 1; char * logbuff = malloc(logbufflen); int loglen = 0; @@ -466,6 +467,19 @@ static void load_from_cvs() psm->post_rev->dead = 1; } + cidbuff[0] = 0; + p = strstr(buff, "commitid: "); + if (p) + { + char * op; + p += 10; + op = strchr(p, ';'); + if (op) + { + strzncpy(cidbuff, p, op - p + 1); + } + } + state = NEED_EOM; } break; @@ -474,7 +488,7 @@ static void load_from_cvs() { if (psm) { - PatchSet * ps = get_patch_set(datebuff, logbuff, authbuff, psm->post_rev->branch, psm); + PatchSet * ps = get_patch_set(datebuff, logbuff, authbuff, psm->post_rev->branch, cidbuff, psm); patch_set_add_member(ps, psm); } @@ -487,7 +501,7 @@ static void load_from_cvs() { if (psm) { - PatchSet * ps = get_patch_set(datebuff, logbuff, authbuff, psm->post_rev->branch, psm); + PatchSet * ps = get_patch_set(datebuff, logbuff, authbuff, psm->post_rev->branch, cidbuff, psm); patch_set_add_member(ps, psm); assign_pre_revision(psm, NULL); } @@ -1199,7 +1213,7 @@ static CvsFile * build_file_by_name(const char * fn) return retval; } -PatchSet * get_patch_set(const char * dte, const char * log, const char * author, const char * branch, PatchSetMember * psm) +PatchSet * get_patch_set(const char * dte, const char * log, const char * author, const char * branch, const char *commitid, PatchSetMember * psm) { PatchSet * retval = NULL, **find = NULL; int (*cmp1)(const void *,const void*) = (bkcvs) ? compare_patch_sets_bk : compare_patch_sets; @@ -1212,6 +1226,7 @@ PatchSet * get_patch_set(const char * dte, const char * log, const char * author convert_date(&retval->date, dte); retval->author = get_string(author); + retval->commitid = get_string(commitid); retval->descr = xstrdup(log); retval->branch = get_string(branch); @@ -1267,7 +1282,7 @@ PatchSet * get_patch_set(const char * dte, const char * log, const char * author else { debug(DEBUG_STATUS, "new patch set!"); - debug(DEBUG_STATUS, "%s %s %s", retval->author, retval->descr, dte); + debug(DEBUG_STATUS, "%s %s %s %s", retval->author, retval->descr, retval->commitid, dte); retval->min_date = retval->date - timestamp_fuzz_factor; retval->max_date = retval->date + timestamp_fuzz_factor; @@ -1639,7 +1654,7 @@ static int compare_patch_sets(const void * v_ps1, const void * v_ps2) int ret; time_t d, min, max; - /* We order by (author, descr, branch, members, date), but because of the fuzz factor + /* We order by (author, descr, branch, commitid, members, date), but because of the fuzz factor * we treat times within a certain distance as equal IFF the author * and descr match. */ @@ -1656,6 +1671,10 @@ static int compare_patch_sets(const void * v_ps1, const void * v_ps2) if (ret) return ret; + ret = strcmp(ps1->commitid, ps2->commitid); + if (ret) + return ret; + ret = compare_patch_sets_by_members(ps1, ps2); if (ret) return ret; @@ -1724,6 +1743,10 @@ static int compare_patch_sets_bytime(const PatchSet * ps1, const PatchSet * ps2) return ret; ret = strcmp(ps1->branch, ps2->branch); + if (ret) + return ret; + + ret = strcmp(ps1->commitid, ps2->commitid); return ret; } @@ -2072,6 +2095,7 @@ static PatchSet * create_patch_set() ps->tag = NULL; ps->tag_flags = 0; ps->branch_add = 0; + ps->commitid = ""; ps->funk_factor = 0; ps->ancestor_branch = NULL; CLEAR_LIST_NODE(&ps->collision_link); diff --git a/cvsps.h b/cvsps.h index 280a253..2638ebe 100644 --- a/cvsps.h +++ b/cvsps.h @@ -25,7 +25,7 @@ CvsFile * create_cvsfile(); CvsFileRevision * cvs_file_add_revision(CvsFile *, const char *); void cvs_file_add_symbol(CvsFile * file, const char * rev, const char * tag); char * cvs_file_add_branch(CvsFile *, const char *, const char *); -PatchSet * get_patch_set(const char *, const char *, const char *, const char *, PatchSetMember *); +PatchSet * get_patch_set(const char *, const char *, const char *, const char *, const char *, PatchSetMember *); PatchSetMember * create_patch_set_member(); CvsFileRevision * file_get_revision(CvsFile *, const char *); void patch_set_add_member(PatchSet * ps, PatchSetMember * psm); diff --git a/cvsps_types.h b/cvsps_types.h index dba145d..f3cc33f 100644 --- a/cvsps_types.h +++ b/cvsps_types.h @@ -10,6 +10,7 @@ #define LOG_STR_MAX 65536 #define AUTH_STR_MAX 64 +#define CID_STR_MAX 64 #define REV_STR_MAX 64 #define MIN(a, b) ((a) < (b) ? (a) : (b)) #define MAX(a, b) ((a) > (b) ? (a) : (b)) @@ -113,6 +114,7 @@ struct _PatchSet char *descr; char *author; char *tag; + char *commitid; int tag_flags; char *branch; char *ancestor_branch; ++++++ cvsps-bk-cvs.mail ++++++ Date: Tue, 18 Mar 2003 12:41:42 -0500 (EST) From: David Mansfield <l...@dm.cobite.com> To: linux-ker...@vger.kernel.org Cc: Andrea Arcangeli <and...@suse.de>, Larry McVoy <l...@bitmover.com> Subject: [ANNOUNCE] cvsps support for parsing BK->CVS kernel tree logs Hi everyone, I've just added (updated) lightly tested support for the BK->CVS kernel trees to cvsps (www.cobite.com/cvsps) in version 2.0b4. The purpose of this effort is to recreate the BK ChangeSet meta-data that is embedded in the 'cvs log' data in these trees. BTW, cvsps is GPL software :-p. I'd like to thank Larry and Andrea for helping me track down some issues with this effort. This is still a BETA version, though, and I haven't given this enough testing, so be nice. It works for me. This version is tested and works against this morning's linux-2.4 and linux-2.5 trees, and contains a few workarounds for specific issues in those trees. See below for information on these problems. The output of cvsps looks like: ------------------------------ PatchSet 999 Date: 2002/07/11 19:50:46 Author: alan Branch: HEAD Tag: (none) Log: [PATCH] Fix several pdc202xx problems Misnaming of 20270 as 20268R Failure of LBA48 on 20262 Incorrect speed detection because the old driver used host not drive side cable detect PDC202xx handling for quirks in udma reporting off some drives LBA48 for PIO mode BKrev: 3d2dd386wJMnehoOAhv3wL991IfXVQ Members: ChangeSet:1.999->1.1000 MAINTAINERS:1.74->1.75 drivers/ide/ide-features.c:1.4->1.5 drivers/ide/ide-pci.c:1.18->1.19 drivers/ide/pdc202xx.c:1.11->1.12 include/linux/pci_ids.h:1.44->1.45 ----------------- You can also get a diff of this PatchSet using the '-g' option to cvsps. There are currently 2,798 PatchSets in the linux-2.4 tree, and 8,382 in the linux-2.5 tree. Quick start instructions ======================== Download, build and install cvsps from http://www.cobite.com/cvsps Get the 2.0b4 (or latest) version. Create a working directory with the tree of your choice: cvs -d:pserver:anonym...@kernel.bkbits.net:/home/cvs co linux-2.4/Makefile cd linux-2.4 [ IMPORTANT: cvsps doesn't currently support an option for setting the compression level so PLEASE, edit your .cvsrc and put 'cvs -z4' to enable compression ] cvsps [-x] --bkcvs This basically runs a 'cvs rlog' against the tree, parses, and caches all of the revision history as PatchSets. It also outputs all of the PatchSet summaries to stdout, so you may want to '>/dev/null' the first time. Subsequent 'cvsps' commands do not need the '--bkcvs' unless you are updating (-u, not completely tested) or rebuilding (-x, always works) the cache file. Now you can use cvsps to browse the patchsets at your leisure, without loading the cvs server (except to generate diffs). See cvsps -h for the many ways you can slice and dice the information. I welcome any feedback. Problems ======== I have currently encountered two problems with the log format. 1) someone has committed sections of 'cvs log' text into the log. This causes quite a headache for my parser, because false end-of-log-message markers are present in the log. Fortunately, Larry has put a '(Logical change x.yyyy)' marker at the end of each log message, see alse 2) 2) Not all log messages are terminated by a '(Logical change x.yyy)' marker. A single revision of one file is missing this marker, Larry is looking into why this may have happened. Both of these problems are being worked around by my 'Adaptive Crap Filter (notTM)' code. Don't look at it. It'll kill you. David -- /==============================\ | David Mansfield | | l...@dm.cobite.com | \==============================/ -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org