summaryrefslogtreecommitdiff
path: root/camel/providers/imap/ChangeLog
blob: cedc007f20cc5293cbf26658f3b5b72ab3f0cba1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
2006-04-19  Sankar P  <psankar@novell.com>

	* camel-imap-folder.c : (imap_update_summary):
	Instead of downloading HEADERS try to download 
	the specific HEADER FIELDS so that the initial
	loading time is considerably reduced.
		
2006-01-17  Parthasarathi Susarla <sparthasarathi@novell.com>
	
	** See Bug #323106, #326385
	* camel-imap-store.c:
	(imap_connect_online):
	(get_folder_online):
	(rename_folder_info):
	(create_folder):
	(get_folders_sync):
	Use %G instead of %S
	
	* camel-imap-command.c:
	(camel_imap_command):
	(imap_command_strdup_vprintf):
	use %G instead of %F

	Committed on behalf of Ed Catmur - partha

2006-01-12  Parthasarathi Susarla <sparthasarathi@novell.com>
	
	* camel-imap-command.c: 
	(imap_command_start):
	(imap_command_continuation):
	User g_return_val_if_fail instead of g_assert. Do not crash. 
	Return gracefully.

2006-01-10  Shreyas Srinivasan  <sshreyas@novell.com>

	* camel-imap-store.c (camel_store_finalize): Fix #321812
	unref diary only when the store finalize is called.
	
2005-12-14  Tor Lillqvist  <tml@novell.com>

	Fix #323106:
	
	* camel-imap-store.c (camel_imap_store_summary_full_to_path,
	camel_imap_store_summary_path_to_full): Remove extraneous
	conversions from IMAP-UTF-7 to UTF-8 and back.

	* camel-imap-command.c (imap_command_strdup_vprintf): Do the
	conversion from UTF-8 to IMAP-UTF-7 only just before sending a
	request. Do it also for %S formats, as that is what the CREATE
	command uses. But %S is used also for other commands (like LOGIN
	and LIST), so maybe we really would need a new format that would
	be used *only* for mailbox (folder) names, assuming it's only
	mailbox names that use the IMAP-UTF-7 encoding. Or is that what %F
	is intended for? But why then does CREATE use %S?

2005-12-08  Tor Lillqvist  <tml@novell.com>

	* camel-imap-folder.c: Drop unused <dirent.h>.

	* camel-imap-message-cache.c: Use gstdio wrappers. Open files in
	binary mode.
	(camel_imap_message_cache_new): Use GDir instead of dirent API.
	(insert_setup, camel_imap_message_cache_get): Trailing periods in
	file names are silently dropped on Win32, so on Win32, so if we
	would want to create a file with a name ending with a perioud,
	append a tilde (just a random choice).

	* camel-imap-provider.c: No external command possibility on Win32,
	drop that part of the UI.

	* camel-imap-store.c: Use gstdio wrappers.

	* camel-imap-utils.c (find_folders_recursive): Use GDir instead of
	dirent API.
	
2005-12-05  Parthasarathi Susarla <sparthasarathi@novell.com>
	
	* camel-imap-store.c: (construct):
	Setup disco journal during store construct. Previously,
	it was dont in connect_offline and connect_online methods.
	This makes sure that the diary is initialised even when evo
	starts in offline mode.

2005-12-01 Jeff Cai <jeff.cai@sun.com>

	* camel-imap-command.c:(imap_command_strdup_vprintf):
	Evolution should not send command with zero additional parameters.
	Fix #322408

2005-10-21 Shreyas Srinivasan <sshreyas@novell.com>

	* camel-imap-utils.c:(imap_parse_list_response): Handle
	Courier imap's LSUB response for INBOX when its not subscribed.
	Fix #228929.
	
2005-10-21 Vivek Jain <jvivek@novell.com>
	
	Committed NotZed's patch on #314833
	
	** See #314833.
	* camel-imap-store.c (subscribe_folder, unsubscribe_folder):
	add missing locking.
	(imap_noop): re-arrange locking slightly.

2005-10-10  Parthasarathi Susarla <sparthasarathi@novell.com>
	
	* camel-imap-folder.c:(imap_update_summary): specify the
	folder name of the folde being refreshed in the status mesage

2005-10-10  Björn Torkelsson <torkel@acc.umu.se>

	** See bug #317956.
	
	* camel-imap-store.c:(try_auth): Null check sasl_resp
        and bail out, otherwise evolution will crash when running strlen on
        sasl_resp. 
	
	** Committed on behalf of Björn Torkelsson since he does not 
	have commit rights - partha <sparthasarathi@novell.com>
	
