bertrand [Tue, 25 Jan 2000 01:09:56 +0000 (01:09 +0000)]
parent class is now CamelSeekableStream idem idem idem idem (_seek):
2000-01-24 bertrand <bertrand@helixcode.com>
* camel/camel-seekable-stream.c:
* camel/camel-seekable-stream.h:
* camel/camel-simple-data-wrapper-stream.h: parent class is now
CamelSeekableStream
* camel/camel-stream-buffered-fs.h: idem
* camel/camel-stream-buffered-fs.c: idem
* camel/camel-stream-mem.h: idem
* camel/camel-stream-mem.c: idem
(_seek): change declaration
* camel/camel-stream-fs.c: parent class is now
CamelSeekableStream
(_seek): change declaration
* camel/camel-stream-fs.h: parent class is now
CamelSeekableStream
Major compatible change in the stream hierarchy.
Removed the seek method from the general streams
so that we can use them as "DataSources".
bertrand [Mon, 24 Jan 2000 22:29:48 +0000 (22:29 +0000)]
converted all gint64 variables into guint32.
2000-01-24 bertrand <bertrand@helixcode.com>
* camel/camel-stream-fs.[ch]: converted all
gint64 variables into guint32.
* camel/camel-stream-fs.c (_read): fix stupid bug.
(_write): ditto.
* camel/camel-exception.c (camel_exception_new): don't
forget to clean the exception when creating it.
bertrand [Mon, 24 Jan 2000 15:07:18 +0000 (15:07 +0000)]
add recipient_list to the recipients, not recipients_list. I don't know
2000-01-24 bertrand <bertrand@helixcode.com>
* camel/camel-recipient.c (camel_recipient_table_add_list):
add recipient_list to the recipients, not recipients_list.
I don't know what that variable was doing here.
2000-01-23 bertrand <bertrand@helixcode.com>
* camel/camel-store.c (camel_store_get_session):
added a public get_session method.
* camel/providers/mbox/camel-mbox-summary.c (camel_mbox_save_summary):
(camel_mbox_load_summary): load/save message sizes in the summary file
* camel/providers/mbox/camel-mbox-summary.h:
added a size field to the message information
structure.
* camel/providers/mbox/camel-mbox-utils.c (parsed_information_to_mbox_summary):
copy message size to the mbox summary information too.
* camel/camel-stream-fs.c (_seek): updated to
work with bounded fs streams.
(_write): ditto.
(_read): ditto.
* camel/camel-stream-fs.h (struct ):
added the cur_pos, inf_bound and sup_bound
members to allow for bounded fs stream.
* camel/camel-stream-fs.c (_set_bounds): new func.
(_init_with_fd_and_bounds): idem.
(_init_with_name_and_bounds): idem.
New functions to allow the usage of bounded fs streams.
The bounded fs stream allow, for example, to make a stream
from a message stored in an mbox file.
Matthew Loper [Mon, 24 Jan 2000 14:43:06 +0000 (14:43 +0000)]
new function, broken out from 'camel_formatter_make_html'.
* camel/camel-formatter.c (write_header_info_to_stream): new
function, broken out from 'camel_formatter_make_html'.
(write_mimepart_to_stream): same.
(find_text_body_part_in_multipart_related): new function.
(camel_formatter_make_html): Now tries to deal with
multipart/related, multipart/alternate, and text/(plain|html).
bertrand [Sun, 23 Jan 2000 01:45:49 +0000 (01:45 +0000)]
use the real summary file path instead of a stupid hardcoded one. Fixes
2000-01-22 bertrand <bertrand@helixcode.com>
* camel/providers/mbox/camel-mbox-folder.c (_check_get_or_maybe_generate_summary_file):
use the real summary file path instead of a
stupid hardcoded one. Fixes yet another bug.
* camel/providers/mbox/camel-mbox-utils.c (parsed_information_to_mbox_summary):
don't forget to copy the date too. Fix a very annoying bug.
* camel/providers/mbox/camel-mbox-folder.c (_append_message):
implemented. A lot of fixes too. Works now.
(_get_uid_list): implemented.
bertrand [Sat, 22 Jan 2000 19:52:45 +0000 (19:52 +0000)]
implemented. A lot of fixes too. Works now.
2000-01-22 bertrand <bertrand@helixcode.com>
* camel/providers/mbox/camel-mbox-folder.c (_append_message):
implemented. A lot of fixes too. Works now.
bertrand [Sat, 22 Jan 2000 02:58:12 +0000 (02:58 +0000)]
test the mbox provider.
2000-01-21 bertrand <bertrand@helixcode.com>
* tests/test10.c:
test the mbox provider.
* camel/camel-folder.c (_set_name):
if camel_folder_get_mode returns an
exception, return it instead of
overriding it with a new one.
(camel_folder_is_open): make the is_open
method public.
(_set_name): use the is_open instead of
get_mode.
(_set_name): set the fullname even in the case
where the folder has no parent.
(_set_name): use %c, not %d to add the
separator char into the full path.
bertrand [Sat, 22 Jan 2000 01:35:11 +0000 (01:35 +0000)]
add exception handling everywhere in the store related functions
2000-01-21 bertrand <bertrand@helixcode.com>
* camel/camel-store.c: add exception handling everywhere in
the store related functions arguments.
* camel/providers/mbox/camel-mbox-folder.c: idem
* camel/providers/mbox/camel-mbox-folder.h: idem
* camel/providers/mbox/camel-mbox-store.h: idem
* camel/providers/mbox/Makefile.am (libcamelmbox_la_SOURCES):
added camel-mbox-provider.c to the mbox provider
sources.
bertrand [Fri, 21 Jan 2000 22:46:45 +0000 (22:46 +0000)]
added camel-mbox-provider.c to the mbox provider sources.
2000-01-21 bertrand <bertrand@helixcode.com>
* camel/providers/mbox/Makefile.am (libcamelmbox_la_SOURCES):
added camel-mbox-provider.c to the mbox provider
sources.
* camel/providers/mbox/camel-mbox-provider.c:
provider registration code.
* camel/providers/mbox/camel-mbox-folder.c (_get_message_count): implemented
(_append_message): implemented
* camel/providers/mbox/camel-mbox-parser.c (initialize_buffer):
use \0 to mark the end of the buffer.
(read_next_buffer_chunk): ditto.
(read_header): test the presence of a \0 instead of
reading the eof field
(read_message_begining): idem.
(camel_mbox_parse_file): idem.
Remove the eof field from the parser
structure.
(read_next_buffer_chunk): removed some nasty bugs
again.
Matthew Loper [Fri, 21 Jan 2000 16:20:01 +0000 (16:20 +0000)]
+ * camel/camel-formatter.c (camel_formatter_make_html): added a
+ CamelMimeMessage as a param to this function, and removed it as a
+ member of the object.
Matthew Loper [Fri, 21 Jan 2000 02:38:56 +0000 (02:38 +0000)]
New files. You'll be able to use a CamelFormatter to get html-formatted
* camel/camel-formatter.c, camel/camel-formatter.h: New
files. You'll be able to use a CamelFormatter to get
html-formatted versions of a CamelMimeMessage.
bertrand [Thu, 20 Jan 2000 03:02:12 +0000 (03:02 +0000)]
implemented.
2000-01-19 bertrand <bertrand@helixcode.com>
* camel/providers/mbox/camel-mbox-folder.c (_get_message_count):
implemented.
* camel/providers/mbox/camel-mbox-summary.c (camel_mbox_save_summary):
(camel_mbox_load_summary): save/load the next uid.
* camel/providers/mbox/camel-mbox-parser.c (camel_mbox_parse_file):
Compute the next available uid.
* camel/providers/mbox/camel-mbox-folder.c (_create):
(_check_get_or_maybe_generate_summary_file):
Set and use the next_uid field properly.
* camel/providers/mbox/camel-mbox-summary.h: added
an extra field to store the next available uid.
* camel/providers/mbox/camel-mbox-folder.c
(_check_get_or_maybe_generate_summary_file):
routine called when the folder is opened.
Reads or creates the summary file.
(_create): initialize the internal summary
structure.
(_close): save the summary file on closing.
(_init_with_store): initialize mbox specific
folder members.
bertrand [Wed, 19 Jan 2000 04:33:14 +0000 (04:33 +0000)]
tests for summary and parsing process of mbox files.
2000-01-18 bertrand <bertrand@helixcode.com>
* tests/test9.c:
tests for summary and parsing process of mbox files.
* camel/providers/mbox/camel-mbox-parser.c (camel_mbox_parse_file): do
not use case insensitive comp to detect message separators. Kill
some nasty bugs in netscape file parsing,
* camel/providers/mbox/camel-mbox-utils.c (parsed_information_to_mbox_summary):
don't use g_array_append but write directly inside the
array data instead. Better performance and bug fix.
* camel/providers/mbox/camel-mbox-summary.c (camel_mbox_load_summary):
fix the name and bugs.
* camel/camel-folder-summary.h: update the class
method definition to match the public defs.
Bertrand Guiheneuf [Tue, 18 Jan 2000 21:21:00 +0000 (21:21 +0000)]
Ah zut alors. Missing files
bertrand [Tue, 18 Jan 2000 19:29:48 +0000 (19:29 +0000)]
summary file read/write routines.
2000-01-18 bertrand <bertrand@helixcode.com>
* camel/providers/mbox/camel-mbox-summary.c (camel_mbox_save_summary):
(mbox_load_summary): summary file read/write routines.
* camel/providers/mbox/camel-mbox-utils.c (parsed_information_to_mbox_summary):
routine to construct the summary after the mbox
file has been parsed and the x-evolution fields
inserted.
* camel/providers/mbox/camel-mbox-utils.c (camel_mbox_write_xev):
dont use the x_evolution field but rather the uid to
determine the presence of "X-Evolution" in the mail.
* camel/providers/mbox/camel-mbox-parser.c (camel_mbox_parse_file):
parse the status and uid values if the x-evolution
has been found.
* camel/providers/mbox/camel-mbox-utils.c (camel_mbox_xev_parse_header_content):
return the parsed status field correctly.
* camel/providers/mbox/camel-mbox-utils.h:
fixed bad prototype.
* camel/providers/mbox/camel-mbox-parser.c (camel_mbox_parse_file):
parse and store the "To:" header.
* camel/providers/mbox/camel-mbox-parser.h:
added a "to" field
* camel/camel-folder-summary.c:
create the arrays here.
* camel/camel-folder-summary.h: the list of
summary information is no longer a GList but
rather a GArray.
Parsing/summary/sync-check is here. Needs testing
and integration with the rest of the folder code.
bertrand [Mon, 17 Jan 2000 08:40:10 +0000 (08:40 +0000)]
test for the mbox utils. (copy_file_chunk): fixed a nasty bug.
2000-01-17 bertrand <bertrand@helixcode.com>
* tests/test9.c (main): test for the mbox utils.
(copy_file_chunk): fixed a nasty bug.
(camel_mbox_write_xev): create the copy file descriptor
with the proper arguments. Exceptions implememnted.
(camel_mbox_write_xev): changed the way bytes are counted.
No more uses the message size cause it did not take into
account the message separators characters.
(camel_mbox_write_xev): hopefully fixed the last bugs.
works ok now.
Summary information / X-Evolution header generation should all
work ok now.
bertrand [Mon, 17 Jan 2000 05:25:36 +0000 (05:25 +0000)]
A bunch of new funcs to handle x-evolution private header field.
2000-01-17 bertrand <bertrand@helixcode.com>
* camel/providers/mbox/camel-mbox-utils.c (camel_mbox_write_xev):
(copy_file_chunk):
(camel_mbox_xev_write_header_content):
(camel_mbox_xev_parse_header_content):
(string_to_flag):
(flag_to_string):
(string_to_uid):
(uid_to_string):
A bunch of new funcs to handle x-evolution
private header field.
Various others modifications and fixes.
bertrand [Thu, 13 Jan 2000 22:53:06 +0000 (22:53 +0000)]
eof is true when no more chars are available, not when we've read the
2000-01-13 bertrand <bertrand@helixcode.com>
* camel/providers/mbox/camel-mbox-parser.c (read_next_buffer_chunk):
eof is true when no more chars are available, not
when we've read the entire file.
(initialize_buffer): ditto.
(read_message_begining): documented.
(read_header): ditto.
(new_message_detected): ditto.
(advance_n_chars): ditto.
(goto_next_char): ditto.
(read_next_buffer_chunk): ditto.
(initialize_buffer): ditto.
(parser_free): ditto.
(new_parser): ditto.
More parser decoding and clean-ups.
Documented all the static routines properly.
bertrand [Thu, 13 Jan 2000 04:13:12 +0000 (04:13 +0000)]
Added the prototype of camel_mbox_parse_file.
2000-01-12 bertrand <bertrand@helixcode.com>
* camel/providers/mbox/camel-mbox-parser.h (camel_mbox_parse_file):
Added the prototype of camel_mbox_parse_file.
* camel/providers/mbox/camel-mbox-parser.c (camel_mbox_parse_file):
updated in-line documentation.
Evolution is now in a compilable state.
bertrand [Thu, 13 Jan 2000 04:07:32 +0000 (04:07 +0000)]
remove non updated tests from the build process.
2000-01-12 bertrand <bertrand@helixcode.com>
* tests/Makefile.am (noinst_PROGRAMS):
remove non updated tests from the build
process.
* camel/Makefile.am :
remove the rfc2047 related files from
the build process as for the moment, nothing
has been decided concerning unicode.
* Makefile.am (evolution_msg_composer_LDADD):
use $(EXTRA_GNOME_LIBS_THREADS) to link with gthread
bertrand [Thu, 13 Jan 2000 03:37:07 +0000 (03:37 +0000)]
corrected a bunch of bugs
2000-01-12 bertrand <bertrand@helixcode.com>
* corrected a bunch of bugs
* camel/providers/mbox/camel-mbox-parser.c
(camel_mbox_parse_file):
parser the subject and date.
* camel/providers/mbox/camel-mbox-parser.c
(camel_mbox_parse_file): added the ability to
follow the parsing progression.
* camel/providers/mbox/camel-mbox-parser.h:
parse the x-evolution field.
bertrand [Wed, 12 Jan 2000 02:09:50 +0000 (02:09 +0000)]
Backup of the first clean and working mbox file parser. It both find the
2000-01-11 bertrand <bertrand@helixcode.com>
Backup of the first clean and working mbox file
parser. It both find the message and pre-parse
the message, that is, retrieve some key headers,
and the first lines of the body.
Arturo Espinosa [Thu, 6 Jan 2000 05:48:24 +0000 (05:48 +0000)]
Lots of reorganization to get the Evolution shell to begin its life. It
Lots of reorganization to get the Evolution shell to begin its life.
It also includes a new evolution widget from Damon.
Miguel.
Bertrand Guiheneuf [Tue, 4 Jan 2000 19:15:42 +0000 (19:15 +0000)]
sync before Boston
Bertrand Guiheneuf [Mon, 3 Jan 2000 23:05:55 +0000 (23:05 +0000)]
Updated my e-mail address to reflect my new employment
Bertrand Guiheneuf [Mon, 3 Jan 2000 22:42:53 +0000 (22:42 +0000)]
chkouink chkouink
bertrand [Mon, 3 Jan 2000 22:40:54 +0000 (22:40 +0000)]
detects netscape ".sdb" folders as well as simple non-suffixed folders (as
2000-01-03 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/providers/mbox/camel-mbox-folder.c (_list_subfolders):
detects netscape ".sdb" folders as well as simple
non-suffixed folders (as the ones used in pine).
* camel/string-utils.c (string_prefix):
finished implementation.
(string_prefix): added a boolean flag to indicate if the
suffix has been found. When the suffix does not match,
return NULL.
Bertrand Guiheneuf [Mon, 3 Jan 2000 10:08:55 +0000 (10:08 +0000)]
sync. Does not compile
Bertrand Guiheneuf [Mon, 27 Dec 1999 09:25:21 +0000 (09:25 +0000)]
Backup sync.
Bertrand Guiheneuf [Tue, 21 Dec 1999 23:18:14 +0000 (23:18 +0000)]
Work in progress. Missing files
bertrand [Tue, 21 Dec 1999 23:17:03 +0000 (23:17 +0000)]
part of the mbox provider.
1999-12-22 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/providers/mbox/camel-mbox-store.h:
* camel/providers/mbox/camel-mbox-store.c:
* camel/providers/mbox/camel-mbox-folder.h:
* camel/providers/mbox/camel-mbox-folder.c:
part of the mbox provider.
bertrand [Sun, 19 Dec 1999 19:42:05 +0000 (19:42 +0000)]
include camel-log.h to avoid unresolved symbols.
1999-12-19 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder-utils.c: include camel-log.h
to avoid unresolved symbols.
bertrand [Sat, 18 Dec 1999 15:27:14 +0000 (15:27 +0000)]
documented.
1999-12-18 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder.c (camel_folder_get_summary):
documented.
added the providers/mbox directory. Now that camel-folder
has been cleaned up a bit, the main evolution provider
work can start. The MH provider was only a proof of
concept, and should not be used for the moment.
bertrand [Sat, 18 Dec 1999 14:59:36 +0000 (14:59 +0000)]
updated to take the change on append into account.
1999-12-18 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder-pt-proxy.c (_append_message):
updated to take the change on append into account.
* camel/camel-folder.h:
updated class def concerning append.
* camel/camel-folder.c
(camel_folder_append_message): documented.
(camel_folder_append_message): don't return the
message number. Use specific methods instead.
(_append_message): idem.
bertrand [Sat, 18 Dec 1999 14:38:43 +0000 (14:38 +0000)]
use exception mechanism. (camel_folder_delete): idem. (_delete_messages):
1999-12-18 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder.c (_delete): use
exception mechanism.
(camel_folder_delete): idem.
(_delete_messages): idem.
(camel_folder_delete_messages): idem.
(_get_parent_folder): idem.
(camel_folder_get_parent_folder): idem.
(_get_parent_store): idem.
(_get_mode): idem.
(camel_folder_get_parent_store): idem.
(camel_folder_get_mode): idem.
(_list_subfolders): idem.
(camel_folder_list_subfolders): idem.
(_expunge): idem.
(camel_folder_expunge): idem.
(_has_message_number_capability): idem.
(camel_folder_has_message_number_capability): idem.
(_get_message_by_number): idem.
(camel_folder_get_message_by_number): idem.
(camel_folder_get_message_count): idem.
(_list_permanent_flags): idem.
(camel_folder_list_permanent_flags): idem.
(_copy_message_to): idem.
(camel_folder_copy_message_to): idem.
(camel_folder_has_summary_capability): idem.
(camel_folder_get_summary): idem.
(camel_folder_has_uid_capability): idem.
(camel_folder_get_message_uid): idem.
(_get_message_uid_by_number): idem.
(camel_folder_get_message_uid_by_number): idem.
(camel_folder_get_message_by_uid): idem.
(camel_folder_get_uid_list): idem.
bertrand [Fri, 17 Dec 1999 19:19:59 +0000 (19:19 +0000)]
use exception mechanism. (camel_folder_set_name): idem.
1999-12-17 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder.c (_set_name):
use exception mechanism.
(camel_folder_set_name): idem.
(camel_folder_set_full_name): idem.
(_get_name): idem.
(camel_folder_get_name): idem.
(_get_full_name): idem.
(camel_folder_get_full_name): idem.
(_can_hold_folders): idem.
(_can_hold_messages): idem.
(_exists): idem.
(camel_folder_exists): idem.
(_is_open): idem.
(_get_subfolder): idem.
(camel_folder_get_subfolder): idem.
* camel/camel-exception.c (camel_exception_clear):
New function. Clear an exception.
(camel_exception_get_id):
New function.
(camel_exception_get_description):
New function.
* camel/camel-folder.c (_set_name):
Use the exception system. When the folder
has no parent, don't set its full name
field.
bertrand [Thu, 16 Dec 1999 18:05:41 +0000 (18:05 +0000)]
changed the return value. Now returns the list of expunged messages
1999-12-16 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder.c (camel_folder_expunge):
(_expunge):
* camel/camel-folder-pt-proxy.c (_expunge):
changed the return value. Now returns the list
of expunged messages
* camel/camel-folder.c (_init_with_store):
cleaned up. Use the exception system now.
(_open): ditto.
(camel_folder_open): ditto.
(camel_folder_open_async): ditto.
(_close): ditto.
(camel_folder_close): ditto.
(camel_folder_close_async): ditto.
* camel/camel-exception.c (camel_exception_set):
When no exception is given, do nothing, just
return.
(camel_exception_set): documented.
(camel_exception_new): idem.
(camel_exception_free): idem.
(camel_exception_xfer): idem.
* camel/camel-folder.c:
* camel/camel-folder.h: more clean-ups.
Removed message list related code.
This was braindead design.
bertrand [Wed, 15 Dec 1999 23:48:23 +0000 (23:48 +0000)]
implemented. The routines in this file will be called by providers to
1999-12-16 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder-utils.c (camel_aml_expunge_messages):
implemented. The routines in this file will be
called by providers to handle the list of
message already standing in memory.
1999-12-15 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder-utils.c:
* camel/camel-folder-utils.h:
New files, misc utilities for the
folder providers. Includes active message
list utilities.
* camel/camel-folder.c (_has_message_number_capability):
(camel_folder_has_message_number_capability):
Added this to know if a folder provides
number-based message access.
* camel/camel-folder.c (_get_message_count):
added warning when called directly.
(_append_message): ditto
(_open_async): ditto
(_close_async): ditto
(_delete_messages): ditto
(_expunge): ditto
(_get_message_by_number): ditto
(_get_message_uid): ditto
(_get_message_uid_by_number): ditto
(_get_message_by_uid): ditto
(_get_uid_list): ditto
bertrand [Wed, 15 Dec 1999 13:01:34 +0000 (13:01 +0000)]
update (_get_message_by_number): Update to reflect changes in CamelFolder
1999-12-15 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder-pt-proxy.c (_open_async):
(_open):
(_close_async):
(_close):
(camel_folder_pt_proxy_class_init):
update
(_get_message_by_number):
Update to reflect changes in CamelFolder
bertrand [Wed, 15 Dec 1999 11:11:35 +0000 (11:11 +0000)]
clean-ups.
1999-12-15 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder.[ch]:
clean-ups.
Bertrand Guiheneuf [Tue, 14 Dec 1999 22:40:38 +0000 (22:40 +0000)]
Fix copyright informations once again
Ettore Perazzoli [Thu, 9 Dec 1999 02:35:42 +0000 (02:35 +0000)]
Make set_* methods in CamelMimeMessage use const strings.
Michael Meeks [Fri, 26 Nov 1999 13:05:15 +0000 (13:05 +0000)]
more small typo fixes.
Ettore Perazzoli [Wed, 17 Nov 1999 15:51:00 +0000 (15:51 +0000)]
Make `make distcheck' work.
Ettore Perazzoli [Wed, 17 Nov 1999 15:35:41 +0000 (15:35 +0000)]
More work:
- Fixed some Camel API naming issues.
- Moved the message composer stuff to the `composer' directory.
Ettore Perazzoli [Wed, 17 Nov 1999 14:39:24 +0000 (14:39 +0000)]
Added streaming capability to CamelDataWrapper. This makes it possible, for
example, to build multipart messages out of files that are on disk without
loading them in memory.
Ettore Perazzoli [Fri, 5 Nov 1999 23:06:07 +0000 (23:06 +0000)]
Here is my initial Evolution work: message composition widget and some
installation fixes for Camel.
Bertrand Guiheneuf [Sat, 23 Oct 1999 15:19:51 +0000 (15:19 +0000)]
Copyright change
Bertrand Guiheneuf [Mon, 18 Oct 1999 23:00:20 +0000 (23:00 +0000)]
lap sync
Bertrand Guiheneuf [Wed, 13 Oct 1999 21:18:21 +0000 (21:18 +0000)]
missing files
bertrand [Wed, 13 Oct 1999 21:16:54 +0000 (21:16 +0000)]
A lot of changes. The thread proxy mechanism
is now functional. The signal proxy needs to be tested
though. The thread proxy folder is being implemented.
A rough summary :
1999-10-13 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder.c (camel_folder_close): the
folder->close method is now asynchronous.
* camel/camel-folder-pt-proxy.c (_folder_open_cb):
(_open):
(_folder_open_cb):
(_open):
open/close method implemented in the thread proxy
folder. More to come.
* camel/camel-exception.c (camel_exception_xfer):
new utility func.
* camel/camel-marshal-utils.c: some new marshallers
* camel/camel-folder-pt-proxy.c: Some explanations
on the thread proxy system.
1999-10-11 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-marshal-utils.c:
camel/camel-marshal-utils.h:
Handles operation marshalling.
* camel/camel-thread-proxy.c:
camel/camel-thread-proxy.h:
new files. Generic proxy system.
* camel/camel-folder-pt-proxy.c
moved all proxy related code in dedicated files.
(camel_folder_pt_proxy_init):
removed proxy initialisation code
(_finalize):
removed proxy finalization code
* camel/camel-exception.c
(camel_exception_new):
(camel_exception_set):
(camel_exception_free):
New funcs.
Bertrand Guiheneuf [Fri, 8 Oct 1999 19:22:50 +0000 (19:22 +0000)]
missing file
Bertrand Guiheneuf [Fri, 8 Oct 1999 19:21:51 +0000 (19:21 +0000)]
weekly commit
Bertrand Guiheneuf [Mon, 27 Sep 1999 18:05:43 +0000 (18:05 +0000)]
redesign of the proxy/marshaling code. Uses GtkArg now. sync commit.
* redesign of the proxy/marshaling code. Uses GtkArg now.
* sync commit. Evolution does not build at all now.
Bertrand Guiheneuf [Thu, 23 Sep 1999 19:26:54 +0000 (19:26 +0000)]
Added corba-like exception system to CamelFolder. The exception system is
* Added corba-like exception system to CamelFolder.
The exception system is not finished but I wanted
the async and event implementation to get this right
from the beginning.
Bertrand Guiheneuf [Thu, 23 Sep 1999 15:15:40 +0000 (15:15 +0000)]
sync
Bertrand Guiheneuf [Thu, 23 Sep 1999 11:26:06 +0000 (11:26 +0000)]
Build fix
Bertrand Guiheneuf [Tue, 21 Sep 1999 21:21:36 +0000 (21:21 +0000)]
more work.
* camel/camel-folder-pt-proxy.c:
more work.
bertrand [Tue, 21 Sep 1999 20:40:27 +0000 (20:40 +0000)]
Check pthreads.
1999-09-21 bertrand <Bertrand.Guiheneuf@aful.org>
* configure.in:
Check pthreads.
* camel/Makefile.am:
camel-folder-pt-proxy.c is only compiled
when pthreads are available.
Jukka Zitting/evolution [Tue, 21 Sep 1999 13:16:56 +0000 (13:16 +0000)]
camel_folder_get_full_name did not work. Fixed.
Jukka Zitting/evolution [Tue, 21 Sep 1999 13:15:33 +0000 (13:15 +0000)]
Preliminary subfolder support for maildirs.
bertrand [Mon, 20 Sep 1999 23:15:47 +0000 (23:15 +0000)]
Signal proxying implemenatation. (_signal_marshaller_server_side):
1999-09-21 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder-pt-proxy.c:
Signal proxying implemenatation.
(_signal_marshaller_server_side):
(_signal_marshaller_client_side):
(_init_signals_proxy):
Code not is tested and has to be best
explained as it uses threads conditions and
gtk signal system.
(_thread_notification_catch): notify pending signals
as well as thread availability.
bertrand [Mon, 20 Sep 1999 12:40:39 +0000 (12:40 +0000)]
completed
1999-09-20 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder-pt-proxy.c (_op_exec_or_plan_for_exec):
completed
Binch of new funcs:
(_maybe_run_next_op):
Called by the watch notification when
a threaded op is completed
(_thread_notification_catch):
notification watch call back
(_init_notify_system):
set up the notification channel
(notify_availability):
called by threads before completion.
Bertrand Guiheneuf [Sat, 18 Sep 1999 00:03:48 +0000 (00:03 +0000)]
synczZzZ
bertrand [Fri, 17 Sep 1999 23:40:06 +0000 (23:40 +0000)]
new func. Try to exec an operation in a thread or queue it if a thread is
1999-09-18 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder-pt-proxy.c (_op_exec_or_plan_for_exec):
new func. Try to exec an operation in a thread
or queue it if a thread is already busy.
* camel/camel-op-queue.c (camel_op_queue_set_service_availability):
(camel_op_queue_get_service_availability):
new funcs.
* camel/camel-op-queue.c (camel_op_new):
(camel_op_free):
new funcs. Uses glib mem chunks.
bertrand [Fri, 17 Sep 1999 20:34:22 +0000 (20:34 +0000)]
added notify io_channel. new func. run the next operation.
1999-09-17 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder-pt-proxy.c (_init_with_store):
added notify io_channel.
* (camel_op_queue_run_next_op): new func.
run the next operation.
bertrand [Thu, 16 Sep 1999 22:26:03 +0000 (22:26 +0000)]
New object. Operation queue. Meant to be used in non-blocking proxy
1999-09-17 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-op-queue.h:
* camel/camel-op-queue.c:
New object. Operation queue. Meant to be used in
non-blocking proxy objects.
bertrand [Mon, 13 Sep 1999 22:38:45 +0000 (22:38 +0000)]
First proxy (pthread based) implementation starts.
* First proxy (pthread based) implementation starts.
1999-09-14 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/Makefile.am (libcamel_la_SOURCES):
added camel-folder-pt-proxy.[ch] to the build
process.
* camel/camel-folder-pt-proxy.c (_init_with_store):
started implementation of the pthread-based
folder proxy.
Bertrand Guiheneuf [Wed, 8 Sep 1999 19:03:51 +0000 (19:03 +0000)]
forgotten files
bertrand [Wed, 8 Sep 1999 18:59:27 +0000 (18:59 +0000)]
Summary files are here and work !!!
1999-09-08 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/providers/MH/mh-summary.c
(mh_load_summary):
(mh_save_summary):
(mh_create_summary):
implemented summary (files) for MH folders.
* camel/providers/MH/camel-mh-folder.c
(_get_message_by_uid): implemented.
(camel_mh_folder_class_init):
(_get_message_uid): implemented
bertrand [Wed, 8 Sep 1999 12:20:30 +0000 (12:20 +0000)]
impemented.
1999-09-08 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/providers/MH/camel-mh-folder.c
(_get_message_by_uid): impemented.
* camel/camel-folder.c:
(camel_folder_get_message_uid_by_number):
const'ified uid.
(camel_folder_get_message_by_uid): idem
removed stupid camel_folder_get_message_uid_by_number
method.
bertrand [Wed, 8 Sep 1999 10:11:54 +0000 (10:11 +0000)]
Documented UIDs.
1999-09-08 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder.c (camel_folder_has_uid_capability):
(camel_folder_get_message_uid):
(camel_folder_get_message_uid_by_number):
(camel_folder_get_message_by_uid):
(camel_folder_get_uid_list):
Documented UID methods.
bertrand [Tue, 7 Sep 1999 23:08:03 +0000 (23:08 +0000)]
More work on UID list in Mh provider.
1999-09-08 bertrand <Bertrand.Guiheneuf@aful.org>
* tests/ui-tests/store_listing.c (close_all):
close all open folders and stores. (necessary
for UID list saving ).
* camel/providers/MH/mh-uid.c (mh_generate_uid_list):
fix: store UID list in CamelMHFolder object.
* camel/providers/MH/camel-mh-folder.c (_open):
read or create UID list.
(_close): save UID list.
Bertrand Guiheneuf [Tue, 7 Sep 1999 15:46:49 +0000 (15:46 +0000)]
oops
bertrand [Tue, 7 Sep 1999 15:45:57 +0000 (15:45 +0000)]
correct parameter decl (const)
1999-09-07 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/md5-utils.c (md5_get_digest_from_file):
correct parameter decl (const)
* camel/md5-utils.h: typo.
* camel/providers/MH/mh-uid.c
More work on UID stuff for MH.
(mh_save_uid_list):
(mh_load_uid_list):
(mh_generate_uid_list):
new funcs. Manage on-disk uid list.
* camel/providers/MH/mh-utils.c (mh_is_a_message_file):
Util routines live here now.
bertrand [Mon, 6 Sep 1999 23:27:12 +0000 (23:27 +0000)]
camel/md5-utils.c Documented all funcs.
1999-09-07 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/md5-utils.c
Documented all funcs.
(md5_get_digest_from_stream):
correct typo.
(md5_get_digest_from_file):
same typo corrected.
bertrand [Mon, 6 Sep 1999 21:58:39 +0000 (21:58 +0000)]
raw routines are declared public now. Md5 use has to be versatile.
1999-09-07 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/md5-utils.h :
raw routines are declared public now.
Md5 use has to be versatile.
* camel/providers/MH/mh-uid.c (mh_uid_get_for_file):
new func. Returns an UID for an MH message.
bertrand [Mon, 6 Sep 1999 11:32:54 +0000 (11:32 +0000)]
new function : get file md5 signature. To be used in providers code.
1999-09-06 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/md5-utils.h:
* camel/md5-utils.c:
(md5_get_digest_from_file):
new function : get file md5 signature.
To be used in providers code.
bertrand [Mon, 6 Sep 1999 10:37:14 +0000 (10:37 +0000)]
new methods.
1999-09-06 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/md5-utils.h:
* camel/md5-utils.c:
(md5_get_digest_from_stream):
new methods.
bertrand [Mon, 6 Sep 1999 10:08:37 +0000 (10:08 +0000)]
changed names to follow camel style.
1999-09-06 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/md5-utils.h:
* camel/md5-utils.c:
changed names to follow camel style.
`
bertrand [Sun, 5 Sep 1999 22:46:58 +0000 (22:46 +0000)]
imported md5 coding routine from rpm. Compiles.
1999-09-06 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/md5-utils.c: imported md5 coding
routine from rpm. Compiles.
bertrand [Sun, 5 Sep 1999 20:08:23 +0000 (20:08 +0000)]
Basic UID framework.
1999-09-05 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder.c (camel_folder_has_uid_capability):
(camel_folder_get_message_uid):
(camel_folder_get_message_uid_by_number):
(camel_folder_get_message_by_uid):
(camel_folder_get_uid_list):
Basic UID framework.
bertrand [Sun, 5 Sep 1999 17:48:59 +0000 (17:48 +0000)]
New revision. Some fixes.
1999-09-05 bertrand <Bertrand.Guiheneuf@aful.org>
* devel-docs/misc/ref_and_id_proposition.txt:
New revision. Some fixes.
* camel/camel-folder.h (struct _CamelFolder): added
uid_capability field.
* started to work on UIDs
bertrand [Sun, 5 Sep 1999 16:15:11 +0000 (16:15 +0000)]
use folder summary instead of opening all messages.
1999-09-05 bertrand <Bertrand.Guiheneuf@aful.org>
* tests/ui-tests/store_listing.c (show_folder_messages):
use folder summary instead of opening all messages.
* camel/providers/MH/camel-mh-folder.c (_create_summary):
basic and highly non-efficient summary implementation.
Should be seen as a proof of concept only.
subfolder summary still has to be implemented.
* camel/providers/maildir/camel-maildir-folder.c (_init_with_store):
hasn't summary for the moment.
* camel/providers/maildir/camel-maildir-folder.c
cosmetic changes.
bertrand [Sat, 4 Sep 1999 19:33:31 +0000 (19:33 +0000)]
started summary implementation. (_open): correct use of open.
1999-09-04 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/providers/MH/camel-mh-folder.c (_create_summary):
started summary implementation.
(_open): correct use of open.
* camel/camel-folder.c (camel_folder_get_summary):
get folder associated summary object.
bertrand [Sat, 4 Sep 1999 14:48:01 +0000 (14:48 +0000)]
added summary files build
1999-09-04 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/Makefile.am:
added summary files build
* camel/camel-folder-summary.[ch]:
basic summary framework
bertrand [Fri, 3 Sep 1999 18:34:41 +0000 (18:34 +0000)]
sgml doc has camel-recipient now.
1999-09-03 bertrand <Bertrand.Guiheneuf@aful.org>
* devel-docs/camel/Makefile.am:
sgml doc has camel-recipient now.
* camel/camel-recipient.c (camel_recipient_foreach_recipient_type):
added in-line documentation.
Bertrand Guiheneuf [Thu, 2 Sep 1999 23:14:26 +0000 (23:14 +0000)]
sync again. Changelog comes tomorow
Bertrand Guiheneuf [Thu, 2 Sep 1999 16:43:39 +0000 (16:43 +0000)]
sync
bertrand [Thu, 2 Sep 1999 16:06:55 +0000 (16:06 +0000)]
Added (experimental) maildir provider written by Jukka Zitting
1999-09-02 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/providers/maildir: Added (experimental) maildir
provider written by Jukka Zitting <hukka@greywolves.org>
* camel/providers/Makefile.am (SUBDIRS): build maildir
provider.
* camel/camel-provider.c (camel_provider_get_for_protocol):
bug fix. patch from Jukka Zitting <hukka@greywolves.org>
bertrand [Thu, 2 Sep 1999 11:19:40 +0000 (11:19 +0000)]
changed decl to fit CRLFunc. (_write_recipients_to_stream): calls
1999-09-02 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-mime-message.c (_write_one_recipient_to_stream):
changed decl to fit CRLFunc.
(_write_recipients_to_stream):
calls camel_recipient_foreach_recipient_type now.
* camel/camel-recipient.c (camel_recipient_foreach_recipient_type):
new convinience function. Iterate over all recipient types.
* camel/gmime-utils.c (gmime_write_header_table_to_stream):
s/write_header_table_to_stream/gmime_write_header_table_to_stream/
(gmime_write_header_with_glist_to_stream):
s/write_header_with_glist_to_stream/gmime_write_header_with_glist_to_stream/
bertrand [Wed, 1 Sep 1999 14:36:17 +0000 (14:36 +0000)]
now use CamelRecipientTable
1999-09-01 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-mime-message.c (_finalize):
(_add_recipient):
(_remove_recipient):
(_get_recipients): now use CamelRecipientTable
* camel/gmime-content-field.c:
(gmime_content_field_unref): test if object
to free is non void.
Still are some bugs in camel-recipient.c
bertrand [Wed, 1 Sep 1999 11:53:18 +0000 (11:53 +0000)]
When using g_free (obj) don't test if obj != NULL g_free () already do
1999-09-01 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-folder.c (_finalize):
(_set_name):
* camel/camel-mime-message.c (_finalize):
* camel/camel-mime-part.c (_finalize):
(_set_description):
(_set_disposition):
* camel/camel-service.c (_finalize):
* camel/camel-stream-fs.c (_finalize):
* camel/gmime-content-field.c:
(gmime_content_field_construct_from_string):
* camel/url-util.c (g_url_free):
When using g_free (obj) don't test if obj != NULL
g_free () already do that. Thanks to elerium for
the feedback.
19
bertrand [Mon, 30 Aug 1999 06:29:37 +0000 (06:29 +0000)]
new func. More work on new independant recipient code.
1999-08-30 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-recipient.c (camel_recipient_get):
(camel_recipient_remove):
(camel_recipient_add):
new func. More work on new independant recipient code.
1999-08-29 bertrand <Bertrand.Guiheneuf@aful.org>
* MAINTAINERS: updated my e-mail address.
Bertrand Guiheneuf [Sun, 29 Aug 1999 22:13:32 +0000 (22:13 +0000)]
Address update
bertrand [Sun, 29 Aug 1999 15:57:46 +0000 (15:57 +0000)]
text parameter declared const
1999-08-28 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-mime-part.c (camel_mime_part_set_text):
text parameter declared const
* camel/camel-mime-part-utils.c (camel_mime_part_store_stream_in_buffer):
actually test correctly nb_bytes_read_chunk is >0
* camel/gstring-util.c:
* camel/gmime-content-field.c:
* camel/providers/MH/camel-mh-folder.c:
* camel/camel-stream-fs.c:
include string.h
* camel/camel-stream-mem.c (_write): return
the numver of written bytes.
* camel/camel-stream-buffered-fs.c (_eos):
return sthg
* camel/camel-stream.c (default_camel_seek):
return something.
* Started to work on new recipient code.
* fixed various leaks.
bertrand [Thu, 26 Aug 1999 15:29:39 +0000 (15:29 +0000)]
contruct the content from the buffer before calling CamelMedium
1999-08-26 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-mime-part.c (_get_content_object):
contruct the content from the buffer before calling
CamelMedium implementation.
(_construct_from_stream): Do not construct the content
by default, just store the content bytes in
a temporary buffer. Content will be constructed only
at caller request (when calling CamelMedium::get_content_object)
Providers with better access to the messages (mbox/MH ...)
will have to provider lighter implementation, that is
shall not read content at all unless the caller asks
for it (again with get_content).
* camel/camel-mime-part-utils.c: new file, groups
mime-part related utils. Meant to be used by providers
subclassing MimeMessage.
(camel_mime_part_construct_headers_from_stream):
(camel_mime_part_construct_content_from_stream):
no more useless temporary hash table.
* camel/camel-mime-part.c (_construct_from_stream): calls
mime-part-utils functions now.
* camel/gmime-utils.c (_store_header_pair_from_string):
do not use hash table to store header, use an array instead.
bertrand [Thu, 26 Aug 1999 09:44:33 +0000 (09:44 +0000)]
new file, groups mime-part related utils. Meant to be used by providers
1999-08-26 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-mime-part-utils.c: new file, groups
mime-part related utils. Meant to be used by providers
subclassing MimeMessage.
(camel_mime_part_construct_headers_from_stream):
(camel_mime_part_construct_content_from_stream):
no more useless temporary hash table.
* camel/camel-mime-part.c (_construct_from_stream): calls
mime-part-utils functions now.
* camel/gmime-utils.c (_store_header_pair_from_string):
do not use hash table to store header, use an array instead.
* MimePart cleanup. Not complete yet. Content must not be
parsed when constructing but only when content object is requested.
Default implementation will keep content in a stream.
bertrand [Wed, 25 Aug 1999 20:42:58 +0000 (20:42 +0000)]
now descend from CamelMedium.
1999-08-25 bertrand <Bertrand.Guiheneuf@aful.org>
* camel/camel-mime-part.c: now descend from CamelMedium.
* tests/test1.c (main): all headers must be strdup'ed
(main): unref created objects
Bertrand Guiheneuf [Wed, 25 Aug 1999 18:28:38 +0000 (18:28 +0000)]
La tout n'est qu'ordre et beaute,
Luxe, calme et voluptee.