CVSROOT: /cvs/gnome Module name: pan Changes by: charles 05/03/09 15:16:00
Modified files: . : ANNOUNCE.html ChangeLog pan : article-actions.c articlelist.c group-ui.c grouplist.c gui.c header-pane-renderer.c log-ui.c message-window.c nntp.c nntp.h pan.c prefs.c prefs.h save-ui.c save-ui.h score-add-ui.c server-menu-ui.c server-ui.c task-bodies.c task-cancel.c task-group-count.c task-grouplist.c task-headers.c task-post.c task-save.c task-save.h task-xml.c pan/base : Makefile.am acache.c article-thread.c article-thread.h article.c article.h decode.c decode.h file-grouplist.c file-headers.c group.c group.h message-check.c message-identifier.c message-identifier.h newsrc-port.c pan-glib-extensions.c pan-glib-extensions.h server.c server.h serverlist.c serverlist.h util-file.c util-mime.c pan/filters : Makefile.am filter-linecount.c filter-phrase.c filter-xml.c score.c pan/identities : Makefile.am identity-xml.c pan/rules : rule-action.c rule-xml.c tests : test-article.c test-mid.c test-thread.c Added files: pan/base : message-source.c message-source.h Log message: 2005-03-09 Charles Kerr <[EMAIL PROTECTED]> (Folding binary attachments into a single Article struct. This lowers the memory overhead for a 133K-article group from 63 meg to 19 meg!!) (#132477, Samuli Kärkkäinen) * pan/base/article: added AttachmentPart, which defines the minimal unique info for each part of a [1..n] binary attachment. Owned by composition by an Article. Article has a list of these so that we can fold all the headers from a [1..n] binary attachment into a single Article object. * pan/base/article: split `threads' into two fields: `followups' (Article*s) and `attachments' (AttachmentPart*s) * pan/base/message-source.h: sets of tuples of [server,group,number] that tell where to locate an article on a news server. Used by MessageIdentifier, AttachmentPart, and Article.xref. * pan/base/file-headers: add the AttachmentPart serialization inside the Article serialization and increment the file format number. * pan/base/group: new wart for the multipart-folding: when an article is expired from the server, only expire the corresponding AttachmentPart. Then expire our Article iff it has no more AttachmentParts. * pan/base/article-thread: remove the multipart threading code; embedding all multiparts into a single Article makes this redundant. * pan/prefs: remove the preference option to hide multiparts. Since they're folded into a single Article, the issue is moot. (Using GLib 2.4 functions) * pan/base/pan-glib-extensions: added 'pan_fopen' macro which resolves to g_fopen if GLIB>=2.4; fopen otherwise. * pan/base/pan-glib-extensions: added 'pan_unlink' macro which resolves to g_unlink if GLIB>=2.4; unlink otherwise. * pan/base/pan-glib-extensions: replace pan_g_ptr_array_foreach with g_ptr_array_foreach if GLIB>=2.4. (Handle "Too Many Connections" response from server) * pan/nntp: if server returns `too many connections' error, return TASK_FAIL_NETWORK so that the task can try to resume itself later. (Quarks for server and group names) * pan/base/server: replace Server and Group PString keys with Quarks. * pan/base/group: same. * pan/base/message-identifier: same. * pan/base/serverlist: same. * pan/base/acache: same. * pan/base/message-check: same. * pan/base/newsrc-port: same. * pan/nntp: same. URL : http://cvs.gnome.org/bonsai/cvsquery.cgi?branch=&dir=pan&who=charles&date=explicit&mindate=2005-03-09%2015:15&maxdate=2005-03-09%2015:17 _______________________________________________ cvs-commits-list mailing list cvs-commits-list@gnome.org http://mail.gnome.org/mailman/listinfo/cvs-commits-list