2005-09-27  Vivek Jain <jvivek@novell.com>

	** See bug #315173.
	
	* camel-imap-folder.c:(do_append): Null check the 
	info before using it
	initialize flags as we '&' with old value.

2005-09-15  Tor Lillqvist  <tml@novell.com>

	* camel-imap-command.c
	* camel-imap-folder.c: Use g_ascii_str(n)casecmp() instead of
	str(n)casecmp(). The strings we are comparing in these cases
	should be just ASCII anyway, so spell it out that we really do
	need ASCII casefolding only.

	* camel-imap-folder.c
	* camel-imap-search.c
	* camel-imap-store.c: No strtok_r() in Microsoft's C library, but
	strtok() is MT-safe, which is enough for the way it's used in this
	file, to tokenize only one string at a time.

	* camel-imap-store.c (connect_to_server_process,
	connect_to_server_wrapper): Using custom commands to connect to
	IMAP servers is not supported on Win32 (at least for now), so
	bypass that code.

	* camel-imap-wrapper.c: If no ENETUNREACH (Win32), use EINVAL.

2005-08-23  Shreyas Srinivasan  <sshreyas@novell.com>

	** See #314199

	* camel-imap-store-summary.c (camel_imap_store_summary_add_from_full): Check if 
	Inbox only if the Store info is not Null.
	
2005-08-19  Not Zed  <NotZed@Ximian.com>

	** See #312668.

	* camel-imap-store.c (imap_disconnect_offline): check/close
	streams always, even if disconnecting in offline mode.

	* camel-imap-folder.c (camel_imap_folder_fetch_data): clear
	exception before trying more ops.

2005-08-18  Not Zed  <NotZed@Ximian.com>

	** See bug #313593.

	* camel-imap-store.c (get_folder_info_offline): get the search
	name and the top value from the namespace definition.

2005-08-17  Not Zed  <NotZed@Ximian.com>

	** See bug #313574.

	* camel-imap-folder.c (imap_get_message): added required lock
	around imap connect/command & clear exception for fail-over.

2005-08-16  Not Zed  <NotZed@Ximian.com>

	** See bug #242032.

	* camel-imap-folder.c (do_append): if append fails with no/bad,
	then retry without custom flags, if we were trying to send them.

	* camel-imap-command.c (imap_read_response): return
	SERVICE_INVALID rather than SERVICE_UNAVAILABLE for a BAD/NO
	response.

2005-08-15  Not Zed  <NotZed@Ximian.com>

	** See bug #242032.

	* camel-imap-command.c (imap_read_response): tread BAD the same as
	NO.

	* camel-imap-folder.c (do_append): snarf incoming label if it has
	one.  also only try to set flags the server says we can.

	* camel-imap-utils.c (imap_label_to_flags): helper to map label
	tag to imap flags.

	* camel-imap-folder.c (flags_to_label, imap_rescan)
	(imap_update_summary): if we get a server $Label flag, map it to
	the label tag as well.

	* camel-imap-summary.c (label_to_flags, message_info_load)
	(info_set_user_tag, camel_imap_summary_add_offline)
	(camel_imap_summary_add_offline_uncached): map the "label"
	user-tag into an imap server flag.

	* camel-imap-utils.c (imap_create_flag_list)
	(imap_parse_flag_list): store the junk flag as a custom flag Junk,
	and support our own $Labelx flags.  if the server supports custom
	flags.

2005-08-12  Tor Lillqvist  <tml@novell.com>

	* Makefile.am: Use NO_UNDEFINED. Link with libcamel-provider,
	libcamel and CAMEL_LIBS.

2005-08-09  Not Zed  <NotZed@Ximian.com>

	** See bug #312715 & other little fixes

	* camel-imap-store.c (get_folder_offline): use the store summary
	as the indicator to whether the folder exists or not, not the
	files on disk.

	* camel-imap-utils.c (imap_path_to_physical): greatly simplify
	this awful mess.

	* camel-imap-store.c (get_folder_info_online): re-arrange locking
	so we only run if we need to.
	(imap_connect_online, imap_connect_offline): dont refresh-folders
	on startup, that is handled if we need to/can in get_folder_info.
	(get_folder_online): fix order of create folder checks.
	(delete_folder): fix locking/online check.
	(rename_folder): same here.
	(imap_forget_folder): remove the subfolders subdir too.

2005-04-17  Changwoo Ryu  <cwryu@debian.org>

	** See bug #300891
	
	* Makefile.am (INCLUDES): define
	CAMEL_EXPLICIT_TRANSLATION_DOMAIN.

	* camel-imap-provider.c (camel_provider_module_init):
	set translation_domain in CamelProvider struct.

