Fixed a memory leak when retrieving the BODYSTRUCTURE of a message
[tinymail:tinymail.git] / ChangeLog
1 2010-02-17  Sergio Villar Senin  <svillar@igalia.com>
2
3         * camel/providers/imap/camel-imap-folder.c (imap_fetch_structure):
4         fixed a memory leak
5
6 2010-02-10  Jose Dapena Paz  <jdapena@igalia.com>
7
8         * libtinymailui-gtk/tny-gtk-header-list-model.c:
9         new method tny_gtk_header_list_model_set_update_in_batches
10         to change the way headers are exposed to tree model. It
11         sets the number of headers that will be added to tree model
12         per batch. By default it's 3000 (old behavior). You can set
13         a lower value to make ui more responsive.
14
15 2010-02-10  Sergio Villar Senin  <svillar@igalia.com>
16
17         * libtinymail-moblin/Makefile.am
18         (libtinymail_moblin_1_0_la_SOURCES): added
19         tny-moblin-plaform-factory.c and tny-moblin-account-store.c
20
21         * libtinymail-moblin/tny-moblin-account-store.c:
22         * libtinymail-moblin/tny-moblin-account-store.h:
23         * libtinymail-moblin/tny-moblin-platform-factory.c:
24         * libtinymail-moblin/tny-moblin-platform-factory.h: new files
25
26         * README: added Moblin as supported platform
27
28 2010-02-09  Sergio Villar Senin  <svillar@igalia.com>
29
30         Added first implementation of a TnyDevice that uses Moblin's
31         Connection Manager.
32
33         Now Moblin is another platform supported in tinymail.
34
35         * libtinymail-moblin/Makefile.am:
36         * libtinymail-moblin/libtinymail-moblin.pc.in:
37         * libtinymail-moblin/tny-moblin-device.c:
38         * libtinymail-moblin/tny-moblin-device.h: new files to support
39         Moblin's Connection Manager based TnyDevice
40
41         * configure.ac: Added moblin to the list of platforms
42
43         * Makefile.am (SUBDIRS): Added libtinymail-moblin
44
45         * libtinymailui-gtk/tny-gtk-folder-list-store.c
46         (recurse_folders_async_cb): do not try to refresh the whole list
47         of folders each time we recurse over every single one
48
49 2010-01-27  Jürg Billeter  <j@bitron.ch>
50
51         * bindings/vala/camel-lite-1.2.vapi:
52         * bindings/vala/libtinymail-1.0/libtinymail-1.0.vala:
53         remove duplicated content
54 2010-01-26  Sergio Villar Senin  <svillar@igalia.com>
55
56         * camel/providers/imap/camel-imap-store.c (imap_connect_online):
57         do not need to get the folders twice
58         (get_folders_sync): do try to get folders iterating over the
59         available namespaces. Fixed a couple of wrong conditionals in the
60         code. Fixed an invalid read in variable 'pattern'
61         (get_folder_info_online): removed unused code
62
63 2010-01-22  Sergio Villar Senin  <svillar@igalia.com>
64
65         * camel/camel-file-utils.c (camel_file_util_decode_string): limit
66         the size of the strings when encoding/decoding them to avoid huge
67         memory allocations
68
69 2010-01-18  Sergio Villar Senin  <svillar@igalia.com>
70
71         * libtinymail-camel/tny-session-camel.c (get_password_idle_func):
72         removed a hack for POP3 accounts as support was added to camel-lite
73
74         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-store.c (finalize):
75         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-store.c (pop3_connect):
76         disconnect account on finalize. Do forget password if
77         authentication is incorrect
78
79         * libtinymail-camel/camel-lite/camel/camel-utf8.c: merged from
80         upstream Camel
81
82 2010-01-13  Jose Dapena Paz  <jdapena@igalia.com>
83
84         * libtinymail-camel/tny-camel-bs-mime-part.c: fix headers
85         file parsing, using camel mime parser this time.
86
87         * libtinymail-camel/tny-camel-bs-msg-receive-strategy.c
88         (retrieve_subparts_headers): workaround for Gmail. If we are
89         accessing a TnyMsg, and it does not have id.HEADER part, then
90         we have the Gmail issue where some message/rfc822 parts will
91         have their body as a subpart instead of being id.TEXT part.
92
93 2010-01-12  Sergio Villar Senin  <svillar@igalia.com>
94
95         * libtinymail-camel/tny-camel-folder.c
96         (tny_camel_folder_refresh_default): added missing
97         tny_camel_folder_reason/unreason to the refresh operation. Summary
98         was sometimes freed to early when this operation was ongoing
99         causing crashes.
100
101 2010-01-10  Philip Van Hoof  <philip@codeminded.be>
102         Patch by Mike Vee (mike@vee.net)
103
104         * Updated Vala bindings
105
106 2010-01-09  Sergio Villar Senin  <svillar@igalia.com>
107
108         * camel/providers/imap/camel-imap-store.h: do not enable IDLE
109         debug if IDLE was disabled in configure stage
110
111 2010-01-07  Jose Dapena Paz  <jdapena@igalia.com>
112
113         * Added support for user flags in specific tinymail and camel
114         backends. Default implementation does not provide any support
115         but API allows to access user flags in specific backends.
116
117 2010-01-05  Sergio Villar Senin  <svillar@igalia.com>
118
119         * tests/c-demo/tny-demoui-summary-view.c
120         (on_rename_folder_activate):
121         (on_create_folder_activate): removed unused variables
122
123         * libtinymail-camel/tny-camel-bs-mime-part.c: added two missing
124         includes
125
126         * libtinymail-camel/tny-camel-queue.c: added a missing include
127
128         * libtinymail-camel/tny-camel-send-queue.c
129         (tny_camel_send_queue_add_async_default): removed unused variable
130
131         * libtinymail-camel/tny-camel-folder.c
132         (_tny_camel_folder_set_allow_external_images):
133         (tny_camel_folder_copy_async_default): removed unused variable
134
135         * libtinymail-camel/tny-camel-common.c: added a missing include
136
137         * camel/providers/local/camel-maildir-folder.c
138         (maildir_transfer_messages_to): removed unused variable
139         (camel_maildir_folder_class_init): redefined a method
140
141         * camel/providers/pop3/camel-pop3-folder.c (pop3_sync): removed
142         unused code
143         (pop3_sync): removed unused variables
144         (pop3_set_allow_external_images): removed unused variable
145
146         * camel/camel-url.c: added missing include
147
148         * camel/camel-mime-utils.c (fix_broken_rfc2047): removed unused variable
149
150         * camel/camel-data-cache.c (camel_data_cache_delete_attachments):
151         removed unused variable
152
153         * camel/camel-folder-summary.c
154         (camel_folder_summary_info_new_from_message): removed unused code
155
156         * libtinymailui-gtk/tny-gtk-folder-list-store.c
157         (recurse_folders_async_cb): removed unused variable
158
159         * libtinymailui-gnome-keyring/tny-gnome-keyring-password-getter.c
160         (tny_gnome_keyring_password_getter_get_password): removed unused variable.
161         Added a missing include.
162
163         * libtinymail-gio/tny-gio-output-stream.c (tny_gio_output_reset):
164         removed unused variable
165
166         * libtinymail-gio/tny-gio-input-stream.c (tny_gio_input_reset):
167         removed unused variable
168
169         * libtinymail/tny-merge-folder-store.c: added a missing include
170
171         * libtinymail/tny-merge-folder.c (sync_async_thread): removed
172         unused variable
173
174 2010-01-04  Sergio Villar Senin  <svillar@igalia.com>
175
176         * libtinymail-camel/tny-camel-bs-mime-part.c
177         (tny_camel_bs_mime_part_get_content_type_default): content type is
178         no longer cached in capital letters
179         (decode_async_thread):
180         (fetch_part): if the content type is text then do not use
181         BINARY
182
183         * camel/providers/imap/camel-imap-folder.c (imap_fetch): unlink
184         the newly created cache file when the fetch of the MIME part fails
185
186 2009-12-22  Jose Dapena Paz  <jdapena@igalia.com>
187
188         * libtinymail-camel/camel-lite/bs/bodystruct.c: set proper part_spec
189         of root part (it's empty, not "1").
190
191         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c,
192         libtinymail-camel/tny-camel-bs-msg-receive-strategy.c:
193         properly handle stored parts with part_spec == "" (as root part spec)
194
195         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c:
196         detect properly also TEXT stored mime parts in bodystruct.
197
198         * libtinymail-camel/camel-lite/bs/bodystruct.c: also
199         consider VIDEO mime types with file/attachment format.
200
201 2009-12-21  Jose Dapena Paz  <jdapena@igalia.com>
202
203         * libtinymail-camel/tny-camel-bs-mime-part.c: fix
204         fetching properly the headers of message/rfc822 attachments
205         on fetching the bodystructure.
206
207         * libtinymail-camel/tny-camel-mime-part.c: properly fetch the
208         children messages when the message comes from IMAP bodystructure.
209
210         * libtinymail-camel/tny-camel-bs-msg-receive-strategy.c:
211         fetch the message/rfc822 contents using part.TEXT in
212         IMAP request.
213
214         * libtinymail-camel/tny-camel-bs-mime-part.c: properly decode
215         filename field.
216
217         * libtinymail-camel/tny-camel-bs-mime-part.c
218         (..._get_decoded_stream_default): properly decode text/plain
219         messages as utf8.
220
221 2009-12-18  Sergio Villar Senin  <svillar@igalia.com>
222
223         * camel/providers/pop3/camel-pop3-folder.c (pop3_sync): protect
224         the call to camel_pop3_store_expunge
225
226         * camel/providers/pop3/camel-pop3-store.c
227         (camel_pop3_store_expunge): do not perform a sync if we're offline
228
229 2009-12-18  Sergio Villar Senin  <svillar@igalia.com>
230
231         * libtinymail-maemo/tny-maemo-conic-device.c (conic_emit_status)
232         (tny_maemo_conic_device_instance_init)
233         (tny_maemo_conic_device_finalize): do not issue pending
234         "connection-changed" signals if new ones are coming.
235
236 2009-12-18  Jose Dapena Paz  <jdapena@igalia.com>
237
238         * libtinymail-camel/tny-camel-mime-part.c: added include to
239         tny-camel-common-priv.h, as it was causing a build warning that
240         points to a problem that could cause crashes in 64 bit
241         architectures.
242
243 2009-12-16  Sergio Villar Senin  <svillar@igalia.com>
244
245         * camel/providers/imap/camel-imap-folder.c (imap_fetch_structure):
246         when retrieving BODYSTRUCTURE data set the message cache to
247         partial. This way, next time we'll recognize that the message was
248         not fully downloaded.
249
250 2009-12-16  Sergio Villar Senin  <svillar@igalia.com>
251
252         * libtinymail-camel/tny-camel-mime-part.c (tny_camel_mime_part_get_parts_default)
253         (tny_camel_mime_part_add_part_default)
254         (tny_camel_mime_part_content_type_is_default)
255         (tny_camel_mime_part_get_content_type_default): do not assume that
256         every mime part has content type
257
258 2009-12-14  Sergio Villar  <svillar@igalia.com>
259
260         * Removed libtinymail-gio/libtinymail-gio-1.0.pc incorrectly added
261         to repo
262
263 2009-12-12  Jose Dapena Paz  <jdapena@igalia.com>
264
265         * On getting the decoded stream from bs mime part, reset
266         to offer a stream started in 0 offset.
267         * Fix error detecting embedded message/rfc822 in bs.
268         * Add the bodystruct of the child to the embedded message created
269         in tny_camel_bs_mime_part_get_parts, as this is the expected
270         structure in tinymail.
271         * Handle better in IMAP "NIL" parameter in fetch response.
272         * Fix part specs of direct child of attached messages in
273         bodystruct parser.
274         * Refactor decode_it and decode_it_2 in _tny_camel_decode_raw_header
275         * Decode properly headers in TnyCamelBsMsgHeader, to return utf8
276         strings.
277         * Fix decoding of rfc2047 strings in utf8 in some cases.
278
279 2009-12-12  Carl Simonson <simonsonc@gmail.com>
280
281         Committed by Sergio Villar Senin <svillar@igalia.com>
282
283         * libtinymail/tny-folder-monitor.c, libtinymail/tny-folder-monitor.h:
284         Fix override of update method by removing the addition of the update
285         method on TnyFolderMonitor.
286
287 2009-12-12  Carl Simonson <simonsonc@gmail.com>
288
289         Committed by Sergio Villar Senin <svillar@igalia.com>
290
291         * libtinymail-camel/tny-camel-msg.c, libtinymail-camel/tny-camel-msg.h
292         (tny_camel_msg_parse): Correct type of self parameter
293
294 2009-12-11  Sergio Villar Senin  <svillar@igalia.com>
295
296         * camel/providers/pop3/camel-pop3-folder.c (pop3_sync): do expunge
297         messages when users request it. An invalid message ID was passed
298         to the server and thus, no message was deleted.
299
300 2009-12-10  Jose Dapena Paz  <jdapena@igalia.com>
301
302         * Enable bodystruct parsing for partial retrieval.
303         * Improvement in content type recoginition in bodystruct mime part.
304         * Offer header pairs available in body struct if body itself is not
305         fetched.
306         * Bodystruct parts are not purged.
307         * libtinymail-camel/tny-camel-bs-mime-part.c: only use format_text with
308         text/plain mime parts.
309         * libtinymail-camel/tny-camel-bs-mime-part.c: new methods is_fetched, to
310         know if a specific mime part is already fetched to cache.
311         * libtinymail-camel/tny-camel-bs-msg-receive-strategy.c: retrieve bodies
312         on fetching the bodystructure.
313         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-message-cache.c:
314         don't wipe the bs cached parts accidentally.
315         * Better setup of using bodystruct for IMAP. Also, set as default bodystruct
316         based implementation.
317         * Avoid a crash on getting the header of a BS message, and this won't be
318         decorated (not needed in bs).
319         * Set bs header as cached after retrieving bodies.
320         * Fix saving "show external images" flag in bodystruct backend.
321
322 2009-10-26  Sergio Villar Senin  <svillar@igalia.com>
323
324         Fixed a lot of memory leaks in CamelException's
325
326         * libtinymail-camel/tny-camel-transport-account.c
327         (tny_camel_transport_account_send_default): added missing camel_exception_clear
328
329         * libtinymail-camel/tny-camel-partial-msg-receive-strategy.c (tny_camel_partial_msg_receive_strategy_perform_get_msg_default): added missing camel_exception_clear
330
331         * libtinymail-camel/tny-camel-full-msg-receive-strategy.c (tny_camel_full_msg_receive_strategy_perform_get_msg_default): added missing camel_exception_clear
332
333         * libtinymail-camel/tny-camel-folder.c (tny_camel_folder_add_msg_shared)
334         (tny_camel_folder_add_msg_default)
335         (tny_camel_folder_sync_default)
336         (tny_camel_folder_refresh_async_thread)
337         (tny_camel_folder_refresh_default)
338         (tny_camel_folder_get_headers_default)
339         (tny_camel_folder_get_msg_default)
340         (tny_camel_folder_find_msg_default)
341         (tny_camel_folder_copy_shared, transfer_msgs_thread_clean)
342         (tny_camel_folder_transfer_msgs_async_thread): added missing camel_exception_clear
343
344         * libtinymail-camel/tny-camel-account.c (_tny_camel_account_try_connect)
345         (tny_camel_account_get_supported_secure_authentication_async_thread): added missing camel_exceptio
346
347 2009-10-22  Javier Jardón Cabezas <jjardon@gnome.org>
348         Reviewed by: Sergio Villar Senin  <svillar@igalia.com>
349
350         Use GtkBuilder instead libglade
351
352         * tests/python-demo/tinymail-python-test.glade: deleted
353         * tests/python-demo/tinymail-python-test.ui: new file
354         * libtinymail-camel/camel-lite/libedataserver/Makefile.am
355         * libtinymail-camel/camel-lite/libedataserver/e-data-server-util.c
356         * libtinymail-camel/camel-lite/libedataserver/libedataserver-private.h
357         * tests/python-demo/tinymail-python-test.py
358
359 2009-10-22  Javier Jardón Cabezas <jjardon@gnome.org>
360
361         Reviewed by: Sergio Villar Senin  <svillar@igalia.com>
362
363         * tests/c-demo/tny-main.c: Remove gnome_vfs code
364
365 2009-10-20  Sergio Villar Senin  <svillar@igalia.com>
366
367         * libtinymailui-gtk/tny-gtk-folder-list-store.c
368         (recurse_folders_async_cb): only add a folder store observer if
369         the folder is a TnyFolderStore
370
371 2009-10-16  Carl Simonson <simonsonc@gmail.com>
372
373         * libtinymail/tny-stream-cache.c: Fix TnyStreamCache class name
374
375 2009-10-16  Jose Dapena Paz  <jdapena@igalia.com>
376
377         * Many build warning fixes.
378
379 2009-10-16  Javier Jardón Cabezas <javierjc1982@gmail.com>
380
381         Reviewed by: Jose Dapena Paz  <jdapena@igalia.com>
382
383         * libtinymail-camel/camel-lite/camel/camel-tcp-stream.h,
384         libtinymail-camel/camel-lite/libedataserver/e-data-server-util.h,
385         libtinymail-maemo/tny-maemo-conic-dummy-device.c,
386         libtinymailui-gtk/tny-gtk-header-list-model.h,
387         tests/functional/account-refresh.c: use single GTK and Glib
388         includes
389
390         Fix "format not a string literal and no format arguments"
391         message warnings
392
393         * libtinymail-camel/tny-camel-common.c
394         * libtinymail-camel/tny-camel-mime-part.c
395         * libtinymail-gnome-desktop/tny-gnome-account-store.c
396         * libtinymail/tny-folder-store-query.c
397         * tests/c-demo/tny-demoui-summary-view.c
398
399 2009-10-16  Sergio Villar Senin  <svillar@igalia.com>
400
401         * libtinymailui-gtk/tny-gtk-header-list-model.c
402         (notify_views_add_destroy): do the unref after the unlock, as the
403         unref could free the last valid reference
404
405         * libtinymail-camel/tny-camel-store-account.c
406         (tny_camel_store_account_get_folders_default): reference the
407         CamelStore before unrefing the old one
408
409 2009-10-15  Jose Dapena Paz  <jdapena@igalia.com>
410
411         * Drop from repository generated files config.h.in,
412         libtinymail-camel/camel-lite/config.h.in and po/Makefile.in.in
413
414         * Reimplemented gnome keyring password dialog to use
415         just plain gtk and drop usage of GnomePasswordDialog
416         which is deprecated (fix #590753).
417
418         * Removed pending includes and dependencies on
419         libgnomeui (in configure.ac too) (fix #590753).
420
421         * libtinymailui-gnome-keyring/tny-gnome-keyring-password-getter.c:
422         don't access directly content area if we use G_SEAL enabled gtk
423
424         * libtinymail-camel/camel-lite/configure.ac: add also support
425         for silent rules in automake 1.11
426
427 2009-10-15 Javier Jardón Cabezas <javierjc1982@gmail.com>
428
429         Reviewed by: Jose Dapena Paz  <jdapena@igalia.com>
430
431         * configure.ac: Support silent build rules, requires at least automake-1.11.
432         Disable by either passing --disable-silent-rules to configure or
433         passing V=1 to make.
434
435         * Implementation of TnyStream based in GIO
436
437         * Use GIO based streams instead of vfs based streams
438         in tinymail GTK.
439
440         * Remove includes requiring vfs streams wherever they
441         were not needed.
442
443 2009-10-15  Carl Simonson <simonsonc@gmail.com>
444
445         Committed by: Sergio Villar Senin <svillar@igalia.com>
446
447         * libtinymail/tny-send-queue.h (_TnySendQueueIface): removed
448         superfluous user_data argument in signal definitions
449
450 2009-10-14  Carl Simonson <simonsonc@gmail.com>
451
452         Reviewed by: Sergio Villar Senin <svillar@igalia.com>
453
454         * libtinymail/tny-account.c (tny_account_base_init):
455         "connection-status-changed" second argument must be of
456         TnyConnectionStatus enum type.
457         * libtinymail/tny-combined-account.c
458         (tny_combined_account_class_init): register the private in the
459         class
460
461 2009-10-14  Javier Jardon  <javierjc1982@gmail.com>
462
463         Reviewed by: Jose Dapena Paz  <jdapena@igalia.com>
464
465         * Default behaviour is "automatic", so the NetworkManager is
466         compiled only if you have the NetworkManager libraries
467         (libnm-glib) in you system
468         * libtinymailui-webkit/tny-webkit-msg-view.c: more gtk
469         deprecated symbols removed
470         * libtinymail-camel/tny-camel-common.c: remove glib
471         deprecated symbols (fixes #589996).
472         * libtinymail-camel/camel-lite/libedataserver/e-memory.c:
473         removes dead code containing glib deprecated symbols
474         (fix 2/2 #589996).
475         * Removed dependency on libgnomeui in many places of
476         tinymail (partial fix #590753).
477
478 2009-10-14  Jose Dapena Paz  <jdapena@igalia.com>
479
480         * libtinymailui-gtk/tny-gtk-folder-list-store.c: register folder
481         store observer for every instance.
482
483 2009-10-14  Sergio Villar Senin  <svillar@igalia.com>
484
485         * camel/camel-folder-summary.c (message_info_load): added proper
486         error checking for summary mmap'ed file
487         * camel/providers/imap/camel-imap-folder.c
488         (send_done_in_stop_idle): fixes a memory leak in a CamelException
489
490 2009-10-02  Sergio Villar Senin  <svillar@igalia.com>
491
492         * camel/providers/pop3/camel-pop3-store.c (wait_for_login_delay):
493         fixes a deadlock in camel POP3 code when running
494         wait_for_login_delay. We should not disconnect when the service is
495         in connecting status
496
497 2009-10-01  Sergio Villar Senin  <svillar@igalia.com>
498
499         * camel/providers/smtp/camel-smtp-transport.c (smtp_connect): set
500         the reprompt flag when trying to reconnect after an invalid
501         authentication attempt. Merged from Camel upstream
502
503 2009-09-25  Carl Simonson <simonsonc@gmail.com>
504
505         The *mm helper helper scripts expect enums to be of the following form:
506
507         typedef enum {
508             ...
509         } Foo;
510
511         This changeset makes the enums all follow this pattern so that the
512         enum.pl script from glibmm can generate defs files properly.
513
514         Note from Philip: please fix the enum.pl script from glibmm, if it
515         doesn't support Tinymail's original notation, then it's simply wrong.
516
517 2009-09-25  Carl Simonson <simonsonc@gmail.com>
518
519         tny-camel-folder.h includes camel-folder.h when it does not need to.
520         Including it causes a problem when it is included in a C++ program.
521         camel-folder. This fixes the problem for C++ programs that include
522         tny-camel-folder.h. However, renaming variables in camel-folder.h may
523         be a good thing to implement, which should be done in the upstream
524         camel library.
525
526 2009-09-25  Carl Simonson <simonsonc@gmail.com>
527
528         Some public header files are missing G_{BEGIN,END}_DECLS macros which
529         are helpful for C++ as they are 'extern "C"' wrappers.
530
531 2009-09-25  Carl Simonson <simonsonc@gmail.com>
532
533         Running autoreconf by itself does not work because some things are
534          missing in the build files. This changeset fixes them up. Also 
535         this changeset also makes sure that configure does not look for 
536         more packages if --disable-uigtk or --disable-demoui are passed.
537
538 2009-09-22  Jose Dapena Paz  <jdapena@igalia.com>
539
540         * libtinymail-camel/camel-lite/configure.ac: add new configure option
541         --disable-idle, so we can disable IDLE support on build time.
542         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
543         if IDLE is disabled, don't parse IDLE capability.
544
545 2009-09-18  Sergio Villar Senin  <svillar@igalia.com>
546
547         * libtinymail-camel/tny-camel-folder.c (tny_camel_folder_dispose):
548         set private fields to NULL in dispose
549
550         * libtinymail-camel/tny-camel-common.c
551         (_tny_camel_exception_to_tny_error): set the proper error in
552         tinymail when CAMEL_EXCEPTION_SYSTEM_MEMORY comes from Camel
553
554 2009-09-14  Sergio Villar Senin  <svillar@igalia.com>
555
556         * libtinymail-camel/tny-camel-common.c (split_recipients):
557         improved email address parsing. We were not correctly detecting
558         quotes inside email addresses
559
560 2009-09-11  Sergio Villar Senin  <svillar@igalia.com>
561
562         * libtinymail-maemo/tny-maemo-conic-device.c
563         (on_connection_event): properly handle messages comming from
564         conic. Now the TnyDevice properly handles
565         connection events when changing between networks.
566
567 2009-09-08  Sergio Villar Senin  <svillar@igalia.com>
568
569         * libtinymail-camel/tny-camel-folder.c (folder_tracking_changed):
570         removed some unused variables.
571         (do_notify_in_idle_destroy): remove the reference to the summary
572         *after* freeing the TnyCamelHeader instances to prevent crashes
573         when the summary was already freed
574
575         * libtinymail-camel/camel-list/camel/providers/pop3/camel-pop3-store.c (wait_for_login_delay):
576         replaced a g_static_rec_mutex_lock by a g_static_rec_mutex_trylock
577         to avoid deadlocks when a POP3 account is executing a disconnect
578         caused by pop3_try_authenticate and wait_for_login_delay
579
580 2009-09-07  Sergio Villar Senin  <svillar@igalia.com>
581
582         * libtinymail-camel/camel-list/camel/providers/pop3/camel-pop3-store.c (pop3_try_authenticate):
583         do not report connection problems as authentication errors
584
585 2009-08-31  Sergio Villar Senin  <svillar@igalia.com>
586
587         * libtinymail-camel/tny-camel-folder.c
588         (do_notify_in_idle_destroy): fixes a crash when the TnyFolder does
589         not have a CamfelFolder loaded
590
591 2009-08-28  Jürg Billeter  <j@bitron.ch>
592
593         * libtinymail-camel/tny-camel-msg.c: (tny_camel_msg_parse):
594         * libtinymail-camel/tny-camel-msg.h: add function to parse message
595         from stream
596
597 2009-08-27  Sergio Villar Senin  <svillar@igalia.com>
598
599         * libtinymail-maemo/tny-maemo-conic-device.c
600         (tny_maemo_conic_device_reset): clear the priv->iap when reseting
601         the device as it will be no longer valid.
602
603         * camel/camel-mime-part.c (camel_mime_part_set_filename): if the
604         mime-type does not have mime-type then set it as
605         octet-stream. Merged from Camel upstream
606
607 2009-08-20  Sergio Villar Senin  <svillar@igalia.com>
608
609         * libtinymail-camel/tny-camel-folder.c (do_notify_in_idle_destroy)
610         (notify_folder_observers_about_in_idle): add a reference to the
611         folder summary before notifying the observers in order to keep
612         alive the summary instance the TnyCamelHeaders point to.
613
614         * libedataserver/e-iconv.c (e_iconv_open)
615         (e_iconv_charset_language): added a couple of extra checks to
616         prevent crashes with malformed emails with large amounts of data
617         in the charset field
618
619 2009-08-19  Jose Dapena Paz  <jdapena@igalia.com>
620
621         * libtinymail-camel/camel-lite/camel/camel-tcp-stream-ssl.c: on calls to
622         PR_Poll with a timeout, we didn't take into account properly the case
623         we reached the timeout, and it could be creating infinite loops if
624         connection failed but didn't die.
625
626 2009-08-19  Sergio Villar Senin  <svillar@igalia.com>
627
628         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-folder.c (cmd_totop):
629         protect a buffer passed to strlen with the null character '\0' in
630         order to fix a conditional jump reported by valgrind
631
632 2009-08-18  Sergio Villar Senin  <svillar@igalia.com>
633
634         * libtinymail-maemo/tny-maemo-conic-dummy-device.c
635         (tny_maemo_conic_device_reset): do really reset the device
636         state. Try to set the new status.
637         (dummy_con_ic_connection_connect_by_id_async_cb): set the new
638         connection status if the connection request was canceled. Added
639         the user_requested parameter. Show the dialog only if the
640         connection attempt was triggered by the user.
641
642         * libtinymail-maemo/tny-maemo-conic-device.c
643         (tny_maemo_conic_device_reset): do really reset the device
644         state. Try to set the new status.
645         (tny_maemo_conic_device_instance_init): do not start a connection
646         by default when creating the device
647
648 2009-08-12  Sergio Villar Senin  <svillar@igalia.com>
649
650         * libtinymail/tny-fs-stream-cache.c (get_available_size)
651         (get_free_space, remove_old_files)
652         (tny_fs_stream_cache_get_stream, tny_fs_stream_cache_remove)
653         (fill_from_cache): protect the access to priv->cached_files to
654         make the TnyFsStream thread-safe
655
656         * libedataserver/e-iconv.c (e_iconv_charset_name): added a
657         security check to prevent SIGSEVs caused by specially malformed
658         huge charset names.
659
660 2009-08-10  Sergio Villar Senin  <svillar@igalia.com>
661
662         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-folder.c (cmd_tocache):
663         protect a buffer passed to strlen with the null character '\0' in
664         order to fix a conditional jump reported by valgrind
665
666 2009-08-07  Sergio Villar Senin  <svillar@igalia.com>
667
668         * libtinymailui-gtk/tny-gtk-folder-list-store.c
669         (recurse_folders_async_cb): remove the folders already present on
670         model that are not listed by provider
671
672         * libtinymail-camel/tny-camel-folder.c
673         (tny_camel_folder_get_folders_default): do not reuse iter when
674         getting the folders and refresh=TRUE
675
676 2009-08-05  Sergio Villar Senin  <svillar@igalia.com>
677
678         * libtinymail-camel/tny-camel-folder.c (folder_changed): replaced
679         _tny_camel_header_set_as_memory calls by _tny_camel_header_set_camel_message_info
680
681         * libtinymail-camel/tny-camel-header.c
682         (_tny_camel_header_set_camel_message_info): add a hook to finalize
683         of summary object. This will prevent double frees of the folder summary.
684
685         * libtinymail-camel/tny-camel-folder.c (notify_folder_store_observers_about_in_idle)
686         (notify_folder_observers_about_in_idle): check that session is not
687         NULL before adding a reference to it as it could cause an invalid dereference
688
689         * libtinymail/tny-fs-stream-cache.c (fill_from_cache): fixed a
690         memory leak.
691
692         * libtinymail-camel/tny-camel-folder.c
693         (transfer_msgs_thread_clean): clear exception to prevent memory leaks.
694
695 2009-08-03  Sergio Villar Senin  <svillar@igalia.com>
696
697         * libtinymail-camel/tny-camel-folder.c
698         (transfer_msgs_thread_clean): removed invalid code
699
700         * camel/providers/imap/camel-imap-folder.c
701         (process_idle_untagged_response): fixed a small memory leak
702
703 2009-07-30  Jose Dapena Paz  <jdapena@igalia.com>
704
705         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c
706         (idle_thread): loop while the store->idle_thread is not assigned, to
707         avoid unexpected behavior for not being able to detect if we're
708         starting or stopping idle from idle thread.
709
710 2009-07-27  Javier Jardon  <javierjc11982@gmail.com>
711
712         * tests/c-demo/tny-demoui-summary-view.c (recursive_all_folders):
713         * libtinymailui-mozembed/tny-moz-embed-msg-view.c
714         (tny_moz_embed_msg_view_create_mime_part_view_for_default):
715         removed some Gtk+ deprecated symbols
716
717 2009-07-27  Jose Dapena Paz  <jdapena@igalia.com>
718
719         Avoid a crash iterating in imap summary if it's corrupted.
720
721         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c
722         (imap_update_summary): if summary is bigger than the sequence number
723         coming from server, summary is corrupt. We were iterating wrongly to
724         remove the extra elements, and could cause a crash.
725
726         * libtinymail-camel/tny-camel-folder.c (folder_tracking_changed):
727         reimplemented to load the summary when we get a folder changed
728         event from camel, and use the standard folder_changed handler.
729         Avoids crashes if the camel folder is freed earlier than
730         folder changed handling finishes.
731
732 2009-07-27  Lucas Maneos <tinymail@subs.maneos.org>
733
734         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
735         avoid sending an empty ENABLE command when the IMAP server's
736         CAPABILITY response does not list any supported extensions.
737
738 2009-07-20  Jose Dapena Paz  <jdapena@igalia.com>
739
740         * libtinymailui-gtk/tny-gtk-folder-list-store.c (get_parent_full_name):
741         there was a reference leak in this method, as the recursion for
742         getting the list of all parents was not properly freeing the
743         objects.
744
745 2009-07-16  Sergio Villar Senin  <svillar@igalia.com>
746
747         * libtinymail-camel/tny-camel-folder.c (folder_tracking_changed):
748         always update the folder counts not only if we receive changed
749         uids but when we get added uids and removed uids
750         (folder_tracking_finalize)
751         (_tny_camel_folder_track_folder_changed)
752         (tny_camel_folder_finalize): user_data is now priv instead of self
753         (folder_tracking_changed): do not do anything if the folder is
754         already loaded as the folder_changed signal will handle the changes
755
756 2009-07-14  Sergio Villar Senin  <svillar@igalia.com>
757
758         * libtinymail-camel/tny-camel-folder.c
759         (tny_camel_folder_get_msg_async_thread): do not check for
760         CAMEL_IS_OBJECT as a CamelOperation is not a CamelObject
761
762 2009-07-13  Jose Dapena Paz  <jdapena@igalia.com>
763
764         * libtinymailui-gtk/tny-gtk-header-list-model.c 
765         (tny_gtk_header_list_model_prepend): don't restart
766         the views notify timeout on each message add.
767
768         * libtinymailui-gtk/tny-gtk-header-list-model.c: initial
769         views notify timeout run in 1 ms.
770
771 2009-07-10  Jose Dapena Paz  <jdapena@igalia.com>
772
773         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
774         on disconnecting from network, avoid any network communication if we're
775         in idle loop and we don't have the idle lock. This avoids some crashes
776         on starting idle if connection is shutdown.
777
778 2009-07-03  Sergio Villar Senin  <svillar@igalia.com>
779
780         * libtinymailui-gtk/tny-gtk-header-list-model.c
781         (notify_views_add): speed up the first views update.
782
783 2009-06-30  Jose Dapena Paz  <jdapena@igalia.com>
784
785         * libtinymailui-gtk/tny-gtk-folder-list-store.c: remove
786         mark_for_removal handling as this is breaking delayed refresh
787         mode, and also detecting new folders in some cases.
788
789 2009-06-29  Jose Dapena Paz  <jdapena@igalia.com>
790
791         * libtinymailui-gtk/tny-gtk-folder-list-store.c:
792         reenable poke_status calls in delayed refresh mode.
793
794         * libtinymail-camel/tny-camel-folder.[ch], 
795         libtinymail-camel/tny-camel-folder-priv.h
796         (tny_camel_folder_track_folder_changed): added a method to add 
797         a CamelFolder instance to track folder_changed event until it's
798         finalized. This is useful to track only the number of messages 
799         available.
800   
801         * libtinymail-camel/tny-camel-store-account.c: added handling of 
802         folder_opened signal. When a folder is opened, we register it for
803         tracking the number of messages. THis allows us to track the
804         number of messages without opening the folder summary.
805
806 2009-06-22  Jose Dapena Paz  <jdapena@igalia.com>
807
808         * libtinymail-camel/tny-camel-folder.c
809         (tny_camel_folder_get_headers_default): get headers now
810         returns the headers in the reverse order (first we return
811         latest messages). This makes tinymail behave better in the
812         usual context (reading the newest messages).
813
814         * libtinymailui-gtk/tny-gtk-folder-list-store.c: stop delayed
815         refresh once timeout is gone (avoiding continuous retrieval
816         issue with delayed refresh).
817
818 2009-06-22  Sergio Villar Senin  <svillar@igalia.com>
819
820         * libtinymail-camel/tny-camel-mime-part.c
821         (tny_camel_mime_part_get_parts_default): added a couple of extra
822         checks that prevent crashes with malformed messages
823
824 2009-06-19  Jose Dapena Paz  <jdapena@igalia.com>
825
826         * libtinymailui-gtk/tny-gtk-folder-list-store.c: delay refresh
827         not only on adding accounts, but on each step of get folders
828         operation. Also removing the delayed refresh on connection event
829         is now disabled, as we usually get hte connection event too 
830         soon.
831
832         * libtinymailui-gtk/tny-gtk-folder-list-store.c: cancel account
833         operations on removing them from store (to allow stopping get
834         folders operation).
835
836 2009-06-16  Jose Dapena Paz  <jdapena@igalia.com>
837
838         * New libtinymail-camel/tny-camel-html-to-text-stream.[ch]:
839         new stream that wraps a stream with html format, so its output
840         is a plain text version of that stream.
841
842 2009-06-15  Sergio Villar Senin  <svillar@igalia.com>
843
844         * libtinymail-camel/tny-camel-send-queue.c (check_cancel): call
845         tny_camel_send_queue_cancel_default instead of the interface
846         function in order to prevent call loops when applications want to
847         subclass TnyCamelSendQueue
848
849 2009-06-12  Jose Dapena Paz  <jdapena@igalia.com>
850
851         * libtinymail-camel/tny-camel-store-account.c. New method
852         _tny_camel_store_account_refresh_children. This is used for
853         checking to recurse folders for knowing if there are new
854         folders available.
855
856         * libtinymailui-gtk/tny-gtk-folder-list-store.[ch]: implemented new
857         "delayed refresh" flag. This is for telling store to act as
858         offline in first seconds, but then do an online refresh. With this
859         we get immediate view of cached folders, but after a while we get
860         a network access so we see new folders.
861
862 2009-06-11  Sergio Villar Senin  <svillar@igalia.com>
863
864         * libtinymail-maemo/tny-maemo-conic-device.c (handle_connect)
865         (on_connection_event, tny_maemo_conic_device_connect_async)
866         (tny_maemo_conic_device_instance_init)
867         (tny_maemo_conic_device_finalize): Now the maemo conic device
868         supports multiple requests for connections
869
870 2009-06-10  Sergio Villar Senin  <svillar@igalia.com>
871
872         * libtinymail-camel/tny-session-camel.c (on_account_connect_done):
873         Fixed a regression added in r3926
874
875         * libtinymail-camel/tny-camel-folder.c
876         (_tny_camel_folder_freeup_observers): protect the access to the
877         observers list when freeing it
878
879 2009-06-08  Sergio Villar Senin  <svillar@igalia.com>
880
881         * libtinymail-gnomevfs/tny-vfs-stream.c (tny_vfs_stream_write):
882         return -1 in case of error which is the value that CamelStream
883         understands as error.
884
885 2009-06-04  Sergio Villar Senin  <svillar@igalia.com>
886
887         * libtinymail-camel/tny-session-camel.c (on_account_connect_done):
888         Notify observers when a connection fails due to disk full conditions
889
890 2009-06-02  Sergio Villar Senin  <svillar@igalia.com>
891
892         * libtinymail-camel/tny-camel-store-account.c
893         (tny_camel_store_account_get_folders_default): unref the right
894         instance of CamelStore
895
896 2009-05-22  Jose Dapena Paz  <jdapena@igalia.com>
897
898         * libtinymail-camel/tny-camel-mime-part.c 
899         (tny_camel_mime_part_get_parts_default): don't revert the order 
900         of the mime parts in get_parts.
901
902 2009-05-22  Sergio Villar Senin  <svillar@igalia.com>
903
904         * libtinymail-camel/camel/providers/imap/camel-imap-store.c
905         (get_folders_sync_ns_only_lsub): handle the case of
906         parse_list_response_as_folder_info returning NULL
907
908 2009-05-21  Sergio Villar Senin  <svillar@igalia.com>
909
910         * libtinymail-camel/tny-camel-folder.c
911         (tny_camel_folder_poke_status_default): don't set the poke_status
912         operation as auto-cancellable
913
914         * libtinymail-camel/tny-camel-send-queue.c (check_cancel): don't
915         cancel always after sending the first email of the send queue. It
916         was the consequence of a typo
917
918 2009-05-19  Jose Dapena Paz  <jdapena@igalia.com>
919
920         * libtinymail-camel/tny-camel-folder.c: reason/unreason the
921         destination folder on copy_async, to avoid freeing the summary
922         and then crashing on subsequent access.
923
924 2009-05-18  Sergio Villar Senin  <svillar@igalia.com>
925
926         * libtinymail-camel/tny-camel-send-queue.c
927         (tny_camel_send_queue_cancel_default): Use an asynchronous call
928         when canceling sendings in order not to cause deadlocks
929
930 2009-05-15  Sergio Villar Senin  <svillar@igalia.com>
931
932         * libtinymail-camel/tny-camel-send-queue.c
933         (tny_camel_send_queue_cancel_default): use sync_sync to refresh
934         the outbox instead of the deprecated and dangerous tny_folder_sync
935         because the later could cause summary corruptions when combined
936         with asynchronous calls
937
938         * libtinymailui-gtk/tny-gtk-folder-list-store.c
939         (tny_gtk_folder_list_store_on_constatus_changed):
940         do not perform always a get_folders with refresh=TRUE. Take into
941         account the NO_REFRESH flag
942
943 2009-05-12  Sergio Villar Senin  <svillar@igalia.com>
944
945         * libtinymail-camel/tny-camel-send-queue.c (create_worker):
946         removed an unused variable error. No need to emit the error as it
947         will be handled by the caller of create_worker
948
949 2009-05-08  Sergio Villar Senin  <svillar@igalia.com>
950
951         ** Original patch by Dmitry Kazachkov with some slight modifications
952
953         * libtinymail-camel/camel/camel-store-summary.c (store_info_load,
954         store_info_save): added several extra checks to summary load/store
955         processes
956
957 2009-05-08  Sergio Villar Senin  <svillar@igalia.com>
958
959         ** Original patch by Dmitry Kazachkov with some slight modifications
960
961         * tests/c-demo/tny-demoui-summary-view.c
962         (on_header_view_key_press_event): added a proper initialization
963         * libtinymail-camel/tny-camel-bs-msg-receive-strategy.c
964         (tny_camel_bs_msg_receive_strategy_start_receiving_part): removed
965         unneeded check
966         * libtinymail-camel/camel/camel-gpg-context.c (gpg_verify): added
967         an extra check to detect gpg errors
968         * libtinymail-camel/camel/providers/local/camel-local-store.c (rename_folder):
969         commented some unreachable code
970         * libtinymail-camel/camel/providers/local/camel-maildir-summary.c
971         (maildir_summary_check): removed a couple of useless assignations
972         * libtinymail-camel/camel/providers/pop3/camel-pop3-folder.c (camel_pop3_folder_new)
973         (pop3_sync): removed unused variables
974
975 2009-05-04  Sergio Villar Senin  <svillar@igalia.com>
976
977         * libtinymail-camel/tny-camel-send-queue.c (thread_main): sync
978         outbox and sent folder in a sync-like way to avoid loosing syncs
979         when finalizing the send queue just after sending an email
980
981 2009-04-29  Jose Dapena Paz  <jdapena@igalia.com>
982
983         * Avoid assert if content location is an empty string.
984
985 2009-04-23  Jose Dapena Paz  <jdapena@igalia.com>
986
987         * libtinymailui-gtk/tny-gtk-folder-list-store.c:
988         added flag "no refresh" to allow creating folder list stores
989         that don't do any "forced" refresh (unless it's caused by
990         reconnects).
991
992 2009-04-14  Sergio Villar Senin  <svillar@igalia.com>
993
994         * libtinymail/tny-progress-info.c (tny_progress_info_idle_func):
995         fixes a potential NULL dereference
996
997         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-store.c
998         (pop3_try_authenticate): fixes a potential NULL dereference
999
1000         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-folder.c
1001         (camel_pop3_folder_new): fixes a potential NULL dereference
1002
1003         * libtinymail-camel/tny-camel-folder.c
1004         (tny_camel_folder_get_msg_async_thread): added a missing check
1005
1006         * libtinymail-camel/tny-camel-bs-mime-part.c
1007         (decode_async_thread): added a missing check
1008
1009         * libtinymail-camel/tny-camel-send-queue.c (check_cancel): fixes a
1010         potential NULL dereference
1011
1012 2009-04-13  Sergio Villar Senin  <svillar@igalia.com>
1013
1014         * libtinymail-camel/tny-camel-folder.c (tny_camel_folder_refresh_async_thread)
1015         (tny_camel_folder_refresh_default)
1016         (tny_camel_folder_get_headers_default): added calls to
1017         refresh_local_size to properly update the value when refreshing
1018         folders and when retrieving the headers.
1019
1020         * libtinymail/tny-merge-folder.c (sync_async_thread): refresh the
1021         subfolders using an async call to prevent a crash when rewritting
1022         the summary.
1023
1024 2009-04-08  Sergio Villar Senin  <svillar@igalia.com>
1025
1026         Several changes improving robustness
1027
1028         * libtinymail-camel/camel-lite/summary/summary.c (summary_item_get_cc, summary_item_get_to)
1029         (summary_item_get_subject, summary_item_get_from): added an extra
1030         check to prevent an invalid dereference
1031
1032         * libtinymail-camel/camel-lite/camel/camel-mime-parser.c
1033         (folder_scan_header): Moved a call to prevent an invalid
1034         dereference
1035
1036         * libtinymail-camel/camel-lite/camel/providers/local/camel-maildir-summary.c
1037         (maildir_summary_check): Moved a call to prevent an invalid dereference
1038
1039         * libtinymail-camel/camel-lite/camel/camel-store.c
1040         (camel_store_rename_folder): added an extra check to prevent an
1041         invalid dereference
1042
1043         * libtinymail-camel/camel-lite/camel/camel-disco-diary.c
1044         (camel_disco_diary_log): fixed a typo in a comparison
1045
1046         * libtinymail-camel/camel-lite/camel/camel-vee-folder.c
1047         (subfolder_renamed_update): fixed a NULL deref
1048
1049         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c
1050         (imap_forget_folder):
1051
1052         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-command.c
1053         (imap_command_strdup_vprintf): added an extra check to prevent an
1054         invalid dereference
1055
1056         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c
1057         (camel_imap_folder_fetch_data, process_idle_response)
1058         (imap_sync_offline): added an extra check to
1059         prevent an invalid dereference
1060
1061         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-folder.c
1062         (pop3_get_message, pop3_get_top): added an extra check to prevent an invalid dereference
1063
1064         * libtinymail-camel/tny-camel-account.c
1065         (tny_camel_account_matches_url_string_default): adds an extra
1066         check to prevent a crash in a strcmp()
1067
1068         * libtinymailui-gtk/tny-gtk-folder-store-tree-model.c
1069         (recurse_folders_sync): removed an invalid deref
1070
1071         * libtinymailui-gtk/tny-gtk-folder-list-store.c
1072         (recurse_folders_async_cb): removed an invalid deref
1073
1074         * libtinymail-camel/tny-camel-send-queue.c (get_sync): fixes a
1075         potential NULL deref
1076
1077         * libtinymail-camel/tny-camel-send-queue.c
1078         (tny_camel_send_queue_finalize): added an extra check
1079
1080         * libtinymail-camel/tny-camel-folder.c (recurse_evt): added an
1081         extra check
1082
1083 2009-04-06  Sergio Villar Senin  <svillar@igalia.com>
1084
1085         * libtinymail-camel/tny-camel-folder.c
1086         (tny_camel_folder_remove_msgs_default): do not remove messages
1087         that do not belong to the folder passed as first argument
1088
1089 2009-04-01  Jose Dapena Paz  <jdapena@igalia.com>
1090
1091         * libtinymail-camel/tny-camel-send-queue.c,
1092         libtinymail-camel/tny-camel-send-queue-priv.h: if queue is
1093         running when we cancel, then we request cancel to be done by
1094         the send queue thread.
1095
1096 2009-03-30  Jose Dapena Paz  <jdapena@igalia.com>
1097
1098         * libtinymail-camel/camel-lite/camel/camel-mime-utils.c
1099         (camel_header_address_decode): also consider semi-colon
1100         for reading split addresses.
1101
1102 2009-03-29  Jose Dapena Paz  <jdapena@igalia.com>
1103
1104         * libtinymail-camel/camel-lite/camel/camel-mime-part-utils.c:
1105         take into account the original substream bounds to calculate the new
1106         substream bounds on creating new message structure (fixes parsing
1107         of PGP signed messages)
1108
1109 2009-03-24  Jose Dapena Paz  <jdapena@igalia.com>
1110
1111         * libtinymailui-gtk/tny-gtk-folder-list-store.[ch]: added
1112         activity feedback, to allow developers to know when the
1113         list store is fetching data (to show some kind of progress
1114         feedback).
1115
1116 2009-03-24  Sergio Villar Senin  <svillar@igalia.com>
1117
1118         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-folder.c
1119         (pop3_sync): properly remove files from cache when they're marked
1120         as deleted.
1121
1122 2009-03-18  Jose Dapena Paz  <jdapena@igalia.com>
1123
1124         * libtinymail-camel/tny-camel-send-queue.c: fix
1125         bad usage of GSlice that could cause crashes.
1126
1127 2009-03-17  Sergio Villar Senin  <svillar@igalia.com>
1128
1129         * libtinymailui-gtk/tny-gtk-folder-list-store.c (get_folders_cb): 
1130         get the folders of the model using asynchronous calls
1131
1132 2009-03-13  Jose Dapena Paz  <jdapena@igalia.com>
1133
1134         * Fix for previous "refresh" commit.
1135
1136 2009-03-11  Jose Dapena Paz  <jdapena@igalia.com>
1137
1138         * libtinymail-camel/tny-camel-store-account.c: now
1139         get_folders "refresh" parameter forces to fetch again
1140         the list of folders. This way we can acknowledge when
1141         there are new folders available on server.
1142
1143 2009-03-06  Sergio Villar Senin  <svillar@igalia.com>
1144
1145         * libtinymail-camel/tny-session-camel.c
1146         (tny_session_queue_going_online_for_account):
1147         set the session to online before trying to connect the
1148         account. Otherwise the connection won't success
1149
1150 2009-03-02  Sergio Villar Senin  <svillar@igalia.com>
1151
1152         * libtinymail-camel/tny-camel-folder.c
1153         (_tny_camel_folder_guess_folder_type): Improved detection of
1154         folders called 'inbox'. If the parent is not an account then it's
1155         unlikely to be a 'real' inbox
1156
1157 2009-02-27  Jose Dapena Paz  <jdapena@igalia.com>
1158
1159         * libtinymail-camel/camel-lite/tny-camel-folder.c: disable push email
1160         on uncaching (to avoid keeping current folder active in store when
1161         we're not reading it anymore).
1162
1163 2009-02-16  Jose Dapena Paz  <jdapena@igalia.com>
1164
1165         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
1166         fix bad access to namespaces due to bad reusage of pointer.
1167
1168         * libtinymail-camel/camel-lite/camel/camel-mime-utils.c: fix
1169         camel_header_set_param as it could cause crashes on setting params
1170         if a param struct was already available.
1171
1172 2009-02-09  Jose Dapena Paz  <jdapena@igalia.com>
1173
1174         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
1175         Small fix to avoid referencing an old copy of namespace in 
1176         get_folder_info_online.
1177
1178 2009-02-09  Sergio Villar Senin  <svillar@igalia.com>
1179
1180         * libtinymail-camel/tny-camel-account.c
1181         (tny_camel_account_get_supported_secure_authentication):
1182         Properly initialize a boolean. Valgrind complained about
1183         uninitialized value
1184
1185 2009-02-04  Sergio Villar Senin  <svillar@igalia.com>
1186
1187         * libtinymail-camel/tny-camel-store-account-priv.h:
1188         * libtinymail-camel/tny-camel-pop-store-account.c (notify_factory_del)
1189         (tny_camel_pop_store_account_factor_folder):
1190         * libtinymail-camel/tny-camel-imap-store-account.c (tny_camel_imap_store_account_factor_folder)
1191         (notify_factory_del, tny_camel_imap_store_account_factor_folder):
1192         * libtinymail-camel/tny-camel-folder.c (_tny_camel_folder_remove_folder_actual)
1193         (tny_camel_folder_dispose, tny_camel_folder_finalize):
1194         * libtinymail-camel/tny-camel-store-account.c
1195         (tny_camel_store_account_remove_folder_actual):
1196         added "protected" functions to properly add/remove folders to/from
1197         managed_folders list.
1198
1199 2009-01-29  Sergio Villar Senin  <svillar@igalia.com>
1200
1201         * libtinymail-camel/tny-camel-store-account.c
1202         (tny_camel_store_account_dispose): added a NULL check
1203
1204         * libtinymailui-gtk/tny-gtk-folder-list-store.c (deleter): fixes
1205         removals of folder hierarchies
1206
1207         * libtinymail-camel/tny-camel-store-account.c
1208         (foreach_managed_folder):
1209         (tny_camel_store_account_remove_folder_actual): perform a
1210         weak_unref when the account is disposed or the managed folder is
1211         removed
1212
1213 2009-01-28  Jose Dapena Paz  <jdapena@igalia.com>
1214
1215         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
1216         imap_store->namespace should always own a copy of the string, to
1217         avoid some double frees causing crashes.
1218
1219 2009-01-27  Sergio Villar Senin  <svillar@igalia.com>
1220
1221         * libtinymail-camel/tny-camel-store-account.c
1222         (tny_camel_store_account_delete_cache_default): fixes a crash when
1223         deleting the cache of an account that does not have a CamelStore
1224         yet
1225
1226 2009-01-23  Sergio Villar Senin  <svillar@igalia.com>
1227
1228         * libtinymailui-gtk/tny-gtk-folder-list-store.c (deleter): Remove
1229         the children of a folder whenever it is deleted
1230
1231 2009-01-20  Jose Dapena Paz  <jdapena@igalia.com>
1232
1233         * libtinymailui-gtk/tny-gtk-folder-list-store.c:
1234         on creating new items (ie. after creating a new folder, don't add
1235         the account name in the full path).
1236
1237 2009-01-15  Sergio Villar Senin  <svillar@igalia.com>
1238
1239         * libtinymailui-gtk/tny-gtk-folder-list-store.c
1240         (tny_gtk_folder_list_store_remove): remove folders that
1241         belong to the account that is being removed
1242
1243 2009-01-14  Jose Dapena Paz  <jdapena@igalia.com>
1244
1245         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
1246         added a missing connect_unlock in imap_connect_online, when auth
1247         failed.
1248
1249 2009-01-09  Jose Dapena Paz  <jdapena@igalia.com>
1250
1251         * libtinymail-camel/tny-camel-account.c: initialize properly some 
1252         variables, and also free properly some vars (to avoid leaks). 
1253         Patch contributed by Qasim Ahmad.
1254
1255         * libtinymail-camel/tny-camel-folder.c: leak fix in TnyCamelFolder
1256         copy_shared implementation (contributed by Qashim Ahmad).
1257
1258 2009-01-08  Jose Dapena Paz  <jdapena@igalia.com>
1259
1260         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
1261         now *_stop_idle_connect_lock loops if it cannot get the connect lock
1262         to avoid interlocks if two concurrent threads try to get the lock.
1263
1264 2008-12-15  Jose Dapena Paz  <jdapena@igalia.com>
1265
1266         * libtinymail-camel/tny-camel-account-store.c: removed unnecesary camel
1267         exception checks.
1268
1269         * libtinymail-camel/tny-session-camel.c: added missing unref in
1270         set_device.
1271
1272 2008-12-08  Suhang Wan  <shuang.wan@intel.com>
1273
1274         * Fixed compilation errors in unit tests
1275
1276 2008-11-27  Sergio Villar Senin  <svillar@igalia.com>
1277
1278         * libtinymail-camel/tny-camel-folder.c: set priv->account to NULL in
1279         dispose after unref'ing it.
1280
1281 2008-11-27  Jose Dapena Paz  <jdapena@igalia.com>
1282
1283         * libtinymailui-gtk/tny-gtk-folder-list-store.c
1284         Fix big typo: folder list store inherits from list store, not 
1285         tree store.
1286
1287         * libtinymailui-gtk/tny-gtk-folder-list-store.[ch]:
1288         Folder list store path separator is now configurable.
1289
1290         * libtinymailui-gtk/tny-gtk-folder-list-store.c:
1291         Fixed reference leaks
1292
1293 2008-11-24  Jose Dapena Paz  <jdapena@igalia.com>
1294
1295         * Added new TnyGtkFolderListStore, implementing a plain model (no tree)
1296         for the folder store.
1297
1298         * libtinymailui-gtk/tny-gtk-folder-store-tree-model.[ch]:
1299         Added support for settings construction flags. Also added a flag
1300         "show path" for the tree model, that makes it store the full path 
1301         name.
1302
1303 2008-11-21  Sergio Villar Senin  <svillar@iglaia.com>
1304
1305         * libtinymail-camel/tny-camel-default-connection-policy.c: added
1306         missing license
1307         * libtinymail-gnomevfs/tny-vfs-stream.c: prevent a double free of a
1308         file pointer
1309         * libtinymail-maemo/tny-maemo-device.c: added missing initialization
1310         * libtinymailui-gtkhtml/tny-gtk-html-mime-part-view.c: added missing
1311         initialization
1312
1313 2008-11-21  Martin Bonnin  <martinbonnin@gmail.com>
1314  
1315         Add some documentation tny_folder_store_refresh_async()
1316
1317 2008-11-21  Martin Bonnin  <martinbonnin@gmail.com>
1318  
1319         Add some documentation about the behaviour of tny_folder_refresh_async()
1320
1321 2008-11-21  Martin Bonnin  <martinbonnin@gmail.com>
1322  
1323         * revert last changeset:
1324         We want this to be fixed a better way    
1325
1326 2008-11-20  Martin Bonnin  <martinbonnin@gmail.com>
1327
1328         * camel operation:
1329         adding camel_operation_mute/unmute() and use it to filter the progress
1330         events. This prevents to send bad progress when refreshing an IMAP folder
1331
1332 2008-11-20  Martin Bonnin  <martinbonnin@gmail.com>
1333  
1334         * libtinymail-camel/camel-lite/camel/providers/imap:
1335         For IMAP, we open 2 sessions: one for standard operations, the other
1336         for fetching messages. This makes concurrent accesses to the folder summary
1337         therefore corrupting it.
1338         This happens e.g when you delete a message and fetch a new one afterwards.
1339         This patch adds the "dont_touch_summary" parameter to prevent the GetMsg session to
1340         mess up too much.
1341
1342 2008-11-20  Jose Dapena Paz  <jdapena@igalia.com>
1343
1344         * libtinymail-camel/tny-camel-folder.c: guess folder type from name if
1345         we couldn't know the folder type from camel.
1346
1347 2008-11-19  Martin Bonnin  <martinbonnin@gmail.com>
1348
1349         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-folder.c:
1350         Fix a camel_operation leak introduced in r3767. This had the side effect
1351         of triggering a "**: Camel operation status stack non empty:" warning 
1352          when trying to sync a POP account
1353
1354 2008-11-19  Sergio Villar Senin  <svillar@igalia.com>
1355
1356         * libtinymail-camel/tny-camel-send-queue-priv.h
1357         * libtinymail-camel/tny-camel-send-queue.c: added some locking to
1358         prevent two send queue threads running at the same time.
1359
1360         * libtinymail-camel/tny-camel-mime-part.c
1361         (tny_camel_mime_part_decode_to_stream_default):
1362         adds a reference to protect wrapper when decoding to a stream
1363
1364 2008-11-19  Jose Dapena Paz  <jdapena@igalia.com>
1365
1366         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c:
1367         Remove calls to camel_imap_folder_start_idle that could happen even
1368         when idle was locked by an operation, causing hangs.
1369
1370 2008-11-18  Jose Dapena Paz  <jdapena@igalia.com>
1371
1372         * Avoid criticals on calling can_idle if queue does not have service.
1373
1374 2008-11-17  Martin Bonnin  <martinbonnin@gmail.com>
1375
1376         * libtinymail-camel/tny-camel-store-account.c: 2 small bugfixes in 
1377         tny_camel_store_account_store_refresh().
1378         - fix a reference leak
1379         - fix we were reporting the subfolders to the observer instead of 
1380           just the folders
1381
1382 2008-11-18  Sergio Villar Senin  <svillar@igalia.com>
1383
1384         * libtinymail-camel/tny-camel-folder.c: several bugfixes. Fixed an
1385         invalid comparison (a typo most likely). Fixed several memory
1386         leaks as well in some lists that were not freed.
1387         (load_folder_no_lock): removed a duplicated instruction.
1388         Added several initializations of cancelled field all around the
1389         code.
1390         (tny_camel_folder_copy_shared): removed needless code and fixed a
1391         memory leak.
1392         (tny_camel_folder_get_folders_default): fixed an useless asignment
1393
1394         * libtinymail-camel/tny-camel-mime-part-priv.h: Moved a function
1395         header into the #ifdef
1396
1397 2008-11-13  Thomas Guillem  <thomas.guillem@gmail.com>
1398
1399         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-message-cache.c:
1400         Change the default cache filename from "uid." to "uid.~" in order to
1401         keep compatibility with FAT32 partitions. (a FAT32 file can't end with '.')
1402         Old cache files ("uid.") are still compatible.
1403
1404 2008-11-10  Jose Dapena Paz  <jdapena@igalia.com>
1405
1406         Complete rework of the lock behavior of Tinymail
1407         (camel) imap IDLE implementation.
1408
1409         The problem we want to fix is: sometimes IDLE thread causes
1410         deathlocks (connect lock, idle lock, g_thread_join, etc).
1411         This happens easily when there are disconnects, or
1412         when we switch fast among folders.
1413
1414         The main changes are:
1415         * Provided a count of reasons to stop idle because of connect lock.
1416         * If a caller has taken connect lock, then it should do the send done
1417         stuff itself.
1418         * Idle thread has the connect lock always when it's in the body of the
1419         loop.
1420         * In any point, if we want to  take the connect lock, then we should
1421         stop idle. No partial idle can be alive when we want to connect.
1422         * Camel queue enables/disables the possibility to start idle. That's
1423         for avoiding running IDLE / SEND DONE in the middle of queued
1424         operations.
1425
1426 2008-11-10  Martin Bonnin  <martinbonnin@gmail.com>
1427
1428         * libtinymail-camel/tny-camel-folder.c: Uninitialized value, fixed
1429
1430 2008-11-10  Jose Dapena Paz  <jdapena@igalia.com>
1431
1432         * Specify with defines the IDLE tick time (time between iterations in
1433         idle loop) and IDLE default delay (time between IDLE/DONE cycles if no
1434         event happens).
1435
1436         * Fix the IDLE delay account parameter to take into account the tick
1437         time.
1438
1439 2008-10-30  Thomas Guillem  <thomas.guillem@gmail.com>
1440
1441         * libtinymail-camel/tny-camel-mime-part.c: Fixed a typo
1442
1443 2008-10-30  Rob Taylor  <rob.taylor@codethink.co.uk>
1444
1445         * Make folder pokes cancelable
1446
1447 2008-10-30  Martin Bonnin  <martinbonnin@gmail.com>
1448
1449         Makes tny_camel_account_set_online (FALSE) send "QUIT" 
1450         for POP3 accounts. It also cleans up the logged_in 
1451         variable that was unused. This fixes some problems I 
1452         had with Yahoo servers when trying to connect twice in 
1453         a row.
1454
1455 2008-10-29  Jose Dapena Paz  <jdapena@igalia.com>
1456
1457         * libtininymail-camel/tny-camel-bs-msg.[ch]:
1458         Added implementation of methods get/set allow external images to avoid
1459         crashes on code using this if using the bodystructure retrieve
1460         strategy.
1461
1462         * libtinymail-camel/camel-lite/camel/camel-tcp-stream-ssl.c:
1463         Now we use PR_INTERVAL_NO_WAIT (value is 0) instead of putting
1464         0 as interval parameter for PR_Connect. Should help code
1465         readability.
1466
1467 2008-10-27  Rob Taylor  <rob.taylor@codethink.co.uk>
1468
1469         * Re-submission for the add-tny_merge_folder_store() patch.
1470         It allows to merge folder stores.
1471
1472 2008-10-26  Rob Taylor  <rob.taylor@codethink.co.uk>
1473             & Martin Bonnin  <martinbonnin@gmail.com>
1474
1475         * Re-submission for the add-tny_camel_send_queue_new_with_folders() patch:
1476         It allows to create a Camel SendQueue with user-supplied outbox and sendbox
1477
1478 2008-10-24  Rob Taylor  <rob.taylor@codethink.co.uk>
1479             & Martin Bonnin  <martinbonnin@gmail.com>
1480
1481         * Re-submission for the add-a-refresh-parameter-to-tny_folder_store_get_folder():
1482         makes the patch atomic by adapting to the new api where needed
1483         also honour the camel folders flags (caused some critical camel warnings else)
1484
1485         * This was a major API change
1486
1487 2008-10-16  Philip Van Hoof  <philip@codeminded.be>
1488
1489         * Reverted `svn diff -r 3774:3775`, the behaviour of the folders was
1490         incorrect. This was a commit that combined multiple of Rob's patches
1491         together. The entire commit was probably not entirely wrong, but the
1492         behaviour must be fixed before re-approval can take place.
1493
1494 2008-10-16  Sergio Villar Senin  <svillar@igalia.com>
1495
1496         * libtinymail-camel/camel-lite/camel/camel-file-utils.c: (camel_write)
1497         only write in chunks when writing to sockets, do not do it when
1498         writing to a local filesystem. This speeds up writings a lot.
1499         *
1500         libtinymail-camel/camel-lite/camel/providers/local/camel-maildir-summary.c:
1501         adds an extra check that prevents crashes when reading data from
1502         corrupted media.
1503
1504 2008-09-23  Rob Taylor  <rob.taylor@codethink.co.uk>
1505
1506         * libtinymailui-gtk/tny-gtk-folder-store-tree-model.c:
1507         * tests/c-demo/tny-demoui-summary-view.c: (recurse_poke),
1508         * tests/functional/account-refresh.c: (recurse_folders),
1509         * tests/functional/folder-lister-async.c: (callback), (dance):
1510         * tests/functional/folder-lister.c: (recurse_folders):
1511         * tests/functional/folder-remove.c: (recurse_folders):
1512         * tests/functional/folder-transfer.c: (recurse_folders):
1513         * tests/functional/msg-transfer.c: (find_folders):
1514         * tests/memory/memory-test.c: (main):
1515         Change all usage of tny_folder_store_get_folders over to the new api
1516
1517 2008-09-23  Rob Taylor  <rob.taylor@codethink.co.uk>
1518
1519         * libtinymail-camel/tny-camel-folder.c:
1520         * libtinymail-camel/tny-camel-folder.h:
1521         * libtinymail-camel/tny-camel-store-account.c:
1522         * libtinymail-camel/tny-camel-store-account.h:
1523         * libtinymail/tny-combined-account.c:
1524         * libtinymail/tny-folder-store.c: (tny_folder_store_get_folders),
1525         * libtinymail/tny-folder-store.h:
1526         * libtinymail/tny-shared.h:
1527         Give tny_folder_store_get_folders a refresh parameter, for optionally not refreshing from the server.
1528         Add tny_folder_store_refresh_async that will asynchronously refresh the store from the server, emitting TnyFolderStoreChanged events to observers.
1529         Implement it all for camel.
1530
1531 2008-09-23  Rob Taylor  <rob.taylor@codethink.co.uk>
1532         * libtinymail-camel/tny-camel-folder.c:
1533         * libtinymail-camel/tny-camel-store-account.c:
1534         Notify observers about existing folders when they're attached.
1535
1536 2008-09-23  Rob Taylor  <rob.taylor@codethink.co.uk>
1537
1538         * libtinymail-camel/tny-camel-folder-priv.h:
1539         * libtinymail-camel/tny-camel-folder.c:
1540         * libtinymail-camel/tny-camel-store-account-priv.h:
1541         * libtinymail-camel/tny-camel-store-account.c:
1542         * libtinymail/tny-folder-store-change.c:
1543         * libtinymail/tny-folder-store-change.h:
1544         New observer behaviour. Observers will get folders_appeared events when a
1545         tny_folder_store_refresh or tny_folder_store_get_folders occurs and the cache
1546         is loaded for the first time. They get folders_created events when a new folder
1547         appears that we didn't know about before.
1548
1549 2008-09-23  Rob Taylor  <rob.taylor@codethink.co.uk>
1550
1551         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-folder.c
1552         (pop3_sync): In pop3 provider, do a LIST before a folder sync so
1553         failure doesnt happen if wait_for_login_delay kills the store
1554
1555 2008-09-23  Rob Taylor  <rob.taylor@codethink.co.uk>
1556
1557         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store-summary.c
1558         (camel_imap_store_summary_init),
1559         (camel_imap_store_summary_namespace_new),
1560         (camel_imap_store_summary_namespace_set), (namespace_load),
1561         (namespace_save):
1562         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store-summary.h:
1563         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c
1564         (construct), (save_namespace_in_summary), (imap_connect_online): Fix
1565         saving and loading of namespaces in the summary.
1566
1567 2008-09-16  Jose Dapena Paz  <jdapena@igalia.com>
1568
1569         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c
1570         (let_idle_die): do a trylock in connect_lock instead of lock, so that
1571         we can avoid interlocks on stop_idle called from imap_command_start.
1572
1573 2008-09-10  Sergio Villar Senin  <svillar@igalia.com>
1574
1575         * libtinymail-camel/camel-lite/camel/providers/local/camel-mailder-store.c
1576         (scan_dirs): do not free name before using it to notify an
1577         exception
1578
1579 2008-09-03  Jose Dapena Paz  <jdapena@igalia.com>
1580
1581         * libtinymail-camel/tny-camel-mime-part.c
1582         (tny_camel_mime_part_decode_to_stream_async_default): make it really
1583         asynchronous, doing the operation in a separate thread.
1584
1585 2008-09-03  Sergio Villar Senin  <svillar@igalia.com>
1586
1587         * libtinymail-camel/tny-camel-folder.c
1588         (tny_camel_folder_get_msg_async_default),
1589         (tny_camel_folder_find_msg_async_default):
1590         * libtinymail-camel/tny-camel-queue-priv.h:
1591         * libtinymail-camel/tny-camel-queue.c (_tny_camel_queue_has_items):
1592         * libtinymail-camel/tny-camel-store-account.c
1593         (_tny_camel_store_account_queue_going_online): do not add a
1594         message retrieval (with both get_msg_async and find_msg_async) to
1595         the IMAP store account message retrieval queue when there is a
1596         pending connection in the account queue.
1597
1598 2008-08-31  Rob Taylor  <rob.taylor@codethink.co.uk>
1599
1600         * libtinymail-camel/tny-session-camel.c: Make account_store
1601         weak-referenced in TnySessionCamel.
1602
1603 2008-08-31  Rob Taylor  <rob.taylor@codethink.co.uk>
1604
1605         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c:
1606         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-message-cache.c:
1607         Fix some valgrind warnings in camel imap provider.
1608
1609 2008-08-31  Rob Taylor  <rob.taylor@codethink.co.uk>
1610
1611         * libtinymail/tny-progress-info.c: Make the sofar/oftotal field in
1612         TnyProgress more sensible when one of the is negative.  In general one
1613         of these ill be negative right at the start of an operation, and if
1614         one is 0, then the other is generally gibberish, so 0/0 is more
1615         sensible.
1616
1617 2008-08-31  Rob Taylor  <rob.taylor@codethink.co.uk>
1618
1619         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
1620         * libtinymail-camel/tny-camel-folder.c: Correctly change the unread
1621         and total message numbers after a status_poke
1622
1623 2008-08-31  Rob Taylor  <rob.taylor@codethink.co.uk>
1624
1625         * libtinymail-camel/tny-camel-folder.c:
1626         * libtinymail-camel/tny-camel-store-account.c:
1627         do unrefs in dispose, not finalise for tny-camel-folder and tny-camel-st
1628
1629 2008-08-28  Martin Bonnin  <martinbonnin@gmail.com>
1630
1631         * Fixed typo in camel-service.c
1632
1633 2008-08-27  Martin Bonnin  <martinbonnin@gmail.com>
1634
1635         * This removes the "Warning: invalid file descriptor -1 in syscall 
1636         close()" seen when using valgrind with tinymail. stream_close() is 
1637         called twice in a row on the same stream.  There might be more 
1638         implications than just this valgrind warning, full details here 
1639         http://www.tinymail.org/trac/tinymail/ticket/62#preview
1640
1641 2008-08-22  Philip Van Hoof  <philip@codeminded.be>
1642
1643         * http://www.tinymail.org/trac/tinymail/ticket/81
1644         Patch by agx@sigxcpu.org
1645
1646 2008-08-21  Sergio Villar Senin  <svillar@igalia.com>
1647
1648         * libtinymail/tny-merge-folder.c (remove_msgs_async_thread),
1649         (tny_merge_folder_remove_msgs_async), (sync_async_thread),
1650         (tny_merge_folder_sync_async), (get_msg_async_thread),
1651         (tny_merge_folder_get_msg_async), (find_msg_async_thread),
1652         (tny_merge_folder_find_msg_async), (get_headers_async_thread),
1653         (tny_merge_folder_get_headers_async), (refresh_async_thread),
1654         (tny_merge_folder_refresh_async), (transfer_msgs_async_thread),
1655         (tny_merge_folder_transfer_msgs_async): Added some missing frees
1656         to fix several leaks of thread structures
1657
1658         * libtinymail/tny-fs-stream-cache.c
1659         (tny_fs_stream_cache_finalize): properly unref the hash table with
1660         the cached files
1661
1662 2008-08-18  Sergio Villar Senin  <svillar@igalia.com>
1663
1664         * libtinymail-camel/tny-camel-folder.c (tny_camel_folder_finalize):
1665         remove the folder from the account before unrefing it as it could be
1666         the last reference of the account
1667
1668 2008-08-12  Thomas Monjalon  <thomas.monjalon@openwide.fr>
1669
1670         * libtinymail-camel/tny-camel-mime-part.c: convert only plain text
1671         parts to UTF-8.
1672         * Patch commited by Sergio Villar Senin
1673
1674 2008-08-06  Sergio Villar Senin  <svillar@igalia.com>
1675
1676         * libtinymail-camel/camel-lite/camel/camel-tcp-stream-ssl.c
1677         (stream_read): fixed a neverending poll when connection goes down
1678         while retrieving messages.
1679
1680 2008-08-04  Sergio Villar Senin  <svillar@igalia.com>
1681
1682         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c
1683         (get_folder_info_offline): check wheter the returned folder info is
1684         NULL or not to prevent a crash
1685
1686 2008-08-01  Sergio Villar Senin  <svillar@igalia.com>
1687
1688         * libtinymail-camel/camel-lite/camel/providers/local/camel-local-store.c
1689         (xrename):
1690         use g_rename for all platforms. Merged from camel trunk where I
1691         initially submitted the patch
1692         
1693 2008-07-31  Jose Dapena Paz  <jdapena@igalia.com>
1694
1695         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
1696         Check on fetching folder info if the top folder is inbox (should fix
1697         inbox detection in dovecot).
1698
1699 2008-07-28  Jürg Billeter  <j@bitron.ch>
1700
1701         * tests/vala-demo/Makefile.am:
1702         Fix build with recent Vala versions
1703
1704 2008-07-28  Sergio Villar Senin  <svillar@igalia.com>
1705
1706         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-folder.c:
1707         do not mark as expunged those messages that could not be retrieved due
1708         to the user canceled the request
1709
1710 2008-07-23  Sergio Villar Senin  <svillar@igalia.com>
1711
1712         * libtinymail-camel/tny-camel-account.c
1713         (_tny_camel_account_start_camel_operation_n): added a missing
1714         camel_operation_register that was preventing progress info to be
1715         threw up and cancelations as well.
1716
1717         * libtinymail-camel/tny-camel-folder.c: added progress information
1718         to get_headers_async function.
1719
1720 2008-07-21  Jose Dapena Paz  <jdapena@igalia.com>
1721
1722         * libtinymail-camel/camel-lite/camel/providers/imap/camep-imap-store.c:
1723         Trivial fix for current folder weak reference code.
1724
1725 2008-07-21  Mark Doffman  <mark.doffman@codethink.co.uk>
1726         * bindings/python/tinymail.override
1727         Fixed some incompatible pointer warnings.
1728
1729 2008-07-16  Jose Dapena Paz  <jdapena@igalia.com>
1730
1731         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.[ch]:
1732         Added fetching aol specific imap capability.
1733
1734         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.[ch]:
1735         Now we use FETCH instead of SEARCH for getting the UID's
1736         when the server is AOL.
1737         Added an extra check in imap_get_uids. If server gives a list
1738         including sequence numbers we didn't request, we ignore them.
1739         This should fix the AOL problem fetching headers.
1740
1741 2008-07-16  Sergio Villar Senin  <svillar@igalia.com>
1742
1743         * libtinymail-camel/camel-lite/camel/camel-tcp-stream-ssl.c: added
1744         some code that properly checks the result of the call to
1745         NSS_InitReadWrite.
1746
1747 2008-07-04  Jose Dapena Paz  <jdapena@igalia.com>
1748
1749         * libtinymail-camel/camel-lite/camel/camel.c:
1750         Drop usage of PR_Cleanup on shutting down camel, as this is not safe,
1751         nor required. This method is responsible for freeing the common
1752         threads management code, including the lock that's accessed on the
1753         crash in __nptl_deallocate_tsd.
1754
1755 2008-07-01  Jose Dapena Paz  <jdapena@igalia.com>
1756
1757         * libtinymail-camel/camel-lite/camel/camel-provider.[ch]:
1758         Now providers offer a new shutdown handler, that will be
1759         called on shutting down camel.
1760
1761         * libtinymail-camel/camel-lite/camel/camel.c:
1762         Use the providers shutdown handler on shutting down camel.
1763
1764         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-provider.c:
1765         Implement new provider shutdown handler, to kill the login delay
1766         threads on shutting down tinymail.
1767
1768         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-store.[ch]:
1769         New method to kill the login delay thread. This is used to kill
1770         the thread on shutting down tinymail.
1771
1772         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-provider.c:
1773         Set as NULL the default shutdown handler.
1774
1775         * libtinymail-camel/tny-camel-pop-store-account.c:
1776         Manage properly the internal inbox reference to avoid leaking it.
1777
1778         * libtinymail-camel/camel-lite/camel/camel-mime-utils.c:
1779         Parse properly broken rfc2047 recipient headers sent from gmail imap.
1780
1781 2008-06-26  Philip Van Hoof <philip@codeminded.be>
1782
1783         * Fixed LIST (SUBSCRIBED) for some IMAP servers
1784
1785 2008-06-25  Jose Dapena Paz  <jdapena@igalia.com>
1786
1787         * libtinymail-camel/tny-camel-mime-part.c
1788         (..._get_header_pairs_default): we were leaking all the TnyPair objects
1789         created here. Fixed.
1790
1791         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
1792         Don't set in_idle to false so that join works properly.
1793         On disconnecting we forze a stop_idle so we warrant idle
1794         thread has died when we disconnect. Also, send let idle die commands
1795         on disconnecting. It's very important to make the idle thread die
1796         on time as it keeps a reference to the folder. Folder keeps a reference to
1797         this store, and then store should finish idle soon to be able
1798         to finalize (cycle reference).
1799
1800         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c:
1801         On finishing the idle thread we state we're out of it.
1802
1803         * libtinymail-camel/camel-lite/camel.c:
1804         Avoid running internal methods of camel_shutdown two times if
1805         we can call shutdown two times.
1806
1807         * libtinymail-camel/tny-session-camel.c:
1808         Keep a proper reference to TnyDevice.
1809
1810         * libtinymail-camel/tny-camel-store-account.c:
1811         Free the iter store reference on finalising.
1812
1813         * libtinymail-camel/tny-camel-account.c:
1814         Set service to null after unreffing it.
1815
1816         * libtinymailui-gtk/tny-gtk-folder-store-tree-model.c:
1817         * Don't get folders again when we change status to disconnected.
1818
1819 2008-06-20  Jose Dapena Paz  <jdapena@igalia.com>
1820
1821         * libtinymail-camel/tny-camel-folder.c:
1822         Fix camel operation references
1823
1824         * libtinymail-camel/tny-camel-bs-mime-part.c:
1825         Fix camel operation references
1826
1827         * libtinymail-camel/tny-camel-queue.c:
1828         Make queue reference to account be weak.
1829
1830         * libtinymail-camel/tny-camel-account.c:
1831         More camel operation reference fixes.
1832
1833         * libtinymail/tny-cached-file-stream.c:
1834         Linked the reset implementation to the stream interface.
1835
1836         * libtinymail/tny-cached-file.c:
1837         Create the files synchronously, to avoid accessing the file from other
1838         thread if this has not been created yet.
1839
1840         * Changelog: removed many end-of-line whitespaces.
1841
1842 2008-06-18  Jose Dapena Paz  <jdapena@igalia.com>
1843
1844         * libtinymail/tny-shared.h:
1845         Added stream cache classes and handlers
1846
1847         * libtinymail/tny-stream-cache.[ch]:
1848         Interface for streams caches. It's mostly intended for image
1849         remote streams.
1850
1851         * libtinymail/tny-fs-stream-cache.[ch]:
1852         Implementation of TnyStreamCache interface using a local
1853         folder for storage. This implementation tries to keep the
1854         size of the cached streams lower than 1 MB.
1855
1856         * libtinymail/tny-cached-file.[ch]:
1857         Data object to store status information of currently cached
1858         files. It also controls the process of fetching the remote
1859         streams, and creation of streams reading from cache.
1860
1861         * libtinymail/tny-cached-file-stream.[ch]:
1862         Streams wrapping TnyFsStream, that access the cache files
1863         waiting when they're not completely fetched yet.
1864
1865         * libtinymail/Makefile.am:
1866         Added stream cache implementation files.
1867
1868 2008-06-10  Sergio Villar Senin  <svillar@igalia.com>
1869
1870         * libtinymail-maemo/tny-maemo-conic-device.c:
1871         Added the proper error domain do some errors
1872
1873 2008-06-09  Rob Taylor  <rob.taylor@codethink.co.uk>
1874
1875         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
1876         Some mail servers use a namespace for their inbox, but inbox
1877         is also a top-level folder. This special-cases it so we get the
1878         flags of INBOX and also do the rest of our INBOX special casing.
1879
1880 2008-06-05  Mark Doffman  <mark.doffman@codethink.co.uk>
1881
1882         * bindings/python/*
1883         Update .override and .defs files to reflect changes
1884         in tinymail interfaces.
1885
1886         * tests/python-demo/*
1887         Update python implementations to remove _func prefix
1888         from methods no longer required by gtk-codegen.
1889
1890 2008-06-05  Philip Van Hoof <philip@codeminded.be>
1891
1892         * Merging folder flags from LSUB
1893         * Folders that are only in LSUB are flagged NoSelect automatically
1894         * Separator fallbacks
1895
1896 2008-06-03  Sergio Villar Senin  <svillar@igalia.com>
1897
1898         * camel/providers/pop3/camel-pop3-store.c (connect_to_server):
1899         fixed a crash when there is a connection problem related to TLS
1900
1901 2008-06-03  Jose Dapena Paz  <jdapena@igalia.com>
1902
1903         * libtinymail/tny-msg.[ch]:
1904         New virtual methods get/set allow external images, to store
1905         user acceptation to allow mail client to fetch external images
1906         referenced in a message.
1907
1908         * libtinymail-camel/tny-camel-msg.[ch]:
1909         Implement new public methods get/set allow external images
1910         available in TnyMsg interface. It uses TnyCamelFolder for
1911         implementation of storage of the flag.
1912
1913         * libtinymail-camel/tny-camel-folder.c,
1914         libtinymail-camel/tny-camel-folder-priv.h:
1915         In camel we delegate on folder for storing the "get external
1916         images" flag. Then we expose a private method for this, that
1917         will be called in TnyMsg public implementation.
1918
1919         * libtinymail-camel/camel-lite/camel/camel-folder.[ch]:
1920         Add new virtual methods (not implemented here) for getting
1921         and setting "get external images" flag for each message.
1922
1923         * libtinymail-camel/camel-lite/camel/camel-data-cache.[ch]:
1924         Implementation of storage of "get external images" flag in
1925         data cache. It stores a file with extension getimages in the
1926         same folder the message contents are retrieved.
1927
1928         * libtinymail-camel/camel-lite/camel/providers/nntp/camel-nntp-folder.c:
1929         Implement get/set allow external images methods. It stores
1930         it in the camel data cache using the methods the cache
1931         exposes for this.
1932
1933         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-folder.c:
1934         Implement get/set allow external images methods. It also uses
1935         the data cache as nntp provider.
1936
1937         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c:
1938         Implement get/set allow external images methods. It relies on
1939         proper implementation in imap messages cache.
1940
1941         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-message-cache.[ch]:
1942         Add storage of allow external images flag. It saves an empty
1943         file with extension getimages per allowed file (similar to
1944         is partial flag approach).
1945
1946         * libtinymail-camel/camel-lite/camel/providers/local/camel-maildir-folder.c:
1947         Implement get/set allow external images methods. It stores
1948         an empty file for each message in the folder maildir metadata
1949         directory (the one on top of cur, new and tmp).
1950
1951 2008-05-26  Philip Van Hoof <philip@codeminded.be>
1952
1953         * Bugfix when fetching parts and messages
1954         * Fixed various copyright note issues
1955
1956 2008-05-21  Philip Van Hoof <philip@codeminded.be>
1957
1958         * Help piece of shit IMAP servers that don't do SEARCH correctly, like
1959         AOL's IMAP server May 2008, by asking for the same thing using UID
1960         FETCH.
1961
1962 2008-05-21  Philip Van Hoof <philip@codeminded.be>
1963
1964         * Writing in chunks of 64 bytes
1965         * Timeout per chunk is 15 seconds
1966
1967 2008-05-20  Philip Van Hoof <philip@codeminded.be>
1968
1969         * Fixed a fallback envelope fetch, don't do the clear on the summary.
1970         Instead mark all as expunged
1971
1972 2008-05-20  Jose Dapena Paz  <jdapena@igalia.com>
1973
1974         * libtinymail-camel/camel-lite/camel/camel-stream-filter.c:
1975         (do_write): if the camel_stream_write call does not write the
1976          full buffer but it's not due to an error, then loop to go on
1977          writing the stream.
1978
1979 2008-05-20  Philip Van Hoof <philip@codeminded.be>
1980
1981         * Differentiate between auto-cancellable and normally cancellable
1982         items in TnyCamelQueue
1983
1984 2008-05-16  Philip Van Hoof <philip@codeminded.be>
1985
1986         * Fixed size reporting in POP, regression fix it seems
1987
1988 2008-05-14  Jose Dapena Paz  <jdapena@igalia.com>
1989
1990         * Use GOnce registering all types in tinymail to make
1991         registering thread-safe.
1992
1993 2008-05-14  Philip Van Hoof <philip@codeminded.be>
1994
1995         * libtinymail-camel/tny-camel-queue.c: Letting the thread wait for
1996         more items instead of exiting
1997
1998 2008-05-13  Rob Taylor  <rob.taylor@codethink.co.uk>
1999
2000         * libtinymail-camel/tny-camel-bs-mime-part.c:
2001         (tny_camel_bs_mime_part_is_attachment_default): Modify the
2002         is_attachment heuristic in TnyCamelBSMimePart so that inline mime
2003         parts with filenames are considered attachments.
2004
2005 2008-05-12  Rob Taylor  <rob.taylor@codethink.co.uk>
2006
2007         * configure.ac: Add --with-platform option 'none'.
2008         * bindings/python/Makefile.am: Fix up python bindings to work when built with no platform.
2009         * bindings/dotnet/Makefile.am: Don't build platform subdir if platform is none.
2010         * tests/vala-demo/Makefile.am: Fix up vala demo to use PLATFORM_LIBS for consistency.
2011
2012 2008-05-12  Rob Taylor  <rob.taylor@codethink.co.uk>
2013
2014         * libtinymail/tny-error.c: Fix documentation
2015
2016 2008-05-12  Rob Taylor  <rob.taylor@codethink.co.uk>
2017
2018         * m4/ticonv.m4: Add --with-iconv-detect-h option to allow the passing
2019         of a pre-generated iconv-detect.h rather than generating it at
2020         configure time.
2021
2022 2008-05-12  Rob Taylor  <rob.taylor@codethink.co.uk>
2023
2024         * libtinymail-camel/tny-camel-bs-msg-receive-strategy.c:
2025         * libtinymail-camel/tny-camel-folder.c:
2026         * libtinymail-camel/tny-camel-nntp-folder.c:
2027         * libtinymail-camel/tny-camel-mime-part.c:
2028         * libtinymail-camel/tny-camel-send-queue.c:
2029         * libtinymail-camel/tny-camel-pop-store-account.c:
2030         * libtinymail-camel/tny-camel-pop-folder.c:
2031         * libtinymail-camel/tny-camel-common.c:
2032         * libtinymail-camel/tny-camel-nntp-store-account.c:
2033         * libtinymail-camel/tny-camel-store-account.c:
2034         * libtinymail-camel/tny-camel-transport-account.c:
2035         * libtinymail-camel/tny-camel-account.c:
2036         * libtinymail/tny-error.c:
2037         * libtinymail/tny-error.h:
2038         * libtinymail/tny-merge-folder.c: Fix tinymail's GError usage. Use an
2039         actual GQuark for the domain, have one domain for tinymail as a whole.
2040         Removes the pointless GType for the error.
2041
2042 2008-05-12  Sergio Villar Senin  <svillar@igalia.com>
2043
2044         * libtinymail-camel/tny-camel-send-queue.c: Add camel folder reason to
2045         sentbox and outbox while sending, as we can get unreasons and have
2046         then crash because the message cache is freed. (Based on a previous
2047         patch by Dape)
2048
2049 2008-05-09  Jose Dapena Paz  <jdapena@igalia.com>
2050
2051         * libtinymail-camel/tny-camel-folder.c:
2052           Add some reasons/unreasons in get_headers_operation, to avoid
2053           getting a 0 account when we are replacing the headers in the
2054           gtk list store model. This should avoid some very hidden
2055           crashes.
2056
2057 2008-05-06  Jose Dapena Paz  <jdapena@igalia.com>
2058
2059         * libtinymail-camel/camel-lite/camel/camel-certdb-cst.c
2060         Fix some leaks in CST certificate manager support.
2061
2062         * libtinymail-camel/tny-camel-folder.c:
2063         Reason the camel folder while we're getting its size and count,
2064         avoiding some crashes.
2065
2066         * libtinymail-camel/camel-lite/camel/camel-tcp-stream-ssl.c:
2067         Protect PR_Reads and writes to avoid calls to PR_Close before one of
2068         them. Should avoid some crashes and bad memory accesses.
2069
2070         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.[ch]:
2071         Now references to current_folder, old_folder and last_folder
2072         are weak references. This way, when they're finalized we
2073         properly remove the store reference to them.
2074         Removed some small leaks and compilation warnings.
2075
2076         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store-priv.h:
2077         Added. Includes internal declarations of weak reference handlers
2078         for folders in the imap store.
2079
2080         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-command.c,
2081         libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c:
2082         Use weak references to folders in accesses to store.
2083
2084 2008-04-30  Philip Van Hoof <philip@codeminded.be>
2085
2086         * Enlarged a lock for the transport-account in camel
2087
2088 2008-04-30  Sergio Villar Senin  <svillar@igalia.com>
2089
2090         * libtinymail-camel/tny-camel-send-queue.c:
2091         (on_added): place correctly two swapped parameters when calling the
2092         user callback
2093
2094 2008-04-29  Philip Van Hoof <philip@codeminded.be>
2095
2096         * Extra robustness in TnyCamelSendQueue
2097
2098 2008-04-29  Jose Dapena Paz  <jdapena@igalia.com>
2099
2100         * libtinymail-camel/camel-lite/camel/camel-folder.c
2101         (transfer_message_to): preserve flags on transferring the message to
2102         a new folder.
2103
2104         * libtinymail-camel/camel-lite/camel/camel-folder-summary.h:
2105         add some comments to flags enumeration to remember that it should be
2106         kept sync with flags masks.
2107
2108 2008-04-28  Jose Dapena Paz  <jdapena@igalia.com>, Sergio Villar Senin <svillar@igalia.com>
2109
2110         * libtinymail/tny-folder.[ch]: new method find_msg_async. This makes find_msg synchronous
2111         version be deprecated now.
2112
2113         * libtinymail-camel/tny-camel-folder.[ch],
2114         libtinymail/tny-merge-folder.[ch]:
2115         Added implementations of find_msg_async method.
2116
2117 2008-04-25  Philip Van Hoof <philip@codeminded.be>
2118
2119         * Error reporting when sending a message without From, and a crash-fix
2120         about it too
2121         * Added tny_camel_transport_account_get_from and
2122         tny_camel_transport_account_set_from
2123
2124         * This was a minor API change
2125
2126 2008-04-24  Philip Van Hoof <philip@codeminded.be>
2127
2128         * Removed all synchronous API usage in TnyCamelSendQueue
2129
2130 2008-04-24  Sergio Villar Senin  <svillar@igalia.com>
2131
2132         * libtinymail/tny-merge-folder.c:
2133         (tny_merge_folder_update): keep the original value for
2134         check_duplicates that comes from the TnyFolderChange that comes from
2135         a child folder
2136
2137 2008-04-23  José Dapena Paz  <jdapena@igalia.com>
2138
2139         * libtinymail-camel/tny-camel-mime-part.c:
2140           (tny_camel_mime_part_is_attachment_default): consider as
2141           attachments parts that have filename= in disposition even
2142           if they're "inline".
2143
2144 2008-04-23  Philip Van Hoof <philip@codeminded.be>
2145
2146         * Reference count fix in TnyCamelSendQueue
2147
2148 2008-04-23  Jürg Billeter  <j@bitron.ch>
2149
2150         * Update Vala bindings and demo app
2151
2152 2008-04-22  Philip Van Hoof <philip@codeminded.be>
2153
2154         * tny_camel_account_add_option changed !!
2155         * tny_camel_account_clear_options added
2156         * tny_camel_account_get_options added
2157         * Support for value-less cameloptions
2158
2159         * This was a major API change in libtinymail-camel
2160
2161 2008-04-20  Philip Van Hoof <philip@codeminded.be>
2162
2163         * These problems got highlighted during pre-release 0.0.9
2164         * Build environment improvements
2165         * Added --enable-debug=yes (default is no), 
2166         adds -g -ggdb -O0 -DDEBUG -DDBC to the CFLAGS
2167         * Added --enable-deprecated=no (default is yes),
2168         adds -DTNY_DISABLE_DEPRECATED to the CFLAGS
2169         * Removed all %-names in the Makefile.am files since these are a GNU
2170         make ism. There are a few remaining GNU make isms like $(subst ...)
2171         and $(addsuffix ...) who are to be removed / replaced soon
2172         * Added deprecation marker to gtk-doc-scan's command line
2173         * Attempt at fixing TnyHeader's documentation
2174
2175 2008-04-18  Jose Dapena Paz  <jose@gondomar.wired.citic.igalia.com>
2176
2177         * libtinymail-maemo/tny-maemo-conic-device.c: add a simple hack to
2178         detect when we cancel the connection dialog (and then report this
2179         properly).
2180
2181 2008-04-18  Philip Van Hoof <philip@codeminded.be>
2182
2183         * Removed unnecessary old code rot in TnyCamelSendQueue that might
2184         cause a deathlock
2185         * Decprecated tny_send_queue_add, use tny_send_queue_add_async
2186         * Pre-release 0.0.9 preparations
2187
2188 2008-04-17  Philip Van Hoof <philip@codeminded.be>
2189
2190         * Corrections to reference handling for TnyCamelSendQueue
2191         * Removed a tny_folder_get_headers (deprecated API)
2192
2193 2008-04-16  José Dapena Paz  <jdapena@igalia.com>
2194
2195         * libtinymail-camel/tny-camel-mime-part.c
2196         (tny_camel_get_decoded_stream_default): now we detect errors getting
2197         the decoded stream from camel.
2198         * libtinymail-gnomevfs/tny-vfs-stream.c (tny_vfs_stream_read):
2199         return -1 if there was an error reading from the vfs stream.
2200
2201 2008-04-15  Philip Van Hoof <philip@codeminded.be>
2202
2203         * Fixed alerts when get-msg-async takes place to have their account
2204         not set to NULL
2205         * Moved the POP's get-msg-qasync queue to its normal interactive queue
2206         * Various bugfixes
2207
2208 2008-04-14  Philip Van Hoof <philip@codeminded.be>
2209
2210         * Weak referenced folders in the folder-factor methods
2211         * Handling uncaching the password during account finalization
2212         * mlock-ing the password memory of accounts
2213         * Uncaching of the folder-list in case of tree-changing operations
2214         * Experimentally nuked the caching of services ...
2215
2216 2008-04-11  Philip Van Hoof <philip@codeminded.be>
2217
2218         * Fixed a bug in case LIST and LSUB are not in agreement
2219         * Marking certain symbols as deprecated
2220
2221 2008-04-10  Philip Van Hoof <philip@codeminded.be>
2222
2223         * Fixed a glitch in Jose Dapena Paz's patch of yesterday
2224         * Added API documentation about cancelling
2225         * Bugfix in folder listing
2226
2227 2008-04-09  Jose Dapena Paz  <jdapena@igalia.com>
2228
2229         * Added libtinymail-camel/camel-lite/camel/camel-certdb-cst.c.
2230         Implementation of certificates database using maemo libcst. This
2231         makes you can manage certificates using the maemo tablet certificate
2232         manager.
2233
2234         * libtinymail-camel/camel-lite/camel/camel-certdb.h,
2235         libtinymail-camel/camel-lite/camel/camel-private.h: modified to
2236         have a pointer to the CST object in certdb and certificate id in
2237         certificate object in case we compile with CST support.
2238
2239         * libtinymail-camel/camel-lite/camel/camel-tcp-stream-ssl.c:
2240         Modified a bit the code for proper integration with cst (mainly
2241         removing direct access to internal fields).
2242
2243         * libtinymail-camel/camel-lite/configure.ac,
2244         libtinymail-camel/camel-lite/camel/Makefile.am:
2245         Added support for detection and configuration of libcst.
2246
2247 2008-04-07 Dirk-Jan C. Binnema <dirk-jan.binnema@nokia.com>
2248         * libtinymail-camel:
2249                 - fix some compiler warnings (return in void functions)
2250                 - move declarations to start of block
2251                 - fix CAMEL_POP3_CAP_LOGIN_DELAY (copy-paste bug where to
2252                 enum items had same value)
2253                 - some g_error => g_warning
2254                 - DELE %u => DELE %s
2255
2256 2008-04-07  Sergio Villar Senin  <svillar@igalia.com>
2257
2258         * libtinymail-camel/tny-camel-common.c
2259         (_string_to_camel_inet_addr): fixes an small memory issue when the
2260         email address starts with an "<"
2261         * libtinymail/tny-merge-folder.c
2262         (tny_merge_folder_get_id): fixed a reference leak
2263
2264 2008-04-07  Philip Van Hoof <philip@codeminded.be>
2265
2266         * Refcount problem in async contexts
2267         * Fixing the actual problem, too
2268
2269 2008-04-03  Philip Van Hoof <philip@codeminded.be>
2270
2271         * Merged patch for upstream camel-lite bug #257361
2272         * Bugfix for ticket #76
2273         * Added some robustness code
2274
2275 2008-04-02  Jose Dapena Paz  <jdapena@igalia.com>
2276
2277         * Respect better the attachment flag headers also in POP (equivalent
2278         to previous change in imap.
2279
2280 2008-04-02  Philip Van Hoof <philip@codeminded.be>
2281
2282         * Added a name file, just like the url_string file, to each account
2283         * Moved the sendqueue's outbox and sentbox under a sendqueue subdir
2284
2285 2008-04-01  Philip Van Hoof <philip@codeminded.be>
2286
2287         * Storing certificate fingerprints in cache_dir
2288         * Writing a file called url_string in the account's cache dir, to make
2289         it more easy for searchers and meta indexers to identify this account
2290         * Status reporting fix for POP accounts
2291         * Merging with camel upstream
2292
2293 2008-03-31  Philip Van Hoof <philip@codeminded.be>
2294
2295         * Creating the POP account's cache dir when/if removed
2296
2297 2008-03-28  Philip Van Hoof <philip@codeminded.be>
2298
2299         * Cleaning up cache when canceling a POP message download
2300
2301 2008-03-27  Philip Van Hoof <philip@codeminded.be>
2302
2303         * Support for Importance header
2304
2305 2008-03-26  Philip Van Hoof <philip@codeminded.be>
2306
2307         * Fixed several problems like documentation problems in Jose's patch
2308         * Review of Jose's patch
2309         * Fixed several insignificant smaller robustness problems
2310         * Fixed a major leak
2311         * Fixed a regression due to a performance fix when moving and renaming
2312         Maildir folders
2313
2314 2008-03-26  Jose Dapena Paz  <jdapena@igalia.com>
2315
2316         * Replace old tny_header_get_ api for strings with
2317         tny_header_dup_ api. This should be a bit better for
2318         being thread safe. Also modified code using this. The
2319         goal is being able to do the string copy in a lock.
2320
2321         * Now moving a folder copies all the cached messages,
2322         but not the summaries, to avoid crashes trying to
2323         reuse the old summary.
2324
2325         This is a major API change.
2326
2327 2008-03-25  Alberto Garcia Gonzalez <agarcia@igalia.com>
2328
2329         * libtinymail-gnomevfs/tny-vfs-stream.c:
2330         (tny_vfs_reset): Set priv->position to 0 after a successful reset
2331
2332 2008-03-25  Philip Van Hoof <philip@codeminded.be>
2333
2334         * Replaced a GByteArray with a EByteArray
2335
2336 2008-03-24  Philip Van Hoof <philip@codeminded.be>
2337
2338         * Rewrote tny_camel_folder_remove_msgs_default
2339         * Added tny_folder_remove_msgs_async
2340         * Death-lock bugfix when canceling the sendqueue
2341
2342         * This was a minor API change
2343
2344 2008-03-20  Philip Van Hoof <philip@codeminded.be>
2345
2346         * Implementation of a connect() that will timeout within 15 seconds
2347         for the non-SSL connection types. Experimental.
2348
2349 2008-03-19  Philip Van Hoof <philip@codeminded.be>
2350
2351         * Fast message moves when source and dest folder are both Maildir
2352
2353 2008-03-19  Philip Van Hoof <philip@codeminded.be>
2354
2355         * Bugfix when sending large E-mails to GMail's SMTP service
2356         * When a large mail is being sent, it takes a long time to move it
2357         from Outbox to Sentbox. If during that time a flush() is requested on
2358         the TnySendQueue, then it's possible that the message gets send twice.
2359         To avoid this, we mark the message as TNY_HEADER_FLAG_ANSWERED
2360
2361 2008-03-18  Sergio Villar Senin  <svillar@igalia.com>
2362
2363         * Small bugfix in libtinymail-maemo
2364
2365 2008-03-18  Philip Van Hoof <philip@codeminded.be>
2366
2367         * Non-initialization of a variable caused memory corruption on the
2368         stack
2369         * Fixed race condition in case re-selecting the same folder
2370
2371 2008-03-17  Sergio Villar Senin  <svillar@igalia.com>
2372
2373         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c:
2374         fixed an small memory leak and set the proper error code when a
2375         get_msg fails due to full memory conditions in the local storage.
2376         * libtinymail-camel/camel-lite/camel/camel-folder-summary.c: improved
2377         error notification when there are problems in the local storage
2378
2379 2008-03-17  Philip Van Hoof <philip@codeminded.be>
2380
2381         * Made tny_folder_transfer_msgs_async cancellable
2382
2383 2008-03-17  Jose Dapena Paz  <jdapena@igalia.com>
2384
2385         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c
2386         (message_from_data): don't free the message before evaluating
2387         headers. Also take into account the case we get ms has attachments but
2388         we don't have priority flag, for avoiding using heuristics.
2389
2390 2008-03-16  Philip Van Hoof <philip@codeminded.be>
2391
2392         * Added extra insurance that an INBOX folder will be present
2393
2394 2008-03-13  Philip Van Hoof <philip@codeminded.be>
2395
2396         * IMAP provider: bugfix when asking for a list of folders that has no
2397         subfolders, on Cyrus.
2398
2399 2008-03-12  Jose Dapena Paz  <jdapena@igalia.com>
2400
2401         * libtinymail-gnome-desktop/tny-gnome-device.c:
2402         (tny_gnome_device_is_online) if we try to get the network
2403         state and find that the network manager context is invalid,
2404         we shutdown it AND after this we nullify the context
2405         reference.
2406
2407 2008-03-12  Alberto Garcia Gonzalez <agarcia@igalia.com>
2408
2409         * Reverted the "Leave on disk, MIME parsing" patch, as it's
2410         causing serious problems.
2411
2412 2008-03-11  Jose Dapena Paz  <jdapena@igalia.com>
2413
2414         * libtinymail-camel/tny-camel-folder.c:
2415         Now poke_status only tries to do the job if folder is
2416         connected/active. Should prevent getting lots of attempts to
2417         connect in queue that have to be finished later.
2418
2419 2008-03-07  Jose Dapena Paz  <jdapena@igalia.com>
2420
2421         * tests/c-demo/tny-demoui-summary-view.c:
2422         Added a simple syntax to provide different parent folders
2423         in rename/copy operation. Now you can provide
2424         paths as "/newfolder", "../another-parent/folder", etc.
2425
2426 2008-03-06  Alberto Garcia Gonzalez <agarcia@igalia.com>
2427
2428         * tinymail/libtinymail-camel/tny-camel-mem-stream.h
2429         * tinymail/libtinymail-camel/tny-camel-mem-stream.c:
2430         Added tny_camel_mem_stream_new_with_buffer()
2431
2432 2008-03-06  Philip Van Hoof <philip@codeminded.be>
2433
2434         * Experimental improvement in locking in the POP3 provider
2435         * Bugfix when canceling POP summary retrieval
2436
2437 2008-03-06  Alberto Garcia Gonzalez <agarcia@igalia.com>
2438
2439         * debian/libtinymail-camel-1.0-0.install
2440         * debian/libtinymail-camel-1.0-0-dev.install:
2441         Install libcamel-lite
2442
2443 2008-03-05  Philip Van Hoof <philip@codeminded.be>
2444
2445         * Experimental improvement in locking
2446
2447 2008-03-05  Jose Dapena Paz  <jdapena@igalia.com>
2448
2449         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
2450         (connect_to_server): we don't abort connection attempt if we get
2451         LOGINDISABLED but we have secure auth methods in capabilities.
2452
2453 2008-03-05  Philip Van Hoof <philip@codeminded.be>
2454
2455         * Check-for-duplicates in TnyFolderObserver and TnyFolderMonitor
2456         * Introduction of tny_gtk_header_list_model_set_no_duplicates
2457         * Introduction of tny_gtk_header_list_model_get_no_duplicates for
2458         completeness of language bindings who'll make getters/setters from
2459         this.
2460
2461         * This was a minor API change
2462
2463 2008-03-04  Philip Van Hoof <philip@codeminded.be>
2464
2465         * Leave on disk, MIME parsing. Highly experimental
2466
2467 2008-03-04  Jose Dapena Paz  <jdapena@igalia.com>
2468
2469         * libtinymail-camel/tny-camel-mime-part.c:
2470         Now, when we get the parts of a mime part that's a message,
2471         we check if any part has an attachment content disposition,
2472         and update the attachments flag properly.
2473         * Moved bodystructure parser to camel, so that we
2474         can use it there.
2475         * libtinymail-camel/camel-lite/bs/bodystruct.c:
2476         Added missing if, to avoid fetching the header badly (and
2477         causing coredumps) for bodystructure strings not
2478         including BODYSTRUCTURE prefix.
2479
2480 2008-03-04  Philip Van Hoof <philip@codeminded.be>
2481
2482         * Attempt at making mime parsing use the seekable capability of
2483         streams instead of copying them in memory. This is experimental!
2484
2485 2008-03-04  Philip Van Hoof <philip@codeminded.be>
2486
2487         * Introduction of TnySeekable
2488         * This is experimental
2489
2490 2008-03-03  Philip Van Hoof <philip@codeminded.be>
2491
2492         * Smaller bug fixes in the build
2493         * filename= encoding fixes
2494
2495 2008-03-03  Alberto Garcia Gonzalez <agarcia@igalia.com>
2496
2497         * debian/libtinymail-camel-1.0-0.install
2498         * debian/libtinymail-camel-1.0-0-dev.install:
2499         Removed obsolete libraries
2500
2501 2008-03-01  Philip Van Hoof <philip@codeminded.be>
2502
2503         * Fixes in the POP code for POP servers that return invalid CAPA
2504         responses (like pop.sina.com)
2505         * Experimental reduction of libraries (camel-lite merged with
2506         camel-lite-providers)
2507
2508 2008-02-28  Jose Dapena Paz  <jdapena@igalia.com>
2509
2510         * libtinymail-camel/tny-camel-account.c:
2511         (tny_camel_account_set_pass_func_default) reactivate the account
2512         always, even when we're setting the same pass func again.
2513
2514 2008-02-27  Jose Dapena Paz  <jdapena@igalia.com>
2515
2516         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store.c:
2517         Now we regenerate the addrinfo on each call to connect_to_server_wrapper.
2518
2519 2008-02-21  Jose Dapena Paz  <jdapena@igalia.com>
2520
2521         * libtinymail-camel/tny-camel-mime-part.c:
2522         Do not lose the filename of the attachment disposition in
2523         case we set it as purged.
2524
2525         * libtinymail-camel/tny-camel-send-queue-priv.h,
2526         libtinymail-camel/tny-camel-send-queue.c:
2527         Now we don't send the run-queue-stop signal until
2528         we've processed all sent signals.
2529
2530         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-folder.c:
2531         Added a missing else that could cause freeing some summary info entries
2532         when they shouldn't
2533
2534         * libtinymail-camel/camel-lite/camel/providers/pop3/camel-pop3-folder.c:
2535         (pop3_get_message). Now it works even if no exception parameter is passed.
2536
2537 2008-02-20  Philip Van Hoof <philip@codeminded.be>
2538
2539         * Improvement for cancel's their reconnection
2540
2541 2008-02-18  Philip Van Hoof <philip@codeminded.be>
2542
2543         * Make distcheck for the .NET bindings (finally)
2544
2545 2008-02-16  Philip Van Hoof <philip@codeminded.be>
2546
2547         * NAMESPACE vs. LIST separator for mail.h-farm.it
2548         * Get-Message cancels
2549         * Various smaller bugfixes
2550
2551 2008-02-15  Philip Van Hoof <philip@codeminded.be>
2552
2553         * Merged Alberto's cancel patch of yesterday with some minor
2554         corrections and committed the patch
2555
2556 2008-02-14  Alberto Garcia Gonzalez <agarcia@igalia.com>
2557
2558         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.[ch]:
2559         Added new attribute: cancel_occurred
2560         (imap_update_summary): Set cancel_occurred to TRUE when the
2561         operation is cancelled by the user.
2562         (camel_imap_folder_selected): Don't try to refresh the folder
2563         again if a cancel has happened.
2564
2565 2008-02-12  Alberto Garcia Gonzalez <agarcia@igalia.com>
2566
2567         * libtinymailui-gtk/tny-gtk-text-buffer-stream.c:
2568         Write only full UTF-8 characters into the GtkTextBuffer. If an
2569         input buffer contains incomplete UTF-8 chars, save those bytes and
2570         write them with the following buffer.
2571
2572 2008-02-11  Alberto Garcia Gonzalez <agarcia@igalia.com>
2573
2574         * libtinymail-gnomevfs/tny-vfs-stream.c:
2575         (tny_vfs_reset): Return 0 on success
2576
2577 2008-02-09  Philip Van Hoof <philip@codeminded.be>
2578
2579         * Crash when the IMAP server doesn't support namespaces
2580         * GLib Signal leakage in TnyGtkFolderStoreTreeModel
2581         * Various smaller fixes and code improvements
2582         * Has-attachment status detection improvement
2583         * Added a tny_mime_part_get_decoded_stream API
2584
2585         * This was a minor API change
2586
2587 2008-02-05  Philip Van Hoof <philip@codeminded.be>
2588
2589         * Making the DotNet bindings actually work
2590         * Added a demoui written in C#
2591
2592 2008-02-05  Jose Dapena Paz  <jdapena@igalia.com>
2593
2594         * libtinymail-camel/camel-lite/camel/camel.[ch]:
2595         Make camel_shutdown method be public, for the cases we cannot
2596         rely on g_atexit.
2597         * libtinymail-camel/camel-lite/camel/camel-tcp-stream-ssl.c:
2598         Modified method to calculate the fingerprint of a certificate.
2599         Now we use Mozilla NSS api for this as the old method was not
2600         reliable in some cases.
2601
2602 2008-02-03  Philip Van Hoof <philip@codeminded.be>
2603
2604         * Crashfix when retrieving a large message while expunging it from
2605         another E-mail client
2606         * Added tny_mime_part_set_transfer_encoding
2607         * Temporary solution for large E-mails
2608         * Limiting abusive mails with +3000 to, from, bcc or cc addresses to
2609         3000
2610
2611         * This was a minor API change
2612
2613 2008-01-30  Sergio Villar Senin  <svillar@igalia.com>
2614
2615         * libtinymail-camel/camel-lite/camel/providers/local/camel-maildir-summary.c
2616         (camel_maildir_get_filename): fixed the message read from a maildir
2617         folder, do not take into account the message flags to read the message
2618
2619 2008-01-30  Vivek Sekar  <viveksekar@gmail.com>
2620         * Cleaned up the debian/control.maemo-chinook and
2621         debian/control.maemo-diablo files.
2622
2623 2008-01-30  Philip Van Hoof <philip@codeminded.be>
2624
2625         * Implemented DotNet bindings
2626
2627 2008-01-29  Sergio Villar Senin  <svillar@igalia.com>
2628         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-folder.c
2629         libtinymail-camel/camel-lite/camel/camel-store-summary.c:
2630         Added the proper error codes when there is no enough space left on
2631         devices
2632
2633 2008-01-29  Philip Van Hoof <philip@codeminded.be>
2634
2635         * Fixed reference counting for all TnyIterator implementations
2636
2637 2008-01-28  Philip Van Hoof <philip@codeminded.be>
2638
2639         * Removed the _func from all the interfaces and virtual function
2640         pointers in the classes. This should not be an ABI but is an API
2641         change.
2642
2643         * This was a major API change
2644
2645 2008-01-28  Philip Van Hoof <philip@codeminded.be>
2646
2647         * Added skeleton for unfinished DotNet bindings. This wont work yet,
2648         it seems gapi2 is generating a few *Implementor types incorrectly.
2649
2650 2008-01-27  Philip Van Hoof <philip@codeminded.be>
2651
2652         * Various code improvements
2653         * Merged camel-lite with upstream camel revision 8428
2654
2655 2008-01-26  Philip Van Hoof <philip@codeminded.be>
2656
2657         * Experimental expunge handling. Less expunging from the local
2658         summary will be needed, as we'll more carefully calculate which of the
2659         sequence vs. uids got removed. Please keep an eye on this one and
2660         revert in needed. This commit should reduce the "Expunged" labels that
2661         you might have been seeing in tny E-mail clients too.
2662
2663 2008-01-26  Philip Van Hoof <philip@codeminded.be>
2664
2665         * Workaround for a known problem that ain't easy to solve right now:
2666         expunged headers stay around for too long. When this is detected, a
2667         dummy header is returned (with as flags TNY_HEADER_FLAG_EXPUNGED)
2668         * Finished Sergio's API change
2669
2670         * This was a major API change
2671
2672 2008-01-25  Philip Van Hoof <philip@codeminded.be>
2673
2674         * Some IMAP servers don't instantly update sessions that where not in
2675         IDLE when in monitoring service IDLE received an EXISTS. Tinymail
2676         received that EXISTS, does a SEARCH to get the new UIDs, fetches the
2677         envelope information and displays it to the user. If the user had
2678         already received message recently, it will keep that message-receive
2679         socket running (cached) for some time (optimalization). The IMAP
2680         servers don't always bring that other session up-to-date about the new
2681         information acquired in the first session in IDLE. For example GMail's
2682         IMAP server and Exchange seem to not update the not-in-IDLE session.
2683
2684         This commit changed the behaviour in two ways: the get-message service
2685         is early-killed in case an EXISTS line arrives in the in-IDLE session,
2686         each message-fetch request in the get-message service is prepended
2687         with a NOOP (some IMAP servers will sync the session upon NOOP).
2688
2689         Obviously, this is experimental behaviour. Please test this a lot!
2690
2691 2008-01-23  Sergio Villar Senin  <svillar@igalia.com>
2692
2693         * libtinymail/tny-send-queue.c
2694         libtinymail-camel/tny-camel-send-queue.c
2695         libtinymail-camel/tny-camel-send-queue.h
2696         (tny_send_queue_add_async): added this method that was available in
2697         the Camel implementation to the interface
2698         (create_worker)
2699         (thread_main): added the "queue-start" and "queue-stop" signals that
2700         are emitted before and after the queue processes the messages
2701
2702         * This was a major API change
2703
2704 2008-01-22  Philip Van Hoof <philip@codeminded.be>
2705
2706         * Added support for GtkHTML in libtinymailui-gtkhtml. This is highly
2707         experimental and unfinished at this moment
2708         * Fixed several compiler warnings, and cleaned up some code
2709
2710         * This was a minor API change
2711
2712 2008-01-21 Dirk-Jan C. Binnema <dirk-jan.binnema@nokia.com>
2713
2714         * fix freeing uninitialized data in camel-imap-folder.c
2715
2716 2008-01-21  Sergio Villar Senin  <svillar@igalia.com>
2717
2718         * libtinymail/tny-send-queue.c
2719         libtinymail/tny-send-queue.h
2720         libtinymail-camel/tny-camel-send-queue.c
2721         libtinymail-camel/tny-camel-send-queue.c:
2722         (tny_send_queue_cancel): API change, now the cancel method receives a
2723         flag specifying the action that should be performed on cancelations,
2724         to remove the messages or just to suspend them
2725         (thread_main): make the tny_transport_account_send cancellable
2726
2727 2008-01-20  Philip Van Hoof <philip@codeminded.be>
2728
2729         * Refactoring of all error reporting situations, errors and handling
2730         of connection failures, reconnecting and getting messages in case of a
2731         previous connection failure.
2732         * Several bugfixes related to connection failures
2733         * Several bugfixes related to connection problems when fetching
2734         messages
2735         * POP and IMAP now behave the same in case of connection problems
2736         while fetching a message (they try to re-authenticate and re-connect)
2737         * More finegrained error reporting (IO errors, SERVICE errors, SYSTEM
2738         errors and unknown errors).
2739
2740         * This was a major API change for all modules
2741
2742 2008-01-19  Philip Van Hoof <philip@codeminded.be>
2743
2744         * Fixed sync when offline transfers took place
2745
2746 2008-01-17  Sergio Villar Senin  <svillar@igalia.com>
2747
2748         * libtinymail-camel/tny-camel-folder:
2749         (folder_changed): removed a code that was modifying the number of
2750         cached messages when receiving an IDLE notification of expunged
2751         headers. It shouldn't be done because Camel was already giving us the
2752         proper value
2753
2754 2008-01-16  Mark Doffman  <mark.doffman@codethink.co.uk>
2755         * bindings/python/*.defs: Regenerate .defs files for updated API.
2756
2757         * bindings/python/*.override: Add missing headers and Gtk types.
2758
2759         * bindings/python/tinymail.override: Begin adding wrappers for
2760         callbacks.
2761
2762 2008-01-16  Jürg Billeter  <j@bitron.ch>
2763
2764         * bindings/vala/: regenerate bindings
2765
2766         * tests/vala-demo/tinymail-vala-test.vala: update demo app to build
2767         with Vala SVN
2768
2769 2008-01-16 Dirk-Jan C. Binnema <dirk-jan.binnema@nokia.com>
2770
2771         * fix for use of unitialized variable in decode_it function,
2772         which caused crashes in some cases.
2773
2774 2008-01-15  Sergio Villar Senin  <svillar@igalia.com>
2775
2776         * libtinymail-maemo/tny-maemo-conic-device.c: fixes a condition that
2777         was preventing the callback of connect_async from being called
2778
2779 2008-01-15  Philip Van Hoof <philip@codeminded.be>
2780
2781         * Better error reporting on connection failures
2782         * Fix in namespace parsing when the separator was NIL
2783
2784 2008-01-15 Dirk-Jan C. Binnema <dirk-jan.binnema@nokia.com>
2785
2786         * initialize some priv-> member in TnyMaemoConicDevice
2787
2788 2008-01-14  Philip Van Hoof <philip@codeminded.be>
2789
2790         * Some aggresive memory checking revealed a few interesting memory
2791         leaks. This commit fixes those. The fixes are experimental, although
2792         most of them double checked.
2793
2794         CamelOperation holds one more significant memory leak at its
2795         status_hack linked list. That one is not yet fixed.
2796         * Flag setting to 0xffff must be 0x1fff as bit 13 and 14 are system
2797         bits that should not be altered like that.
2798
2799 2008-01-13  Philip Van Hoof <philip@codeminded.be>
2800
2801         * Changed tny_mime_part_construct_from_stream to
2802         tny_mime_part_construct, added a parameter for the
2803         content-transfer-encoding too
2804
2805         * This was a major API change
2806
2807 2008-01-12  Philip Van Hoof <philip@codeminded.be>
2808
2809         * Merged camel-lite with Camel upstream rev. 8360
2810         * Added an extra check around a strcmp that seems to have caused a
2811         crash once
2812         * Size determining when adding items to a local maildir folder
2813         * Content-Transfer-Encoding when adding MIME parts
2814         * Maildir folders are always subscribed
2815         * Non existing UIDs when BODY.PEEK-ing
2816
2817 2008-01-11  Philip Van Hoof <philip@codeminded.be>
2818
2819         * Preparations for the new summary store
2820         * Made all remaining static libraries LTLIBRARIES
2821         * Fixed compiler warnings
2822
2823 2008-01-11 Alberto Garcia Gonzalez <agarcia@igalia.com>
2824
2825         * libtinymail-maemo/tny-maemo-conic-device.c:
2826         fix typo that caused a compilation error
2827
2828 2008-01-10 Dirk-Jan C. Binnema <dirk-jan.binnema@nokia.com>
2829
2830         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-store-summary:
2831         fix typo in camel-imap-store-summary.c which caused valgrind errors
2832
2833 2008-01-09  Sergio Villar Senin  <svillar@igalia.com>
2834
2835         * libtinymailui-gtk/tny-gtk-folder-store-tree-model.c:
2836         (creater): added some checks in order to properly detect the parent of
2837         the newly created folder
2838
2839 2008-01-09  Dirk-Jan C. Binnema <dirk-jan.binnema@nokia.com>
2840
2841         * small fixes / cleanups for tny-maemo-conic-device
2842
2843 2008-01-08  Sergio Villar Senin  <svillar@igalia.com>
2844
2845         * libtinymail-maemo/tny-maemo-conic-device.c: fixed an invalid g_free
2846         over a previously freed field of a struct
2847
2848 2007-12-30  Philip Van Hoof <philip@codeminded.be>
2849
2850         * Performance enhancements
2851         * Bugfix for the bodystructure parser and per-MIME-part fetching
2852         * Experimental performance improvement in tny-gtk-header-list-model.c
2853
2854 2007-12-27  Philip Van Hoof <philip@codeminded.be>
2855
2856         * Updates from Camel upstream, rfc 2047 decoder
2857
2858 2007-12-26  Philip Van Hoof <philip@codeminded.be>
2859
2860         * Committed Jeffrey Stedfast's patch for Camel upstream to
2861         camel-mime-utils.c and camel-charset-map.c
2862         More information here:
2863         http://mail.gnome.org/archives/evolution-hackers/2007-December/msg00079.html
2864
2865 2007-12-24  Philip Van Hoof <philip@codeminded.be>
2866
2867         * Merging with Camel upstream
2868         * When offline, folders in namespace that had a parent that was not
2869         subscribed, were not accessible. This was because the parents where
2870         not created, as LSUB didn't list those. This patch creates the
2871         parents.
2872
2873 2007-12-23  Philip Van Hoof <philip@codeminded.be>
2874
2875         * Removed libtinymail-queues and libtinymail-asyncworker since those
2876         two libs are not going to be supported in Tinymail 1.0
2877         * Improvements to the NAMESPACE, LIST and LSUB things
2878         * Reverted decoder patch, it contains buffer overflows
2879
2880 2007-12-22  Philip Van Hoof <philip@codeminded.be>
2881
2882         * Experimental support for NAMESPACE
2883         * Major improvements for LIST and LSUB
2884
2885 2007-12-21 Felipe Erias Morandeira <femorandeira@igalia.com>
2886
2887         * libtinymail/tny-mime-part.[hc] : changed the signature of
2888                 tny_mime_part_write_to_stream and tny_mime_part_decode_to_stream to
2889                 return the number of bytes written and use a GError to notify problems.
2890         * libtinymail-camel/tny-camel-mime-part.[hc] : adapted the functions that
2891                 implemented the previous two functions to comply with their new
2892                 signatures.
2893         * libtinymail-camel/tny-camel-bs-mime-part.[hc] : adapted the functions
2894                 that implemented the previous two functions to comply with their
2895                 new signatures.
2896         * libtinymail-camel/camel-lite/camel/providers/local/camel-maildir-store.c:
2897         * libtinymailui-webkit/tny-webkit-html-mime-part-view.c:
2898         * libtinymailui/tny-mime-part-save-strategy.c:
2899         * libtinymail-test/tny-mime-part-test.c:
2900                 Small changes to use the new signatures of the two functions.
2901
2902 2007-12-21  Philip Van Hoof <philip@codeminded.be>
2903
2904         * Code robustness
2905         * Changed the account item of a folder to be hard referenced instead
2906         of weakly
2907
2908 2007-12-20  Alberto Garcia Gonzalez  <agarcia@igalia.com>
2909
2910         * libtinymail-camel/camel-lite/camel/providers/imap/camel-
2911         imap-command.c: (camel_imap_command_response): Set an initial
2912         value to variable len
2913         * libtinymail/tny-store-acount.c:
2914         (tny_store_account_find_folder): Fixed assertion to allow
2915         maildir:/path/to/msg URLs
2916
2917 2007-12-20  Alberto Garcia Gonzalez  <agarcia@igalia.com>
2918
2919         * libtinymail-camel/camel-lite/camel/providers/imap/camel-imap-command.c:
2920         (camel_imap_command_response): Set an initial value to variable len
2921
2922 2007-12-20 Dirk-Jan C. Binnema <dirk-jan.binnema@nokia.com>
2923
2924         * tny-maemo-conic-device.c; fix for typo in
2925             tny_maemo_conic_device_connect_async which could cause
2926             warnings and other problems
2927
2928 2007-12-19  Philip Van Hoof <philip@codeminded.be>
2929
2930         * New documentation style, third commit (libtinymailui-gtk)
2931         * Implemented support for LIST-EXTENDED's SUBSCRIBED parameter
2932         * A fix in TnyGnomeDevice
2933         * Experimental improvements for LIST
2934         * Made the new documentation style backward compatible for gtk-doc
2935
2936 2007-12-18  Philip Van Hoof <philip@codeminded.be>
2937
2938         * New documentation style, second commit (GtkDocFuture)