Changeset: a082f4406a38 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a082f4406a38
Modified Files:
        
Branch: default
Log Message:

Merge with Oct2010 branch.


diffs (267 lines):

diff -r 0d4e5d27cb15 -r a082f4406a38 testing/src/Mdiff.c
--- a/testing/src/Mdiff.c       Fri Oct 08 10:22:45 2010 +0200
+++ b/testing/src/Mdiff.c       Fri Oct 08 11:30:21 2010 +0200
@@ -38,9 +38,10 @@
 static void
 showUsage(char *name)
 {
-       printf("Usage:  %s [-I<exp>] [-C<num>] [-A<num>] [-t<text>] [-r<rev>] 
<oldfile> <newfile> [<outfile>]\n", name);
+       printf("Usage:  %s [-I<exp>] [-F<exp>] [-C<num>] [-A<num>] [-t<text>] 
[-r<rev>] <oldfile> <newfile> [<outfile>]\n", name);
        printf("\n");
        printf(" -I<exp>   : ignore lines matching <exp> during diff (optional, 
default: -I'^#')\n");
+       printf(" -F<exp>   : show the most recent line matching <exp>\n");
        printf(" -C<num>   : use <num> lines of context during diff (optional, 
default: -C1)\n");
        printf(" -A<num>   : accuracy for diff: 0=lines, 1=words, 2=chars 
(optional, default: -A1)\n");
        printf(" -d        : change the algorithm to perhaps find a smaller set 
of changes;\n");
@@ -59,10 +60,10 @@
        char EMPTY[] = "";
        char DEFAULT[] = "-I'^#'";
        char ignoreWHITE[] = " -b -B";
-       char *old_fn, *new_fn, *html_fn, *caption = EMPTY, *revision = EMPTY, 
*ignoreEXP = DEFAULT, *ignore;
+       char *old_fn, *new_fn, *html_fn, *caption = EMPTY, *revision = EMPTY, 
*ignoreEXP = DEFAULT, *ignore, *function;
        int LWC = 1, context = 1, option, mindiff = 0, quiet = 0;
 
-       while ((option = getopt(argc, argv, "hdqA:C:I:t:r:")) != EOF)
+       while ((option = getopt(argc, argv, "hdqA:C:I:F:t:r:")) != EOF)
                switch (option) {
                case 'd':
                        mindiff = 1;
@@ -86,6 +87,18 @@
                        strcat(ignoreEXP, "'");
 #endif
                        break;
+               case 'F':
+                       function = malloc(strlen(optarg) + 6);
+#ifdef NATIVE_WIN32
+                       strcpy(function, "-F");
+#else
+                       strcpy(function, "'-F");
+#endif
+                       strcat(function, optarg);
+#ifndef NATIVE_WIN32
+                       strcat(function, "'");
+#endif
+                       break;
                case 't':
                        caption = optarg;
                        break;
@@ -110,9 +123,9 @@
        new_fn = ((argc > (++optind)) ? argv[optind] : "-");
        html_fn = ((argc > (++optind)) ? argv[optind] : "-");
 
-       TRACE(fprintf(STDERR, "%s %s -A %i -C %i %s -t %s -r %s  %s %s %s\n", 
argv[0], mindiff ? "-d" : "", LWC, context, ignore, caption, revision, old_fn, 
new_fn, html_fn));
+       TRACE(fprintf(STDERR, "%s %s -A %i -C %i %s %s -t %s -r %s  %s %s 
%s\n", argv[0], mindiff ? "-d" : "", LWC, context, ignore, function, caption, 
revision, old_fn, new_fn, html_fn));
 
-       switch (oldnew2html(mindiff, LWC, context, ignore, old_fn, new_fn, 
html_fn, caption, revision)) {
+       switch (oldnew2html(mindiff, LWC, context, ignore, function, old_fn, 
new_fn, html_fn, caption, revision)) {
        case 0:
                if (quiet == 0)
                        fprintf(STDERR, "%s and %s are equal.\n", old_fn, 
new_fn);
diff -r 0d4e5d27cb15 -r a082f4406a38 testing/src/Mtest.py.in
--- a/testing/src/Mtest.py.in   Fri Oct 08 10:22:45 2010 +0200
+++ b/testing/src/Mtest.py.in   Fri Oct 08 11:30:21 2010 +0200
@@ -1972,7 +1972,7 @@
                     cmd.append('-d')
                 if quiet:
                     cmd.append('-q')
-                proc = subprocess.Popen(cmd + ['-I%s' % par['IGNORE'], '-C%s' 
% par['CONTEXT'], '-A%d' % ACCURACYout, '-r%s' % REVe, '%s%s.FILTERED' % (TST, 
STABLEout), '%s.test.out.FILTERED' % TST, '%s.out.diff.html' % TST])
+                proc = subprocess.Popen(cmd + ['-F^#', '-I%s' % par['IGNORE'], 
'-C%s' % par['CONTEXT'], '-A%d' % ACCURACYout, '-r%s' % REVe, '%s%s.FILTERED' % 
(TST, STABLEout), '%s.test.out.FILTERED' % TST, '%s.out.diff.html' % TST])
                 proc.killed = False
                 t = Timer(float(par['TIMEOUT']), killProc, args = [proc])
                 try:
@@ -1989,7 +1989,7 @@
                 cmd = 'diff'
                 if ACCURACYout >= 0:
                     cmd += ' -d'
-                os.system('%s -Bb -I"%s" -U%s "%s%s.FILTERED" 
"%s.test.out.FILTERED"' % (cmd, par['IGNORE'], par['CONTEXT'], TST, STABLEout, 
TST))
+                os.system('%s -Bb -F"^#" -I"%s" -U%s "%s%s.FILTERED" 
"%s.test.out.FILTERED"' % (cmd, par['IGNORE'], par['CONTEXT'], TST, STABLEout, 
TST))
 
             #TODO:
             #timedout = 1
@@ -2025,15 +2025,15 @@
                     MDIFF = MDIFF0
                     ACCURACYerr = 0
                 if not quiet:
-                    timedout = os.system('%s -I"%s" -C%s -A%d -r"%s" 
"%s%s.FILTERED" "%s.test.err.FILTERED" "%s.err.diff.html"' % (MDIFF, 
par['IGNORE'], par['CONTEXT'], ACCURACYerr, REVe, TST, STABLEerr, TST, TST))
+                    timedout = os.system('%s -F"^#" -I"%s" -C%s -A%d -r"%s" 
"%s%s.FILTERED" "%s.test.err.FILTERED" "%s.err.diff.html"' % (MDIFF, 
par['IGNORE'], par['CONTEXT'], ACCURACYerr, REVe, TST, STABLEerr, TST, TST))
                 else:
-                    timedout = os.system('%s -q -I"%s" -C%s -A%d -r"%s" 
"%s%s.FILTERED" "%s.test.err.FILTERED" "%s.err.diff.html"' % (MDIFF, 
par['IGNORE'], par['CONTEXT'], ACCURACYerr, REVe, TST, STABLEerr, TST, TST))
+                    timedout = os.system('%s -q -F"^#" -I"%s" -C%s -A%d -r"%s" 
"%s%s.FILTERED" "%s.test.err.FILTERED" "%s.err.diff.html"' % (MDIFF, 
par['IGNORE'], par['CONTEXT'], ACCURACYerr, REVe, TST, STABLEerr, TST, TST))
                 ACCURACYerr = ACCURACYerr - 1
             if env.get('ECHO_DIFF'):
                 cmd = 'diff'
                 if ACCURACYerr >= 0:
                     cmd += ' -d'
-                os.system('%s -Bb -I"%s" -U%s "%s%s.FILTERED" 
"%s.test.err.FILTERED"' % (cmd, par['IGNORE'], par['CONTEXT'], TST, STABLEerr, 
TST))
+                os.system('%s -Bb -F"^#" -I"%s" -U%s "%s%s.FILTERED" 
"%s.test.err.FILTERED"' % (cmd, par['IGNORE'], par['CONTEXT'], TST, STABLEerr, 
TST))
 
             FailedOut, FailedErr, elem = AddTstToHtmlIndex(env, TST, 
STABLEout, STABLEerr, EXT, max(sockerr, timeout, recursion, killed, segfaulted))
 