2005-08-09  Not Zed  <NotZed@Ximian.com>

	** See bug #309906.

	* camel-imap-utils.c (imap_atom_specials[]): Fixed the
	resp_specials entry, fixed the rfc reference.

2005-08-02  Not Zed  <NotZed@Ximian.com>

	** See bug #309237.

	* camel-imap-store.c (connect_to_server): add the BRAINDAMAGED
	hack from 2.0.3, since some people seem to be relying on it.

2005-08-01  Not Zed  <NotZed@Ximian.com>

	* camel-imap-store.c (get_folder_info_offline): if we're getting
	from "", then use the right namespace, with stripped trailing dir
	separator.
	(get_folders_online): we always do both a list and a lsub for each
	call.  We dont actually return any folders anymore either.
	(refresh_refresh): we just refresh all folders, subscribed or not.
	(get_folder_info_online): if we're getting the folder list, update
	the folder-summary from the server results, and then just get the
	folderinfo from that using get_folder_info_offline.
	(get_folders_sync): renamed from get_folders_online.
	(imap_connect_online): get the root list of folders differently,
	it will explictly check the namespace first.  and just make sure
	inbox is subscribed.
	(imap_is_subfolder, get_subscribed_folders) 
	(get_folders_add_folders, get_folders): removed old stuff.

2005-07-28  Not Zed  <NotZed@Ximian.com>

	** See bug #311731.

	* camel-imap-store.c (get_folder_info_offline): build the
	folderinfo from the search base so we dont over-expand it.

2005-07-27  Not Zed  <NotZed@Ximian.com>

	* camel-imap-store.c (get_folder_info_online): make sure we get
	subscribed folders using lsub too, if we're getting a list of all
	folders.  See bug #311658.

	* camel-imap-folder.c (imap_sync_online): make sure we're
	connected before issuing a command.

2005-07-26  Not Zed  <NotZed@Ximian.com>

	* camel-imap-store.c (connect_to_server_wrapper): only use command
	if use_command is set.

	* camel-imap-store-summary.c
	(camel_imap_store_summary_add_from_full): set the inbox folder
	type properly.

2005-07-25  Parthasarathi Susarla <sparthasarathi@novell.com>
	
	* camel-imap-store.c (connect_to_server): initialization of a
	variable. fixes Bug 301871.

2005-07-25  Not Zed  <NotZed@Ximian.com>

	* camel-imap-store.c (imap_noop): make sure we're connected before
	trying to noop.
	(get_folder_online): remove duplicate lock.

2005-07-21  Shreyas Srinivasan  <sshreyas@novell.com>

	* camel-imap-wrapper.h: Fix camel-docs breakage by changing
	style
	
2005-07-20  Not Zed  <NotZed@Ximian.com>

	* camel-imap-store.h: re-arrange some bitfields (this is not
	public api), and add a refresh stamp so we know when to next
	refresh the list of folders from the server.

	* camel-imap-store.c (imap_build_folder_info): set unknown counts
	-1, not 0.
	(get_folder_online): if the folder is on disk, just get it
	offline, only go to the server if we need to.
	(fill_fi): dont refresh the folder here, let the client code do
	it.

	* camel-imap-command.c (imap_command_start): add some asserts,
	time to fix those 'stream == NULL' warnings properly.
	(camel_imap_command_continuation): same.

	* camel-imap-store.c (get_folder_counts): remove this, we rely on
	the client calling folder.refresh_info instead.
	(get_one_folder_offline): removed, handled more directly from the
	storesummary now.
	(refresh_refresh): new async function to update the list of
	folders (not the folder counts) from the server.  We now just use
	"*" to get all the folders rather than frobbing around with
	partial fetches.
	(get_folder_info_online): changed radically, if we are getting
	subscribed folders, always go to the local list, but update it
	asynchronously if we need to.  if we're not, then always go to the
	server, but use a simplified listing mechanism.
	(camel_imap_store_connected): changed to hide some hidden logic,
	we want not only connected, but online as well; so make it
	actually do that.
	(fill_fi): dont do anything slow here, dont honour the 'not fast'
	flag anymore.

2005-07-19  Not Zed  <NotZed@Ximian.com>

	* camel-imap-folder.c (imap_get_message): dont force a connect
	until we need it.
	(camel_imap_folder_fetch_data): force a connect if we need it.
	(imap_refresh_info): force connect if we need to.
	(imap_get_message): touch the summary if we changed the body
	content info record.

	* camel-imap-store.c (camel_imap_store_init): we always support
	subscriptions, this is a backend property not a store instance
	property.
	(imap_connect_online, rename_folder, get_one_folder_offline) 
	(get_folder_info_offline): fix for above.
	(get_folder_offline): wtf is it connecting for???

