You can subscribe to this list here.
| 2003 |
Jan
|
Feb
(160) |
Mar
(119) |
Apr
(111) |
May
(118) |
Jun
(101) |
Jul
(304) |
Aug
(113) |
Sep
(140) |
Oct
(137) |
Nov
(87) |
Dec
(122) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(78) |
Feb
(125) |
Mar
(131) |
Apr
(59) |
May
(121) |
Jun
(166) |
Jul
(150) |
Aug
(137) |
Sep
(73) |
Oct
(58) |
Nov
(27) |
Dec
(60) |
| 2005 |
Jan
(131) |
Feb
(84) |
Mar
(36) |
Apr
(8) |
May
(28) |
Jun
(20) |
Jul
(10) |
Aug
(72) |
Sep
(76) |
Oct
(34) |
Nov
(3) |
Dec
(29) |
| 2006 |
Jan
(13) |
Feb
(92) |
Mar
(7) |
Apr
(1) |
May
(1) |
Jun
(2) |
Jul
(4) |
Aug
(17) |
Sep
(5) |
Oct
(2) |
Nov
(8) |
Dec
(12) |
| 2007 |
Jan
(28) |
Feb
(15) |
Mar
|
Apr
|
May
(8) |
Jun
(4) |
Jul
(5) |
Aug
(8) |
Sep
(20) |
Oct
(38) |
Nov
(65) |
Dec
(92) |
| 2008 |
Jan
(21) |
Feb
(56) |
Mar
(27) |
Apr
(174) |
May
(25) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <jgr...@us...> - 2003-10-15 16:53:21
|
Update of /cvsroot/popfile/engine/UI
In directory sc8-pr-cvs1:/tmp/cvs-serv31121/UI
Modified Files:
HTML.pm
Log Message:
Make TICKD messages get sent every 6 hours; update test suite and use TICKD to delete log files
Index: HTML.pm
===================================================================
RCS file: /cvsroot/popfile/engine/UI/HTML.pm,v
retrieving revision 1.216
retrieving revision 1.217
diff -C2 -d -r1.216 -r1.217
*** HTML.pm 14 Oct 2003 16:17:18 -0000 1.216
--- HTML.pm 15 Oct 2003 16:53:14 -0000 1.217
***************
*** 225,233 ****
$self->config_( 'wordtable_format', '' );
- # This setting determines whether when viewing an individual message we show the word
- # table or not
-
- $self->config_( 'show_wordtable', 0 );
-
# Load skins
--- 225,228 ----
|
|
From: <xue...@us...> - 2003-10-15 09:13:07
|
Update of /cvsroot/popfile/windows
In directory sc8-pr-cvs1:/tmp/cvs-serv15719
Modified Files:
installer.nsi
Log Message:
Increase the delay between shutdown/startup checks. Try a different UI launch command (better on XP?)
Index: installer.nsi
===================================================================
RCS file: /cvsroot/popfile/windows/installer.nsi,v
retrieving revision 1.137
retrieving revision 1.138
diff -C2 -d -r1.137 -r1.138
*** installer.nsi 11 Oct 2003 19:27:22 -0000 1.137
--- installer.nsi 15 Oct 2003 09:12:28 -0000 1.138
***************
*** 150,154 ****
; Delay (in milliseconds) used inside the timeout loop
! !define C_SHUTDOWN_DELAY 500
;-------------------------------------------------------------------------------
--- 150,154 ----
; Delay (in milliseconds) used inside the timeout loop
! !define C_SHUTDOWN_DELAY 1000
;-------------------------------------------------------------------------------
***************
*** 162,166 ****
; Delay (in milliseconds) used inside the timeout loop
! !define C_STARTUP_DELAY 500
;------------------------------------------------
--- 162,166 ----
; Delay (in milliseconds) used inside the timeout loop
! !define C_STARTUP_DELAY 1000
;------------------------------------------------
***************
*** 2370,2374 ****
Function RunUI
! ExecShell "open" "http://127.0.0.1:$G_GUI"
FunctionEnd
--- 2370,2374 ----
Function RunUI
! ExecShell "open" "$SMPROGRAMS\${MUI_PRODUCT}\POPFile User Interface.url"
FunctionEnd
|
Update of /cvsroot/popfile/engine/manual/jp In directory sc8-pr-cvs1:/tmp/cvs-serv5592 Modified Files: email.html firewalls.html firsttime.html installing.html manual.html multiple.html proxies.html spa.html training.html Log Message: Updated Japanese manual Index: email.html =================================================================== RCS file: /cvsroot/popfile/engine/manual/jp/email.html,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** email.html 19 Sep 2003 13:20:33 -0000 1.3 --- email.html 14 Oct 2003 16:18:42 -0000 1.4 *************** *** 477,485 **** <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> <td width=55%> </td></tr> --- 477,488 ---- <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[(ú{ê)</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> + + <td width=2></td> + <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://popfile.sourceforge.jp/">uPOPFile Ìú{ê»vy[W</a></b></font></td> <td width=55%> </td></tr> Index: firewalls.html =================================================================== RCS file: /cvsroot/popfile/engine/manual/jp/firewalls.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** firewalls.html 11 Sep 2003 22:30:33 -0000 1.2 --- firewalls.html 14 Oct 2003 16:18:42 -0000 1.3 *************** *** 105,113 **** <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> <td width=55%> </td></tr> --- 105,116 ---- <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[(ú{ê)</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> + + <td width=2></td> + <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://popfile.sourceforge.jp/">uPOPFile Ìú{ê»vy[W</a></b></font></td> <td width=55%> </td></tr> Index: firsttime.html =================================================================== RCS file: /cvsroot/popfile/engine/manual/jp/firsttime.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** firsttime.html 11 Sep 2003 22:30:33 -0000 1.2 --- firsttime.html 14 Oct 2003 16:18:42 -0000 1.3 *************** *** 57,63 **** <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> --- 57,65 ---- <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[(ú{ê)</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> + <td width=2></td> + <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://popfile.sourceforge.jp/">uPOPFile Ìú{ê»vy[W</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> Index: installing.html =================================================================== RCS file: /cvsroot/popfile/engine/manual/jp/installing.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** installing.html 11 Sep 2003 22:30:33 -0000 1.2 --- installing.html 14 Oct 2003 16:18:42 -0000 1.3 *************** *** 43,47 **** <p><a href=http://sourceforge.net/project/showfiles.php?group_id=63137>POPFile Download Page</a> æè Windows CXg[[ð_E[hµÄA<tt>setup.exe</tt> ðÀsµAw¦É]ÁÄCXg[µÜ·B POPFile ðN®·éÉÍX^[gj [(X^[g > vO > POPFile > Run POPFile in Background) ©çN®·é©ARs [^[ðÄN®·êΩ®IÉN®µÜ·B<b>dv:</b> N®µÄàæÊÉͽà»êܹñI¿áñÆ®¢Ä¢é©Ç¤©ð`FbN·éû@ðm软êÎAȺÌuPOPFile ª¿áñÆ®¢Ä¢é©Ç¤©`FbN·évðÇñž³¢B</p> ! <p><font color="red">(óÒ: POPFile Í»ÝÌÆ±ëA»ê¾¯ÅÍú{êÌ[ð³µªÞ·é±ÆÍūܹñBú{ê»pb`ð ÄéKvª èÜ·Bú{ê»pb`ÌîñÉ¢ÄÍ<a href="http://popfile.sourceforge.jp/">POPFile Ìú{ê»</a>y[WðQƵľ³¢B)</font> </p> --- 43,47 ---- <p><a href=http://sourceforge.net/project/showfiles.php?group_id=63137>POPFile Download Page</a> æè Windows CXg[[ð_E[hµÄA<tt>setup.exe</tt> ðÀsµAw¦É]ÁÄCXg[µÜ·B POPFile ðN®·éÉÍX^[gj [(X^[g > vO > POPFile > Run POPFile in Background) ©çN®·é©ARs [^[ðÄN®·êΩ®IÉN®µÜ·B<b>dv:</b> N®µÄàæÊÉͽà»êܹñI¿áñÆ®¢Ä¢é©Ç¤©ð`FbN·éû@ðm软êÎAȺÌuPOPFile ª¿áñÆ®¢Ä¢é©Ç¤©`FbN·évðÇñž³¢B</p> ! <p><font color="red">(óÒ: POPFile Í 0.20.0 æèA¾êð Nihongo ÉÝè·êÎú{êÌ[𳵪Þū鿤ÉÈèܵ½B0.19.1 ÜÅKv¾Á½ú{ê»pb`ð ÄéKvÍ èܹñBܾú{껳êĢȢ@\Ì¡ãÌÎ\èEiWóµÈÇàÜßAú{ê»SÊÉÖíéîñÉ¢ÄÍø«±«<a href="http://popfile.sourceforge.jp/">POPFile Ìú{ê»</a>y[WÅöJµÄ¢«Ü·B)</font> </p> *************** *** 52,61 **** <li>ÅVo[WÌ POPFile</li> <li>POP3 vgRÎÌ[AJEg(ÙÆñÇÌAJEgÍ POP3 ÎÅ·ªAHotmail â Yahoo! Mail<font color="red">(óÒ: Yahoo! Japan ªñ·é Yahoo! Mail Íܾ POP3 ÎÌæ¤Å·)</font>Ìæ¤ÈEFu[ÍAÁÊÈ\tgEFAȵÅÍ POPFile Íg¦Ü¹ñ)</li> ! <li>ñ 2MB Ìó«fBXNXy[X</li> </ol> <p>ÅVo[WÌ POPFile Í <a href="http://sourceforge.net/project/showfiles.php?group_id=63137">POPFile download page</a> ÌepbP[WXgÌêÔãAzip `®Ìt@CƵÄèÉüê鱯ªÅ«Ü·BWindows [U[Í POPFile for Windows Æx³ê½ZNV©çt@Cð_E[h·é̪æ¢Åµå¤B</p> ! <p>POPFile ©ÌÍ1KoCgµ©fBXNXy[XðèßܹñB[ðªÞ·é½ßÉgíêé corpus ÆÄÎêéPêXgͳçÉ¢ç©ÌfBXNXy[XðKvƵA»ÌTCYÍ POPFile ðPû·é½ßÉg¤[ÌÆU誯̽ßÉìéoPcÌÉæÁÄÏíèÜ·B</p> <h3>NXvbgtH[o[W</h3> --- 52,61 ---- <li>ÅVo[WÌ POPFile</li> <li>POP3 vgRÎÌ[AJEg(ÙÆñÇÌAJEgÍ POP3 ÎÅ·ªAHotmail â Yahoo! Mail<font color="red">(óÒ: Yahoo! Japan ªñ·é Yahoo! Mail Íܾ POP3 ÎÌæ¤Å·)</font>Ìæ¤ÈEFu[ÍAÁÊÈ\tgEFAȵÅÍ POPFile Íg¦Ü¹ñ)</li> ! <li>ñ 20MB Ìó«fBXNXy[X</li> </ol> <p>ÅVo[WÌ POPFile Í <a href="http://sourceforge.net/project/showfiles.php?group_id=63137">POPFile download page</a> ÌepbP[WXgÌêÔãAzip `®Ìt@CƵÄèÉüê鱯ªÅ«Ü·BWindows [U[Í POPFile for Windows Æx³ê½ZNV©çt@Cð_E[h·é̪æ¢Åµå¤B</p> ! <p>POPFile ©ÌÍñ12KoCgÌfBXNXy[XðèßÜ·B[ðªÞ·é½ßÉgíêé corpus ÆÄÎêéPêXgͳçÉ¢ç©ÌfBXNXy[XðKvƵA»ÌTCYÍ POPFile ðPû·é½ßÉg¤[ÌÆU誯̽ßÉìéoPcÌÉæÁÄÏíèÜ·B</p> <h3>NXvbgtH[o[W</h3> *************** *** 81,87 **** <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> --- 81,89 ---- <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[(ú{ê)</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> + <td width=2></td> + <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://popfile.sourceforge.jp/">uPOPFile Ìú{ê»vy[W</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> Index: manual.html =================================================================== RCS file: /cvsroot/popfile/engine/manual/jp/manual.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** manual.html 11 Sep 2003 22:30:33 -0000 1.2 --- manual.html 14 Oct 2003 16:18:42 -0000 1.3 *************** *** 62,68 **** <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> --- 62,70 ---- <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[(ú{ê)</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> + <td width=2></td> + <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://popfile.sourceforge.jp/">uPOPFile Ìú{ê»vy[W</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> Index: multiple.html =================================================================== RCS file: /cvsroot/popfile/engine/manual/jp/multiple.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** multiple.html 11 Sep 2003 22:30:33 -0000 1.2 --- multiple.html 14 Oct 2003 16:18:42 -0000 1.3 *************** *** 47,53 **** <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> --- 47,55 ---- <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[(ú{ê)</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> + <td width=2></td> + <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://popfile.sourceforge.jp/">uPOPFile Ìú{ê»vy[W</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> Index: proxies.html =================================================================== RCS file: /cvsroot/popfile/engine/manual/jp/proxies.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** proxies.html 11 Sep 2003 22:30:33 -0000 1.2 --- proxies.html 14 Oct 2003 16:18:42 -0000 1.3 *************** *** 121,127 **** <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> --- 121,129 ---- <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[(ú{ê)</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> + <td width=2></td> + <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://popfile.sourceforge.jp/">uPOPFile Ìú{ê»vy[W</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> Index: spa.html =================================================================== RCS file: /cvsroot/popfile/engine/manual/jp/spa.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** spa.html 11 Sep 2003 22:30:33 -0000 1.2 --- spa.html 14 Oct 2003 16:18:42 -0000 1.3 *************** *** 67,73 **** <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> --- 67,75 ---- <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[(ú{ê)</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> + <td width=2></td> + <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://popfile.sourceforge.jp/">uPOPFile Ìú{ê»vy[W</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> Index: training.html =================================================================== RCS file: /cvsroot/popfile/engine/manual/jp/training.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** training.html 11 Sep 2003 22:30:33 -0000 1.2 --- training.html 14 Oct 2003 16:18:42 -0000 1.3 *************** *** 59,65 **** <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> --- 59,67 ---- <td align=center bgcolor=#cccc99 width=15%><font size=+1><b> <a href="http://popfile.sourceforge.net/manual/jp/manual.html">z[y[W</a></b></font></td> <td width=2></td> ! <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.jp/projects/popfile/forums/">tH[(ú{ê)</a></b></font></td> <td width=2></td> <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://sourceforge.net/tracker/?group_id=63137&atid=502956">oOf[^x[X</a></b></font></td> + <td width=2></td> + <td bgcolor=#ededca width=15% align=center><font size=+1><b> <a href="http://popfile.sourceforge.jp/">uPOPFile Ìú{ê»vy[W</a></b></font></td> <td width=55%> </td></tr> <tr height=1><td colspan=10 bgcolor=#CCCCCC></td></tr> |
|
From: <jgr...@us...> - 2003-10-14 16:18:29
|
Update of /cvsroot/popfile/engine/Classifier
In directory sc8-pr-cvs1:/tmp/cvs-serv5557
Modified Files:
Bayes.pm
Log Message:
Merge Junya patch that fixes problems I introduced when I 'cleaned up' the Japanese/Korean code
Index: Bayes.pm
===================================================================
RCS file: /cvsroot/popfile/engine/Classifier/Bayes.pm,v
retrieving revision 1.210
retrieving revision 1.211
diff -C2 -d -r1.210 -r1.211
*** Bayes.pm 14 Oct 2003 16:15:26 -0000 1.210
--- Bayes.pm 14 Oct 2003 16:18:25 -0000 1.211
***************
*** 870,886 ****
my ( $self, $noattype, $bucket, $type ) = @_;
! for my $magnet (sort keys %{$self->{magnets__}{$bucket}{$type}}) {
! my $regex;
! $regex = $magnet;
! $regex =~ s/@/__POPFILE_AT__/g;
! $regex =~ s/\$/__POPFILE_DOLLAR__/g;
! if ( $noattype =~ m/\Q$regex\E/i ) {
! $self->{scores__} = '';
! $self->{magnet_used__} = 1;
! $self->{magnet_detail__} = "$type: $magnet";
! return 1;
}
}
--- 870,905 ----
my ( $self, $noattype, $bucket, $type ) = @_;
! if ( $self->module_config_( 'html', 'language' ) =~ /^Nihongo|Korean$/ ) {
! no locale;
! for my $magnet (sort keys %{$self->{magnets__}{$bucket}{$type}}) {
! my $regex;
! $regex = $magnet;
! $regex =~ s/@/__POPFILE_AT__/g;
! $regex =~ s/\$/__POPFILE_DOLLAR__/g;
! if ( $noattype =~ m/\Q$regex\E/i ) {
! $self->{scores__} = '';
! $self->{magnet_used__} = 1;
! $self->{magnet_detail__} = "$type: $magnet";
! return 1;
! }
! }
! }else{
! for my $magnet (sort keys %{$self->{magnets__}{$bucket}{$type}}) {
! my $regex;
!
! $regex = $magnet;
! $regex =~ s/@/__POPFILE_AT__/g;
! $regex =~ s/\$/__POPFILE_DOLLAR__/g;
!
! if ( $noattype =~ m/\Q$regex\E/i ) {
! $self->{scores__} = '';
! $self->{magnet_used__} = 1;
! $self->{magnet_detail__} = "$type: $magnet";
!
! return 1;
! }
}
}
***************
*** 940,949 ****
# Disable the locale in Korean mode, too.
! if ( $self->module_config_( 'html', 'language' ) =~ /^Nihongo|Korean$/ ) {
! no locale;
! return $bucket if ( $self->magnet_match__( $noattype, $bucket, $type ) );
! } else {
! return $bucket if ( $self->magnet_match__( $noattype, $bucket, $type ) );
! }
}
}
--- 959,963 ----
# Disable the locale in Korean mode, too.
! return $bucket if ( $self->magnet_match__( $noattype, $bucket, $type ) );
}
}
|
|
From: <jgr...@us...> - 2003-10-14 16:17:22
|
Update of /cvsroot/popfile/engine/UI
In directory sc8-pr-cvs1:/tmp/cvs-serv5384
Modified Files:
HTML.pm
Log Message:
Merge Junya patch that fixes problems I introduced when I 'cleaned up' the Japanese/Korean code
Index: HTML.pm
===================================================================
RCS file: /cvsroot/popfile/engine/UI/HTML.pm,v
retrieving revision 1.215
retrieving revision 1.216
diff -C2 -d -r1.215 -r1.216
*** HTML.pm 13 Oct 2003 20:23:40 -0000 1.215
--- HTML.pm 14 Oct 2003 16:17:18 -0000 1.216
***************
*** 2672,2684 ****
$short_subject =~ s/=20/ /g;
$short_subject =~ /(.{40})/;
# Do not truncate at 39 if the last char is the first byte of DBCS char(pair of two bytes).
# Truncate it 1 byte shorter.
if ( $self->config_( 'language' ) =~ /^Korean|Nihongo$/ ) {
- $short_subject = $1;
$short_subject =~ s/(([\x80-\xff].)*)[\x80-\xff]?$/$1/;
$short_subject .= "...";
} else {
! $short_subject = "$1...";
}
}
--- 2672,2684 ----
$short_subject =~ s/=20/ /g;
$short_subject =~ /(.{40})/;
+ $short_subject = $1;
# Do not truncate at 39 if the last char is the first byte of DBCS char(pair of two bytes).
# Truncate it 1 byte shorter.
if ( $self->config_( 'language' ) =~ /^Korean|Nihongo$/ ) {
$short_subject =~ s/(([\x80-\xff].)*)[\x80-\xff]?$/$1/;
$short_subject .= "...";
} else {
! $short_subject .= "...";
}
}
|
|
From: <jgr...@us...> - 2003-10-14 16:15:32
|
Update of /cvsroot/popfile/engine/Classifier
In directory sc8-pr-cvs1:/tmp/cvs-serv4955/Classifier
Modified Files:
Bayes.pm MailParse.pm
Log Message:
Fix a bug where the HTML parser was NOT turning CR/LF into whitespace and update the test suite
Index: Bayes.pm
===================================================================
RCS file: /cvsroot/popfile/engine/Classifier/Bayes.pm,v
retrieving revision 1.209
retrieving revision 1.210
diff -C2 -d -r1.209 -r1.210
*** Bayes.pm 13 Oct 2003 20:23:40 -0000 1.209
--- Bayes.pm 14 Oct 2003 16:15:26 -0000 1.210
***************
*** 1098,1105 ****
if ($prob >= .999999) {
$probstr = sprintf("%12.6f", 0.999999);
- } elsif ($prob >= 0.1 || $prob == 0.0) {
- $probstr = sprintf("%12.6f", $prob);
} else {
! $probstr = sprintf("%17.6e", $prob);
}
--- 1098,1107 ----
if ($prob >= .999999) {
$probstr = sprintf("%12.6f", 0.999999);
} else {
! if ($prob >= 0.1 || $prob == 0.0) {
! $probstr = sprintf("%12.6f", $prob);
! } else {
! $probstr = sprintf("%17.6e", $prob);
! }
}
***************
*** 1188,1195 ****
if ($self->{wmformat__} eq 'score') {
$wordprobstr = sprintf("%12.4f", ($probability - $self->{not_likely__})/$log10 );
- } elsif ($self->{wmformat__} eq 'prob') {
- $wordprobstr = sprintf("%12.4f", $wordprobs{$bucket,$word});
} else {
! $wordprobstr = sprintf("%13.5f", exp($probability) );
}
--- 1190,1199 ----
if ($self->{wmformat__} eq 'score') {
$wordprobstr = sprintf("%12.4f", ($probability - $self->{not_likely__})/$log10 );
} else {
! if ($self->{wmformat__} eq 'prob') {
! $wordprobstr = sprintf("%12.4f", $wordprobs{$bucket,$word});
! } else {
! $wordprobstr = sprintf("%13.5f", exp($probability) );
! }
}
***************
*** 2003,2008 ****
foreach my $word (keys %{$self->{parser__}->{words__}}) {
! $self->set_value_( $bucket, $word, $subtract * $self->{parser__}->{words__}{$word} +
! $self->get_base_value_( $bucket, $word ) );
}
}
--- 2007,2012 ----
foreach my $word (keys %{$self->{parser__}->{words__}}) {
! $self->set_value_( $bucket, $word, $subtract * $self->{parser__}->{words__}{$word} + # PROFILE BLOCK START
! $self->get_base_value_( $bucket, $word ) ); # PROFILE BLOCK STOP
}
}
Index: MailParse.pm
===================================================================
RCS file: /cvsroot/popfile/engine/Classifier/MailParse.pm,v
retrieving revision 1.168
retrieving revision 1.169
diff -C2 -d -r1.168 -r1.169
*** MailParse.pm 10 Oct 2003 14:59:32 -0000 1.168
--- MailParse.pm 14 Oct 2003 16:15:26 -0000 1.169
***************
*** 1012,1016 ****
my $found = 1;
! $line =~ s/[\r\n]+//gm;
print "parse_html: [$line] " . $self->{in_html_tag__} . "\n" if $self->{debug__};
--- 1012,1016 ----
my $found = 1;
! $line =~ s/[\r\n]+/ /gm;
print "parse_html: [$line] " . $self->{in_html_tag__} . "\n" if $self->{debug__};
|
|
From: <jgr...@us...> - 2003-10-14 16:15:32
|
Update of /cvsroot/popfile/engine/Proxy
In directory sc8-pr-cvs1:/tmp/cvs-serv4955/Proxy
Modified Files:
POP3.pm
Log Message:
Fix a bug where the HTML parser was NOT turning CR/LF into whitespace and update the test suite
Index: POP3.pm
===================================================================
RCS file: /cvsroot/popfile/engine/Proxy/POP3.pm,v
retrieving revision 1.79
retrieving revision 1.80
diff -C2 -d -r1.79 -r1.80
*** POP3.pm 13 Oct 2003 20:23:40 -0000 1.79
--- POP3.pm 14 Oct 2003 16:15:27 -0000 1.80
***************
*** 329,333 ****
if ( $2 ne '99999999' ) {
! if ( $self->config_( 'toptoo' ) ) {
my $response = $self->echo_response_($mail, $client, "RETR $count" );
last if ( $response == 2 );
--- 329,333 ----
if ( $2 ne '99999999' ) {
! if ( $self->config_( 'toptoo' ) == 1 ) {
my $response = $self->echo_response_($mail, $client, "RETR $count" );
last if ( $response == 2 );
|
Update of /cvsroot/popfile/engine/tests
In directory sc8-pr-cvs1:/tmp/cvs-serv28571/tests
Modified Files:
TestBayes.tst TestHTML.script TestHTML.tst TestHTTP.tst
TestMailParse.tst TestMailParse015.clr TestMailParse019.clr
TestMailParse022.cam TestMailParse022.msg TestMailParse022.wrd
TestModule.tst TestPOP3.tst TestProxy.tst TestWordMangle.tst
Log Message:
FINAL PREPARATIONS FOR V0.20.0
Bring test suite to as close to 100% coverage as possible
Clean up Japanese/Korean code for better maintainability
Fix problem with random test suite crashes
Proxy/POP3.pm:
Add code to upgrade the welcome_string if the user has not
changed it from the default in a previous version of POPFile.
Classifier/Bayes.pm:
Remove a lot of code that was duplicated because of
the addition of Japanese and Korean support. To do
so created two helper methods: add_words_to_bucket__
and magnet_match__. There's still some duplicated code
(e.g. calls to these functions) but I can't find a good
way to deal with 'no locale' other than this.
Add hints for the code coverage about blocks of code.
Change the word scores code so that the scores are not
calculated if not required.
UI/HTML.pm:
Handle the display and non-display of the word matrix,
remove the stickiness of the word table format since
POPFile has not other 'sticky' values at this point.
Remove duplicated code introduced by Japanese and
Korean support.
tests.pl:
Accept multiple patterns on the command line so that
multiple tests can be specified at once. Patterns are
separated by commas. e.g. to run the HTTP and MailParse
test suites do:
gmake test TESTARGS=HTTP,MailParse
license:
Incorporate information about the BerkeleyDB license.
tests/TestWordMangle.tst:
Add tests for Japanese stop word support.
tests/TestModule.tst:
Add calls to dummy parent methods that do nothing, done
to get coverage to 100%.
tests/TestMailParse.tst
tests/TestPOP3.tst
tests/TestHTML.tst:
Make sure to stop the Bayes module to close the database.
tests/TestHTML.script:
Add tests for the new Single Message View where the word
matrix is not expanded by default. Test with and without
the word matrix and test the different views.
Added tests for Japanese and Korean stop words.
tests/TestProxy.tst:
Add tests for echo_response_'s handling of timeouts.
tests/languages/Korean.msg
tests/languages/Nihongo.msg:
Added the Korean and Japanese language files.
tests/TestMailParse022.cam
tests/TestMailParse022.wrd
tests/TestMailParse022.msg:
Split the From and Subject line to check the new
long header support.
tests/TestMailParse019.clr
tests/TestMailParse015.clr:
The information in this appeared to be wrong, so updated
to the latest output.
tests/TestMailParse.tst:
Add TestMailParse019 to the colorization tests.
Index: TestBayes.tst
===================================================================
RCS file: /cvsroot/popfile/engine/tests/TestBayes.tst,v
retrieving revision 1.29
retrieving revision 1.30
diff -C2 -d -r1.29 -r1.30
*** TestBayes.tst 30 Sep 2003 00:06:35 -0000 1.29
--- TestBayes.tst 13 Oct 2003 20:23:41 -0000 1.30
***************
*** 23,26 ****
--- 23,27 ----
# ---------------------------------------------------------------------------------------------
+ test_assert( `rm -rf messages` == 0 );
test_assert( `rm -rf corpus` == 0 );
test_assert( `cp -R corpus.base corpus` == 0 );
Index: TestHTML.script
===================================================================
RCS file: /cvsroot/popfile/engine/tests/TestHTML.script,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -d -r1.19 -r1.20
*** TestHTML.script 30 Sep 2003 00:02:03 -0000 1.19
--- TestHTML.script 13 Oct 2003 20:23:41 -0000 1.20
***************
*** 329,337 ****
MATCH 2.829186e-005
MATCH <font color="red">here</font>
! MATCH 0.3289
! MATCH 0.6697
MATCH <font color="black">John</font>
MATCH <font color="red">here</font>
MATCH Body would
# Jump to message
--- 329,349 ----
MATCH 2.829186e-005
MATCH <font color="red">here</font>
! NOTMATCH 0.3289
! NOTMATCH 0.6697
MATCH <font color="black">John</font>
MATCH <font color="red">here</font>
MATCH Body would
+ GET /view?view=popfile10000=1.msg&start_message=0&session=$sk&format=prob
+ MATCH showing word probabilities
+ MATCH 0.3289
+ MATCH 0.6697
+ GET /view?view=popfile10000=1.msg&start_message=0&session=$sk&format=freq
+ MATCH showing word frequencies
+ MATCH 0.00165
+ MATCH 0.00336
+ GET /view?view=popfile10000=1.msg&start_message=0&session=$sk&format=score
+ MATCH showing word scores
+ MATCH 2.3639
+ MATCH 2.6727
# Jump to message
***************
*** 347,352 ****
MATCH 2.829186e-005
MATCH <font color="red">here</font>
! MATCH 0.3289
! MATCH 0.6697
MATCH <font color="black">John</font>
MATCH <font color="red">here</font>
--- 359,364 ----
MATCH 2.829186e-005
MATCH <font color="red">here</font>
! NOTMATCH 0.3289
! NOTMATCH 0.6697
MATCH <font color="black">John</font>
MATCH <font color="red">here</font>
***************
*** 815,820 ****
--- 827,853 ----
MATCH Ignored words can only contain alphanumeric, ., _, -, or @ characters
+ # TODO Write better tests for stop words in Japanese
+ # and Korean
+
+ GET /configuration
+ SETSUBMIT language Nihongo
+ GET /advanced
+ MATCH address
+ MATCH localhost
+ MATCH smtp
+
+ GET /configuration
+ SETSUBMIT language Korean
+ GET /advanced
+ MATCH address
+ MATCH localhost
+ MATCH smtp
+
+ GET /configuration
+ SETSUBMIT language English
+
# Check change arbitrary parameter
+ GET /advanced
SETSUBMIT parameter_bayes_hostname testhostname
CONFIGIS bayes_hostname testhostname
Index: TestHTML.tst
===================================================================
RCS file: /cvsroot/popfile/engine/tests/TestHTML.tst,v
retrieving revision 1.21
retrieving revision 1.22
diff -C2 -d -r1.21 -r1.22
*** TestHTML.tst 30 Sep 2003 00:02:04 -0000 1.21
--- TestHTML.tst 13 Oct 2003 20:23:41 -0000 1.22
***************
*** 317,320 ****
--- 317,322 ----
close $uwriter;
+ $h->stop();
+
exit(0);
} else {
***************
*** 539,541 ****
--- 541,544 ----
}
+ $b->stop();
Index: TestHTTP.tst
===================================================================
RCS file: /cvsroot/popfile/engine/tests/TestHTTP.tst,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** TestHTTP.tst 15 Sep 2003 14:55:37 -0000 1.4
--- TestHTTP.tst 13 Oct 2003 20:23:41 -0000 1.5
***************
*** 23,26 ****
--- 23,31 ----
# ---------------------------------------------------------------------------------------------
+ test_assert( `rm -rf messages` == 0 );
+ test_assert( `rm -rf corpus` == 0 );
+ test_assert( `cp -R corpus.base corpus` == 0 );
+ test_assert( `rm -rf corpus/CVS` == 0 );
+
sub my_handler
{
Index: TestMailParse.tst
===================================================================
RCS file: /cvsroot/popfile/engine/tests/TestMailParse.tst,v
retrieving revision 1.20
retrieving revision 1.21
diff -C2 -d -r1.20 -r1.21
*** TestMailParse.tst 29 Sep 2003 23:19:45 -0000 1.20
--- TestMailParse.tst 13 Oct 2003 20:23:41 -0000 1.21
***************
*** 23,26 ****
--- 23,30 ----
# ---------------------------------------------------------------------------------------------
+ test_assert( `rm -rf messages` == 0 );
+ test_assert( `rm -rf corpus` == 0 );
+ test_assert( `cp -R corpus.base corpus` == 0 );
+ test_assert( `rm -rf corpus/CVS` == 0 );
unlink 'stopwords';
test_assert( `cp stopwords.base stopwords` == 0 );
***************
*** 206,210 ****
# Test colorization
! my @color_tests = ( 'TestMailParse015.msg' );
for my $color_test (@color_tests) {
--- 210,214 ----
# Test colorization
! my @color_tests = ( 'TestMailParse015.msg', 'TestMailParse019.msg' );
for my $color_test (@color_tests) {
***************
*** 282,283 ****
--- 286,289 ----
test_assert_equal( $cl->splitline( '=3Chtml=3E', 'quoted-Printable' ), '<html>' );
test_assert_equal( $cl->splitline( '=3Chtml=3E', '' ), '=3Chtml=3E' );
+
+ $b->stop();
Index: TestMailParse015.clr
===================================================================
RCS file: /cvsroot/popfile/engine/tests/TestMailParse015.clr,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** TestMailParse015.clr 24 Aug 2003 04:04:52 -0000 1.4
--- TestMailParse015.clr 13 Oct 2003 20:23:41 -0000 1.5
***************
*** 1 ****
! <tt><b><font color="black">Return-Path</font></b>: <<b><font color="black">wen...@ms...</font></b>><br /><b><font color="black">Received</font></b>: from <b><font color="black">vanyel</font></b>.<b><font color="black">herald</font></b>.co.uk (<b><font color="black">vanyel</font></b>.<b><font color="black">herald</font></b>.co.uk [<b><font color="black">213.38.80.6</font></b>]) by <b><font color="black">walnut.<b><font color="black">he.net</font></b></font></b> (8.8.6/8.8.2) with ESMTP id IAA29761 for <<b><font color="black">jg...@ex...</font></b>>; Fri, 24 Jan 2003 08:52:24 -0800<br /><b><font color="black">From</font></b>: <b><font color="black">wendyoufp@<b><font color="black">msn.com</font></b></font></b><br /><b><font color="black">Received</font></b>: from <b><font color="black">msn.com</font></b> (nn...@ad... [<b><font color="black">66.125.127.84</font></b>])<br /> by <b><font color="black">vanyel</font></b>.<b><font color="black">herald</font></b>.co.uk (8.9.3/8.9.3/<b><font color="black">Debian</font></b>/<b><font color="black">GNU</font></b>) with SMTP id QAA05835<br /><b><font color="black">X-Authentication-Warning</font></b>: <b><font color="black">vanyel</font></b>.<b><font color="black">herald</font></b>.co.uk: <b><font color="black">Host</font></b> nn...@ad... [<b><font color="black">66.125.127.84</font></b>] <b><font color="black">claimed</font></b> to be <b><font color="black">msn.com</font></b><br /><b><font color="black">Message-ID</font></b>: <000111d7ed07$cbd54352$146...@vy...><br /><b><font color="black">Subject</font></b>: <b><font color="black">Mooo</font></b><br /><b><font color="black">Date</font></b>: Sat, 25 Jan 2003 02:42:48 -1100<br /><b><font color="black">MIME-Version</font></b>: 1.0<br /><b><font color="black">Content-Type</font></b>: multipart/mixed;<br /> boundary="----=_NextPart_000_00C3_68A82A2C.D7041A60"<br /><b><font color="black">X-Priority</font></b>: 3<br /><b><font color="black">X-Mailer</font></b>: <b><font color="black">AOL</font></b> 7.0 for <b><font color="black">Windows</font></b> US sub 118<br /><b><font color="black">Importance</font></b>: <b><font color="black">Normal</font></b><br /><b><font color="black">X-UIDL</font></b>: &Tb"!2d_!!]9M!!OK]!!<br /><br />------=_NextPart_000_00C3_68A82A2C.D7041A60<br /><b><font color="black">Content-Type</font></b>: text/html;<br /> charset="<b><font color="black">iso-8859-1</font></b>"<br /><b><font color="black">Content-Transfer-Encoding</font></b>: base64<br /><br /><br />PGh0bWw+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPg0KPCEtLQ0KLmNvbnRv<br />dXIgew0KCWJvcmRlcjogMnB4IGluc2V0ICM2NjAwMzM7DQoJYmFja2dyb3Vu<br />ZC1jb2xvcjogIzY5M0YzMjsNCglmb250LWZhbWlseTogdmVyZGFuYTsNCglm<br />b250LXNpemU6IDE2cHg7DQoJY29sb3I6ICNDQ0ZGMDA7DQp9DQoudGV4dCB7<br />DQoJZm9udC1mYW1pbHk6IHZlcmRhbmE7DQoJY29sb3I6ICNDQ0ZGMDA7DQoJ<br />Zm9udC1zaXplOiAxMnB4Ow0KfQ0KLS0+DQo8L3N0eWxlPg0KPC9oZWFkPg0K<br />DQo8Ym9keSBsaW5rPSIjRkZGRkZGIiBhbGluaz0iI0ZGRkZGRiIgdmxpbms9<br />IiNGRkZGRkYiPg0KPHRhYmxlIHdpZHRoPSI1NzMiIGJvcmRlcj0iMCIgYWxp<br />Z249ImNlbnRlciIgY2VsbHBhZGRpbmc9IjEwIiBjZWxsc3BhY2luZz0iMTAi<br />Pg0KICA8dHI+DQogICAgPHRkIHdpZHRoPSI1MzMiIGNsYXNzPSJjb250b3Vy<br />Ij48ZGl2IGFsaWduPSJjZW50ZXIiPg0KICAgICAgICA8dGFibGUgd2lkdGg9<br />IjEwMCUiIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5n<br />PSIwIj4NCiAgICAgICAgICA8dHI+IA0KICAgICAgICAgICAgPHRkIGNsYXNz<br />PSJ0ZXh0Ij4mbmJzcDs8L3RkPg0KICAgICAgICAgIDwvdHI+DQogICAgICAg<br />ICAgPHRyPiANCiAgICAgICAgICAgIDx0ZCBjbGFzcz0idGV4dCI+PGRpdiBh<br />bGlnbj0iY2VudGVyIj48c3Ryb25nPjxmb250IHNpemU9IjUiPkJhbm5lZCAN<br />CiAgICAgICAgICAgICAgICBFeGNsdXNpdmUgRkFSTVlBUkQgY29udGVudDwv<br />Zm9udD48L3N0cm9uZz48L2Rpdj48L3RkPg0KICAgICAgICAgIDwvdHI+DQog<br />ICAgICAgICAgPHRyPg0KICAgICAgICAgICAgPHRkIGNsYXNzPSJ0ZXh0Ij4m<br />bmJzcDs8L3RkPg0KICAgICAgICAgIDwvdHI+DQogICAgICAgICAgPHRyPiAN<br />CiAgICAgICAgICAgIDx0ZCBjbGFzcz0idGV4dCI+Jm5ic3A7PC90ZD4NCiAg<br />ICAgICAgICA8L3RyPg0KICAgICAgICAgIDx0cj4gDQogICAgICAgICAgICA8<br />dGQgY2xhc3M9InRleHQiPiA8ZGl2IGFsaWduPSJjZW50ZXIiPiANCiAgICAg<br />ICAgICAgICAgICA8ZGl2IGFsaWduPSJsZWZ0Ij4gDQogICAgICAgICAgICAg<br />ICAgICA8ZGl2IGFsaWduPSJqdXN0aWZ5Ij48Zm9udCBjb2xvcj0iI0ZGRkZG<br />RiI+IA0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGFsaWduPSJsZWZ0Ij48<br />Zm9udCBzaXplPSIzIj48c3Ryb25nPldhdGNoIGFzIHRoZXNlIHdvbWFuIA0K<br />ICAgICAgICAgICAgICAgICAgICAgIGZyb20gYXJvdW5kIHRoZSB3b3JsZCBn<br />ZXQgZG93biBhbmQgZGlydHkgd2l0aCB0aGUgcGlncy4gDQogICAgICAgICAg<br />ICAgICAgICAgICAgUmlkZSB0aGUgYmxhY2sgc3RhbGxpb25zLCBhbmQgZ2V0<br />IHRoZWlyIGJ1c2ggbGlja2VkIGJ5IGxpdHRsZSANCiAgICAgICAgICAgICAg<br />ICAgICAgICB0aW1teSdzIGRvZyBGaWRvLiA8L3N0cm9uZz48L2ZvbnQ+PC9k<br />aXY+DQogICAgICAgICAgICAgICAgICAgIDwvZm9udD48L2Rpdj4NCiAgICAg<br />ICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAg<br />ICAgICAgICAgIDxwIGFsaWduPSJsZWZ0Ij48c3Ryb25nPjxmb250IGNvbG9y<br />PSIjRkZGRkZGIiBzaXplPSIzIj5XaXRoIGEgdGVhbSANCiAgICAgICAgICAg<br />ICAgICBvZiA0NiBnaXJscywgNiBwaG90b2dyYXBoZXJzLCA0IHZpZGVvZ3Jh<br />cGhlcnMgd2Ugc2V0IG9mZiB0byBhIA0KICAgICAgICAgICAgICAgIGZhcm0g<br />d2UgaGFkIHJlbnRlZCBmcm9tIGEgbG9jYWwgZmFybWVyLiA0NSBhY3Jlcywg<br />YW5kIGFsbCB0aGUgDQogICAgICAgICAgICAgICAgcHJpdmFjeSBpbiB0aGUg<br />d29ybGQuIFRoZSBtb3N0IGJlYXV0aWZ1bCBmYXJtIGFuaW1hbHMgd2UgaGF2<br />ZSANCiAgICAgICAgICAgICAgICBldmVyIHNlZW4uIFdpdGggdGhpcyB3ZSBz<br />dGFydGVkIHNob290aW5nIHRoZSBjb250ZW50LCByYW4gbGl2ZSANCiAgICAg<br />ICAgICAgICAgICBmZWVkcyBmcm9tIG91ciBmYXJtIHRvIG91ciBtZW1iZXJz<br />LCB0b29rIHJlcXVlc3QgZm9yIHRoZSBuZXh0IA0KICAgICAgICAgICAgICAg<br />IHBob3Rvc2hvb3QuPC9mb250Pjwvc3Ryb25nPjwvcD4NCiAgICAgICAgICAg<br />ICAgPHAgYWxpZ249ImxlZnQiPjxzdHJvbmc+PGZvbnQgY29sb3I9IiNGRkZG<br />RkYiIHNpemU9IjMiPldlIGhhdmUgd2hhdCANCiAgICAgICAgICAgICAgICBv<br />dXIgbWVtYmVycyBjYWxsICZxdW90O3RoZSBtb3N0IGFsbCBhcm91bmQsIGNv<br />bnRlbnQgZmlsbGVkIGZhcm15YXJkIA0KICAgICAgICAgICAgICAgIHNpdGUg<br />b3V0IHRoZXJlJnF1b3Q7LjwvZm9udD48L3N0cm9uZz48L3A+DQogICAgICAg<br />ICAgICAgIDxwIGFsaWduPSJsZWZ0Ij48c3Ryb25nPjxmb250IGNvbG9yPSIj<br />RkZGRkZGIiBzaXplPSIzIj48YnI+DQogICAgICAgICAgICAgICAgWW91IGRv<br />bnQgaGF2ZSB0byB0YWtlIG91ciB3b3JkIGZvciBpdCwgdmlzaXQgb3VyIHNp<br />dGUgZm9yIHlvdXJzZWxmLiANCiAgICAgICAgICAgICAgICBMZXQgeW91cnNl<br />bGYgYmUgdGFrZW4gaW4gYnkgb3VyIGJlYXV0aWZ1bCB3b21hbiwgd2hvIGhh<br />dmUgYSBsb3ZlIA0KICAgICAgICAgICAgICAgIGZvciBhbmltYWxzLjwvZm9u<br />dD48L3N0cm9uZz48L3A+DQogICAgICAgICAgICAgIDxwIGFsaWduPSJsZWZ0<br />Ij48c3Ryb25nPjxmb250IGNvbG9yPSIjRkZGRkZGIiBzaXplPSIzIj48YSBo<br />cmVmPSJodHRwOi8vd3d3LmZyZWVzZXhvbnRoZXdlYi5iei9mc3cvc2Zhcm0y<br />LyI+PGZvbnQgY29sb3I9IiNDQ0ZGMDAiPkNsaWNrIA0KICAgICAgICAgICAg<br />ICAgIGhlcmU8L2ZvbnQ+PC9hPiwgYW5kIGxldCBvdXIgZ2lybHMgYW5kIGFu<br />aW1hbHMgZnVsZmlsbCB5b3VyIGZhbnRhc2llcy48L2ZvbnQ+PC9zdHJvbmc+<br />PC9wPg0KICAgICAgICAgICAgICA8cCBhbGlnbj0ibGVmdCI+PHN0cm9uZz48<br />Zm9udCBjb2xvcj0iIzk5RkYwMCIgc2l6ZT0iMyI+PGEgaHJlZj0iaHR0cDov<br />L3d3dy5mcmVlc2V4b250aGV3ZWIuYnovZnN3L3NmYXJtMi8iPmh0dHA6Ly93<br />d3cuZnJlZXNleG9udGhld2ViLmJ6L2Zzdy9zZmFybTIvPC9hPjwvZm9udD4g<br />DQogICAgICAgICAgICAgICAgPC9zdHJvbmc+IDwvcD4NCiAgICAgICAgICAg<br />ICAgPHAgYWxpZ249ImNlbnRlciI+PGZvbnQgY29sb3I9IiNGRkZGRkYiIHNp<br />emU9IjEiPjxicj4NCiAgICAgICAgICAgICAgICA8YnI+DQogICAgICAgICAg<br />ICAgICAgPGJyPg0KICAgICAgICAgICAgICAgIDxicj4NCiAgICAgICAgICAg<br />ICAgICA8YnI+DQogICAgICAgICAgICAgICAgPGJyPg0KICAgICAgICAgICAg<br />ICAgIDxmb250IHNpemU9Ii0yIiBjb2xvcj0iIzY2NjY2NiI+PGEgaHJlZj0i<br />aHR0cDovL3d3dy5mcmVlc2V4b250aGV3ZWIuYnovZnN3L3JlbSI+PGZvbnQg<br />Y29sb3I9IiM2NjY2NjYiPkNsaWNrIA0KICAgICAgICAgICAgICAgIGhlcmU8<br />L2ZvbnQ+PC9hPiB0byByZW1vdmUgeW91cnNlbGYgZnJvbSBvdXIgbGlzdC48<br />L2ZvbnQ+PGJyPg0KICAgICAgICAgICAgICAgIDxicj4NCiAgICAgICAgICAg<br />ICAgPC9wPg0KICAgICAgICAgICAgICA8L3RkPg0KICAgICAgICAgIDwvdHI+<br />DQogICAgICAgIDwvdGFibGU+DQogICAgICA8L2Rpdj48L3RkPg0KICA8L3Ry<br />Pg0KPC90YWJsZT4NCjwvYm9keT4NCjwvaHRtbD4=<br />------=_NextPart_000_00C3_68A82A2C.D7041A60--<br /><b>Found in encoded data:</b> <b><font color="black"><a title="html:comment"><!--.contour { border: 2px inset #660033; background-color: #693F32; font-family: verdana; font-size: 16px; color: #CCFF00;}.text { font-family: verdana; color: #CCFF00; font-size: 12px;}--></a></font></b> <b><font color="black"><a title="html:td">td</a></font></b> <b><font color="black"><a title="html:td">td</a></font></b> <b><font color="black"><a title="html:td">td</a></font></b> <b><font color="black"><a title="html:fontsize5">size="5"</a></font></b> <font color="black">Banned</font> <font color="black">Exclusive</font> <font color="black">FARMYARD</font> <font color="black">content</font> <b><font color="black"><a title="html:td">td</a></font></b> <b><font color="black"><a title="html:td">td</a></font></b> <b><font color="black"><a title="html:td">td</a></font></b> <font color="black">#FFFFFF</font> <b><font color="black"><a title="html:fontcolor#FFFFFF">color="#FFFFFF"</a></font></b> <b><font color="black"><a title="html:fontsize3">size="3"</a></font></b> <b><font color="black"><a title="trick:invisibleink">Watch as these woman from around the world get down and dirty with the pigs. Ride the black stallions, and get their bush licked by little timmy's dog Fido. </a></font></b> <font color="black">#FFFFFF</font> <b><font color="black"><a title="html:fontcolor#FFFFFF">color="#FFFFFF"</a></font></b> <b><font color="black"><a title="html:fontsize3">size="3"</a></font></b> <b><font color="black"><a title="trick:invisibleink">With a team of 46 girls, 6 photographers, 4 videographers we set off to a farm we had rented from a local farmer. 45 acres, and all the privacy in the world. The most beautiful farm animals we have ever seen. With this we started shooting the content, ran live feeds from our farm to our members, took request for the next photoshoot.</a></font></b> <font color="black">#FFFFFF</font> <b><font color="black"><a title="html:fontcolor#FFFFFF">color="#FFFFFF"</a></font></b> <b><font color="black"><a title="html:fontsize3">size="3"</a></font></b> <b><font color="black"><a title="trick:invisibleink">We have what our members call "the most all around, content filled farmyard site out there".</a></font></b> <font color="black">#FFFFFF</font> <b><font color="black"><a title="html:fontcolor#FFFFFF">color="#FFFFFF"</a></font></b> <b><font color="black"><a title="html:fontsize3">size="3"</a></font></b> <b><font color="black"><a title="trick:invisibleink"> You dont have to take our word for it, visit our site for yourself. Let yourself be taken in by our beautiful woman, who have a love for animals.</a></font></b> <font color="black">#FFFFFF</font> <b><font color="black"><a title="html:fontcolor#FFFFFF">color="#FFFFFF"</a></font></b> <b><font color="black"><a title="html:fontsize3">size="3"</a></font></b> <font color="black">www.freesexontheweb.bz</font> <font color="black">freesexontheweb.bz</font> <font color="black">#CCFF00</font> <b><font color="black"><a title="html:fontcolor#CCFF00">color="#CCFF00"</a></font></b> <font color="black">Click</font> <font color="black">here</font> <font color="black">let</font> <font color="black">girls</font> <font color="black">animals</font> <font color="black">fulfill</font> <font color="black">fantasies</font> <font color="black">#99FF00</font> <b><font color="black"><a title="html:fontcolor#99FF00">color="#99FF00"</a></font></b> <b><font color="black"><a title="html:fontsize3">size="3"</a></font></b> <font color="black">www.freesexontheweb.bz</font> <font color="black">freesexontheweb.bz</font> <font color="black">freesexontheweb</font> <font color="black">fsw</font> <font color="black">sfarm</font> <font color="black">#FFFFFF</font> <b><font color="black"><a title="html:fontcolor#FFFFFF">color="#FFFFFF"</a></font></b> <b><font color="black"><a title="html:fontsize1">size="1"</a></font></b> <b><font color="black"><a title="html:fontsize-2">size="-2"</a></font></b> <font color="black">#666666</font> <b><font color="black"><a title="html:fontcolor#666666">color="#666666"</a></font></b> <font color="black">www.freesexontheweb.bz</font> <font color="black">freesexontheweb.bz</font> <font color="black">#666666</font> <b><font color="black"><a title="html:fontcolor#666666">color="#666666"</a></font></b> <font color="black">Click</font> <font color="black">here</font> <font color="black">remove</font> <font color="black">yourself</font> <font color="black">list</font> </tt>
\ No newline at end of file
--- 1 ----
! <tt><b><font color="black">Return-Path</font></b>: <<b><font color="blue">wen...@ms...</font></b>><br /><b><font color="black">Received</font></b>: from <b><font color="red">vanyel</font></b>.<b><font color="red">herald</font></b>.co.uk (<b><font color="red">vanyel</font></b>.<b><font color="red">herald</font></b>.co.uk [<b><font color="red">213.38.80.6</font></b>]) by <b><font color="red">walnut.<b><font color="red">he.net</font></b></font></b> (8.8.6/8.8.2) with ESMTP id IAA29761 for <<b><font color="red">jg...@ex...</font></b>>; Fri, 24 Jan 2003 08:52:24 -0800<br /><b><font color="black">From</font></b>: <b><font color="blue">wendyoufp@<b><font color="blue">msn.com</font></b></font></b><br /><b><font color="black">Received</font></b>: from <b><font color="blue">msn.com</font></b> (nn...@ad... [<b><font color="blue">66.125.127.84</font></b>])<br /> by <b><font color="red">vanyel</font></b>.<b><font color="red">herald</font></b>.co.uk (8.9.3/8.9.3/<b><font color="black">Debian</font></b>/<b><font color="black">GNU</font></b>) with SMTP id QAA05835<br /><b><font color="black">X-Authentication-Warning</font></b>: <b><font color="red">vanyel</font></b>.<b><font color="red">herald</font></b>.co.uk: <b><font color="blue">Host</font></b> nn...@ad... [<b><font color="blue">66.125.127.84</font></b>] <b><font color="blue">claimed</font></b> to be <b><font color="blue">msn.com</font></b><br /><b><font color="black">Message-ID</font></b>: <000111d7ed07$cbd54352$146...@vy...><br /><b><font color="black">Subject</font></b>: <b><font color="blue">Mooo</font></b><br /><b><font color="black">Date</font></b>: Sat, 25 Jan 2003 02:42:48 -1100<br /><b><font color="black">MIME-Version</font></b>: 1.0<br /><b><font color="black">Content-Type</font></b>: multipart/mixed;<br /> boundary="----=_NextPart_000_00C3_68A82A2C.D7041A60"<br /><b><font color="black">X-Priority</font></b>: 3<br /><b><font color="black">X-Mailer</font></b>: <b><font color="blue">AOL</font></b> 7.0 for <b><font color="red">Windows</font></b> US sub 118<br /><b><font color="black">Importance</font></b>: <b><font color="blue">Normal</font></b><br /><b><font color="black">X-UIDL</font></b>: &Tb"!2d_!!]9M!!OK]!!<br /><br />------=_NextPart_000_00C3_68A82A2C.D7041A60<br /><b><font color="black">Content-Type</font></b>: text/html;<br /> charset="<b><font color="blue">iso-8859-1</font></b>"<br /><b><font color="black">Content-Transfer-Encoding</font></b>: base64<br /><br /><br />PGh0bWw+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPg0KPCEtLQ0KLmNvbnRv<br />dXIgew0KCWJvcmRlcjogMnB4IGluc2V0ICM2NjAwMzM7DQoJYmFja2dyb3Vu<br />ZC1jb2xvcjogIzY5M0YzMjsNCglmb250LWZhbWlseTogdmVyZGFuYTsNCglm<br />b250LXNpemU6IDE2cHg7DQoJY29sb3I6ICNDQ0ZGMDA7DQp9DQoudGV4dCB7<br />DQoJZm9udC1mYW1pbHk6IHZlcmRhbmE7DQoJY29sb3I6ICNDQ0ZGMDA7DQoJ<br />Zm9udC1zaXplOiAxMnB4Ow0KfQ0KLS0+DQo8L3N0eWxlPg0KPC9oZWFkPg0K<br />DQo8Ym9keSBsaW5rPSIjRkZGRkZGIiBhbGluaz0iI0ZGRkZGRiIgdmxpbms9<br />IiNGRkZGRkYiPg0KPHRhYmxlIHdpZHRoPSI1NzMiIGJvcmRlcj0iMCIgYWxp<br />Z249ImNlbnRlciIgY2VsbHBhZGRpbmc9IjEwIiBjZWxsc3BhY2luZz0iMTAi<br />Pg0KICA8dHI+DQogICAgPHRkIHdpZHRoPSI1MzMiIGNsYXNzPSJjb250b3Vy<br />Ij48ZGl2IGFsaWduPSJjZW50ZXIiPg0KICAgICAgICA8dGFibGUgd2lkdGg9<br />IjEwMCUiIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5n<br />PSIwIj4NCiAgICAgICAgICA8dHI+IA0KICAgICAgICAgICAgPHRkIGNsYXNz<br />PSJ0ZXh0Ij4mbmJzcDs8L3RkPg0KICAgICAgICAgIDwvdHI+DQogICAgICAg<br />ICAgPHRyPiANCiAgICAgICAgICAgIDx0ZCBjbGFzcz0idGV4dCI+PGRpdiBh<br />bGlnbj0iY2VudGVyIj48c3Ryb25nPjxmb250IHNpemU9IjUiPkJhbm5lZCAN<br />CiAgICAgICAgICAgICAgICBFeGNsdXNpdmUgRkFSTVlBUkQgY29udGVudDwv<br />Zm9udD48L3N0cm9uZz48L2Rpdj48L3RkPg0KICAgICAgICAgIDwvdHI+DQog<br />ICAgICAgICAgPHRyPg0KICAgICAgICAgICAgPHRkIGNsYXNzPSJ0ZXh0Ij4m<br />bmJzcDs8L3RkPg0KICAgICAgICAgIDwvdHI+DQogICAgICAgICAgPHRyPiAN<br />CiAgICAgICAgICAgIDx0ZCBjbGFzcz0idGV4dCI+Jm5ic3A7PC90ZD4NCiAg<br />ICAgICAgICA8L3RyPg0KICAgICAgICAgIDx0cj4gDQogICAgICAgICAgICA8<br />dGQgY2xhc3M9InRleHQiPiA8ZGl2IGFsaWduPSJjZW50ZXIiPiANCiAgICAg<br />ICAgICAgICAgICA8ZGl2IGFsaWduPSJsZWZ0Ij4gDQogICAgICAgICAgICAg<br />ICAgICA8ZGl2IGFsaWduPSJqdXN0aWZ5Ij48Zm9udCBjb2xvcj0iI0ZGRkZG<br />RiI+IA0KICAgICAgICAgICAgICAgICAgICA8ZGl2IGFsaWduPSJsZWZ0Ij48<br />Zm9udCBzaXplPSIzIj48c3Ryb25nPldhdGNoIGFzIHRoZXNlIHdvbWFuIA0K<br />ICAgICAgICAgICAgICAgICAgICAgIGZyb20gYXJvdW5kIHRoZSB3b3JsZCBn<br />ZXQgZG93biBhbmQgZGlydHkgd2l0aCB0aGUgcGlncy4gDQogICAgICAgICAg<br />ICAgICAgICAgICAgUmlkZSB0aGUgYmxhY2sgc3RhbGxpb25zLCBhbmQgZ2V0<br />IHRoZWlyIGJ1c2ggbGlja2VkIGJ5IGxpdHRsZSANCiAgICAgICAgICAgICAg<br />ICAgICAgICB0aW1teSdzIGRvZyBGaWRvLiA8L3N0cm9uZz48L2ZvbnQ+PC9k<br />aXY+DQogICAgICAgICAgICAgICAgICAgIDwvZm9udD48L2Rpdj4NCiAgICAg<br />ICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAg<br />ICAgICAgICAgIDxwIGFsaWduPSJsZWZ0Ij48c3Ryb25nPjxmb250IGNvbG9y<br />PSIjRkZGRkZGIiBzaXplPSIzIj5XaXRoIGEgdGVhbSANCiAgICAgICAgICAg<br />ICAgICBvZiA0NiBnaXJscywgNiBwaG90b2dyYXBoZXJzLCA0IHZpZGVvZ3Jh<br />cGhlcnMgd2Ugc2V0IG9mZiB0byBhIA0KICAgICAgICAgICAgICAgIGZhcm0g<br />d2UgaGFkIHJlbnRlZCBmcm9tIGEgbG9jYWwgZmFybWVyLiA0NSBhY3Jlcywg<br />YW5kIGFsbCB0aGUgDQogICAgICAgICAgICAgICAgcHJpdmFjeSBpbiB0aGUg<br />d29ybGQuIFRoZSBtb3N0IGJlYXV0aWZ1bCBmYXJtIGFuaW1hbHMgd2UgaGF2<br />ZSANCiAgICAgICAgICAgICAgICBldmVyIHNlZW4uIFdpdGggdGhpcyB3ZSBz<br />dGFydGVkIHNob290aW5nIHRoZSBjb250ZW50LCByYW4gbGl2ZSANCiAgICAg<br />ICAgICAgICAgICBmZWVkcyBmcm9tIG91ciBmYXJtIHRvIG91ciBtZW1iZXJz<br />LCB0b29rIHJlcXVlc3QgZm9yIHRoZSBuZXh0IA0KICAgICAgICAgICAgICAg<br />IHBob3Rvc2hvb3QuPC9mb250Pjwvc3Ryb25nPjwvcD4NCiAgICAgICAgICAg<br />ICAgPHAgYWxpZ249ImxlZnQiPjxzdHJvbmc+PGZvbnQgY29sb3I9IiNGRkZG<br />RkYiIHNpemU9IjMiPldlIGhhdmUgd2hhdCANCiAgICAgICAgICAgICAgICBv<br />dXIgbWVtYmVycyBjYWxsICZxdW90O3RoZSBtb3N0IGFsbCBhcm91bmQsIGNv<br />bnRlbnQgZmlsbGVkIGZhcm15YXJkIA0KICAgICAgICAgICAgICAgIHNpdGUg<br />b3V0IHRoZXJlJnF1b3Q7LjwvZm9udD48L3N0cm9uZz48L3A+DQogICAgICAg<br />ICAgICAgIDxwIGFsaWduPSJsZWZ0Ij48c3Ryb25nPjxmb250IGNvbG9yPSIj<br />RkZGRkZGIiBzaXplPSIzIj48YnI+DQogICAgICAgICAgICAgICAgWW91IGRv<br />bnQgaGF2ZSB0byB0YWtlIG91ciB3b3JkIGZvciBpdCwgdmlzaXQgb3VyIHNp<br />dGUgZm9yIHlvdXJzZWxmLiANCiAgICAgICAgICAgICAgICBMZXQgeW91cnNl<br />bGYgYmUgdGFrZW4gaW4gYnkgb3VyIGJlYXV0aWZ1bCB3b21hbiwgd2hvIGhh<br />dmUgYSBsb3ZlIA0KICAgICAgICAgICAgICAgIGZvciBhbmltYWxzLjwvZm9u<br />dD48L3N0cm9uZz48L3A+DQogICAgICAgICAgICAgIDxwIGFsaWduPSJsZWZ0<br />Ij48c3Ryb25nPjxmb250IGNvbG9yPSIjRkZGRkZGIiBzaXplPSIzIj48YSBo<br />cmVmPSJodHRwOi8vd3d3LmZyZWVzZXhvbnRoZXdlYi5iei9mc3cvc2Zhcm0y<br />LyI+PGZvbnQgY29sb3I9IiNDQ0ZGMDAiPkNsaWNrIA0KICAgICAgICAgICAg<br />ICAgIGhlcmU8L2ZvbnQ+PC9hPiwgYW5kIGxldCBvdXIgZ2lybHMgYW5kIGFu<br />aW1hbHMgZnVsZmlsbCB5b3VyIGZhbnRhc2llcy48L2ZvbnQ+PC9zdHJvbmc+<br />PC9wPg0KICAgICAgICAgICAgICA8cCBhbGlnbj0ibGVmdCI+PHN0cm9uZz48<br />Zm9udCBjb2xvcj0iIzk5RkYwMCIgc2l6ZT0iMyI+PGEgaHJlZj0iaHR0cDov<br />L3d3dy5mcmVlc2V4b250aGV3ZWIuYnovZnN3L3NmYXJtMi8iPmh0dHA6Ly93<br />d3cuZnJlZXNleG9udGhld2ViLmJ6L2Zzdy9zZmFybTIvPC9hPjwvZm9udD4g<br />DQogICAgICAgICAgICAgICAgPC9zdHJvbmc+IDwvcD4NCiAgICAgICAgICAg<br />ICAgPHAgYWxpZ249ImNlbnRlciI+PGZvbnQgY29sb3I9IiNGRkZGRkYiIHNp<br />emU9IjEiPjxicj4NCiAgICAgICAgICAgICAgICA8YnI+DQogICAgICAgICAg<br />ICAgICAgPGJyPg0KICAgICAgICAgICAgICAgIDxicj4NCiAgICAgICAgICAg<br />ICAgICA8YnI+DQogICAgICAgICAgICAgICAgPGJyPg0KICAgICAgICAgICAg<br />ICAgIDxmb250IHNpemU9Ii0yIiBjb2xvcj0iIzY2NjY2NiI+PGEgaHJlZj0i<br />aHR0cDovL3d3dy5mcmVlc2V4b250aGV3ZWIuYnovZnN3L3JlbSI+PGZvbnQg<br />Y29sb3I9IiM2NjY2NjYiPkNsaWNrIA0KICAgICAgICAgICAgICAgIGhlcmU8<br />L2ZvbnQ+PC9hPiB0byByZW1vdmUgeW91cnNlbGYgZnJvbSBvdXIgbGlzdC48<br />L2ZvbnQ+PGJyPg0KICAgICAgICAgICAgICAgIDxicj4NCiAgICAgICAgICAg<br />ICAgPC9wPg0KICAgICAgICAgICAgICA8L3RkPg0KICAgICAgICAgIDwvdHI+<br />DQogICAgICAgIDwvdGFibGU+DQogICAgICA8L2Rpdj48L3RkPg0KICA8L3Ry<br />Pg0KPC90YWJsZT4NCjwvYm9keT4NCjwvaHRtbD4=<br />------=_NextPart_000_00C3_68A82A2C.D7041A60--<br /><b>Found in encoded data:</b> <b><font color="blue"><a title="html:comment"><!--.contour { border: 2px inset #660033; background-color: #693F32; font-family: verdana; font-size: 16px; color: #CCFF00;}.text { font-family: verdana; color: #CCFF00; font-size: 12px;}--></a></font></b> <b><font color="red"><a title="html:td">td</a></font></b> <b><font color="red"><a title="html:td">td</a></font></b> <b><font color="red"><a title="html:td">td</a></font></b> <b><font color="black"><a title="html:fontsize5">size="5"</a></font></b> <font color="black">Banned</font> <font color="red">Exclusive</font> <font color="black">FARMYARD</font> <font color="red">content</font> <b><font color="red"><a title="html:td">td</a></font></b> <b><font color="red"><a title="html:td">td</a></font></b> <b><font color="red"><a title="html:td">td</a></font></b> <font color="red">#FFFFFF</font> <b><font color="black"><a title="html:fontcolor#FFFFFF">color="#FFFFFF"</a></font></b> <b><font color="black"><a title="html:fontsize3">size="3"</a></font></b> <b><font color="blue"><a title="trick:invisibleink">Watch as these woman from around the world get down and dirty with the pigs. Ride the black stallions, and get their bush licked by little timmy's dog Fido. </a></font></b> <font color="red">#FFFFFF</font> <b><font color="black"><a title="html:fontcolor#FFFFFF">color="#FFFFFF"</a></font></b> <b><font color="black"><a title="html:fontsize3">size="3"</a></font></b> <b><font color="blue"><a title="trick:invisibleink">With a team of 46 girls, 6 photographers, 4 videographers we set off to a farm we had rented from a local farmer. 45 acres, and all the privacy in the world. The most beautiful farm animals we have ever seen. With this we started shooting the content, ran live feeds from our farm to our members, took request for the next photoshoot.</a></font></b> <font color="red">#FFFFFF</font> <b><font color="black"><a title="html:fontcolor#FFFFFF">color="#FFFFFF"</a></font></b> <b><font color="black"><a title="html:fontsize3">size="3"</a></font></b> <b><font color="blue"><a title="trick:invisibleink">We have what our members call "the most all around, content filled farmyard site out there".</a></font></b> <font color="red">#FFFFFF</font> <b><font color="black"><a title="html:fontcolor#FFFFFF">color="#FFFFFF"</a></font></b> <b><font color="black"><a title="html:fontsize3">size="3"</a></font></b> <b><font color="blue"><a title="trick:invisibleink"> You dont have to take our word for it, visit our site for yourself. Let yourself be taken in by our beautiful woman, who have a love for animals.</a></font></b> <font color="red">#FFFFFF</font> <b><font color="black"><a title="html:fontcolor#FFFFFF">color="#FFFFFF"</a></font></b> <b><font color="black"><a title="html:fontsize3">size="3"</a></font></b> <font color="black">www.freesexontheweb.bz</font> <font color="black">freesexontheweb.bz</font> <font color="black">#CCFF00</font> <b><font color="black"><a title="html:fontcolor#CCFF00">color="#CCFF00"</a></font></b> <font color="red">Click</font> <font color="red">here</font> <font color="red">let</font> <font color="blue">girls</font> <font color="black">animals</font> <font color="black">fulfill</font> <font color="black">fantasies</font> <font color="black">#99FF00</font> <b><font color="black"><a title="html:fontcolor#99FF00">color="#99FF00"</a></font></b> <b><font color="black"><a title="html:fontsize3">size="3"</a></font></b> <font color="black">www.freesexontheweb.bz</font> <font color="black">freesexontheweb.bz</font> <font color="black">freesexontheweb</font> <font color="black">fsw</font> <font color="black">sfarm</font> <font color="red">#FFFFFF</font> <b><font color="black"><a title="html:fontcolor#FFFFFF">color="#FFFFFF"</a></font></b> <b><font color="black"><a title="html:fontsize1">size="1"</a></font></b> <b><font color="black"><a title="html:fontsize-2">size="-2"</a></font></b> <font color="red">#666666</font> <b><font color="black"><a title="html:fontcolor#666666">color="#666666"</a></font></b> <font color="black">www.freesexontheweb.bz</font> <font color="black">freesexontheweb.bz</font> <font color="red">#666666</font> <b><font color="black"><a title="html:fontcolor#666666">color="#666666"</a></font></b> <font color="red">Click</font> <font color="red">here</font> <font color="red">remove</font> <font color="blue">yourself</font> <font color="red">list</font> </tt>
\ No newline at end of file
Index: TestMailParse019.clr
===================================================================
RCS file: /cvsroot/popfile/engine/tests/TestMailParse019.clr,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** TestMailParse019.clr 24 Aug 2003 04:04:52 -0000 1.5
--- TestMailParse019.clr 13 Oct 2003 20:23:41 -0000 1.6
***************
*** 1 ****
! <tt><b><font color="black">Return-Path</font></b>: <<b><font color="black">bu...@dr...</font></b>><br /><b><font color="black">Delivered-To</font></b>: run@mail.<b><font color="black">tepkom</font></b>.ru<br /><b><font color="black">Received</font></b>: by mail.<b><font color="black">tepkom</font></b>.ru (<b><font color="black">Postfix</font></b>)<br /> id 70071971F2; Wed, 29 Jan 2003 20:30:49 +0300 (<b><font color="black">MSK</font></b>)<br /><b><font color="black">Delivered-To</font></b>: rescuebre@<b><font color="black">tepkom</font></b>.ru<br /><b><font color="black">Received</font></b>: from localhost (localhost [<b><font color="black">127.0.0.1</font></b>])<br /> by mail.<b><font color="black">tepkom</font></b>.ru (<b><font color="black">Postfix</font></b>) with SMTP<br /> id 6474D971FA; Wed, 29 Jan 2003 20:30:49 +0300 (<b><font color="black">MSK</font></b>)<br /><b><font color="black">Received</font></b>: from <b><font color="black">keymaster.<b><font color="black">relativity.com</font></b></font></b> (<b><font color="black">keymaster.<b><font color="black">relativity.com</font></b></font></b> [<b><font color="black">12.146.171.10</font></b>])<br /> by mail.<b><font color="black">tepkom</font></b>.ru (<b><font color="black">Postfix</font></b>) with ESMTP<br /> id 93510971F2; Wed, 29 Jan 2003 20:30:47 +0300 (<b><font color="black">MSK</font></b>)<br /><b><font color="black">Received</font></b>: from <b><font color="black">rtfm</font></b> (<b><font color="black">rtfm.<b><font color="black">relativity.com</font></b></font></b> [<b><font color="black">63.100.138.144</font></b>]) by <b><font color="black">keymaster.<b><font color="black">relativity.com</font></b></font></b> with SMTP (<b><font color="black">Microsoft</font></b> <b><font color="black">Exchange</font></b> <b><font color="black">Internet</font></b> Mail <b><font color="black">Service</font></b> <b><font color="black">Version</font></b> 5.5.2653.13)<br /> id D4Z7<b><font color="black">ASMC</font></b>; Wed, 29 Jan 2003 12:28:21 -0500<br /><b><font color="black">To</font></b>: <b><font color="black">elia@<b><font color="black">tepkom.ru</font></b></font></b>, <b><font color="black">rescuebre@<b><font color="black">tepkom.ru</font></b></font></b>, <b><font color="black">kcruz@<b><font color="black">relativity.com</font></b></font></b>, <b><font color="black">bugtracker@<b><font color="black">relativity.com</font></b></font></b><br /><b><font color="black">Date</font></b>: Wed, 29 Jan 03 12:28:29<br /><b><font color="black">From</font></b>: <<b><font color="black">bugs@<b><font color="black">drunin.net</font></b></font></b>><br /><b><font color="black">Subject</font></b>: VI ID: 24149 Status: <b><font color="black">Dev</font></b> <b><font color="black">Confirmed</font></b> <b><font color="black">Fix</font></b> <b><font color="black">Sev</font></b>: 1<br /><b><font color="black">MIME-Version</font></b>: 1.0<br /><b><font color="black">Content-Type</font></b>: multipart/mixed; boundary="isboundary"<br /><b><font color="black">Message-Id</font></b>: <200...@ma...><br /><b><font color="black">X-Text-Classification</font></b>: lists<br /><b><font color="black">X-POPFile-Link</font></b>: <http://<b><font color="black">127.0.0.1</font></b>:8080/<b><font color="black">jump</font></b>_to_message?view=popfile523=1.<b><font color="black">msg</font></b>><br /><br />--isboundary<br /><b><font color="black">Content-Type</font></b>: text/html; charset=<b><font color="black">us-ascii</font></b><br /><br /><HTML><HEAD><br /><BODY><br /><DIV><B><FONT size=4><b><font color="black">Visual</font></b> <b><font color="black">Intercept</font></b> <b><font color="black">Notification</font></b>:</FONT></B></DIV><BR><br /><TABLE border rules=groups><br /> <TBODY><br /> <TR><br /> <TD><B><b><font color="black">Incident</font></b>:</B></TD><br /> <TD><br /> <A href="http://<b><font color="black">rtfm.<b><font color="black">relativity.com</font></b></font></b>/VIWeb/default.asp?type=incident&name=24149">24149</A><br /> (<A href="http://<b><font color="black">vi.<b><font color="black">relativity.com</font></b></font></b>/VIWeb/default.asp?type=incident&name=24149"><b><font color="black">Alternative</font></b> <br /><b><font color="black">server</font></b></A>)<br /> </TD><br /> <TD WIDTH="20%"><TD><TD><TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B>Subject:</B></TD><br /> <TD COLSPAN=5><b><font color="black">Internal</font></b> <b><font color="black">error</font></b> in <b><font color="black">BRE</font></b>.<b><font color="black">dll</font></b></TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B><b><font color="black">Project</font></b>:</B></TD><br /> <TD COLSPAN=5>/<b><font color="black">Program</font></b>/RW/<b><font color="black">Cobol</font></b>/<b><font color="black">BRE</font></b>/<b><font color="black">Structure</font></b> <b><font color="black">Based</font></b></TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Version</font></b>:</B></TD><br /> <TD COLSPAN=5>7.1.00</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Release</font></b>:</B></TD><br /> <TD COLSPAN=5></TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Build</font></b>:</B></TD><br /> <TD COLSPAN=5></TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B><b><font color="black">Customer</font></b>:</B></TD><br /> <TD COLSPAN=5><b><font color="black">INTERNAL</font></b></TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B>Status:</B></TD><br /> <TD><b><font color="black">Dev</font></b> <b><font color="black">Confirmed</font></b> <b><font color="black">Fix</font></b></TD><TD><br /> <TD><B><b><font color="black">AssignID</font></b>:</B></TD><br /> <TD><b><font color="black">snd</font></b></TD><br /> <TD>1/29/2003 10:16:01 AM</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Priority</font></b>:</B></TD><br /> <TD><b><font color="black">High</font></b></TD><TD><br /> <TD><B><b><font color="black">RequestID</font></b>:</B></TD><br /> <TD><b><font color="black">elia</font></b></TD><br /> <TD>1/29/2003 10:16:01 AM</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Severity</font></b>:</B></TD><br /> <TD>1</TD><TD><br /> <TD><B><b><font color="black">QAID</font></b>:</B></TD><br /> <TD><b><font color="black">elia</font></b></TD><br /> <TD>1/29/2003 10:16:01 AM</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Category</font></b>:</B></TD><br /> <TD><b><font color="black">BRE</font></b></TD><TD><br /> <TD><B><b><font color="black">ChangeID</font></b>:</B></TD><br /> <TD><b><font color="black">snd</font></b></TD><br /> <TD>1/29/2003 12:26:59 PM</TD></TR><br /> <TBODY><br /> <TR><br /> <TD vAlign=top><B><b><font color="black">Description</font></b>:</B></TD><br /> <TD COLSPAN=5><TEXTAREA READONLY ROWS=10 COLS=60>FROM:<b><font color="black">elia</font></b> DATE:01/29/2003 10:16:01 <br /><br /> The "<b><font color="black">Internal</font></b> <b><font color="black">error</font></b> in <b><font color="black">BRE</font></b>.<b><font color="black">dll</font></b>" message is <b><font color="black">generated</font></b> <b><font color="black">when</font></b> <b><font color="black">structure</font></b> <b><font color="black">based</font></b> <b><font color="black">slice</font></b><br /> is <b><font color="black">extracted</font></b> from <b><font color="black">program</font></b> <b><font color="black">which</font></b> has been <b><font color="black">verified</font></b> with "<b><font color="black">Perform</font></b> <b><font color="black">Program</font></b> <b><font color="black">analysis</font></b> = no"<br /> and at the <b><font color="black">same</font></b> <b><font color="black">time</font></b> <b><font color="black">BRE</font></b> <b><font color="black">option</font></b> "<b><font color="black">Ensure</font></b> <b><font color="black">consistent</font></b> <b><font color="black">access</font></b> to <b><font color="black">external</font></b> <b><font color="black">resources</font></b> = yes".<br /><br /> The <b><font color="black">correct</font></b> <b><font color="black">error</font></b> message <b><font color="black">should</font></b> be <b><font color="black">generated</font></b>.<br /><br /> "<b><font color="black">Severe</font></b> Re-<b><font color="black">verify</font></b> the <b><font color="black">program</font></b> with '<b><font color="black">Perform</font></b> <b><font color="black">program</font></b> <b><font color="black">analysis'</font></b> <b><font color="black">option</font></b> <b><font color="black">set</font></b>".<br /><br /><br /> <b><font color="black">Test</font></b>:MEDIUM\\RescueWin\archives\VS-cobol\Computation\<b><font color="black">Logical</font></b>-path\<b><font color="black">CALL</font></b>-accept4.<b><font color="black">CBL</font></b> <br /><br /> *|<b><font color="black">Start</font></b> <b><font color="black">paragraph</font></b>: p1<br /> *|<b><font color="black">Last</font></b> <b><font color="black">paragraph</font></b>: p1<br /><br /> 1015 <b><font color="black">blue</font></b>.<br /><br />FROM:<b><font color="black">snd</font></b> DATE:<b><font color="black">Wednesday</font></b>, <b><font color="black">January</font></b> 29, 2003 11:52:45 AM <br /><br /><b><font color="black">Fixed</font></b> in <b><font color="black">Blue</font></b>. No <b><font color="black">warning</font></b> in this <b><font color="black">case</font></b>, <b><font color="black">BRE</font></b> <b><font color="black">runs</font></b> <b><font color="black">DFA</font></b> <b><font color="black">instead</font></b>.<br /></TEXTAREA></TD></TR><br /> <TR><br /> <TD vAlign=top><B><b><font color="black">Resolution</font></b>:</B></TD><br /> <TD COLSPAN=5><TEXTAREA READONLY ROWS=10 COLS=60></TEXTAREA></TD></TR><br /> <TR><br /> <TD vAlign=top><B><b><font color="black">WorkAround</font></b>:</B></TD><br /> <TD COLSPAN=5><TEXTAREA READONLY ROWS=10 COLS=60></TEXTAREA></TD></TR></TBODY></TABLE><br /><HR><br />If you have received this <b><font color="black">email</font></b> in <b><font color="black">error</font></b>, <b><font color="black">please</font></b> <b><font color="black">respond</font></b> to: <A <br />href="mailto:BugTracker@<b><font color="black">relativity.com</font></b>">Bug...@re...</A> <br /><HR><br /></BODY></HTML><br /><br />--isboundary--<br /><br /><br /></tt>
\ No newline at end of file
--- 1 ----
! <tt><b><font color="black">Return-Path</font></b>: <<b><font color="black">bu...@dr...</font></b>><br /><b><font color="black">Delivered-To</font></b>: run@mail.<b><font color="black">tepkom</font></b>.ru<br /><b><font color="black">Received</font></b>: by mail.<b><font color="black">tepkom</font></b>.ru (<b><font color="black">Postfix</font></b>)<br /> id 70071971F2; Wed, 29 Jan 2003 20:30:49 +0300 (<b><font color="black">MSK</font></b>)<br /><b><font color="black">Delivered-To</font></b>: rescuebre@<b><font color="black">tepkom</font></b>.ru<br /><b><font color="black">Received</font></b>: from localhost (localhost [<b><font color="blue">127.0.0.1</font></b>])<br /> by mail.<b><font color="black">tepkom</font></b>.ru (<b><font color="black">Postfix</font></b>) with SMTP<br /> id 6474D971FA; Wed, 29 Jan 2003 20:30:49 +0300 (<b><font color="black">MSK</font></b>)<br /><b><font color="black">Received</font></b>: from <b><font color="black">keymaster.<b><font color="black">relativity.com</font></b></font></b> (<b><font color="black">keymaster.<b><font color="black">relativity.com</font></b></font></b> [<b><font color="black">12.146.171.10</font></b>])<br /> by mail.<b><font color="black">tepkom</font></b>.ru (<b><font color="black">Postfix</font></b>) with ESMTP<br /> id 93510971F2; Wed, 29 Jan 2003 20:30:47 +0300 (<b><font color="black">MSK</font></b>)<br /><b><font color="black">Received</font></b>: from <b><font color="black">rtfm</font></b> (<b><font color="black">rtfm.<b><font color="black">relativity.com</font></b></font></b> [<b><font color="black">63.100.138.144</font></b>]) by <b><font color="black">keymaster.<b><font color="black">relativity.com</font></b></font></b> with SMTP (<b><font color="red">Microsoft</font></b> <b><font color="red">Exchange</font></b> <b><font color="blue">Internet</font></b> Mail <b><font color="red">Service</font></b> <b><font color="blue">Version</font></b> 5.5.2653.13)<br /> id D4Z7<b><font color="black">ASMC</font></b>; Wed, 29 Jan 2003 12:28:21 -0500<br /><b><font color="black">To</font></b>: <b><font color="black">elia@<b><font color="black">tepkom.ru</font></b></font></b>, <b><font color="black">rescuebre@<b><font color="black">tepkom.ru</font></b></font></b>, <b><font color="black">kcruz@<b><font color="black">relativity.com</font></b></font></b>, <b><font color="black">bugtracker@<b><font color="black">relativity.com</font></b></font></b><br /><b><font color="black">Date</font></b>: Wed, 29 Jan 03 12:28:29<br /><b><font color="black">From</font></b>: <<b><font color="black">bugs@<b><font color="black">drunin.net</font></b></font></b>><br /><b><font color="black">Subject</font></b>: VI ID: 24149 Status: <b><font color="black">Dev</font></b> <b><font color="black">Confirmed</font></b> <b><font color="black">Fix</font></b> <b><font color="black">Sev</font></b>: 1<br /><b><font color="black">MIME-Version</font></b>: 1.0<br /><b><font color="black">Content-Type</font></b>: multipart/mixed; boundary="isboundary"<br /><b><font color="black">Message-Id</font></b>: <200...@ma...><br /><b><font color="black">X-Text-Classification</font></b>: lists<br /><b><font color="black">X-POPFile-Link</font></b>: <http://<b><font color="blue">127.0.0.1</font></b>:8080/<b><font color="black">jump</font></b>_to_message?view=popfile523=1.<b><font color="black">msg</font></b>><br /><br />--isboundary<br /><b><font color="black">Content-Type</font></b>: text/html; charset=<b><font color="red">us-ascii</font></b><br /><br /><HTML><HEAD><br /><BODY><br /><DIV><B><FONT size=4><b><font color="black">Visual</font></b> <b><font color="black">Intercept</font></b> <b><font color="black">Notification</font></b>:</FONT></B></DIV><BR><br /><TABLE border rules=groups><br /> <TBODY><br /> <TR><br /> <TD><B><b><font color="black">Incident</font></b>:</B></TD><br /> <TD><br /> <A href="http://<b><font color="black">rtfm.<b><font color="black">relativity.com</font></b></font></b>/VIWeb/default.asp?type=incident&name=24149">24149</A><br /> (<A href="http://<b><font color="black">vi.<b><font color="black">relativity.com</font></b></font></b>/VIWeb/default.asp?type=incident&name=24149"><b><font color="blue">Alternative</font></b> <br /><b><font color="blue">server</font></b></A>)<br /> </TD><br /> <TD WIDTH="20%"><TD><TD><TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B>Subject:</B></TD><br /> <TD COLSPAN=5><b><font color="black">Internal</font></b> <b><font color="blue">error</font></b> in <b><font color="black">BRE</font></b>.<b><font color="blue">dll</font></b></TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B><b><font color="blue">Project</font></b>:</B></TD><br /> <TD COLSPAN=5>/<b><font color="red">Program</font></b>/RW/<b><font color="black">Cobol</font></b>/<b><font color="black">BRE</font></b>/<b><font color="blue">Structure</font></b> <b><font color="red">Based</font></b></TD></TR><br /> <TR><br /> <TD><B><b><font color="blue">Version</font></b>:</B></TD><br /> <TD COLSPAN=5>7.1.00</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Release</font></b>:</B></TD><br /> <TD COLSPAN=5></TD></TR><br /> <TR><br /> <TD><B><b><font color="blue">Build</font></b>:</B></TD><br /> <TD COLSPAN=5></TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B><b><font color="red">Customer</font></b>:</B></TD><br /> <TD COLSPAN=5><b><font color="black">INTERNAL</font></b></TD></TR><br /> <TBODY><br /> <TR><br /> <TD><B>Status:</B></TD><br /> <TD><b><font color="blue">Dev</font></b> <b><font color="blue">Confirmed</font></b> <b><font color="black">Fix</font></b></TD><TD><br /> <TD><B><b><font color="black">AssignID</font></b>:</B></TD><br /> <TD><b><font color="black">snd</font></b></TD><br /> <TD>1/29/2003 10:16:01 AM</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Priority</font></b>:</B></TD><br /> <TD><b><font color="blue">High</font></b></TD><TD><br /> <TD><B><b><font color="black">RequestID</font></b>:</B></TD><br /> <TD><b><font color="black">elia</font></b></TD><br /> <TD>1/29/2003 10:16:01 AM</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Severity</font></b>:</B></TD><br /> <TD>1</TD><TD><br /> <TD><B><b><font color="black">QAID</font></b>:</B></TD><br /> <TD><b><font color="black">elia</font></b></TD><br /> <TD>1/29/2003 10:16:01 AM</TD></TR><br /> <TR><br /> <TD><B><b><font color="black">Category</font></b>:</B></TD><br /> <TD><b><font color="black">BRE</font></b></TD><TD><br /> <TD><B><b><font color="black">ChangeID</font></b>:</B></TD><br /> <TD><b><font color="black">snd</font></b></TD><br /> <TD>1/29/2003 12:26:59 PM</TD></TR><br /> <TBODY><br /> <TR><br /> <TD vAlign=top><B><b><font color="blue">Description</font></b>:</B></TD><br /> <TD COLSPAN=5><TEXTAREA READONLY ROWS=10 COLS=60>FROM:<b><font color="black">elia</font></b> DATE:01/29/2003 10:16:01 <br /><br /> The "<b><font color="black">Internal</font></b> <b><font color="blue">error</font></b> in <b><font color="black">BRE</font></b>.<b><font color="blue">dll</font></b>" message is <b><font color="black">generated</font></b> <b><font color="red">when</font></b> <b><font color="blue">structure</font></b> <b><font color="red">based</font></b> <b><font color="black">slice</font></b><br /> is <b><font color="black">extracted</font></b> from <b><font color="red">program</font></b> <b><font color="blue">which</font></b> has been <b><font color="black">verified</font></b> with "<b><font color="red">Perform</font></b> <b><font color="red">Program</font></b> <b><font color="red">analysis</font></b> = no"<br /> and at the <b><font color="red">same</font></b> <b><font color="red">time</font></b> <b><font color="black">BRE</font></b> <b><font color="blue">option</font></b> "<b><font color="red">Ensure</font></b> <b><font color="black">consistent</font></b> <b><font color="red">access</font></b> to <b><font color="black">external</font></b> <b><font color="blue">resources</font></b> = yes".<br /><br /> The <b><font color="black">correct</font></b> <b><font color="blue">error</font></b> message <b><font color="red">should</font></b> be <b><font color="black">generated</font></b>.<br /><br /> "<b><font color="blue">Severe</font></b> Re-<b><font color="black">verify</font></b> the <b><font color="red">program</font></b> with '<b><font color="red">Perform</font></b> <b><font color="red">program</font></b> <b><font color="black">analysis'</font></b> <b><font color="blue">option</font></b> <b><font color="red">set</font></b>".<br /><br /><br /> <b><font color="black">Test</font></b>:MEDIUM\\RescueWin\archives\VS-cobol\Computation\<b><font color="black">Logical</font></b>-path\<b><font color="red">CALL</font></b>-accept4.<b><font color="black">CBL</font></b> <br /><br /> *|<b><font color="red">Start</font></b> <b><font color="blue">paragraph</font></b>: p1<br /> *|<b><font color="blue">Last</font></b> <b><font color="blue">paragraph</font></b>: p1<br /><br /> 1015 <b><font color="red">blue</font></b>.<br /><br />FROM:<b><font color="black">snd</font></b> DATE:<b><font color="red">Wednesday</font></b>, <b><font color="red">January</font></b> 29, 2003 11:52:45 AM <br /><br /><b><font color="red">Fixed</font></b> in <b><font color="red">Blue</font></b>. No <b><font color="black">warning</font></b> in this <b><font color="red">case</font></b>, <b><font color="black">BRE</font></b> <b><font color="black">runs</font></b> <b><font color="black">DFA</font></b> <b><font color="black">instead</font></b>.<br /></TEXTAREA></TD></TR><br /> <TR><br /> <TD vAlign=top><B><b><font color="black">Resolution</font></b>:</B></TD><br /> <TD COLSPAN=5><TEXTAREA READONLY ROWS=10 COLS=60></TEXTAREA></TD></TR><br /> <TR><br /> <TD vAlign=top><B><b><font color="black">WorkAround</font></b>:</B></TD><br /> <TD COLSPAN=5><TEXTAREA READONLY ROWS=10 COLS=60></TEXTAREA></TD></TR></TBODY></TABLE><br /><HR><br />If you have received this <b><font color="red">email</font></b> in <b><font color="blue">error</font></b>, <b><font color="red">please</font></b> <b><font color="black">respond</font></b> to: <A <br />href="mailto:BugTracker@<b><font color="black">relativity.com</font></b>">BugTracker@<b><font color="black">relativity.com</font></b></A> <br /><HR><br /></BODY></HTML><br /><br />--isboundary--<br /><br /><br /></tt>
\ No newline at end of file
Index: TestMailParse022.cam
===================================================================
RCS file: /cvsroot/popfile/engine/tests/TestMailParse022.cam,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** TestMailParse022.cam 26 Jul 2003 22:53:24 -0000 1.4
--- TestMailParse022.cam 13 Oct 2003 20:23:41 -0000 1.5
***************
*** 1,6 ****
! From: te...@te...
To: so...@so...
Cc: <som...@so...>
! Subject: [spam] =?iso-8859-1?Q?test for various HTML parts?=
Reply-To: =?somecharset?Q?som...@so...?=
X-Text-Classification: spam
--- 1,8 ----
! From:
! =?iso-8859-1?Q?te...@te...?=
To: so...@so...
Cc: <som...@so...>
! Subject: [spam]
! =?iso-8859-1?Q?test for various HTML parts?=
Reply-To: =?somecharset?Q?som...@so...?=
X-Text-Classification: spam
Index: TestMailParse022.msg
===================================================================
RCS file: /cvsroot/popfile/engine/tests/TestMailParse022.msg,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** TestMailParse022.msg 26 Jul 2003 22:53:24 -0000 1.4
--- TestMailParse022.msg 13 Oct 2003 20:23:41 -0000 1.5
***************
*** 1,6 ****
! From: te...@te...
To: so...@so...
Cc: <som...@so...>
! Subject: =?iso-8859-1?Q?test for various HTML parts?=
Reply-To: =?somecharset?Q?som...@so...?=
--- 1,8 ----
! From:
! =?iso-8859-1?Q?te...@te...?=
To: so...@so...
Cc: <som...@so...>
! Subject:
! =?iso-8859-1?Q?test for various HTML parts?=
Reply-To: =?somecharset?Q?som...@so...?=
Index: TestMailParse022.wrd
===================================================================
RCS file: /cvsroot/popfile/engine/tests/TestMailParse022.wrd,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** TestMailParse022.wrd 26 Jul 2003 22:53:24 -0000 1.3
--- TestMailParse022.wrd 13 Oct 2003 20:23:41 -0000 1.4
***************
*** 30,34 ****
cc:som...@so... 1
cc:somewhere.com 1
! charset:iso-8859-1 1
charset:somecharset 1
header:Reply-To 1
--- 30,34 ----
cc:som...@so... 1
cc:somewhere.com 1
! charset:iso-8859-1 2
charset:somecharset 1
header:Reply-To 1
Index: TestModule.tst
===================================================================
RCS file: /cvsroot/popfile/engine/tests/TestModule.tst,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** TestModule.tst 8 Sep 2003 18:03:58 -0000 1.5
--- TestModule.tst 13 Oct 2003 20:23:41 -0000 1.6
***************
*** 55,58 ****
--- 55,59 ----
# Call the null methods
$m->prefork();
+ $m->postfork();
$m->stop();
$m->reaper();
Index: TestPOP3.tst
===================================================================
RCS file: /cvsroot/popfile/engine/tests/TestPOP3.tst,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -d -r1.15 -r1.16
*** TestPOP3.tst 29 Sep 2003 22:55:48 -0000 1.15
--- TestPOP3.tst 13 Oct 2003 20:23:41 -0000 1.16
***************
*** 1221,1224 ****
--...
[truncated message content] |
|
From: <jgr...@us...> - 2003-10-13 20:23:48
|
Update of /cvsroot/popfile/engine/UI
In directory sc8-pr-cvs1:/tmp/cvs-serv28571/UI
Modified Files:
HTML.pm
Log Message:
FINAL PREPARATIONS FOR V0.20.0
Bring test suite to as close to 100% coverage as possible
Clean up Japanese/Korean code for better maintainability
Fix problem with random test suite crashes
Proxy/POP3.pm:
Add code to upgrade the welcome_string if the user has not
changed it from the default in a previous version of POPFile.
Classifier/Bayes.pm:
Remove a lot of code that was duplicated because of
the addition of Japanese and Korean support. To do
so created two helper methods: add_words_to_bucket__
and magnet_match__. There's still some duplicated code
(e.g. calls to these functions) but I can't find a good
way to deal with 'no locale' other than this.
Add hints for the code coverage about blocks of code.
Change the word scores code so that the scores are not
calculated if not required.
UI/HTML.pm:
Handle the display and non-display of the word matrix,
remove the stickiness of the word table format since
POPFile has not other 'sticky' values at this point.
Remove duplicated code introduced by Japanese and
Korean support.
tests.pl:
Accept multiple patterns on the command line so that
multiple tests can be specified at once. Patterns are
separated by commas. e.g. to run the HTTP and MailParse
test suites do:
gmake test TESTARGS=HTTP,MailParse
license:
Incorporate information about the BerkeleyDB license.
tests/TestWordMangle.tst:
Add tests for Japanese stop word support.
tests/TestModule.tst:
Add calls to dummy parent methods that do nothing, done
to get coverage to 100%.
tests/TestMailParse.tst
tests/TestPOP3.tst
tests/TestHTML.tst:
Make sure to stop the Bayes module to close the database.
tests/TestHTML.script:
Add tests for the new Single Message View where the word
matrix is not expanded by default. Test with and without
the word matrix and test the different views.
Added tests for Japanese and Korean stop words.
tests/TestProxy.tst:
Add tests for echo_response_'s handling of timeouts.
tests/languages/Korean.msg
tests/languages/Nihongo.msg:
Added the Korean and Japanese language files.
tests/TestMailParse022.cam
tests/TestMailParse022.wrd
tests/TestMailParse022.msg:
Split the From and Subject line to check the new
long header support.
tests/TestMailParse019.clr
tests/TestMailParse015.clr:
The information in this appeared to be wrong, so updated
to the latest output.
tests/TestMailParse.tst:
Add TestMailParse019 to the colorization tests.
Index: HTML.pm
===================================================================
RCS file: /cvsroot/popfile/engine/UI/HTML.pm,v
retrieving revision 1.214
retrieving revision 1.215
diff -C2 -d -r1.214 -r1.215
*** HTML.pm 10 Oct 2003 20:03:19 -0000 1.214
--- HTML.pm 13 Oct 2003 20:23:40 -0000 1.215
***************
*** 220,225 ****
# This setting defines what is displayed in the word matrix: 'freq' for frequencies,
! # 'prob' for probabilities, 'score' for logarithmic scores.
! $self->config_( 'wordtable_format', 'prob' );
# Load skins
--- 220,232 ----
# This setting defines what is displayed in the word matrix: 'freq' for frequencies,
! # 'prob' for probabilities, 'score' for logarithmic scores, if blank then the word
! # table is not shown
!
! $self->config_( 'wordtable_format', '' );
!
! # This setting determines whether when viewing an individual message we show the word
! # table or not
!
! $self->config_( 'show_wordtable', 0 );
# Load skins
***************
*** 283,289 ****
# Set the classifier option wmformat__ according to our wordtable_format
# option.
!
$self->{classifier__}->wmformat( $self->config_( 'wordtable_format' ) );
!
return $self->SUPER::start();
}
--- 290,296 ----
# Set the classifier option wmformat__ according to our wordtable_format
# option.
!
$self->{classifier__}->wmformat( $self->config_( 'wordtable_format' ) );
!
return $self->SUPER::start();
}
***************
*** 1355,1467 ****
my @words = $self->{classifier__}->get_stopword_list();
! # In Japanese mode, disable locale.
! # Sorting Japanese with "use locale" is memory and time consuming,
! # and may cause perl crash.
!
! if ( $self->config_( 'language' ) eq 'Nihongo' ) {
! no locale;
! for my $word (sort @words) {
!
! # First character of stop word is EUC-JP in Japanese mode
!
! $word =~ /^($euc_jp)/;
!
! if ( $1 ne $last ) {
! if ( !$firstRow ) {
! $body .= "</td></tr>\n";
! } else {
! $firstRow = 0;
! }
! $body .= "<tr><th scope=\"row\" class=\"advancedAlphabet";
! if ( $groupCounter == $groupSize ) {
! $body .= "GroupSpacing";
! }
! $body .= "\"><b>$1</b></th>\n";
! $body .= "<td class=\"advancedWords";
! if ( $groupCounter == $groupSize ) {
! $body .= "GroupSpacing";
! $groupCounter = 0;
! }
! $body .= "\">";
! $last = $1;
! $need_comma = 0;
! $groupCounter += 1;
! }
! if ( $need_comma == 1 ) {
! $body .= ", $word";
! } else {
! $body .= $word;
! $need_comma = 1;
}
}
- } else {
- if ( $self->config_( 'language' ) eq 'Korean' ) {
- # don't use locale in Korean mode. Every other code is same
- no locale;
- for my $word (sort @words) {
- $word =~ /^(.)/;
-
- if ( $1 ne $last ) {
- if (! $firstRow) {
- $body .= "</td></tr>\n";
- } else {
- $firstRow = 0;
- }
- $body .= "<tr><th scope=\"row\" class=\"advancedAlphabet";
- if ($groupCounter == $groupSize) {
- $body .= "GroupSpacing";
- }
- $body .= "\"><b>$1</b></th>\n";
- $body .= "<td class=\"advancedWords";
- if ($groupCounter == $groupSize) {
- $body .= "GroupSpacing";
- $groupCounter = 0;
- }
- $body .= "\">";
! $last = $1;
! $need_comma = 0;
! $groupCounter += 1;
! }
! if ( $need_comma == 1 ) {
! $body .= ", $word";
! } else {
! $body .= $word;
! $need_comma = 1;
! }
}
! } else {
! for my $word (sort @words) {
! $word =~ /^(.)/;
!
! if ( $1 ne $last ) {
! if (! $firstRow) {
! $body .= "</td></tr>\n";
! } else {
! $firstRow = 0;
! }
! $body .= "<tr><th scope=\"row\" class=\"advancedAlphabet";
! if ($groupCounter == $groupSize) {
! $body .= "GroupSpacing";
! }
! $body .= "\"><b>$1</b></th>\n";
! $body .= "<td class=\"advancedWords";
! if ($groupCounter == $groupSize) {
! $body .= "GroupSpacing";
! $groupCounter = 0;
! }
! $body .= "\">";
!
! $last = $1;
! $need_comma = 0;
! $groupCounter += 1;
! }
! if ( $need_comma == 1 ) {
! $body .= ", $word";
! } else {
! $body .= $word;
! $need_comma = 1;
! }
}
}
}
--- 1362,1408 ----
my @words = $self->{classifier__}->get_stopword_list();
! for my $word (sort @words) {
! my $c;
! if ( $self->config_( 'language' ) =~ /^Korean$/ ) {
! no locale;
! $word =~ /^(.)/;
! $c = $1;
! } else {
! if ( $self->config_( 'language' ) =~ /^Nihongo$/ ) {
! no locale;
! $word =~ /^($euc_jp)/;
! $c = $1;
! } else {
! $word =~ /^(.)/;
! $c = $1;
}
}
! if ( $c ne $last ) {
! if ( !$firstRow ) {
! $body .= "</td></tr>\n";
! } else {
! $firstRow = 0;
}
! $body .= "<tr><th scope=\"row\" class=\"advancedAlphabet";
! if ( $groupCounter == $groupSize ) {
! $body .= "GroupSpacing";
! }
! $body .= "\"><b>$c</b></th>\n";
! $body .= "<td class=\"advancedWords";
! if ( $groupCounter == $groupSize ) {
! $body .= "GroupSpacing";
! $groupCounter = 0;
}
+ $body .= "\">";
+ $last = $c;
+ $need_comma = 0;
+ $groupCounter += 1;
+ }
+ if ( $need_comma == 1 ) {
+ $body .= ", $word";
+ } else {
+ $body .= $word;
+ $need_comma = 1;
}
}
***************
*** 2675,2700 ****
if ( open MAIL, '<'. $self->global_config_( 'msgdir' ) . $file ) {
while ( <MAIL> ) {
! last if ( /^(\r\n|\r|\n)/ );
# Support long header that has more than 2 lines
! if(/^[\t ]+(=\?[\w-]+\?[BQ]\?.*\?=.*)/){
! if($long_header eq 'from'){
$from .= $1;
next;
}
! if($long_header eq 'subject'){
$subject .= $1;
next;
}
! }else{
! if(/^From: *(.*)/i){
$long_header = 'from';
$from = $1;
next;
! }elsif (/^Subject: *(.*)/i){
! $long_header = 'subject';
! $subject = $1;
! next;
}
$long_header = '';
--- 2616,2644 ----
if ( open MAIL, '<'. $self->global_config_( 'msgdir' ) . $file ) {
while ( <MAIL> ) {
! last if ( /^(\r\n|\r|\n)/ );
# Support long header that has more than 2 lines
! if ( /^[\t ]+(=\?[\w-]+\?[BQ]\?.*\?=.*)/ ) {
! if ( $long_header eq 'from' ) {
$from .= $1;
next;
}
!
! if ( $long_header eq 'subject' ) {
$subject .= $1;
next;
}
! } else {
! if ( /^From: *(.*)/i ) {
$long_header = 'from';
$from = $1;
next;
! } else {
! if ( /^Subject: *(.*)/i ) {
! $long_header = 'subject';
! $subject = $1;
! next;
! }
}
$long_header = '';
***************
*** 2731,2735 ****
# Do not truncate at 39 if the last char is the first byte of DBCS char(pair of two bytes).
# Truncate it 1 byte shorter.
! if (( $self->config_( 'language' ) eq 'Korean' ) || ( $self->config_( 'language' ) eq 'Nihongo' )) {
$short_subject = $1;
$short_subject =~ s/(([\x80-\xff].)*)[\x80-\xff]?$/$1/;
--- 2675,2679 ----
# Do not truncate at 39 if the last char is the first byte of DBCS char(pair of two bytes).
# Truncate it 1 byte shorter.
! if ( $self->config_( 'language' ) =~ /^Korean|Nihongo$/ ) {
$short_subject = $1;
$short_subject =~ s/(([\x80-\xff].)*)[\x80-\xff]?$/$1/;
***************
*** 3445,3461 ****
$self->{form_}{search} = '' if ( !defined( $self->{form_}{search} ) );
$self->{form_}{filter} = '' if ( !defined( $self->{form_}{filter} ) );
! $self->{form_}{format} = '' if ( !defined( $self->{form_}{format} ) );
!
# If a format change was requested for the word matrix, record it in the
# configuration and in the classifier options.
!
! if ( $self->{form_}{format} ne '' ) {
! $self->config_( 'wordtable_format', $self->{form_}{format} );
! $self->{classifier__}->wmformat( $self->{form_}{format} );
! }
my $index = -1;
! foreach my $i ( 0 .. $self->history_size()-1 ) {
if ( $self->{history_keys__}[$i] eq $mail_file ) {
use integer;
--- 3389,3402 ----
$self->{form_}{search} = '' if ( !defined( $self->{form_}{search} ) );
$self->{form_}{filter} = '' if ( !defined( $self->{form_}{filter} ) );
! $self->{form_}{format} = $self->config_( 'wordtable_format' ) if ( !defined( $self->{form_}{format} ) );
!
# If a format change was requested for the word matrix, record it in the
# configuration and in the classifier options.
!
! $self->{classifier__}->wmformat( $self->{form_}{format} );
my $index = -1;
! foreach my $i ( 0 .. $self->history_size()-1 ) {
if ( $self->{history_keys__}[$i] eq $mail_file ) {
use integer;
***************
*** 3553,3565 ****
my $view = $self->{language__}{View_WordProbabilities};
! if ( $self->config_( 'wordtable_format' ) eq 'freq' ) {
$view = $self->{language__}{View_WordFrequencies};
}
! if ( $self->config_( 'wordtable_format' ) eq 'score' ) {
$view = $self->{language__}{View_WordScores};
}
! $fmtlinks = "<table width=\"100%\">\n<td class=\"top20\" align=\"left\"><b>$self->{language__}{View_WordMatrix} ($view)</b></td>\n<td class=\"historyNavigatorTop\">\n";
! if ($self->config_( 'wordtable_format' ) ne 'freq' ) {
$fmtlinks .= "<a href=\"/view?view=" . $self->{history_keys__}[ $index ];
$fmtlinks .= "&start_message=". ((( $index ) >= $start_message )?$start_message:($start_message - $self->config_( 'page_size' )));
--- 3494,3508 ----
my $view = $self->{language__}{View_WordProbabilities};
! if ( $self->{form_}{format} eq 'freq' ) {
$view = $self->{language__}{View_WordFrequencies};
}
! if ( $self->{form_}{format} eq 'score' ) {
$view = $self->{language__}{View_WordScores};
}
! if ( $self->{form_}{format} ne '' ) {
! $fmtlinks = "<table width=\"100%\">\n<td class=\"top20\" align=\"left\"><b>$self->{language__}{View_WordMatrix} ($view)</b></td>\n<td class=\"historyNavigatorTop\">\n";
! }
! if ($self->{form_}{format} ne 'freq' ) {
$fmtlinks .= "<a href=\"/view?view=" . $self->{history_keys__}[ $index ];
$fmtlinks .= "&start_message=". ((( $index ) >= $start_message )?$start_message:($start_message - $self->config_( 'page_size' )));
***************
*** 3568,3572 ****
$fmtlinks .= "</a> \n";
}
! if ($self->config_( 'wordtable_format' ) ne 'prob' ) {
$fmtlinks .= "<a href=\"/view?view=" . $self->{history_keys__}[ $index ];
$fmtlinks .= "&start_message=". ((( $index ) >= $start_message )?$start_message:($start_message - $self->config_( 'page_size' )));
--- 3511,3515 ----
$fmtlinks .= "</a> \n";
}
! if ($self->{form_}{format} ne 'prob' ) {
$fmtlinks .= "<a href=\"/view?view=" . $self->{history_keys__}[ $index ];
$fmtlinks .= "&start_message=". ((( $index ) >= $start_message )?$start_message:($start_message - $self->config_( 'page_size' )));
***************
*** 3575,3579 ****
$fmtlinks .= "</a> \n";
}
! if ($self->config_( 'wordtable_format' ) ne 'score' ) {
$fmtlinks .= "<a href=\"/view?view=" . $self->{history_keys__}[ $index ];
$fmtlinks .= "&start_message=". ((( $index ) >= $start_message )?$start_message:($start_message - $self->config_( 'page_size' )));
--- 3518,3522 ----
$fmtlinks .= "</a> \n";
}
! if ($self->{form_}{format} ne 'score' ) {
$fmtlinks .= "<a href=\"/view?view=" . $self->{history_keys__}[ $index ];
$fmtlinks .= "&start_message=". ((( $index ) >= $start_message )?$start_message:($start_message - $self->config_( 'page_size' )));
***************
*** 3582,3587 ****
$fmtlinks .= "</a> \n";
}
! $fmtlinks .= "</a></td></table>";
!
# Enable saving of word-scores
--- 3525,3532 ----
$fmtlinks .= "</a> \n";
}
! if ( $self->{form_}{format} ne '' ) {
! $fmtlinks .= "</a></td></table>";
! }
!
# Enable saving of word-scores
***************
*** 3640,3652 ****
if ($self->{history__}{$mail_file}{magnet} eq '') {
! my $score_text = $self->{classifier__}->scores();
! $score_text =~ s/\<\!--format--\>/$fmtlinks/;
! $body .= $score_text;
! $self->{classifier__}->scores('');
} else {
! $body .= sprintf( $self->{language__}{History_MagnetBecause}, # PROFILE BLOCK START
! $color, $bucket,
! Classifier::MailParse::splitline($self->{history__}{$mail_file}{magnet},0)
! ); # PROFILE BLOCK STOP
}
--- 3585,3597 ----
if ($self->{history__}{$mail_file}{magnet} eq '') {
! my $score_text = $self->{classifier__}->scores();
! $score_text =~ s/\<\!--format--\>/$fmtlinks/;
! $body .= $score_text;
! $self->{classifier__}->scores('');
} else {
! $body .= sprintf( $self->{language__}{History_MagnetBecause}, # PROFILE BLOCK START
! $color, $bucket,
! Classifier::MailParse::splitline($self->{history__}{$mail_file}{magnet},0)
! ); # PROFILE BLOCK STOP
}
|
|
From: <jgr...@us...> - 2003-10-13 20:23:48
|
Update of /cvsroot/popfile/engine/Classifier
In directory sc8-pr-cvs1:/tmp/cvs-serv28571/Classifier
Modified Files:
Bayes.pm WordMangle.pm
Log Message:
FINAL PREPARATIONS FOR V0.20.0
Bring test suite to as close to 100% coverage as possible
Clean up Japanese/Korean code for better maintainability
Fix problem with random test suite crashes
Proxy/POP3.pm:
Add code to upgrade the welcome_string if the user has not
changed it from the default in a previous version of POPFile.
Classifier/Bayes.pm:
Remove a lot of code that was duplicated because of
the addition of Japanese and Korean support. To do
so created two helper methods: add_words_to_bucket__
and magnet_match__. There's still some duplicated code
(e.g. calls to these functions) but I can't find a good
way to deal with 'no locale' other than this.
Add hints for the code coverage about blocks of code.
Change the word scores code so that the scores are not
calculated if not required.
UI/HTML.pm:
Handle the display and non-display of the word matrix,
remove the stickiness of the word table format since
POPFile has not other 'sticky' values at this point.
Remove duplicated code introduced by Japanese and
Korean support.
tests.pl:
Accept multiple patterns on the command line so that
multiple tests can be specified at once. Patterns are
separated by commas. e.g. to run the HTTP and MailParse
test suites do:
gmake test TESTARGS=HTTP,MailParse
license:
Incorporate information about the BerkeleyDB license.
tests/TestWordMangle.tst:
Add tests for Japanese stop word support.
tests/TestModule.tst:
Add calls to dummy parent methods that do nothing, done
to get coverage to 100%.
tests/TestMailParse.tst
tests/TestPOP3.tst
tests/TestHTML.tst:
Make sure to stop the Bayes module to close the database.
tests/TestHTML.script:
Add tests for the new Single Message View where the word
matrix is not expanded by default. Test with and without
the word matrix and test the different views.
Added tests for Japanese and Korean stop words.
tests/TestProxy.tst:
Add tests for echo_response_'s handling of timeouts.
tests/languages/Korean.msg
tests/languages/Nihongo.msg:
Added the Korean and Japanese language files.
tests/TestMailParse022.cam
tests/TestMailParse022.wrd
tests/TestMailParse022.msg:
Split the From and Subject line to check the new
long header support.
tests/TestMailParse019.clr
tests/TestMailParse015.clr:
The information in this appeared to be wrong, so updated
to the latest output.
tests/TestMailParse.tst:
Add TestMailParse019 to the colorization tests.
Index: Bayes.pm
===================================================================
RCS file: /cvsroot/popfile/engine/Classifier/Bayes.pm,v
retrieving revision 1.208
retrieving revision 1.209
diff -C2 -d -r1.208 -r1.209
*** Bayes.pm 10 Oct 2003 14:59:32 -0000 1.208
--- Bayes.pm 13 Oct 2003 20:23:40 -0000 1.209
***************
*** 73,77 ****
# Choice for the format of the "word matrix" display.
! $self->{wmformat__} = 'prob';
# Just our hostname
--- 73,77 ----
# Choice for the format of the "word matrix" display.
! $self->{wmformat__} = '';
# Just our hostname
***************
*** 356,361 ****
if ( defined( $value ) ) {
! my $total = $self->get_bucket_word_count( $bucket );
! return log( $value / $total );
} else {
return 0;
--- 356,367 ----
if ( defined( $value ) ) {
!
! # Profiling notes:
! #
! # I tried caching the log of the total value and then doing
! # log( $value ) - $cached and this turned out to be
! # much slower than this single log with a division in it
!
! return log( $value / $self->{matrix__}{$bucket}{__POPFILE__TOTAL__} );
} else {
return 0;
***************
*** 407,415 ****
my $total = $self->get_bucket_word_count( $bucket );
! $total -= $oldvalue;
! $self->{full_total__} -= $oldvalue;
! $self->{matrix__}{$bucket}{$word} = $value;
! $total += $value;
! $self->{matrix__}{$bucket}{__POPFILE__TOTAL__} = $total;
$self->{full_total__} += $value;
--- 413,421 ----
my $total = $self->get_bucket_word_count( $bucket );
! $total -= $oldvalue;
! $self->{full_total__} -= $oldvalue;
! $self->{matrix__}{$bucket}{$word} = $value;
! $total += $value;
! $self->{matrix__}{$bucket}{__POPFILE__TOTAL__} = $total;
$self->{full_total__} += $value;
***************
*** 571,576 ****
if ( !defined( $self->{matrix__}{$bucket}{__POPFILE__TOTAL__} ) ) {
! $self->{matrix__}{$bucket}{__POPFILE__TOTAL__} = 0;
! $self->{matrix__}{$bucket}{__POPFILE__UNIQUE__} = 0;
}
}
--- 577,582 ----
if ( !defined( $self->{matrix__}{$bucket}{__POPFILE__TOTAL__} ) ) {
! $self->{matrix__}{$bucket}{__POPFILE__TOTAL__} = 0;
! $self->{matrix__}{$bucket}{__POPFILE__UNIQUE__} = 0;
}
}
***************
*** 847,850 ****
--- 853,892 ----
}
+
+ # ---------------------------------------------------------------------------------------------
+ #
+ # magnet_match__
+ #
+ # Helper the determines if a specific string matches a certain magnet type in a bucket
+ #
+ # $noattype The string to match
+ # $bucket The bucket to check
+ # $type The magnet type to check
+ #
+ # ---------------------------------------------------------------------------------------------
+
+ sub magnet_match__
+ {
+ my ( $self, $noattype, $bucket, $type ) = @_;
+
+ for my $magnet (sort keys %{$self->{magnets__}{$bucket}{$type}}) {
+ my $regex;
+
+ $regex = $magnet;
+ $regex =~ s/@/__POPFILE_AT__/g;
+ $regex =~ s/\$/__POPFILE_DOLLAR__/g;
+
+ if ( $noattype =~ m/\Q$regex\E/i ) {
+ $self->{scores__} = '';
+ $self->{magnet_used__} = 1;
+ $self->{magnet_detail__} = "$type: $magnet";
+
+ return 1;
+ }
+ }
+
+ return 0;
+ }
+
# ---------------------------------------------------------------------------------------------
#
***************
*** 898,935 ****
# Disable the locale in Korean mode, too.
! if ( $self->module_config_( 'html', 'language' ) eq 'Nihongo' ||
! $self->module_config_( 'html', 'language' ) eq 'Korean' ) {
no locale;
! for my $magnet (sort keys %{$self->{magnets__}{$bucket}{$type}}) {
! my $regex;
!
! $regex = $magnet;
! $regex =~ s/@/__POPFILE_AT__/g;
! $regex =~ s/\$/__POPFILE_DOLLAR__/g;
!
! if ( $noattype =~ m/\Q$regex\E/i ) {
! $self->{scores__} = '';
! $self->{magnet_used__} = 1;
! $self->{magnet_detail__} = "$type: $magnet";
!
! return $bucket;
! }
! }
} else {
! for my $magnet (sort keys %{$self->{magnets__}{$bucket}{$type}}) {
! my $regex;
!
! $regex = $magnet;
! $regex =~ s/@/__POPFILE_AT__/g;
! $regex =~ s/\$/__POPFILE_DOLLAR__/g;
!
! if ( $noattype =~ m/\Q$regex\E/i ) {
! $self->{scores__} = '';
! $self->{magnet_used__} = 1;
! $self->{magnet_detail__} = "$type: $magnet";
!
! return $bucket;
! }
! }
}
}
--- 940,948 ----
# Disable the locale in Korean mode, too.
! if ( $self->module_config_( 'html', 'language' ) =~ /^Nihongo|Korean$/ ) {
no locale;
! return $bucket if ( $self->magnet_match__( $noattype, $bucket, $type ) );
} else {
! return $bucket if ( $self->magnet_match__( $noattype, $bucket, $type ) );
}
}
***************
*** 946,950 ****
my %score;
my %matchcount;
- my %chi;
for my $bucket (@buckets) {
--- 959,962 ----
***************
*** 1070,1074 ****
$self->{scores__} .= "<th scope=\"col\">$language{Count} </th><th scope=\"col\" align=\"center\">$language{Score}</th><th scope=\"col\">$language{Probability}</th></tr>\n";
} else {
! $self->{scores__} .= "<th scope=\"col\">$language{Count} </th><th scope=\"col\">$language{Probability}</th></tr>\n";
}
--- 1082,1086 ----
$self->{scores__} .= "<th scope=\"col\">$language{Count} </th><th scope=\"col\" align=\"center\">$language{Score}</th><th scope=\"col\">$language{Probability}</th></tr>\n";
} else {
! $self->{scores__} .= "<th scope=\"col\">$language{Count} </th><th scope=\"col\">$language{Probability}</th></tr>\n";
}
***************
*** 1092,1101 ****
}
! if ($self->{wmformat__} eq 'score') {
$rawstr = sprintf("%12.6f", ($raw_score{$b} - $correction)/$log10);
$self->{scores__} .= "<tr>\n<td><font color=\"$self->{colors__}{$b}\"><b>$b</b></font></td>\n<td> </td>\n<td align=\"right\">$matchcount{$b} </td>\n<td align=right>$rawstr </td>\n<td>$probstr</td>\n</tr>\n";
} else {
! $self->{scores__} .= "<tr>\n<td><font color=\"$self->{colors__}{$b}\"><b>$b</b></font></td>\n<td> </td>\n<td align=\"right\">$matchcount{$b} </td>\n<td>$probstr</td>\n</tr>\n";
! }
}
--- 1104,1113 ----
}
! if ($self->{wmformat__} eq 'score') {
$rawstr = sprintf("%12.6f", ($raw_score{$b} - $correction)/$log10);
$self->{scores__} .= "<tr>\n<td><font color=\"$self->{colors__}{$b}\"><b>$b</b></font></td>\n<td> </td>\n<td align=\"right\">$matchcount{$b} </td>\n<td align=right>$rawstr </td>\n<td>$probstr</td>\n</tr>\n";
} else {
! $self->{scores__} .= "<tr>\n<td><font color=\"$self->{colors__}{$b}\"><b>$b</b></font></td>\n<td> </td>\n<td align=\"right\">$matchcount{$b} </td>\n<td>$probstr</td>\n</tr>\n";
! }
}
***************
*** 1107,1195 ****
$self->{scores__} .= "<!--format--><p>";
! $self->{scores__} .= "<table class=\"top20Words\">\n";
! $self->{scores__} .= "<tr>\n<th scope=\"col\">$language{Word}</th><th> </th><th scope=\"col\">$language{Count}</th><th> </th>\n";
! foreach my $ix (0..($#buckets > 7? 7: $#buckets)) {
! my $bucket = $ranking[$ix];
! my $bucketcolor = $self->get_bucket_color( $bucket );
! $self->{scores__} .= "<th><font color=\"$bucketcolor\">$bucket</font></th><th> </th>";
! }
! $self->{scores__} .= "</tr>";
! my %wordprobs;
! # If the word matrix is supposed to show probabilities, compute them,
! # saving the results in %wordprobs.
! if ( $self->{wmformat__} eq 'prob') {
! foreach my $word (keys %{$self->{parser__}->{words__}}) {
! my $sumfreq = 0;
! my %wval;
! foreach my $bucket (@ranking) {
! $wval{$bucket} = exp(get_sort_value_( $self, $bucket, $word ));
! $sumfreq += $wval{$bucket};
! }
! foreach my $bucket (@ranking) {
! $wordprobs{$bucket,$word} = $wval{$bucket} / $sumfreq;
}
}
- }
! my @ranked_words;
! if ($self->{wmformat__} eq 'prob') {
! @ranked_words = sort {$wordprobs{$ranking[0],$b} <=> $wordprobs{$ranking[0],$a}} keys %{$self->{parser__}->{words__}};
! } else {
! @ranked_words = sort {$self->get_sort_value_( $ranking[0], $b ) <=> $self->get_sort_value_( $ranking[0], $a )} keys %{$self->{parser__}->{words__}};
! }
! foreach my $word (@ranked_words) {
! my $known = 0;
! foreach my $bucket (@ranking) {
! if ( $self->get_value_( $bucket, $word ) != 0 ) {
! $known = 1;
! last;
}
- }
! if ( $known == 1 ) {
! my $wordcolor = $self->get_color( $word );
! my $count = $self->{parser__}->{words__}{$word};
! $self->{scores__} .= "<tr>\n<td><font color=\"$wordcolor\">$word</font></td><td> </td><td>$count</td><td> </td>\n";
! my $base_probability = $self->get_value_( $ranking[0], $word );
! foreach my $ix (0..($#buckets > 7? 7: $#buckets)) {
! my $bucket = $ranking[$ix];
! my $probability = $self->get_value_( $bucket, $word );
! my $color = 'black';
! if ( $probability >= $base_probability || $base_probability == 0 ) {
! $color = $self->get_bucket_color( $bucket );
! }
! if ( $probability != 0 ) {
! my $wordprobstr;
! if ($self->{wmformat__} eq 'score') {
! $wordprobstr = sprintf("%12.4f", ($probability - $self->{not_likely__})/$log10 );
! } elsif ($self->{wmformat__} eq 'prob') {
! $wordprobstr = sprintf("%12.4f", $wordprobs{$bucket,$word});
} else {
! $wordprobstr = sprintf("%13.5f", exp($probability) );
}
-
- $self->{scores__} .= "<td><font color=\"$color\">$wordprobstr</font></td>\n<td> </td>\n";
- } else {
- $self->{scores__} .= "<td> </td>\n<td> </td>\n";
}
}
}
! $self->{scores__} .= "</tr>";
}
-
- $self->{scores__} .= "</table></p>";
}
--- 1119,1209 ----
$self->{scores__} .= "<!--format--><p>";
! if ( $self->{wmformat__} ne '' ) {
! $self->{scores__} .= "<table class=\"top20Words\">\n";
! $self->{scores__} .= "<tr>\n<th scope=\"col\">$language{Word}</th><th> </th><th scope=\"col\">$language{Count}</th><th> </th>\n";
! foreach my $ix (0..($#buckets > 7? 7: $#buckets)) {
! my $bucket = $ranking[$ix];
! my $bucketcolor = $self->get_bucket_color( $bucket );
! $self->{scores__} .= "<th><font color=\"$bucketcolor\">$bucket</font></th><th> </th>";
! }
! $self->{scores__} .= "</tr>";
! my %wordprobs;
! # If the word matrix is supposed to show probabilities, compute them,
! # saving the results in %wordprobs.
! if ( $self->{wmformat__} eq 'prob') {
! foreach my $word (keys %{$self->{parser__}->{words__}}) {
! my $sumfreq = 0;
! my %wval;
! foreach my $bucket (@ranking) {
! $wval{$bucket} = exp(get_sort_value_( $self, $bucket, $word ));
! $sumfreq += $wval{$bucket};
! }
! foreach my $bucket (@ranking) {
! $wordprobs{$bucket,$word} = $wval{$bucket} / $sumfreq;
! }
}
}
! my @ranked_words;
! if ($self->{wmformat__} eq 'prob') {
! @ranked_words = sort {$wordprobs{$ranking[0],$b} <=> $wordprobs{$ranking[0],$a}} keys %{$self->{parser__}->{words__}};
! } else {
! @ranked_words = sort {$self->get_sort_value_( $ranking[0], $b ) <=> $self->get_sort_value_( $ranking[0], $a )} keys %{$self->{parser__}->{words__}};
! }
! foreach my $word (@ranked_words) {
! my $known = 0;
! foreach my $bucket (@ranking) {
! if ( $self->get_base_value_( $bucket, $word ) != 0 ) {
! $known = 1;
! last;
! }
}
! if ( $known == 1 ) {
! my $wordcolor = $self->get_color( $word );
! my $count = $self->{parser__}->{words__}{$word};
! $self->{scores__} .= "<tr>\n<td><font color=\"$wordcolor\">$word</font></td><td> </td><td>$count</td><td> </td>\n";
! my $base_probability = $self->get_value_( $ranking[0], $word );
! foreach my $ix (0..($#buckets > 7? 7: $#buckets)) {
! my $bucket = $ranking[$ix];
! my $probability = $self->get_value_( $bucket, $word );
! my $color = 'black';
! if ( $probability >= $base_probability || $base_probability == 0 ) {
! $color = $self->get_bucket_color( $bucket );
! }
! if ( $probability != 0 ) {
! my $wordprobstr;
! if ($self->{wmformat__} eq 'score') {
! $wordprobstr = sprintf("%12.4f", ($probability - $self->{not_likely__})/$log10 );
! } elsif ($self->{wmformat__} eq 'prob') {
! $wordprobstr = sprintf("%12.4f", $wordprobs{$bucket,$word});
! } else {
! $wordprobstr = sprintf("%13.5f", exp($probability) );
! }
!
! $self->{scores__} .= "<td><font color=\"$color\">$wordprobstr</font></td>\n<td> </td>\n";
} else {
! $self->{scores__} .= "<td> </td>\n<td> </td>\n";
}
}
}
+
+ $self->{scores__} .= "</tr>";
}
! $self->{scores__} .= "</table></p>";
}
}
***************
*** 1655,1659 ****
my ( $self, $bucket, $prefix ) = @_;
! return grep {/^$prefix/} grep {!/__POPFILE__(UNIQUE|TOTAL)__/} keys %{$self->{matrix__}{$bucket}};
}
--- 1669,1673 ----
my ( $self, $bucket, $prefix ) = @_;
! return grep {/^$prefix/} grep {!/^__POPFILE__/} keys %{$self->{matrix__}{$bucket}};
}
***************
*** 1680,1690 ****
if ( $self->module_config_( 'html', 'language' ) eq 'Nihongo' ) {
no locale;
! return grep {$_ ne $prev && ($prev = $_, 1)} sort map {substr_euc($_,0,1)} grep {!/__POPFILE__(UNIQUE|TOTAL)__/} keys %{$self->{matrix__}{$bucket}};
} else {
if ( $self->module_config_( 'html', 'language' ) eq 'Korean' ) {
no locale;
! return grep {$_ ne $prev && ($prev = $_, 1)} sort map {$_ =~ /([\x20-\x80]|$eksc)/} grep {!/__POPFILE__(UNIQUE|TOTAL)__/} keys %{$self->{matrix__}{$bucket}};
} else {
! return grep {$_ ne $prev && ($prev = $_, 1)} sort map {substr($_,0,1)} grep {!/__POPFILE__(UNIQUE|TOTAL)__/} keys %{$self->{matrix__}{$bucket}};
}
}
--- 1694,1704 ----
if ( $self->module_config_( 'html', 'language' ) eq 'Nihongo' ) {
no locale;
! return grep {$_ ne $prev && ($prev = $_, 1)} sort map {substr_euc($_,0,1)} grep {!/^__POPFILE__/} keys %{$self->{matrix__}{$bucket}};
} else {
if ( $self->module_config_( 'html', 'language' ) eq 'Korean' ) {
no locale;
! return grep {$_ ne $prev && ($prev = $_, 1)} sort map {$_ =~ /([\x20-\x80]|$eksc)/} grep {!/^__POPFILE__/} keys %{$self->{matrix__}{$bucket}};
} else {
! return grep {$_ ne $prev && ($prev = $_, 1)} sort map {substr($_,0,1)} grep {!/^__POPFILE__/} keys %{$self->{matrix__}{$bucket}};
}
}
***************
*** 1977,1980 ****
--- 1991,2015 ----
# add_messages_to_bucket
#
+ # Takes words previously parsed by the mail parser and adds/subtracts them to/from a bucket,
+ # this is a helper used by add_messages_to_bucket, remove_message_from_bucket
+ #
+ # $bucket Bucket to add to
+ # $subtract Set to -1 means subtract the words, set to 1 means add
+ #
+ # ---------------------------------------------------------------------------------------------
+ sub add_words_to_bucket__
+ {
+ my ( $self, $bucket, $subtract ) = @_;
+
+ foreach my $word (keys %{$self->{parser__}->{words__}}) {
+ $self->set_value_( $bucket, $word, $subtract * $self->{parser__}->{words__}{$word} +
+ $self->get_base_value_( $bucket, $word ) );
+ }
+ }
+
+ # ---------------------------------------------------------------------------------------------
+ #
+ # add_messages_to_bucket
+ #
# Parses mail messages and updates the statistics in the specified bucket
#
***************
*** 1999,2017 ****
$self->{parser__}->parse_file( $file, $self->module_config_( 'html', 'language' ) );
! # In Japanese mode, disable locale.
! # Sorting Japanese with "use locale" is memory and time consuming,
! # and may cause perl crash.
! # Disable the locale in Korean mode, too.
! if ( $self->module_config_( 'html', 'language' ) eq 'Nihongo' ||
! $self->module_config_( 'html', 'language' ) eq 'Korean' ) {
no locale;
! foreach my $word (keys %{$self->{parser__}->{words__}}) {
! $self->set_value_( $bucket, $word, $self->{parser__}->{words__}{$word} + $self->get_base_value_( $bucket, $word ) );
! }
} else {
! foreach my $word (keys %{$self->{parser__}->{words__}}) {
! $self->set_value_( $bucket, $word, $self->{parser__}->{words__}{$word} + $self->get_base_value_( $bucket, $word ) );
! }
}
}
--- 2034,2047 ----
$self->{parser__}->parse_file( $file, $self->module_config_( 'html', 'language' ) );
! # In Japanese mode, disable locale.
! # Sorting Japanese with "use locale" is memory and time consuming,
! # and may cause perl crash.
! # Disable the locale in Korean mode, too.
! if ( $self->module_config_( 'html', 'language' ) =~ /^Nihongo|Korean$/ ) {
no locale;
! $self->add_words_to_bucket__( $bucket, 1 );
} else {
! $self->add_words_to_bucket__( $bucket, 1 );
}
}
***************
*** 2069,2082 ****
# Disable the locale in Korean mode, too.
! if ( $self->module_config_( 'html', 'language' ) eq 'Nihongo' ||
! $self->module_config_( 'html', 'language' ) eq 'Korean' ) {
no locale;
! foreach my $word (keys %{$self->{parser__}->{words__}}) {
! $self->set_value_( $bucket, $word, $self->get_base_value_( $bucket, $word ) - $self->{parser__}->{words__}{$word} );
! }
} else {
! foreach my $word (keys %{$self->{parser__}->{words__}}) {
! $self->set_value_( $bucket, $word, $self->get_base_value_( $bucket, $word ) - $self->{parser__}->{words__}{$word} );
! }
}
--- 2099,2108 ----
# Disable the locale in Korean mode, too.
!
! if ( $self->module_config_( 'html', 'language' ) =~ /^Nihongo|Korean$/ ) {
no locale;
! $self->add_words_to_bucket__( $bucket, -1 );
} else {
! $self->add_words_to_bucket__( $bucket, -1 );
}
***************
*** 2195,2200 ****
}
! $self->{matrix__}{$bucket}{__POPFILE__TOTAL__} = 0;
! $self->{matrix__}{$bucket}{__POPFILE__UNIQUE__} = 0;
$self->load_word_matrix_();
--- 2221,2226 ----
}
! $self->{matrix__}{$bucket}{__POPFILE__TOTAL__} = 0;
! $self->{matrix__}{$bucket}{__POPFILE__UNIQUE__} = 0;
$self->load_word_matrix_();
***************
*** 2236,2241 ****
# Disable the locale in Korean mode, too.
! if ( $self->module_config_( 'html', 'language' ) eq 'Nihongo' ||
! $self->module_config_( 'html', 'language' ) eq 'Korean' ) {
no locale;
return sort keys %{$self->{magnets__}{$bucket}{$type}};
--- 2262,2266 ----
# Disable the locale in Korean mode, too.
! if ( $self->module_config_( 'html', 'language' ) =~ /^Nihongo|Korean$/ ) {
no locale;
return sort keys %{$self->{magnets__}{$bucket}{$type}};
Index: WordMangle.pm
===================================================================
RCS file: /cvsroot/popfile/engine/Classifier/WordMangle.pm,v
retrieving revision 1.30
retrieving revision 1.31
diff -C2 -d -r1.30 -r1.31
*** WordMangle.pm 1 Oct 2003 14:34:28 -0000 1.30
--- WordMangle.pm 13 Oct 2003 20:23:40 -0000 1.31
***************
*** 147,150 ****
--- 147,151 ----
#
# $stopword The word to add or remove
+ # $lang The current language
#
# Returns 1 if successful, or 0 for a bad stop word
|
|
From: <jgr...@us...> - 2003-10-13 20:23:47
|
Update of /cvsroot/popfile/engine/Proxy
In directory sc8-pr-cvs1:/tmp/cvs-serv28571/Proxy
Modified Files:
POP3.pm
Log Message:
FINAL PREPARATIONS FOR V0.20.0
Bring test suite to as close to 100% coverage as possible
Clean up Japanese/Korean code for better maintainability
Fix problem with random test suite crashes
Proxy/POP3.pm:
Add code to upgrade the welcome_string if the user has not
changed it from the default in a previous version of POPFile.
Classifier/Bayes.pm:
Remove a lot of code that was duplicated because of
the addition of Japanese and Korean support. To do
so created two helper methods: add_words_to_bucket__
and magnet_match__. There's still some duplicated code
(e.g. calls to these functions) but I can't find a good
way to deal with 'no locale' other than this.
Add hints for the code coverage about blocks of code.
Change the word scores code so that the scores are not
calculated if not required.
UI/HTML.pm:
Handle the display and non-display of the word matrix,
remove the stickiness of the word table format since
POPFile has not other 'sticky' values at this point.
Remove duplicated code introduced by Japanese and
Korean support.
tests.pl:
Accept multiple patterns on the command line so that
multiple tests can be specified at once. Patterns are
separated by commas. e.g. to run the HTTP and MailParse
test suites do:
gmake test TESTARGS=HTTP,MailParse
license:
Incorporate information about the BerkeleyDB license.
tests/TestWordMangle.tst:
Add tests for Japanese stop word support.
tests/TestModule.tst:
Add calls to dummy parent methods that do nothing, done
to get coverage to 100%.
tests/TestMailParse.tst
tests/TestPOP3.tst
tests/TestHTML.tst:
Make sure to stop the Bayes module to close the database.
tests/TestHTML.script:
Add tests for the new Single Message View where the word
matrix is not expanded by default. Test with and without
the word matrix and test the different views.
Added tests for Japanese and Korean stop words.
tests/TestProxy.tst:
Add tests for echo_response_'s handling of timeouts.
tests/languages/Korean.msg
tests/languages/Nihongo.msg:
Added the Korean and Japanese language files.
tests/TestMailParse022.cam
tests/TestMailParse022.wrd
tests/TestMailParse022.msg:
Split the From and Subject line to check the new
long header support.
tests/TestMailParse019.clr
tests/TestMailParse015.clr:
The information in this appeared to be wrong, so updated
to the latest output.
tests/TestMailParse.tst:
Add TestMailParse019 to the colorization tests.
Index: POP3.pm
===================================================================
RCS file: /cvsroot/popfile/engine/Proxy/POP3.pm,v
retrieving revision 1.78
retrieving revision 1.79
diff -C2 -d -r1.78 -r1.79
*** POP3.pm 6 Oct 2003 13:54:30 -0000 1.78
--- POP3.pm 13 Oct 2003 20:23:40 -0000 1.79
***************
*** 125,128 ****
--- 125,144 ----
# ---------------------------------------------------------------------------------------------
#
+ # start
+ #
+ # ---------------------------------------------------------------------------------------------
+ sub start
+ {
+ my ( $self ) = @_;
+
+ if ( $self->config_( 'welcome_string' ) =~ /^POP3 POPFile \(v\d+\.\d+\.\d+\) server ready$/ ) {
+ $self->config_( 'welcome_string', "POP3 POPFile ($self->{version_}) server ready" );
+ }
+
+ return $self->SUPER::start();
+ }
+
+ # ---------------------------------------------------------------------------------------------
+ #
# child__
#
|
|
From: <jgr...@us...> - 2003-10-13 20:23:47
|
Update of /cvsroot/popfile/engine
In directory sc8-pr-cvs1:/tmp/cvs-serv28571
Modified Files:
bayes.pl license tests.pl
Log Message:
FINAL PREPARATIONS FOR V0.20.0
Bring test suite to as close to 100% coverage as possible
Clean up Japanese/Korean code for better maintainability
Fix problem with random test suite crashes
Proxy/POP3.pm:
Add code to upgrade the welcome_string if the user has not
changed it from the default in a previous version of POPFile.
Classifier/Bayes.pm:
Remove a lot of code that was duplicated because of
the addition of Japanese and Korean support. To do
so created two helper methods: add_words_to_bucket__
and magnet_match__. There's still some duplicated code
(e.g. calls to these functions) but I can't find a good
way to deal with 'no locale' other than this.
Add hints for the code coverage about blocks of code.
Change the word scores code so that the scores are not
calculated if not required.
UI/HTML.pm:
Handle the display and non-display of the word matrix,
remove the stickiness of the word table format since
POPFile has not other 'sticky' values at this point.
Remove duplicated code introduced by Japanese and
Korean support.
tests.pl:
Accept multiple patterns on the command line so that
multiple tests can be specified at once. Patterns are
separated by commas. e.g. to run the HTTP and MailParse
test suites do:
gmake test TESTARGS=HTTP,MailParse
license:
Incorporate information about the BerkeleyDB license.
tests/TestWordMangle.tst:
Add tests for Japanese stop word support.
tests/TestModule.tst:
Add calls to dummy parent methods that do nothing, done
to get coverage to 100%.
tests/TestMailParse.tst
tests/TestPOP3.tst
tests/TestHTML.tst:
Make sure to stop the Bayes module to close the database.
tests/TestHTML.script:
Add tests for the new Single Message View where the word
matrix is not expanded by default. Test with and without
the word matrix and test the different views.
Added tests for Japanese and Korean stop words.
tests/TestProxy.tst:
Add tests for echo_response_'s handling of timeouts.
tests/languages/Korean.msg
tests/languages/Nihongo.msg:
Added the Korean and Japanese language files.
tests/TestMailParse022.cam
tests/TestMailParse022.wrd
tests/TestMailParse022.msg:
Split the From and Subject line to check the new
long header support.
tests/TestMailParse019.clr
tests/TestMailParse015.clr:
The information in this appeared to be wrong, so updated
to the latest output.
tests/TestMailParse.tst:
Add TestMailParse019 to the colorization tests.
Index: bayes.pl
===================================================================
RCS file: /cvsroot/popfile/engine/bayes.pl,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -d -r1.23 -r1.24
*** bayes.pl 31 Jul 2003 16:32:20 -0000 1.23
--- bayes.pl 13 Oct 2003 20:23:40 -0000 1.24
***************
*** 62,66 ****
$b->start();
-
my @files = glob $ARGV[0];
foreach my $file (@files) {
--- 62,65 ----
Index: license
===================================================================
RCS file: /cvsroot/popfile/engine/license,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** license 31 Jul 2003 16:32:20 -0000 1.2
--- license 13 Oct 2003 20:23:40 -0000 1.3
***************
*** 1,2 ****
--- 1,10 ----
+ This file describes POPFile's license:
+
+ POPFile is licensed in the GNU General Public License in section 1 below.
+ POPFile uses the BerkeleyDB, see section 2 below.
+
+
+ 1. POPFile's License
+
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
***************
*** 341,342 ****
--- 349,374 ----
+ 2. BerkeleyDB License
+
+ Copyright (c) 1997-2003 Paul Marquess. All rights reserved. This program is
+ free software; you can redistribute it and/or modify it under the same
+ terms as Perl itself.
+
+ Although BerkeleyDB is covered by the Perl license, the library it makes
+ use of, namely Berkeley DB, is not. Berkeley DB has its own copyright and
+ its own license. Please take the time to read it.
+
+ Here are few words taken from the Berkeley DB FAQ (at
+ http://www.sleepycat.com) regarding the license:
+
+ Do I have to license DB to use it in Perl scripts?
+
+ No. The Berkeley DB license requires that software that uses
+ Berkeley DB be freely redistributable. In the case of Perl, that
+ software is Perl, and not your scripts. Any Perl scripts that you
+ write are your property, including scripts that make use of Berkeley
+ DB. Neither the Perl license nor the Berkeley DB license
+ place any restriction on what you may do with them.
+
+ If you are in any doubt about the license situation, contact either the
+ Berkeley DB authors or the author of BerkeleyDB. See AUTHOR for details.
Index: tests.pl
===================================================================
RCS file: /cvsroot/popfile/engine/tests.pl,v
retrieving revision 1.30
retrieving revision 1.31
diff -C2 -d -r1.30 -r1.31
*** tests.pl 15 Sep 2003 14:55:36 -0000 1.30
--- tests.pl 13 Oct 2003 20:23:40 -0000 1.31
***************
*** 161,165 ****
# MAIN
! my @tests = glob '*.tst';
# Either match all the possible tests, or take the first argument
--- 161,165 ----
# MAIN
! my @tests = sort { $b cmp $a } glob '*.tst';
# Either match all the possible tests, or take the first argument
***************
*** 168,173 ****
# to be run
! my $pattern = '.*';
! $pattern = "$ARGV[0].*" if ( $#ARGV == 0 );
my $code = 0;
--- 168,173 ----
# to be run
! my @patterns= ( '.*' );
! @patterns = split( /,/, $ARGV[0] ) if ( $#ARGV == 0 );
my $code = 0;
***************
*** 175,179 ****
foreach my $test (@tests) {
! if ( $test =~ /$pattern/ ) {
# This works by reading the entire suite into the $suite variable
--- 175,188 ----
foreach my $test (@tests) {
! my $runit = 0;
!
! foreach my $pattern (@patterns) {
! if ( $test =~ /$pattern/ ) {
! $runit = 1;
! last;
! }
! }
!
! if ( $runit ) {
# This works by reading the entire suite into the $suite variable
***************
*** 181,187 ****
# the line number and the file they are from, then the $suite is
# evaluated
my $current_test_count = $test_count;
my $current_error_count = $test_failures;
!
print "\nRunning $test... ";
flush STDOUT;
--- 190,197 ----
# the line number and the file they are from, then the $suite is
# evaluated
+
my $current_test_count = $test_count;
my $current_error_count = $test_failures;
!
print "\nRunning $test... ";
flush STDOUT;
***************
*** 200,208 ****
}
close SUITE;
! if ( !defined( eval $suite ) ) {
print "Error in $test: $@";
$code = 1;
}
!
if ( $test_failures > $current_error_count ) {
print "failed (" . ( $test_count - $current_test_count ) . " ok, " . ( $test_failures - $current_error_count ) . " failed)\n";
--- 210,221 ----
}
close SUITE;
!
! my $ran = eval( $suite );
!
! if ( !defined( $ran ) ) {
print "Error in $test: $@";
$code = 1;
}
!
if ( $test_failures > $current_error_count ) {
print "failed (" . ( $test_count - $current_test_count ) . " ok, " . ( $test_failures - $current_error_count ) . " failed)\n";
|
|
From: <jgr...@us...> - 2003-10-13 00:42:07
|
Update of /cvsroot/popfile/engine/languages In directory sc8-pr-cvs1:/tmp/cvs-serv29655 Modified Files: Korean.msg Nihongo.msg Log Message: Update Japanese and Korean translations Index: Korean.msg =================================================================== RCS file: /cvsroot/popfile/engine/languages/Korean.msg,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** Korean.msg 6 Oct 2003 14:24:41 -0000 1.4 --- Korean.msg 13 Oct 2003 00:41:58 -0000 1.5 *************** *** 277,280 **** --- 277,283 ---- View_ShowScores ´Ü¾î Á¡¼ö º¸±â View_WordMatrix ´Ü¾î Ç¥ + View_WordProbabilities ´Ü¾î È®·ü Ç¥½Ã Áß + View_WordFrequencies ´Ü¾î ºóµµ Ç¥½Ã Áß + View_WordScores ´Ü¾î Á¡¼ö Ç¥½Ã Áß Windows_TrayIcon ÆËÆÄÀÏ ¾ÆÀÌÄÜÀ» À©µµ¿ìÁî ½Ã½ºÅÛ Æ®·¹ÀÌ¿¡ Ç¥½ÃÇϽðڽÀ´Ï±î? Index: Nihongo.msg =================================================================== RCS file: /cvsroot/popfile/engine/languages/Nihongo.msg,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Nihongo.msg 1 Oct 2003 14:34:29 -0000 1.3 --- Nihongo.msg 13 Oct 2003 00:41:58 -0000 1.4 *************** *** 278,281 **** --- 278,284 ---- View_ShowScores ñ¸ì¤ÎÆÀÅÀ¤òɽ¼¨ View_WordMatrix ñ¸ì¥Þ¥È¥ê¥¯¥¹ + View_WordProbabilities ³ÎΨ + View_WordFrequencies ÉÑÅÙ + View_WordScores ÆÀÅÀ Windows_TrayIcon POPFile ¤Î¥¢¥¤¥³¥ó¤ò Windows ¥·¥¹¥Æ¥à¥È¥ì¥¤¤Ëɽ¼¨¤·¤Þ¤¹¤«¡© |
|
From: <xue...@us...> - 2003-10-12 16:24:31
|
Update of /cvsroot/popfile/windows
In directory sc8-pr-cvs1:/tmp/cvs-serv5527
Modified Files:
pfi-library.nsh
Log Message:
Found an uninitialised register in a library function.
Index: pfi-library.nsh
===================================================================
RCS file: /cvsroot/popfile/windows/pfi-library.nsh,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -d -r1.16 -r1.17
*** pfi-library.nsh 5 Oct 2003 10:01:49 -0000 1.16
--- pfi-library.nsh 12 Oct 2003 16:24:25 -0000 1.17
***************
*** 865,868 ****
--- 865,869 ----
Push $R3
StrLen $R3 $R0
+ StrCpy $R1 0
loop:
|
|
From: <xue...@us...> - 2003-10-11 19:27:26
|
Update of /cvsroot/popfile/windows
In directory sc8-pr-cvs1:/tmp/cvs-serv24795
Modified Files:
installer.nsi
Log Message:
Try doubling the timeout limits used for shutdown and startup tests.
Index: installer.nsi
===================================================================
RCS file: /cvsroot/popfile/windows/installer.nsi,v
retrieving revision 1.136
retrieving revision 1.137
diff -C2 -d -r1.136 -r1.137
*** installer.nsi 11 Oct 2003 13:17:38 -0000 1.136
--- installer.nsi 11 Oct 2003 19:27:22 -0000 1.137
***************
*** 146,150 ****
; Timeout loop counter start value (counts down to 0)
! !define C_SHUTDOWN_LIMIT 10
; Delay (in milliseconds) used inside the timeout loop
--- 146,150 ----
; Timeout loop counter start value (counts down to 0)
! !define C_SHUTDOWN_LIMIT 20
; Delay (in milliseconds) used inside the timeout loop
***************
*** 158,162 ****
; Timeout loop counter start value (counts down to 0)
! !define C_STARTUP_LIMIT 10
; Delay (in milliseconds) used inside the timeout loop
--- 158,162 ----
; Timeout loop counter start value (counts down to 0)
! !define C_STARTUP_LIMIT 20
; Delay (in milliseconds) used inside the timeout loop
|
|
From: <xue...@us...> - 2003-10-11 13:18:21
|
Update of /cvsroot/popfile/windows/languages In directory sc8-pr-cvs1:/tmp/cvs-serv32486 Modified Files: Japanese-pfi.nsh Log Message: Updated translations [see Patch 821625] Index: Japanese-pfi.nsh =================================================================== RCS file: /cvsroot/popfile/windows/languages/Japanese-pfi.nsh,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** Japanese-pfi.nsh 7 Oct 2003 15:58:59 -0000 1.14 --- Japanese-pfi.nsh 11 Oct 2003 13:18:17 -0000 1.15 *************** *** 130,140 **** ; Message Box text strings ! !insertmacro PFI_LANG_STRING PFI_LANG_MBSTPWDS_1 "ÈOÉCXg[³ê½t@CðoµÜµ½B" !insertmacro PFI_LANG_STRING PFI_LANG_MBSTPWDS_2 "Abvf[gµÄàæëµ¢Å·©H" !insertmacro PFI_LANG_STRING PFI_LANG_MBSTPWDS_3 "Abvf[g·éÉÍuYesvðNbNµÄº³¢B(ât@CÍ̼OÅÛ¶³êÜ·:" !insertmacro PFI_LANG_STRING PFI_LANG_MBSTPWDS_4 "ât@Cðc·ÉÍuNovðNbNµÄº³¢B(Vµ¢t@CÍ̼OÅÛ¶³êÜ·:" ! !insertmacro PFI_LANG_STRING PFI_LANG_MBCFGBK_1 "Ìt@CÌobNAbv:" ! !insertmacro PFI_LANG_STRING PFI_LANG_MBCFGBK_2 "ÍùɶݵܷB" !insertmacro PFI_LANG_STRING PFI_LANG_MBCFGBK_3 "㫵Äàæëµ¢Å·©H" !insertmacro PFI_LANG_STRING PFI_LANG_MBCFGBK_4 "ã«·éÉÍuYesvAobNAbvðXLbv·éÈçuNovðNbNµÄ¾³¢B" --- 130,140 ---- ; Message Box text strings ! !insertmacro PFI_LANG_STRING PFI_LANG_MBSTPWDS_1 "ÍÈOÉCXg[³ê½t@CÅ·B" !insertmacro PFI_LANG_STRING PFI_LANG_MBSTPWDS_2 "Abvf[gµÄàæëµ¢Å·©H" !insertmacro PFI_LANG_STRING PFI_LANG_MBSTPWDS_3 "Abvf[g·éÉÍuYesvðNbNµÄº³¢B(ât@CÍ̼OÅÛ¶³êÜ·:" !insertmacro PFI_LANG_STRING PFI_LANG_MBSTPWDS_4 "ât@Cðc·ÉÍuNovðNbNµÄº³¢B(Vµ¢t@CÍ̼OÅÛ¶³êÜ·:" ! !insertmacro PFI_LANG_STRING PFI_LANG_MBCFGBK_1 "t@C" ! !insertmacro PFI_LANG_STRING PFI_LANG_MBCFGBK_2 "ÌobNAbvÍùɶݵܷB" !insertmacro PFI_LANG_STRING PFI_LANG_MBCFGBK_3 "㫵Äàæëµ¢Å·©H" !insertmacro PFI_LANG_STRING PFI_LANG_MBCFGBK_4 "ã«·éÉÍuYesvAobNAbvðXLbv·éÈçuNovðNbNµÄ¾³¢B" *************** *** 229,233 **** !insertmacro PFI_LANG_STRING PFI_LANG_LAUNCH_IO_NO "¢¢¦(u[U[C^[tF[XvÍ POPFile ðN®µÈ¢Æg¦Ü¹ñB)" !insertmacro PFI_LANG_STRING PFI_LANG_LAUNCH_IO_DOSBOX "POPFile ðN®(R\[)" ! !insertmacro PFI_LANG_STRING PFI_LANG_LAUNCH_IO_BCKGRND "POPFile ðobNOhÅN®(R\[ȵ)" !insertmacro PFI_LANG_STRING PFI_LANG_LAUNCH_IO_NOTE_1 "POPFile ðN®·êÎȺÌû@Åu[U[C^[tF[XvðgpūܷB" !insertmacro PFI_LANG_STRING PFI_LANG_LAUNCH_IO_NOTE_2 "(a) VXegCÌ POPFile ACRð_uNbN·é©A" --- 229,233 ---- !insertmacro PFI_LANG_STRING PFI_LANG_LAUNCH_IO_NO "¢¢¦(u[U[C^[tF[XvÍ POPFile ðN®µÈ¢Æg¦Ü¹ñB)" !insertmacro PFI_LANG_STRING PFI_LANG_LAUNCH_IO_DOSBOX "POPFile ðN®(R\[)" ! !insertmacro PFI_LANG_STRING PFI_LANG_LAUNCH_IO_BCKGRND "POPFile ðobNOEhÅN®(R\[ȵ)" !insertmacro PFI_LANG_STRING PFI_LANG_LAUNCH_IO_NOTE_1 "POPFile ðN®·êÎȺÌû@Åu[U[C^[tF[XvðgpūܷB" !insertmacro PFI_LANG_STRING PFI_LANG_LAUNCH_IO_NOTE_2 "(a) VXegCÌ POPFile ACRð_uNbN·é©A" |
|
From: <xue...@us...> - 2003-10-11 13:17:42
|
Update of /cvsroot/popfile/windows
In directory sc8-pr-cvs1:/tmp/cvs-serv32340
Modified Files:
installer.nsi
Log Message:
Correct the timeout bug introduced a few weeks ago (oops!).
Index: installer.nsi
===================================================================
RCS file: /cvsroot/popfile/windows/installer.nsi,v
retrieving revision 1.135
retrieving revision 1.136
diff -C2 -d -r1.135 -r1.136
*** installer.nsi 10 Oct 2003 10:46:13 -0000 1.135
--- installer.nsi 11 Oct 2003 13:17:38 -0000 1.136
***************
*** 115,119 ****
!define MUI_PRODUCT "POPFile"
! !define MUI_VERSION "0.20.0RC3"
!define C_README "v0.20.0.change"
--- 115,119 ----
!define MUI_PRODUCT "POPFile"
! !define MUI_VERSION "0.20.0RC4"
!define C_README "v0.20.0.change"
***************
*** 2179,2182 ****
--- 2179,2183 ----
!define L_TRAY $R6 ; set to 'i' if system tray enabled, otherwise set to ""
!define L_CONSOLE $R5 ; new console mode: 0 = disabled, 1 = enabled
+ !define L_TIMEOUT $R4 ; used to wait for the UI to respond (when starting POPFile)
Push ${L_CFG}
***************
*** 2185,2188 ****
--- 2186,2190 ----
Push ${L_TRAY}
Push ${L_CONSOLE}
+ Push ${L_TIMEOUT}
StrCpy ${L_TRAY} "i" ; the default is to enable the system tray icon
***************
*** 2271,2275 ****
; Wait until POPFile is ready to display the UI (may take a second or so)
! StrCpy ${L_TEMP} ${C_STARTUP_LIMIT} ; Timeout limit to avoid an infinite loop
check_if_ready:
--- 2273,2277 ----
; Wait until POPFile is ready to display the UI (may take a second or so)
! StrCpy ${L_TIMEOUT} ${C_STARTUP_LIMIT} ; Timeout limit to avoid an infinite loop
check_if_ready:
***************
*** 2278,2283 ****
StrCmp ${L_TEMP} "success" remove_banner
Sleep ${C_STARTUP_DELAY}
! IntOp ${L_TEMP} ${L_TEMP} - 1
! IntCmp ${L_TEMP} 0 remove_banner remove_banner check_if_ready
remove_banner:
--- 2280,2285 ----
StrCmp ${L_TEMP} "success" remove_banner
Sleep ${C_STARTUP_DELAY}
! IntOp ${L_TIMEOUT} ${L_TIMEOUT} - 1
! IntCmp ${L_TIMEOUT} 0 remove_banner remove_banner check_if_ready
remove_banner:
***************
*** 2286,2289 ****
--- 2288,2292 ----
exit_without_banner:
+ Pop ${L_TIMEOUT}
Pop ${L_CONSOLE}
Pop ${L_TRAY}
***************
*** 2297,2300 ****
--- 2300,2304 ----
!undef L_TRAY
!undef L_CONSOLE
+ !undef L_TIMEOUT
FunctionEnd
|
|
From: <jgr...@us...> - 2003-10-10 20:03:23
|
Update of /cvsroot/popfile/engine/UI
In directory sc8-pr-cvs1:/tmp/cvs-serv32366/UI
Modified Files:
HTML.pm
Log Message:
Prevent an 'unclassified' bucket and set the Last Reset time correctly
Index: HTML.pm
===================================================================
RCS file: /cvsroot/popfile/engine/UI/HTML.pm,v
retrieving revision 1.213
retrieving revision 1.214
diff -C2 -d -r1.213 -r1.214
*** HTML.pm 10 Oct 2003 15:45:10 -0000 1.213
--- HTML.pm 10 Oct 2003 20:03:19 -0000 1.214
***************
*** 191,195 ****
# The last time (textual) that the statistics were reset
! $self->config_( 'last_reset', localtime );
# We start by assuming that the user speaks English like the
--- 191,196 ----
# The last time (textual) that the statistics were reset
! my $lt = localtime;
! $self->config_( 'last_reset', $lt );
# We start by assuming that the user speaks English like the
***************
*** 2028,2034 ****
}
$stripe = 1 - $stripe;
! $body .= "><td><a href=\"/buckets?session=$self->{session_key__}&showbucket=$bucket\">\n";
! $body .= "<font color=\"" . $self->{classifier__}->get_bucket_color($bucket) . "\">$bucket</font></a></td>\n";
! $body .= "<td width=\"1%\"> </td><td align=\"right\">$number</td><td width=\"1%\"> </td>\n";
$body .= "<td align=\"right\">$unique</td><td width=\"1%\"> </td>";
--- 2029,2041 ----
}
$stripe = 1 - $stripe;
! $body .= '><td>';
! if ( $bucket ne 'unclassified' ) {
! $body .= "<a href=\"/buckets?session=$self->{session_key__}&showbucket=$bucket\">\n";
! }
! $body .= "<font color=\"" . $self->{classifier__}->get_bucket_color($bucket) . "\">$bucket</font>";
! if ( $bucket ne 'unclassified' ) {
! $body .= '</a>';
! }
! $body .= "</td>\n<td width=\"1%\"> </td><td align=\"right\">$number</td><td width=\"1%\"> </td>\n";
$body .= "<td align=\"right\">$unique</td><td width=\"1%\"> </td>";
***************
*** 3349,3358 ****
$body .= "<td><a class=\"messageLink\" title=\"$subject\" href=\"/view?view=$mail_file" . $self->print_form_fields_(0,1,('start_message','session','filter','search','sort')) . "\">";
$body .= "$short_subject</a></td>\n<td>";
if ( $reclassified ) {
! $body .= "<a href=\"buckets?session=$self->{session_key__}&showbucket=$bucket\"><font color=\"" . $self->{classifier__}->get_bucket_color($bucket) . "\">$bucket</font></a></td>\n<td>";
$body .= sprintf( $self->{language__}{History_Already}, ($self->{classifier__}->get_bucket_color($bucket) || ''), ($bucket || '') );
$body .= " <input type=\"submit\" class=\"undoButton\" name=\"undo_$i\" value=\"$self->{language__}{Undo}\">\n";
} else {
! $body .= "<a href=\"buckets?session=$self->{session_key__}&showbucket=$bucket\"><font color=\"" . $self->{classifier__}->get_bucket_color($bucket) . "\">$bucket</font></a></td>\n<td>";
if ( $self->{history__}{$mail_file}{magnet} eq '' ) {
--- 3356,3367 ----
$body .= "<td><a class=\"messageLink\" title=\"$subject\" href=\"/view?view=$mail_file" . $self->print_form_fields_(0,1,('start_message','session','filter','search','sort')) . "\">";
$body .= "$short_subject</a></td>\n<td>";
+ my $sbs = ($bucket ne 'unclassified')?"<a href=\"buckets?session=$self->{session_key__}&showbucket=$bucket\">":'';
+ my $sbe = ($bucket ne 'unclassified')?'</a>':'';
if ( $reclassified ) {
! $body .= "$sbs<font color=\"" . $self->{classifier__}->get_bucket_color($bucket) . "\">$bucket</font>$sbe</td>\n<td>";
$body .= sprintf( $self->{language__}{History_Already}, ($self->{classifier__}->get_bucket_color($bucket) || ''), ($bucket || '') );
$body .= " <input type=\"submit\" class=\"undoButton\" name=\"undo_$i\" value=\"$self->{language__}{Undo}\">\n";
} else {
! $body .= "$sbs<font color=\"" . $self->{classifier__}->get_bucket_color($bucket) . "\">$bucket</font>$sbe</td>\n<td>";
if ( $self->{history__}{$mail_file}{magnet} eq '' ) {
***************
*** 3550,3554 ****
$view = $self->{language__}{View_WordScores};
}
!
$fmtlinks = "<table width=\"100%\">\n<td class=\"top20\" align=\"left\"><b>$self->{language__}{View_WordMatrix} ($view)</b></td>\n<td class=\"historyNavigatorTop\">\n";
if ($self->config_( 'wordtable_format' ) ne 'freq' ) {
--- 3559,3563 ----
$view = $self->{language__}{View_WordScores};
}
!
$fmtlinks = "<table width=\"100%\">\n<td class=\"top20\" align=\"left\"><b>$self->{language__}{View_WordMatrix} ($view)</b></td>\n<td class=\"historyNavigatorTop\">\n";
if ($self->config_( 'wordtable_format' ) ne 'freq' ) {
|
|
From: <jgr...@us...> - 2003-10-10 20:03:23
|
Update of /cvsroot/popfile/engine/tests/languages In directory sc8-pr-cvs1:/tmp/cvs-serv32366/tests/languages Modified Files: English.msg Log Message: Prevent an 'unclassified' bucket and set the Last Reset time correctly Index: English.msg =================================================================== RCS file: /cvsroot/popfile/engine/tests/languages/English.msg,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** English.msg 30 Sep 2003 00:02:04 -0000 1.4 --- English.msg 10 Oct 2003 20:03:19 -0000 1.5 *************** *** 277,283 **** View_ShowScores Show word scores View_WordMatrix Word matrix Windows_TrayIcon Show POPFile icon in Windows system tray? ! Windows_Console Output POPFile message in a console window? Windows_NextTime <p><font color="red">This change will not take effect until the next time you start POPFile</font> --- 277,286 ---- View_ShowScores Show word scores View_WordMatrix Word matrix + View_WordProbabilities showing word probabilities + View_WordFrequencies showing word frequencies + View_WordScores showing word scores Windows_TrayIcon Show POPFile icon in Windows system tray? ! Windows_Console Run POPFile in a console window? Windows_NextTime <p><font color="red">This change will not take effect until the next time you start POPFile</font> |
|
From: <jgr...@us...> - 2003-10-10 15:45:15
|
Update of /cvsroot/popfile/engine/UI
In directory sc8-pr-cvs1:/tmp/cvs-serv13753/UI
Modified Files:
HTML.pm
Log Message:
Improve information on the Word matrix display
Index: HTML.pm
===================================================================
RCS file: /cvsroot/popfile/engine/UI/HTML.pm,v
retrieving revision 1.212
retrieving revision 1.213
diff -C2 -d -r1.212 -r1.213
*** HTML.pm 10 Oct 2003 14:59:32 -0000 1.212
--- HTML.pm 10 Oct 2003 15:45:10 -0000 1.213
***************
*** 3542,3547 ****
# matrix. The classifier puts a comment in the right place, which we can replace
# by the link. (There's probably a better way.)
! $fmtlinks = "<table width=\"100%\">\n<td class=\"top20\" align=\"left\"><b>$self->{language__}{View_WordMatrix}</b></td>\n<td class=\"historyNavigatorTop\">\n";
if ($self->config_( 'wordtable_format' ) ne 'freq' ) {
$fmtlinks .= "<a href=\"/view?view=" . $self->{history_keys__}[ $index ];
--- 3542,3555 ----
# matrix. The classifier puts a comment in the right place, which we can replace
# by the link. (There's probably a better way.)
+
+ my $view = $self->{language__}{View_WordProbabilities};
+ if ( $self->config_( 'wordtable_format' ) eq 'freq' ) {
+ $view = $self->{language__}{View_WordFrequencies};
+ }
+ if ( $self->config_( 'wordtable_format' ) eq 'score' ) {
+ $view = $self->{language__}{View_WordScores};
+ }
! $fmtlinks = "<table width=\"100%\">\n<td class=\"top20\" align=\"left\"><b>$self->{language__}{View_WordMatrix} ($view)</b></td>\n<td class=\"historyNavigatorTop\">\n";
if ($self->config_( 'wordtable_format' ) ne 'freq' ) {
$fmtlinks .= "<a href=\"/view?view=" . $self->{history_keys__}[ $index ];
|
|
From: <jgr...@us...> - 2003-10-10 15:45:14
|
Update of /cvsroot/popfile/engine/languages In directory sc8-pr-cvs1:/tmp/cvs-serv13753/languages Modified Files: English.msg Log Message: Improve information on the Word matrix display Index: English.msg =================================================================== RCS file: /cvsroot/popfile/engine/languages/English.msg,v retrieving revision 1.45 retrieving revision 1.46 diff -C2 -d -r1.45 -r1.46 *** English.msg 3 Oct 2003 21:07:09 -0000 1.45 --- English.msg 10 Oct 2003 15:45:10 -0000 1.46 *************** *** 277,280 **** --- 277,283 ---- View_ShowScores Show word scores View_WordMatrix Word matrix + View_WordProbabilities showing word probabilities + View_WordFrequencies showing word frequencies + View_WordScores showing word scores Windows_TrayIcon Show POPFile icon in Windows system tray? |
|
From: <jgr...@us...> - 2003-10-10 14:59:42
|
Update of /cvsroot/popfile/engine/UI
In directory sc8-pr-cvs1:/tmp/cvs-serv5117/UI
Modified Files:
HTML.pm
Log Message:
Merge patches for Korean and Japanese support
Index: HTML.pm
===================================================================
RCS file: /cvsroot/popfile/engine/UI/HTML.pm,v
retrieving revision 1.211
retrieving revision 1.212
diff -C2 -d -r1.211 -r1.212
*** HTML.pm 9 Oct 2003 18:32:51 -0000 1.211
--- HTML.pm 10 Oct 2003 14:59:32 -0000 1.212
***************
*** 2724,2728 ****
# Do not truncate at 39 if the last char is the first byte of DBCS char(pair of two bytes).
# Truncate it 1 byte shorter.
! if ( $self->config_( 'language' ) eq 'Korean' ) {
$short_subject = $1;
$short_subject =~ s/(([\x80-\xff].)*)[\x80-\xff]?$/$1/;
--- 2724,2728 ----
# Do not truncate at 39 if the last char is the first byte of DBCS char(pair of two bytes).
# Truncate it 1 byte shorter.
! if (( $self->config_( 'language' ) eq 'Korean' ) || ( $self->config_( 'language' ) eq 'Nihongo' )) {
$short_subject = $1;
$short_subject =~ s/(([\x80-\xff].)*)[\x80-\xff]?$/$1/;
|
|
From: <jgr...@us...> - 2003-10-10 14:59:42
|
Update of /cvsroot/popfile/engine/Classifier
In directory sc8-pr-cvs1:/tmp/cvs-serv5117/Classifier
Modified Files:
Bayes.pm MailParse.pm
Log Message:
Merge patches for Korean and Japanese support
Index: Bayes.pm
===================================================================
RCS file: /cvsroot/popfile/engine/Classifier/Bayes.pm,v
retrieving revision 1.207
retrieving revision 1.208
diff -C2 -d -r1.207 -r1.208
*** Bayes.pm 9 Oct 2003 13:53:13 -0000 1.207
--- Bayes.pm 10 Oct 2003 14:59:32 -0000 1.208
***************
*** 50,53 ****
--- 50,62 ----
use BerkeleyDB;
+ # Korean characters definition
+
+ my $ksc5601_sym = '(?:[\xA1-\xAC][\xA1-\xFE])';
+ my $ksc5601_han = '(?:[\xB0-\xC8][\xA1-\xFE])';
+ my $ksc5601_hanja = '(?:[\xCA-\xFD][\xA1-\xFE])';
+ my $ksc5601 = "(?:$ksc5601_sym|$ksc5601_han|$ksc5601_hanja)";
+
+ my $eksc = "(?:$ksc5601|[\x81-\xC6][\x41-\xFE])"; #extended ksc
+
#----------------------------------------------------------------------------
# new
***************
*** 1675,1681 ****
if ( $self->module_config_( 'html', 'language' ) eq 'Korean' ) {
no locale;
- my $ksc5601 = '(?:[\xA1-\xFE][\xA1-\xFE])';
- my $eksc = "(?:$ksc5601|[\x81-\xC6][\x41-\xFE])";
-
return grep {$_ ne $prev && ($prev = $_, 1)} sort map {$_ =~ /([\x20-\x80]|$eksc)/} grep {!/__POPFILE__(UNIQUE|TOTAL)__/} keys %{$self->{matrix__}{$bucket}};
} else {
--- 1684,1687 ----
Index: MailParse.pm
===================================================================
RCS file: /cvsroot/popfile/engine/Classifier/MailParse.pm,v
retrieving revision 1.167
retrieving revision 1.168
diff -C2 -d -r1.167 -r1.168
*** MailParse.pm 6 Oct 2003 14:24:41 -0000 1.167
--- MailParse.pm 10 Oct 2003 14:59:32 -0000 1.168
***************
*** 35,39 ****
# Korean characters definition
! my $ksc5601 = '(?:[\xA1-\xFE][\xA1-\xFE])';
my $eksc = "(?:$ksc5601|[\x81-\xC6][\x41-\xFE])"; #extended ksc
--- 35,43 ----
# Korean characters definition
! my $ksc5601_sym = '(?:[\xA1-\xAC][\xA1-\xFE])';
! my $ksc5601_han = '(?:[\xB0-\xC8][\xA1-\xFE])';
! my $ksc5601_hanja = '(?:[\xCA-\xFD][\xA1-\xFE])';
! my $ksc5601 = "(?:$ksc5601_sym|$ksc5601_han|$ksc5601_hanja)";
!
my $eksc = "(?:$ksc5601|[\x81-\xC6][\x41-\xFE])"; #extended ksc
***************
*** 430,434 ****
if ( defined( $to ) ) {
! $to = chr($to);
$line =~ s/$from/$to/g;
$self->{ut__} =~ s/$from/$to/g;
--- 434,445 ----
if ( defined( $to ) ) {
!
! # HTML entities confilict with DBCS chars. Replace entities with blanks.
!
! if ( $self->{lang__} eq 'Korean' ) {
! $to = ' ';
! } else {
! $to = chr($to);
! }
$line =~ s/$from/$to/g;
$self->{ut__} =~ s/$from/$to/g;
***************
*** 523,528 ****
# to support 2 byte characters.
#
! # In Korean, 1 character(2 bytes) words are meaningful, so care about
! # words between 2 and 45 characters.
while ( $line =~ s/(([A-Za-z]|$eksc)([A-Za-z\']|$eksc){1,44})([_\-,\.\"\'\)\?!:;\/& \t\n\r]{0,5}|$)// ) {
--- 534,538 ----
# to support 2 byte characters.
#
! # In Korean, care about words between 2 and 45 characters.
while ( $line =~ s/(([A-Za-z]|$eksc)([A-Za-z\']|$eksc){1,44})([_\-,\.\"\'\)\?!:;\/& \t\n\r]{0,5}|$)// ) {
|
|
From: <xue...@us...> - 2003-10-10 10:46:21
|
Update of /cvsroot/popfile/windows
In directory sc8-pr-cvs1:/tmp/cvs-serv27160
Modified Files:
installer.nsi
Log Message:
When rebooting (Win9x/Kakasi), disable the radio buttons box and the 'Back' button the 'Please Wait' page.
Index: installer.nsi
===================================================================
RCS file: /cvsroot/popfile/windows/installer.nsi,v
retrieving revision 1.134
retrieving revision 1.135
diff -C2 -d -r1.134 -r1.135
*** installer.nsi 9 Oct 2003 09:18:42 -0000 1.134
--- installer.nsi 10 Oct 2003 10:46:13 -0000 1.135
***************
*** 2083,2086 ****
--- 2083,2087 ----
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioC.ini" "Field 4" "State" "0"
+ !insertmacro MUI_INSTALLOPTIONS_WRITE "ioC.ini" "Field 1" "Flags" "DISABLED"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioC.ini" "Field 2" "Flags" "DISABLED"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioC.ini" "Field 3" "Flags" "DISABLED"
***************
*** 2325,2328 ****
--- 2326,2330 ----
!insertmacro MUI_HEADER_TEXT "$(PFI_LANG_OPTIONS_BANNER_1)" "$(PFI_LANG_OPTIONS_BANNER_2)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioC.ini" "Settings" "NumFields" "0"
+ !insertmacro MUI_INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "BackEnabled" "0"
Goto selection_ok
|
|
From: <jgr...@us...> - 2003-10-09 18:32:55
|
Update of /cvsroot/popfile/engine/UI
In directory sc8-pr-cvs1:/tmp/cvs-serv16027/UI
Modified Files:
HTML.pm
Log Message:
Allow lookup of pseudowords
Index: HTML.pm
===================================================================
RCS file: /cvsroot/popfile/engine/UI/HTML.pm,v
retrieving revision 1.210
retrieving revision 1.211
diff -C2 -d -r1.210 -r1.211
*** HTML.pm 6 Oct 2003 14:24:41 -0000 1.210
--- HTML.pm 9 Oct 2003 18:32:51 -0000 1.211
***************
*** 2271,2275 ****
my $word = $self->{form_}{word};
! if ( !( $word =~ /^header:/ ) ) {
$word = $self->{classifier__}->{mangler__}->mangle($word, 1);
}
--- 2271,2275 ----
my $word = $self->{form_}{word};
! if ( !( $word =~ /^[A-Za-z0-9\-_]+:/ ) ) {
$word = $self->{classifier__}->{mangler__}->mangle($word, 1);
}
|