diff -r 0d4e5d27cb15 -r a082f4406a38 testing/src/difflib.c
--- a/testing/src/difflib.c     Fri Oct 08 10:22:45 2010 +0200
+++ b/testing/src/difflib.c     Fri Oct 08 11:30:21 2010 +0200
@@ -132,14 +132,14 @@
 
 
 FILE *
-oldnew2u_diff(int mindiff, int context, char *ignore, char *old_fn, char 
*new_fn)
+oldnew2u_diff(int mindiff, int context, char *ignore, char *function, char 
*old_fn, char *new_fn)
 {
        char command[CMDLEN];
        char *_d = mindiff ? "-d" : "";
 
-       TRACE(fprintf(STDERR, "oldnew2u_diff(%i,%i,%s,%s,%s)\n", mindiff, 
context, ignore, old_fn, new_fn));
+       TRACE(fprintf(STDERR, "oldnew2u_diff(%i,%i,%s,%s,%s,%s)\n", mindiff, 
context, ignore, function, old_fn, new_fn));
 
-       sprintf(command, "%s %s -a %s -U%d %s    %s", DIFF, ignore, _d, 
context, old_fn, new_fn);
+       sprintf(command, "%s %s %s -a %s -U%d %s    %s", DIFF, ignore, 
function, _d, context, old_fn, new_fn);
        return popen(command, "r");
 }
 