2005-07-13  Not Zed  <NotZed@Ximian.com>

	* camel-imap-folder.c (imap_refresh_info): copy over counts to the
	store summary & save all summaries.

2005-07-12  Not Zed  <NotZed@Ximian.com>

	* camel-imap-store.c (imap_connect_online): only get the folder
	list if we dont have any yet.

2005-07-11  Not Zed  <NotZed@Ximian.com>

	* camel-imap-store.c (get_folder_info_online): if we are fast,
	then dont go to the server at all, if we have any folders
	recorded.
	(get_folder_counts): never request STATUS on unselected folders.
	(get_folder_info_offline): build the list directly from the
	summary, dont scan the filesystem.
	(parse_list_response_as_folder_info): always initialise counts to
	unknown (-1).

2005-03-18  Jeffrey Stedfast  <fejj@novell.com>

	* camel-imap-command.c (imap_read_untagged): Continue reading data
	until we've read all the data (camel_stream_read() makes no
	guarantee that it will read n bytes in a single call).

2005-03-10  Jeffrey Stedfast  <fejj@novell.com>

	* camel-imap-folder.c (imap_sync_online): READ-ONLY doesn't mean
	we can't sync flags, allow flag syncing even in READ-ONLY mode
	since the RFC states that flags listed in PERMANENTFLAGS are
	always settable.

2005-03-07  JP Rosevear  <jpr@novell.com>

	From Dave Malcolm <dmalcolm@redhat.com>
	
	* camel-imap-store-summary.c
	(camel_imap_store_summary_namespace_set): move forward declaration
	out of block to fix gcc4 compilation
	
2005-03-01  Not Zed  <NotZed@Ximian.com>

	** See bug #73112

	* camel-imap-store.c (query_auth_types): don't re-connect if we're
	already connected.

2005-02-22  Not Zed  <NotZed@Ximian.com>

	** See bug #61468

	* camel-imap-folder.c (imap_update_summary): get rid of the stupid
	HEADER.FIELDS NOT() blah, it just caused more problems than it
	ever solved.

2005-02-15  Björn Torkelsson  <torkel@acc.umu.se>

	* camel-imap-store.c (imap_build_folder_info): Rename inbox/INBOX to 
	Inbox, so it is translatable.
	(parse_list_response_as_folder_info): here too.

2005-02-08  Jeffrey Stedfast  <fejj@novell.com>

	* camel-imap-folder.c (do_copy): Don't always delete the original
	messages.

2005-02-04  Not Zed  <NotZed@Ximian.com>

	* camel-imap-store.c: Revert jeff's patch.
	(parse_list_response_as_folder_info): copy the subscribed flag
	from the storeinfo.
	(get_folders_online): here too.

2005-02-03  Not Zed  <NotZed@Ximian.com>
	
	** See bug #70590.

	* camel-imap-command.c (camel_imap_response_free): handle XGWMOVE
	response the same as EXPUNGE.

	* camel-imap-folder.c (do_copy): added 'delete' flag, and use
	xgwmove if its available and we're moving a message.

	* camel-imap-store.c (imap_get_capability): add some groupwise
	extension flags.

2005-02-02  Jeffrey Stedfast  <fejj@novell.com>

	* camel-imap-store.c (get_folders_online): Set the
	CAMEL_FOLDER_SUBSCRIBED flag appropriately.
	(get_subscribed_folders): Set here too.
	(get_subscription_info): Set the subscribed bit.
	(get_folder_info_online): If subscribed info is requested, fill
	it.

2005-02-01  Jeffrey Stedfast  <fejj@novell.com>

	* camel-imap-summary.c (summary_header_load): Bumped version to 3
	and added code to handle evrsion 2 (for compat with imap4 ver 2
	summary files).

2005-02-01  Not Zed  <NotZed@Ximian.com>

	* camel-imap-store.c (parse_list_response_as_folder_info): set the
	folder-type of inbox to inbox & use the right flags field for
	noinferiors hack.

2005-01-31  Not Zed  <NotZed@Ximian.com>

	** See bug #69757.
	
	* providers/imap/camel-imap-store.c (create_folder)
	(parse_list_response_as_folder_info): free the
	folder from parse_list_response.

2005-01-28  Not Zed  <NotZed@Ximian.com>

	** See bug #22496.

	* camel-imap-command.c (camel_imap_command_response): check for no
	and bad [alert] as well as ok [alert].
	

	** This provider is dead.

Refer to main changelog for earlier changes.