@@ -372,14 +372,14 @@
 
 
 int
-oldnew2l_diff(int mindiff, int context, char *ignore, char *old_fn, char 
*new_fn, char *l_diff_fn)
+oldnew2l_diff(int mindiff, int context, char *ignore, char *function, char 
*old_fn, char *new_fn, char *l_diff_fn)
 {
        FILE *u_diff_fp;
        int rtrn = 0;
 
-       TRACE(fprintf(STDERR, "oldnew2l_diff(%i,%i,%s,%s,%s,%s)\n", mindiff, 
context, ignore, old_fn, new_fn, l_diff_fn));
+       TRACE(fprintf(STDERR, "oldnew2l_diff(%i,%i,%s,%s,%s,%s,%s)\n", mindiff, 
context, ignore, function, old_fn, new_fn, l_diff_fn));
 
-       if ((u_diff_fp = oldnew2u_diff(mindiff, context, ignore, old_fn, 
new_fn)) == NULL) {
+       if ((u_diff_fp = oldnew2u_diff(mindiff, context, ignore, function, 
old_fn, new_fn)) == NULL) {
                ERRHNDL(0, "oldnew2u_diff returns 0 in oldnew2l_diff", "", 1);
        }
 
@@ -392,16 +392,16 @@
 
 
 int
-oldnew2w_diff(int mindiff, int context, char *ignore, char *old_fn, char 
*new_fn, char *w_diff_fn)
+oldnew2w_diff(int mindiff, int context, char *ignore, char *function, char 
*old_fn, char *new_fn, char *w_diff_fn)
 {
        char l_diff_fn[CMDLEN];
        int rtrn = 0;
 
-       TRACE(fprintf(STDERR, "oldnew2w_diff(%i,%i,%s,%s,%s,%s)\n", mindiff, 
context, ignore, old_fn, new_fn, w_diff_fn));
+       TRACE(fprintf(STDERR, "oldnew2w_diff(%i,%i,%s,%s,%s,%s,%s)\n", mindiff, 
context, ignore, function, old_fn, new_fn, w_diff_fn));
 
        sprintf(l_diff_fn, "%s%c.difflib-%ld-oldnew2w_diff-l_diff", tmpdir(), 
DIR_SEP, (long) getpid());
 
-       if (!oldnew2l_diff(mindiff, context, ignore, old_fn, new_fn, 
l_diff_fn)) {
+       if (!oldnew2l_diff(mindiff, context, ignore, function, old_fn, new_fn, 
l_diff_fn)) {
                UNLINK(l_diff_fn);
                ERRHNDL(0, "oldnew2l_diff returns 0 in oldnew2w_diff", "", 1);
        }
@@ -416,16 +416,16 @@
 
 
 int
-oldnew2c_diff(int mindiff, int context, char *ignore, char *old_fn, char 
*new_fn, char *c_diff_fn)
+oldnew2c_diff(int mindiff, int context, char *ignore, char *function, char 
*old_fn, char *new_fn, char *c_diff_fn)
 {
        char w_diff_fn[CMDLEN];
        int rtrn = 0;
 
-       TRACE(fprintf(STDERR, "oldnew2c_diff(%i,%i,%s,%s,%s,%s)\n", mindiff, 
context, ignore, old_fn, new_fn, c_diff_fn));
+       TRACE(fprintf(STDERR, "oldnew2c_diff(%i,%i,%s,%s,%s,%s,%s)\n", mindiff, 
context, ignore, function, old_fn, new_fn, c_diff_fn));
 
        sprintf(w_diff_fn, "%s%c.difflib-%ld-oldnew2c_diff-w_diff", tmpdir(), 
DIR_SEP, (long) getpid());
 
-       if (!oldnew2w_diff(mindiff, context, ignore, old_fn, new_fn, 
w_diff_fn)) {
+       if (!oldnew2w_diff(mindiff, context, ignore, function, old_fn, new_fn, 
w_diff_fn)) {
                UNLINK(w_diff_fn);
                ERRHNDL(0, "oldnew2w_diff returns 0 in oldnew2c_diff", "", 1);
        }
@@ -440,17 +440,17 @@
 
 
 int
-oldnew2lwc_diff(int mindiff, int LWC, int context, char *ignore, char *old_fn, 
char *new_fn, char *lwc_diff_fn)
+oldnew2lwc_diff(int mindiff, int LWC, int context, char *ignore, char 
*function, char *old_fn, char *new_fn, char *lwc_diff_fn)
 {
-       TRACE(fprintf(STDERR, "oldnew2lwc_diff(%i,%i,%i,%s,%s,%s,%s)\n", 
mindiff, LWC, context, ignore, old_fn, new_fn, lwc_diff_fn));
+       TRACE(fprintf(STDERR, "oldnew2lwc_diff(%i,%i,%i,%s,%s,%s,%s,%s)\n", 
mindiff, LWC, context, ignore, function, old_fn, new_fn, lwc_diff_fn));
 
        switch (LWC) {
        case 0:
-               return oldnew2l_diff(mindiff, context, ignore, old_fn, new_fn, 
lwc_diff_fn);
+               return oldnew2l_diff(mindiff, context, ignore, function, 
old_fn, new_fn, lwc_diff_fn);
        case 1:
-               return oldnew2w_diff(mindiff, context, ignore, old_fn, new_fn, 
lwc_diff_fn);
+               return oldnew2w_diff(mindiff, context, ignore, function, 
old_fn, new_fn, lwc_diff_fn);
        case 2:
-               return oldnew2c_diff(mindiff, context, ignore, old_fn, new_fn, 
lwc_diff_fn);
+               return oldnew2c_diff(mindiff, context, ignore, function, 
old_fn, new_fn, lwc_diff_fn);
        default:
                ErrXit("oldnew2lwc_diff called with wrong LWC", "", 1);
        }
@@ -573,12 +573,17 @@
                        fprintf(html_fp, "<td align='center'>...</td>");
                        fprintf(html_fp, "<td 
align='center'>...</td></tr></tbody>\n");
                }
+               for (i = 0; i < 3 && ok; i++)
+                       ok = strchr(ok+1, '@');
+               if (ok && ok[1] == ' ')
+                       fprintf(html_fp, "<td colspan='7' 
align='center'>%s</td>\n", ok + 2);
                for (i = 0; i < 5; i++)
                        clr[i] = 0;
                orn = nrn = 0;
                newline_ = 1;
                newline = 1;
                sprintf(c, "  ");
+               ok = line;
                while (ok && (ok = fgets(line, BUFLEN, lwc_diff_fp)) && 
strchr(" -+", line[0])) {
                        if (line[1] != '\3') {
                                size_t sl = strlen(line) - 1;
@@ -842,16 +847,16 @@
 
 
 int
-oldnew2html(int mindiff, int LWC, int context, char *ignore, char *old_fn, 
char *new_fn, char *html_fn, char *caption, char *revision)
+oldnew2html(int mindiff, int LWC, int context, char *ignore, char *function, 
char *old_fn, char *new_fn, char *html_fn, char *caption, char *revision)
 {
        char lwc_diff_fn[CMDLEN];
        int rtrn;
 
-       TRACE(fprintf(STDERR, "oldnew2html(%i,%i,%i,%s,%s,%s,%s,%s,%s)\n", 
mindiff, LWC, context, ignore, old_fn, new_fn, html_fn, caption, revision));
+       TRACE(fprintf(STDERR, "oldnew2html(%i,%i,%i,%s,%s,%s,%s,%s,%s,%s)\n", 
mindiff, LWC, context, ignore, function, old_fn, new_fn, html_fn, caption, 
revision));
 
        sprintf(lwc_diff_fn, "%s%c.difflib-%ld-oldnew2html-lwc_diff", tmpdir(), 
DIR_SEP, (long) getpid());
 
-       if (!oldnew2lwc_diff(mindiff, LWC, context, ignore, old_fn, new_fn, 
lwc_diff_fn))
+       if (!oldnew2lwc_diff(mindiff, LWC, context, ignore, function, old_fn, 
new_fn, lwc_diff_fn))
                /* { UNLINK(lwc_diff_fn); ERRHNDL(0,"oldnew2lwc_diff returns 0 
in oldnew2html","",1); } */
                fclose(Wfopen(lwc_diff_fn));
 
diff -r 0d4e5d27cb15 -r a082f4406a38 testing/src/difflib.h
--- a/testing/src/difflib.h     Fri Oct 08 10:22:45 2010 +0200
+++ b/testing/src/difflib.h     Fri Oct 08 11:30:21 2010 +0200
@@ -33,18 +33,18 @@
 #endif
 
 
-FILE *oldnew2u_diff(int mindiff, int context, char *ignore, char *old_fn, char 
*new_fn);
-int oldnew2l_diff(int mindiff, int context, char *ignore, char *old_fn, char 
*new_fn, char *l_diff_fn);
-int oldnew2w_diff(int mindiff, int context, char *ignore, char *old_fn, char 
*new_fn, char *w_diff_fn);
-int oldnew2c_diff(int mindiff, int context, char *ignore, char *old_fn, char 
*new_fn, char *c_diff_fn);
-int oldnew2lwc_diff(int mindiff, int LWC, int context, char *ignore, char 
*old_fn, char *new_fn, char *lwc_diff_fn);
+FILE *oldnew2u_diff(int mindiff, int context, char *ignore, char *function, 
char *old_fn, char *new_fn);
+int oldnew2l_diff(int mindiff, int context, char *ignore, char *function, char 
*old_fn, char *new_fn, char *l_diff_fn);
+int oldnew2w_diff(int mindiff, int context, char *ignore, char *function, char 
*old_fn, char *new_fn, char *w_diff_fn);
+int oldnew2c_diff(int mindiff, int context, char *ignore, char *function, char 
*old_fn, char *new_fn, char *c_diff_fn);
+int oldnew2lwc_diff(int mindiff, int LWC, int context, char *ignore, char 
*function, char *old_fn, char *new_fn, char *lwc_diff_fn);
 
 int u_diff2l_diff(FILE *u_diff_fp, char *l_diff_fn);
 
 int l_diff2w_diff(int mindiff, char *l_diff_fn, char *w_diff_fn);
 int w_diff2c_diff(int mindiff, char *w_diff_fn, char *c_diff_fn);
 
-int oldnew2html(int mindiff, int LWC, int context, char *ignore, char *old_fn, 
char *new_fn, char *html_fn, char *caption, char *revision);
+int oldnew2html(int mindiff, int LWC, int context, char *ignore, char 
*function, char *old_fn, char *new_fn, char *html_fn, char *caption, char 
*revision);
 int lwc_diff2html(char *old_fn, char *new_fn, char *lwc_diff_fn, char 
*html_fn, char *caption, char *revision);
 
 #endif /* DIFFLIB_H */
_______________________________________________
Checkin-list mailing list
Checkin-list@monetdb.org
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to