1 2004-12-09 Helge Hess <helge.hess@opengroupware.org>
3 * NGMimeRFC822DateHeaderFieldParser.m: fix spam mail date header
4 parsing for libFoundation
6 2004-11-13 Helge Hess <helge.hess@opengroupware.org>
8 * NGConcreteMimeType.m: added support for 'reply-type' parameter in
11 2004-10-27 Marcus Mueller <znek@mulle-kybernetik.com>
13 * NGMime.xcode: added NGSendMail files to Xcode build
15 2004-10-06 Helge Hess <helge.hess@skyrix.com>
17 * NGMimeRFC822DateHeaderFieldParser.m: added special case for +0530
18 timezone which seems to be common (v4.3.188)
20 2004-10-04 Marcus Mueller <znek@mulle-kybernetik.com>
22 * NGMime.xcode: added new files to Xcode build
24 2004-09-30 Helge Hess <helge.hess@skyrix.com>
26 * NGMime: minor cleanups (v4.3.187)
28 * NGMimePartParser.m: fixed an issue with unlimited length parsing,
29 fixes OGo bug #936 (v4.3.182)
31 2004-09-21 Marcus Mueller <znek@mulle-kybernetik.com>
33 * NGMime.xcode: Fixed dependencies to resemble the make process
34 more closely. Our aim should be to stick to the make process
35 as closely as possible, so we shouldn't introduce dependencies in
36 non-toplevel projects.
40 2004-08-31 Helge Hess <helge.hess@skyrix.com>
42 * GNUmakefile: define library version (v4.3.176)
44 * NGMime.m: use 4.3.0 as fallback library version
46 2004-08-29 Marcus Mueller <znek@mulle-kybernetik.com>
48 * NGMime.xcode: new Xcode project
50 2004-08-27 Helge Hess <helge@dogbert.in.skyrix.com>
52 * NGMimeRFC822DateHeaderFieldParser.m: always use custom date parser
53 instead of the NSCalendarDate format parser (closes OGo bug #562)
56 2004-08-20 Helge Hess <helge.hess@opengroupware.org>
58 * now is a subproject of the sope-mime library just like NGImap4 and
63 * moved to SOPE 4.3 (v4.3.172)
65 2004-08-02 Frank Reppin <frank@opengroupware.org>
67 * NGMimeRFC822DateHeaderFieldParser.m: fixed OGo Bug #861 (August
68 mails were reported as April mails) (v4.2.171)
70 2004-07-22 Helge Hess <helge.hess@skyrix.com>
74 * NGMimeHeaderFieldParser.h: fixed prototypes of
75 NGMimeHeaderFieldParser protocol
77 * NGMimeFileData.m, NGMail: fixed a gcc 3.4 warning
79 2004-07-15 Helge Hess <helge.hess@skyrix.com>
81 * NGImap4: fixed OGo bug #840 (introduced in v4.2.166), code cleanups,
82 fixed some gcc 3.4 warnings (v4.2.169)
84 2004-07-13 Helge Hess <helge.hess@skyrix.com>
86 * NGImap4: fixed some compilation issue with older gcc's (v4.2.168)
88 * NGImap4: minor improvements to exception handling (v4.2.167)
90 * NGImap4: some changes to body response parser which might fix OGo
91 bug 800, some speed improvements in the fetch response normalizer
94 * NGImap4: added more logging output (v4.2.165)
96 2004-06-21 Helge Hess <helge.hess@opengroupware.org>
98 * NGImap4: fixed a gstep-base warning (v4.2.164)
100 2004-06-20 Helge Hess <helge.hess@opengroupware.org>
104 * NGImap4/NGImap4Message.m: minor optimization
106 * NGMimeAddressHeaderFieldGenerator.m, NGMimeBodyParser.m,
107 NGMimeHeaderFields.m, NGMimeMultipartBodyParser.m,
108 NGMimePartParser.m, NGMimeUtilities.m: minor cleanups to default
111 * NGMimeFileData.m, NGMimeBodyGenerator.m: per default generate
112 temporary files in /tmp/OGo/ instead of /tmp/Skyrix/
114 2004-06-14 Helge Hess <helge.hess@opengroupware.org>
116 * NGImap4: fixed some gcc 3.4 warnings (v4.2.162)
118 2004-06-10 Helge Hess <helge.hess@skyrix.com>
120 * NGMail: fixed some gcc 3.4 warnings (v4.2.161)
122 2004-06-09 Helge Hess <helge.hess@opengroupware.org>
124 * NGMail: minor tweaks (v4.2.160)
126 * GNUmakefile.preamble: added prebinding (v4.2.159)
128 2004-05-16 Helge Hess <helge.hess@opengroupware.org>
130 * NGImap4: various cleanups (v4.2.158)
132 * NGMimeAddressHeaderFieldGenerator.m, NGMimeBodyGenerator.m,
133 NGMimeContentDispositionHeaderFieldGenerator.m,
134 NGMimeContentTypeHeaderFieldGenerator.m, NGMimeMultipartBodyParser.m,
135 NGMimePartParser.m: various code cleanups (v4.2.157)
137 2004-05-05 Marcus Mueller <znek@mulle-kybernetik.com>
139 * GNUmakefile.preamble: added support for building with
140 GNUSTEP_BUILD_DIR environment variable set for recent
141 gnustep-make package. (v4.2.156)
143 2004-04-19 Marcus Mueller <znek@mulle-kybernetik.com>
145 * NGMimeRFC822DateHeaderFieldParser.m: ported RFC822 timezone parser
146 to gnustep-base and Apple's Foundation. Using abbreviations for
147 timezone names turned out to be non-portable across foundations.
148 Also enhanced the range of GMT timezones understood - this is now
149 from GMT-1400 until GMT+1200 (v4.2.155)
151 2004-04-02 Helge Hess <helge.hess@skyrix.com>
153 * NGImap4: some code cleanups, fixed OGo bug #660 (premature dealloc)
156 2004-03-19 Helge Hess <helge.hess@skyrix.com>
160 * NGMimeRFC822DateHeaderFieldParser.m: improved RFC822 timezone parser
161 to deal with timezone strings as submitted by MultiMail (-05-500)
163 * NGConcreteMimeType.m: detect x-avg-checked MIME type parameter
165 2004-02-17 Helge Hess <helge.hess@opengroupware.org>
167 * NGImap4: fixed OGo bug #582 (mail searching was broken) (v4.2.152)
169 2004-02-10 Helge Hess <helge.hess@opengroupware.org>
171 * NGImap4, NGMail: fixed compilation warnings on OSX (v4.2.151)
173 2004-02-08 Helge Hess <helge.hess@opengroupware.org>
177 * NGMail/NGMimeMessageGenerator.m: expose _base64Encoding function
179 * NGMail/GNUmakefile, NGMail/NGMimeMessageGenerator.m: moved body
180 generator subclass to separate source files
182 * GNUmakefile, NGMimeHeaderFieldGenerator.m: moved out field generator
183 subclasses to own source files
185 * NGMimeHeaderFieldGenerator.h: export NGEncodeQuotedPrintableMime
186 function (should be a NSString category?!)
188 2004-01-24 Helge Hess <helge.hess@opengroupware.org>
190 * NGImap4: various improvements, parsing optimization (v4.2.149)
192 * NGMimeRFC822DateHeaderFieldParser.m: improved performance, see
193 NGImap4 ChangeLog for details (v4.2.146)
195 2004-01-22 Helge Hess <helge.hess@opengroupware.org>
197 * NGImap4: cleanups, fixed OGo bug #537 (v4.2.145)
199 2004-01-21 Helge Hess <helge.hess@skyrix.com>
201 * NGImap4: cleanups, cleanups, cleanups (v4.2.144)
203 2004-01-20 Helge Hess <helge.hess@opengroupware.org>
205 * NGImap4: cleaned up API (v4.2.143)
207 2004-01-20 Helge Hess <helge.hess@skyrix.com>
209 * NGImap4Message: optimization (v4.2.142)
211 2004-01-19 Helge Hess <helge.hess@opengroupware.org>
213 * NGImap4: various optimizations and cleanups (see NGImap4 ChangeLog
214 for details) (v4.2.141)
216 2004-01-19 Helge Hess <helge.hess@skyrix.com>
218 * added global-id classes in NGImap4 (v4.2.140)
220 2004-01-12 Helge Hess <helge.hess@opengroupware.org>
224 * NGMimeRFC822DateHeaderFieldParser.m: optimized date parsing -
225 additional optimizations lined out
227 * NGMimeHeaderFieldParser.m: moved the various parser classes to
228 separate files (maybe should be moved to a subproject in the long
229 run), minor code cleanups
231 * NGMimePartParser.m: cache defaultRfc822HeaderFieldParserSet for speed
233 * NGImap4: major cleanups, see NGImap4/ChangeLog for details
235 2004-01-11 Helge Hess <helge.hess@opengroupware.org>
239 * NGImap4: major cleanups
241 * NGImap4: renamed common.h to imCommon.h, fixed other files to include
244 Tue Nov 11 15:04:18 2003 Jan Reichmann <jr@skyrix.com>
246 * NGImap4ResponseParser.m: add parsing of capability entries without
249 2003-11-10 Helge Hess <helge.hess@opengroupware.org>
253 * NGMime.m: use some defaults for the NGMime version in case we are
254 not compiling using gstep-make
256 * NGImap4ResponseParser.m: explicitly marked the lastChar variable as
257 being a signed char to avoid compiler errors
259 Thu Nov 6 16:41:13 2003 Jan Reichmann <jr@skyrix.com>
263 * NGSieveClient: fixed a bug in normalizeResponse, return
266 * NGImap4ResponseParser.m: remove CYRUS_2_0 constant, don`t now
269 Mon Nov 3 15:42:37 2003 Jan Reichmann <jr@skyrix.com>
271 * NGImap4Context: temporary set selected folder befor the select action
272 to prevent notification confusions (v4.2.133)
274 2003-10-17 Helge Hess <helge.hess@skyrix.com>
276 * NGImap4: small code cleanups to Sieve client (v4.2.132)
278 2003-10-12 Helge Hess <helge.hess@opengroupware.org>
280 * GNUmakefile.preamble: added libEOControl as a dependency
281 (required on MacOSX) (v4.2.131)
283 2003-09-06 Helge Hess <helge.hess@skyrix.com>
285 * removed various dependencies to FoundationExt (v4.2.130)
287 * various fixes to remove warnings on MacOSX (v4.2.129)
289 Tue Jul 22 15:19:34 2003 Jan Reichmann <jr@skyrix.com>
291 * NGImap4ResponseParser.m: check for empty quota reponses
294 2003-07-18 Helge Hess <helge.hess@skyrix.com>
296 * NGImap4: fixed some gstep-base issues, patch provided by
297 Filip Van Raemdonck and cleaned up a bit (v4.2.127)
299 Thu Jul 17 10:37:22 2003 Jan Reichmann <jr@skyrix.com>
301 * NGImap4ServerRoot: add a missing method
302 (bulkFetchHeadersFor:inRange:withAllUnread:) (v4.2.126)
304 Fri Jun 27 18:08:49 2003 Jan Reichmann <jan@skyrix.com>
306 * NGImap4Message.m: improve flag handling (v4.2.124)
308 * NGImap4Message.m: code cleanups (v4.2.123)
310 Thu Jun 26 13:23:30 2003 Jan Reichmann <jan@skyrix.com>
314 * NGImap4Message.m: add messageWithURL: methods
316 * NGImap4Context.m: execute select-command before setting selectet folder
318 * NGImap4Folder: add a struct do store failed select, status, getQuota
319 responses, set selectet folder after successfully select response
321 Fri Jun 20 18:51:24 2003 Jan Reichmann <jan@skyrix.com>
325 * NGImap4Client.m: cleanups
327 * NGImap4ServerRoot, NGImap4Folder.m, NGImap4Functions:
328 fetch status (new/unseen) of subfolders on demand only if Default:
329 FetchNewUnseenMessagesInSubFoldersOnDemand = 'YES'
331 * NGImap4ServerRoot, NGImap4Folder.m: improve folder-flag analysing,
332 nonexistent folders will be ignored (Default: ShowNonExistentFolder),
333 no 'list' request for folder with hasnochildren flag
334 (Default: IgnoreHasNoChildrenFlag) (v4.2.120)
338 * NGImap4Functions: cleanups
340 * NGImap4Context.m: cleanups
342 * NGImap4Folder.m: only reset subfolders if -resetSubFolders called
343 (prev. behavior: -resetFolder called -resetSubFolders), cleanups
345 Tue Jun 17 11:53:46 2003 Jan Reichmann <jan@skyrix.com>
347 * NGImap/NGImap4Message+BodyStructure.h: check whether parsing of
348 date headerfield failed (v4.2.118)
350 Fri Jun 13 17:37:37 2003 Jan Reichmann <jan@skyrix.com>
352 * NGMimeType.m: add charset 'unknown' (use us-ascii) (v4.2.117)
354 Wed Jun 11 14:49:05 2003 Jan Reichmann <jan@skyrix.com>
358 * NGMimeMultipartBodyParser.m: improve multipart-body parsing behavior
359 (parse bodies with no content)
361 * NGMimeType.m: use ASCII string encoding for "x-unknown" encoding type
363 * NGMimePartParser: add unknown-8bit content-transfer encoding
367 * NGMimePartParser.m, NGMimeMultipartBodyParser.m: code cleanups
369 * NGConcreteMimeType: added "x-unix-mode" as a known text mime-type
372 * NGMimePartParser: add 'binary' content transfer encoding (v4.2.114)
376 * NGMail/NGMimeMessageParser: use unicode, use named encoding to
377 encode header fields (if default
378 'UseFoundationStringEncodingForMimeHeader' = YES, libFoundation
379 string encoding will be used)
381 * NGMimeUtilities: add parseParameters() (parse the same kind of
382 parameter for NGMimeType and NGMimeContentDispositionType), use
385 * NGMimeType.m: use unicode, parse parameters in NGMimeUtilities
387 * NGMimeHeaderFields.m: use unicode, parse parameters in
390 * NGMimeHeaderFieldParser.m: code cleanups, add default whether to
391 strip leading spaces or not (StripLeadingSpaces), use unicode for
392 content-type, content-disposition and string type header-fields,
393 wrap some comments with MimeLogEnabled, some speed optimization,
395 * NGMimePartParser.m: ignore leading white spaces for header values
398 * NGMimeHeaderFieldParser.m: use unicode to remove comments, improve
399 comment parsing behavior, strip leading spaces only if
400 default 'StripLeadingSpaces' is set (currently be done during
401 header-field parsing for speed optimization)
403 * NGMimeBodyParser.m: use named encoding (currently iconv) to encode
404 text bodies, (if default 'UseFoundationStringEncodingForMimeText'
405 is set, libFoundation string encoding will be used)
407 2003-06-06 Helge Hess <helge.hess@skyrix.com>
409 * NGConcreteMimeType.m: added support for 'delsp' attribute (delete
410 space ?) on text/... mime-types (v4.2.113)
412 Mo Jun 02 15:55:20 2003 Jan Reichmann <jan@skyrix.com>
414 * NGImap4Folder, NGImap4Functions: add notification for
415 subfolder-resets (v4.2.112)
417 2003-05-28 Helge Hess <helge.hess@skyrix.com>
419 * fixed a linking bug in NGImap4 (due to a ignored warning ...)
422 Tue May 27 17:39:20 2003 Jan Reichmann <jan@skyrix.com>
424 * NGImap4Folder.m: check for quota only if folder is selectable
427 Tue May 20 18:03:12 2003 Jan Reichmann <jan@skyrix.com>
429 * NGImap4Context; add accessor to set edit default values (v4.2.108)
431 Wed May 14 12:54:08 2003 Jan Reichmann <jan@skyrix.com>
435 * NGMimeType.m: code cleanups, hide some logs behind 'MimeLogEnabled'
437 * NGMimeMessageParser.m: code cleanups, fix a decode quoted printable
438 bug (sometimes last char was ignored)
442 * NGImap4ResponseParser.m: use lowercase string to determine whether
443 fetch body reponse is 'text' or 'message' (courier imap use lowercase
444 letters for the body description) (bug 1611)
446 * Info: move rfc, drafts and other information files to 'Info'
448 Thu May 13 17:59:25 2003 Jan Reichmann <jan@skyrix.com>
450 * NGImap4Folder.m: add notification for folder reset, if more than one
451 folder for the same folderpath exist (v4.2.105) (bug 1612)
453 Fri May 9 10:35:42 2003 Jan Reichmann <jan@skyrix.com>
455 * media-types: add (v4.2.104)
457 Mon May 5 17:59:25 2003 Jan Reichmann <jan@skyrix.com>
459 * NGImap4Folder.m: improve error log, fix a bug regarding multiple
460 mail copy from and to the same folder (v4.2.103)
462 Wed Apr 30 15:24:26 2003 Jan Reichmann <jan@skyrix.com>
466 * NGMimeHeaderFieldParser.m: add some time zone format fields (bug 943)
468 * NGImap4ServerRoot: noinferiors depends on serverkind (bug 932)
470 * NGImap4ResponseParser.m: improve parsing of server greeting
472 * NGImap4Folder, NGImap4ServerRoot: take ShowOnlySubscribedIn*
475 * NGImap4Context.m: set ShowOnlySubscribedIn* Defaults
478 * NGImap4Client.m: detect washington imap server
482 * NGImap4ServerRoot: fixed retain bug
484 * NGImap4Folder.m: NSLog -> logWithFormat, fixed release (bug 1559),
486 * NGImap4Context: accessors for server defaults
488 * NGImap4Client.m: code cleanups, some logs depends LogDefault,
489 try to get server name (cyrus, courier) - set some server-depending
490 Defaults, fixed special folder subscribe/create behavior (bug 1540)
492 Thu Apr 17 11:13:44 2003 Jan Reichmann <jan@skyrix.com>
494 * NGMimeFileData.m: fixed bug which occurs during hh cleanups
495 (self->path = [path copy] --> self->path = [_path copy] (v4.2.100)
497 Fri Apr 11 10:59:45 2003 Jan Reichmann <jan@skyrix.com>
501 * NGImap4Functions.m: add ImapLogEnabled' default
502 bind some logs to ImapLogEnabled'
504 * NGMimeType.m: create MimeLogEnabled'
505 'WARNING(%s): expected end of string or' - occurs only if
506 MimeLogEnabled (bug 1430)
508 2003-04-09 Helge Hess <helge.hess@skyrix.com>
512 * various fixed of new gcc 3.3 warnings in all modules
514 * NGMimeType.m: fixed gcc 3.3 signed/unsigned warnings
516 * NGMimeFileData.m: small cleanups, signed-warnings
518 * NGMail: fixed more gcc 3.3 signed/unsigned warnings (v4.2.97)
522 * NGMail: some gcc 3.3 signed/unsigned warnings fixed
524 * NGMimeUtilities.h: some gcc 3.3 signed/unsigned warnings fixed
526 * NGImap4: small speed improvements
528 Mon Apr 7 20:02:29 2003 Jan Reichmann <jan@skyrix.com>
532 * NGImap4Message.m: check whether encoding was set -> set encoding
533 during body-structure fetch
535 * NGImap4Message+BodyStructure.h: body-structuree component is no
536 rfc822 or multipart --> body url got 'part=1'
538 2003-04-01 Helge Hess <helge.hess@skyrix.com>
540 * NGImap4: added compilation support for GNUstep base (v4.2.94)
542 Fri Feb 28 18:32:53 2003 Jan Reichmann <jan@skyrix.com>
544 * NGImap4/NGImap4Functions.m: add support for Washington Imap Server,
545 (delete folders in server root) (v4.2.93)
547 Wed Feb 26 17:47:53 2003 Jan Reichmann <jan@skyrix.com>
551 * NGImap/NGImap4ServerRoot.m: read also inbox folder if it
554 * NGImap/NGImap4Client.m: check whether no sequence contains 'ALERT',
555 reconnect also if the server repsonse an unexpecte 'bye' sequence
557 * (Changes for Washington Imap Server support)
559 * NGImap/NGImap4Client.m: remove NXConstStr in Excep. Handler (v4.2.91)
561 * NGMimePartParser.h: add headers (v4.2.90)
563 Wed Feb 26 11:37:18 2003 Jan Reichmann <jan@skyrix.com>
565 * NGImap/NGImap4Client.m: check whether so key exist,
566 use DATE as default sort key (v4.2.89)
568 Tue Feb 25 11:21:52 2003 Jan Reichmann <jan@skyrix.com>
570 * NGImap/NGImap4Client.m: fixed a reconnect bug (try only one time,
571 before return with exception) (bug 1108) (v4.2.88)
573 Mon Feb 24 15:48:07 2003 Jan Reichmann <jan@skyrix.com>
575 * NGImap4/NGImap4Message.m: select folder befor fetch
576 body structure (bug 1094) (v4.2.87)
578 Mon Feb 17 18:19:06 2003 Jan Reichmann <jan@skyrix.com>
580 * v4.2.86 (fixed bug 1064)
582 * NGMimeBodyParser: remove NGMimeRfc822BodyParser
584 * NGMimePartParser.m: remove call to NGMimeRfc822BodyParser
586 * NGMimeMessageParser: add NGMimeRfc822BodyParser,
587 add delegate method bodyParserForPart: to call the
588 NGMimeRfc822BodyParser
590 Fri Feb 14 16:16:47 2003 Jan Reichmann <jan@skyrix.com>
592 * NGImap4Context.m: code cleanups (v4.2.85)
594 Wed Feb 5 14:43:22 2003 <jan@skyrix.com>
596 * NGMimePartParser.m: check whether la (called to buffer data)
597 failed with EndOfStream (bug 993) (v4.2.84)
599 Fri Jan 31 17:05:55 2003 <jan@skyrix.com>
601 * NGImap4Context.m: add defaults for imap special folders,
602 fix folder create bug (v4.2.83)
604 * NGImap4Folder.m: fetch all messages if no sort failed or no
605 sortordering was given (v4.2.82)
607 * NGImap4: fix parsing structure bug, code cleanups (v4.2.81)
609 Wed Jan 29 22:12:08 2003 <jan@skyrix.com>
611 * NGImap4*: code cleanups (replace macros with method calls),
612 catch all exceptions, now they are stored in [context lastException]
613 remove connection retry (v4.2.80)
615 2003-01-29 Helge Hess <helge.hess@skyrix.com>
617 * NGMimeFileData.m: fixed required includes (v4.2.79)
619 Tue Jan 28 15:39:25 2003 <jan@skyrix.com>
621 * NGImap4: courier support (v4.2.78)
623 * NGImap4: remove abort() (v4.2.77)
627 * NGMimePartGenerator: generator handles now tmp-file creation
629 * NGMimeGeneratorProtocols.h: add missing methods
631 * NGMimeFileData.m: add Data init methods, use default to generate
632 file-data (NGMimeBuildMimeTempDirectory)
636 * NGMimeJoinedData: code cleanups, write file with 0600
638 * NGMimeFileData: code cleanups
640 * NGMimeFileData: code cleanup (v4.2.74)
642 Mon Jan 27 19:08:28 2003 <jan@skyrix.com>
646 * NGMimeJoinedData: a mutable date wrapper to join date objects
647 without merging them in memory
649 * NGMimeFileData: a data object to store the date content on disk
651 * NGMime*Generator: build mime parts on disk
653 Wed Jan 22 17:26:17 2003 <jan@skyrix.com>
655 * NGMimeBodyGenerator.m: add configurable boundary prefix
657 2003-01-22 Helge Hess <helge.hess@skyrix.com>
659 * NGMimeMultipartBodyParser.m: use incremental version (v4.2.72)
661 Tue Jan 21 19:05:30 2003 <jan@skyrix.com>
663 * NGImap4: add additional Courier imapd support (v4.2.71)
667 * NGImap4: increase class version number of NGMimeMessageParser
669 * NGMimePartParser: if parsePartFromData got immutable data,
670 parsing will be based on data bytes, increase version,
673 * NGMimeMultipartBodyParser.m: code cleanups
675 Mon Jan 20 19:00:14 2003 <jan@skyrix.com>
677 * NGMimePartGenerator.m: fixed wrong release handling (v4.2.69)
679 2003-01-20 Helge Hess <helge.hess@skyrix.com>
681 * NGConcreteMimeType.m: added support for vCalendar "method" parameters
682 in text/* MIME types, replaced some RELEASE macros (v4.2.68)
684 * replaced some RETAIN macros (v4.2.67)
686 Fri Jan 17 13:49:17 2003 <jan@skyrix.com>
688 * NGImap4: fix variable placing (v4.2.66)
690 Thu Jan 16 18:36:54 2003 <jan@skyrix.com>
694 * NGImap4: decode headers values fur bodystructures
696 * NGMimePartParser: add +defaultHeaderFieldEncoding
698 Tue Jan 14 16:57:28 2003 Jan Reichmann <jan@skyrix.com>
700 * NGImap4: improve body structure parsing
702 * NGMimeType.m: allow all chars for parameter-values,
703 use constant strings for some types, subtypes, parameternames
706 2003-01-14 Helge Hess <helge.hess@skyrix.com>
708 * NGMimeType.m: added "koi-r" as an unsupported, but known encoding
711 Tue Jan 14 12:24:44 2003 <jan@skyrix.com>
713 * NGImap4: improve error handling, handle unexpected BYE response
716 * NGImap: fix parsing of cyrus version bug (skyrix bug 845) (v4.2.60)
718 Mon Jan 13 19:42:47 2003 <jan@skyrix.com>
722 * NGMimePartParser: add fix header field names
724 * NGImap4, NGPart.m, NGMimeHeaderFieldParser.m,
725 NGMimeHeaderFieldGenerator.m, NGMimeBodyPart.m: use header field
728 2003-01-13 Helge Hess <helge.hess@skyrix.com>
730 * NGPart.h: added some docu to header
732 Fri Jan 10 09:54:14 2003 <jan@skyrix.com>
734 * NGImap4: fixed skyrix bug 822, improve error handling (v4.2.58)
736 Wed Jan 9 15:26:00 2003 <jan@skyrix.com>
738 * NGImap4: improve parsing to handle over quota warnings
739 fix skyrix bug 777 (v4.2.57)
741 Wed Jan 8 16:26:00 2003 <jan@skyrix.com>
743 * NGImap4: fix skyrix bug 835 (fix quota bugs) (v4.2.56)
745 Tue Jan 7 16:47:36 2003 <jan@skyrix.com>
747 * NGImap4: fix skyrix bug 821 (add -usedSpace and -maxQuota to
748 NGImap4Folder protocol and NGImap4ServerRoot) (v4.2.55)
750 2003-01-07 Helge Hess <helge.hess@skyrix.com>
752 * changes for improved compilation on MacOSX, replaced RETAIN macros
753 with methods (v4.2.54)
755 Fri Dec 27 10:53:50 2002 Helge Hess <helge.hess@skyrix.com>
757 * smaller clean ups (v4.2.53)
759 Mon Dec 23 15:39:33 2002 Helge Hess <helge.hess@skyrix.com>
761 * NGImap4: small cleanups (v4.2.52)
763 2002-12-17 Helge Hess <helge.hess@skyrix.com>
765 * cosmetic change, replaced 'THROW' with 'raise'
767 * NGMimeType.m: added big5, 'iso-2022-jp' and 'gb2312' as unsupported,
768 but known encodings (SuSE Bug 16780) (v4.2.51)
770 Tue Dec 10 19:12:45 2002 <jan@skyrix.com>
772 * NGImap4: add quota support
774 2002-12-07 Helge Hess <helge.hess@skyrix.com>
776 * NGImap4: fixed a compilation warning (v4.2.49)
778 * fixed Jan's version numbers
780 Tue Dec 10 19:12:45 2002 <jan@skyrix.com>
782 * NGImap4ResponseParser.m: throw concrete exception (Bug 651)
784 * NGImap4Folder.m, NGImap4ServerRoot: Default for display sub-folders
786 * NGImap4Client.m: fixed debug release-bug (v4.2.48)
788 * NGImap4ResponseParser.m: fix parse bug
790 * NGImap4Message+BodyStructure.h: fix header handling (v4.2.47)
792 Mon Dec 9 13:55:52 2002 <jan@skyrix.com>
794 * NGImap4Context.m, NGImap4Client.*, NGImap4ResponseParser: add
795 capability support (v4.2.46)
797 Fri Dec 6 17:08:28 2002 <jan@skyrix.com>
799 * NGImap4Folder (v4.2.45)
801 * NGImap4Message: add some ss-sorting improvements
803 Tue Dec 3 16:45:14 2002 <jan@skyrix.com>
805 * NGImap4ResponseParser.m: parse empty string if message does
806 'no longer exists' (v4.2.44)
808 Mon Dec 2 19:22:13 2002 Jan Reichmann <jan@skyrix.com>
810 * NGImap4Context.m: performance improvements (v4.2.43)
811 * NGImap4Folder.m: -(BUG 17379) clear msn->uid cache after delete
814 Mon Dec 2 11:18:51 2002 <jan@skyrix.com>
816 * NGImap4Folder.m: only reset subfolder if they are already loaded (v4.2.42)
818 Fri Nov 29 18:12:32 2002 <jan@skyrix.com>
820 * NGMimePartParser.m: improve error log (v4.2.41)
821 * NGMail/NGMimeMessageParser.m: fixed quoted printable parsing bug
823 Fri Nov 29 12:27:25 2002 <jan@skyrix.com>
825 * NGImap4ResponseParser.m: check tagged responses before parsing
828 Mon Nov 25 16:29:40 2002 Jan Reichmann <jan@skyrix.com>
830 * NGImap4Context.m, NGImap4Folder: add msn-uid cache (v4.2.39)
831 * NGImap4Folder.m: if no next mail, return nil (v4.2.38)
832 * NGImap4Client.m: check whether sort keys are valid (v4.2.36)
833 * NGImap4ResponseParser.m: fixed content parsing
835 Fri Nov 22 15:04:18 2002 <jan@skyrix.com>
837 * NGImap4Message*: add support for body-structure content(v4.2.35)
839 Fri Nov 22 11:13:40 2002 <jan@skyrix.com>
841 * NGImap4ResponseParser.m: add Imap4MMDataBoundary Default to
842 modify MM-Data-Use boundary (v4.2.34)
844 Tue Nov 21 18:13:38 2002 <jan@skyrix.com>
846 * NGImap4*: memory mapped data (v4.2.33)
847 * NGImap4*: add fetch bodystructure/single part bodies (v4.2.32)
849 2002-11-20 Helge Hess <helge.hess@skyrix.com>
851 * NGImap4: can query headers using KVC (4.2.31)
853 * NGImap4: smaller changes in URL initialization (v4.2.30)
855 Tue Nov 19 18:13:38 2002 <jan@skyrix.com>
857 * NGImap4*: add commands (thread, fetch body) (v4.2.29)
859 Mon Nov 11 10:24:14 2002 Jan Reichmann <jan@skyrix.com>
861 * NGImap4Client.m: improve greetings parse behavior (v4.2.29)
863 2002-11-11 Helge Hess <helge.hess@skyrix.com>
865 * NGImap4: initialize objects with URL and SSL support (v4.2.28)
867 Wed Oct 30 16:26:46 2002 Jan Reichmann <jan@skyrix.com>
869 * NGMimePartParser.m retain/autorelease values to prevent
870 RELEASE Exceptions (v4.2.27)
872 2002-09-30 Helge Hess <helge.hess@skyrix.com>
876 * NGMimeHeaderFieldGenerator.m: fixed some compilation warnings
878 2002-08-29 Helge Hess <helge.hess@skyrix.com>
880 * NGMimeHeaderFieldGenerator.m: small fix for Jaguar compilation
882 Tue Aug 20 18:33:00 2002 Jan41 Reichmann <jan@skyrix.com>
884 * NGMimeHeaderFieldGenerator.m: add default for LF seperated address
885 entries (v4.2.22) (BUG 17551)
887 2002-08-09 Helge Hess <helge.hess@skyrix.com>
889 * NGMimeType.m: added windows-1252, iso-8859-2 as known charset strings
892 - 2002-07-23 v4.2.19 (hh)
893 - 2002-07-17 v4.2.18 (jr)
894 - 2002-07-17 v4.2.17 (hh)
895 - 2002-07-10 v4.2.16 (hh)
896 - 2002-07-09 v4.2.15 (hh)
897 - 2002-07-09 v4.2.14 (hh)
898 - 2002-07-08 v4.2.13 (hh)
899 - 2002-07-08 v4.2.12 (hh)
901 2002-07-09 Helge Hess <helge.hess@skyrix.com>
903 * NGMimeType.m: added some charset encoding strings (8859-1,
904 ks_c_5601-1987, euc-kr)
906 * NGConcreteMimeType.m: do not print a warning if a "x-mac-" MIME type
907 parameter was found ...
909 Tue Jul 9 12:39:12 2002 Jan Reichmann <jan@skyrix.com>
911 * NGMime.m: add libraryVersion method
913 2002-07-08 Helge Hess <helge.hess@skyrix.com>
915 * removed fix for -valueOfHeaderField:data:, since this breaks
918 2002-07-08 Helge Hess <helge.hess@skyrix.com>
920 * NGMimePartParser.m: immediatly close the datastream after parsing,
921 so that the NSData object associated with the stream is guaranteed
922 to be released (this lessens the possibility for a new variant of
923 "The Big Master Bug")
925 * NGMimeUtilities.h (_rfc2047Decoding): small optimization, if the
926 data is base64 encoded, immediatly release the temporary NSData
927 object used to call -dataByDecodingBase64:
929 * NGMimeType.m: added a class method to turn charset strings into
930 a Foundation NSStringEncoding constants
931 (eg utf-8 => NSUTF8StringEncoding)
933 * NGMimePartParser.m: cache the mutable data object used during parsing
934 to avoid memory fragmentation and to improve speed
936 * NGMimeBodyParser.m: moved multipart body parser to it's own file
938 * NGMimePartParser.m ([NGMimePartParser -valueOfHeaderField:data:):
939 fixed behaviour of method when a delegate is set. Previously if
940 the delegate returned nil, the parser would invoke it's own
941 header field parsing (while the doc says, that if the delegate
942 implements the method, it's *completly* responsible ...)
943 SEE ABOVE, fix removed
945 * major source code cleanup to support hunting the bug known as
946 "The Big Master Bug" (BMB, SuSE bug 16845)
948 Fri Jun 28 17:27:16 2002 Jan41 Reichmann <jan@skyrix.com>
950 * NGMimeBodyGenerator.m: remove log
951 * NGMimeHeaderFieldParser.m: add DateFormat
953 Fri Jun 28 16:58:15 2002 Jan41 Reichmann <jan@skyrix.com>
955 * NGMimeBodyParser.m: compares charset caseInsensitive now
957 Fri Jun 26 10:40:05 2002 Helge Hess <hh@skyrix.com>
959 * various fixes for MacOSX
961 - 2002-06-13 v4.2.11 (jr) [extracted from CVS]
962 - 2002-06-11 v4.2.10 (jr) [extracted from CVS]
963 - 2002-06-10 v4.2.9 (jr) [extracted from CVS]
964 - 2002-06-10 v4.2.8 (jr) [extracted from CVS]
965 - 2002-06-09 v4.2.7 (jr) [extracted from CVS]
966 - 2002-06-09 v4.2.6 (jr) [extracted from CVS]
967 - 2002-06-07 v4.2.5 (jr) [extracted from CVS]
969 Fri Jun 7 17:11:05 2002 Jan41 Reichmann <jan@skyrix.com>
971 * NGMime*: add better encoding handling
973 - 2002-06-04 v4.2.4 (jr) [extracted from CVS]
975 Tue Jun 4 17:47:30 2002 Jan41 Reichmann <jan@skyrix.com>
977 * NGMimeHeaderFieldParser.m: fixed euro handling
979 Fri May 31 16:13:56 2002 Jan41 Reichmann <jan@skyrix.com>
981 * NGMimeHeaderFieldGenerator.m: add NGMimeAddressHeaderFieldGenerator,
982 encoding of filenames
984 - 2002-05-22 v4.2.3 (jr) [extracted from CVS]
986 Wed May 15 13:23:03 2002 Helge Hess <helge.hess@skyrix.com>
988 * added NGMail, NGImap4 subprojects
990 Mon May 6 22:28:21 2002 Helge Hess <helge.hess@skyrix.com>
992 * NGMimeHeaderFieldGenerator.m: fixed a problem with GroupWise (a space
993 was generated before a MIME-type parameter value)
995 Thu Mar 7 12:24:41 2002 Jan41 Reichmann <jan@skyrix.com>
997 * NGMimeBodyGenerator.m: fixed assertion bug
999 Thu Feb 21 13:03:52 2002 Helge Hess <helge.hess@skyrix.com>
1001 * NGMimePartParser.m: changed to support -lastException
1003 Thu Feb 14 11:27:06 2002 Jan41 Reichmann <jan@skyrix.com>
1005 * NGMimeHeaderFields.m: supports now ill microsoft content-disposition type
1007 Tue Dec 18 16:58:11 2001 Helge Hess <helge.hess@skyrix.com>
1009 * NGConcreteMimeType.m ([NGConcreteTextMimeType -initWithType:subType:parameters:]):
1010 parse "q" quality parameter
1012 Tue Dec 18 11:37:15 2001 Helge Hess <helge.hess@skyrix.com>
1014 * NGMimeBodyParser.m: added iso-8859-1 as a known charset
1016 Tue Dec 11 09:53:03 2001 Jan41 Reichmann <jan@skyrix.com>
1018 * NGMimeHeaderFieldGenerator.m: fixed string value bug
1019 * NGMimeHeaderFieldParser.m: add date format
1021 Fri Dec 7 15:17:54 2001 Helge Hess <helge.hess@skyrix.com>
1023 * NGMimeBodyGenerator.m: fixed bug with content-type
1025 Mon Oct 22 19:00:59 2001 Helge Hess <helge.hess@skyrix.com>
1027 * NGMimePartParser.m ([NGMimePartParser -parserForBodyOfPart:data:]):
1028 use TextParser only for text/plain bodies
1030 Mon Oct 22 10:12:45 2001 Helge Hess <helge.hess@skyrix.com>
1032 * NGMimeHeaderFieldGenerator.m: changed to deal with string-header
1033 fields and replaced various -cString calls with -dataUsingEncoding:
1035 Tue Oct 16 19:21:15 2001 Helge Hess <helge.hess@skyrix.com>
1037 * NGMimeType.m: check for empty mime-type strings ...
1039 Tue Oct 16 18:59:39 2001 Helge Hess <helge.hess@skyrix.com>
1041 * NGMimeHeaderFieldGenerator.m: fixed static-var init bug
1043 Fri Oct 12 10:36:53 2001 Helge Hess <helge.hess@skyrix.com>
1045 * NGMimePartParser.m ([NGMimePartParser -parserForBodyOfPart:data:]):
1046 trim spaces of header-field values ...
1048 Thu Aug 9 14:21:45 2001 Helge Hess <helge.hess@skyrix.com>
1050 * removed java.mail related stuff
1052 Thu Aug 9 13:22:35 2001 Helge Hess <helge.hess@skyrix.com>
1054 * NGMimeFileDataSource.m: use -initWithPath:, no use of NGFileUrl
1056 Fri Jul 20 15:48:36 2001 Helge Hess <helge.hess@skyrix.com>
1058 * NGConcreteMimeType.m: allow parameters in wildcard MIME type
1060 Fri Apr 6 14:51:41 2001 Jan Reichmann <jan@skyrix.com>
1062 * NGMimePartGenerator.m: fixed Autorelease/Release bug
1064 Wed Mar 28 17:55:21 2001 Jan Reichmann <jan@skyrix.com>
1066 * NGMimeHeaderFieldParser.m: add new date formats
1068 Tue Feb 6 17:08:04 2001 Jan Reichmann <jan@skyrix.com>
1070 * NGMimePartParser.m: fixed delegate message bug
1072 Mon Jan 29 16:27:23 2001 Jan Reichmann <jan@skyrix.com>
1074 * NGMimeBodyParser.m, NGMimePartGenerator.m, NGMimePartParser.m: fixed
1077 Mon Dec 4 12:19:19 2000 Helge Hess <helge.hess@mdlink.de>
1079 * NGMimePartParser.m: changed to support empty HTTP headers (might break
1080 some email parsing ??)
1082 * NGMimePartParser.m: dynamically allocate parse buffer, added class
1085 Fri Jun 23 14:24:36 2000 Helge Hess <helge.hess@mdlink.de>
1087 * reverted changes from Jun-21
1089 Fri Jun 23 12:21:32 2000 Helge Hess <helge.hess@mdlink.de>
1091 * NGMimeHeaderFieldParser.m: fixed stmt ordering bug
1093 Wed Jun 21 23:39:23 2000 Helge Hess <helge.hess@mdlink.de>
1095 * removed stack-buffer allocations in various methods
1097 Tue Jun 13 19:33:31 2000 Helge Hess <helge.hess@mdlink.de>
1099 * NGMimeHeaderFields.m: do not use stack-allocated buffers
1101 Fri Jun 9 17:50:00 2000 Helge Hess <helge.hess@mdlink.de>
1103 * GNUmakefile (ADDITIONAL_CPPFLAGS): added -Wall
1105 Tue Feb 29 18:24:39 2000 Helge Hess <helge.hess@mdlink.de>
1109 2000-02-17 <helge.hess@mdlink.de>
1111 * NGMimeHeaderFieldGenerator.m, NGMimeType, NGMimePartParser, NGMimeHeaderFields:
1112 removed cString stuff
1114 Wed Jan 26 11:11:23 2000 Jan Reichmann <jan@mdlink.de>
1116 * NGMimeHeaderFieldParser.m: NGMimeRFC822DateHeaderFieldParser returns now
1119 Mon Oct 25 15:07:36 1999 Helge Hess <helge.hess@mdlink.de>
1121 * NGConcreteMimeType.m: fixed bug in NGConcreteTextMimeType, fixed bugs
1122 in -stringValue of multipart-types
1124 Wed Oct 6 14:19:57 1999 Helge Hess <helge.hess@mdlink.de>
1126 * NGConcreteMimeType.m: added support for 'format' parameter in
1129 Mon Oct 4 10:23:32 1999 Helge Hess <helge.hess@mdlink.de>
1131 * NGMimePartParser.m: lowercase content-transfer-encoding, to catch both,
1132 7bit and 7BIT and 7Bit ...
1134 Fri Oct 1 18:53:43 1999 Helge Hess <helge.hess@mdlink.de>
1136 * NGMimeHeaderFieldParser.m: added various date formats to Rfc822 date
1139 * NGMimePartParser.m: added '8bit' as a known content-transfer-encoding
1141 Thu Sep 2 21:04:32 1999 Helge Hess <helge@trex.mdlink.de>
1143 * added class versions and superclass version checks
1145 Mon Jul 12 22:36:45 1999 Helge Hess <helge@trex.mdlink.de>
1147 * NGMimePartGenerator.m: fixed bug (collection was modified while an
1148 enumerator was in use ..)
1150 Fri Jun 18 19:28:52 1999 Helge Hess <helge@trex.mdlink.de>
1152 * NGMimePartParser.m: filter out and apply content-transfer-encoding
1154 Tue Jun 15 11:22:29 1999 Jan Reichmann <jan@mdlink.de>
1156 * removed quoted printable encoding from string header field parser
1158 * NGMimePartParser.m: lowercase MIME header field names on-the-fly
1160 Tue Jun 15 07:57:20 1999 Jan Reichmann <jan@mdlink.de>
1162 * NGMimeHeaderFieldGenerator.m: insert parsing of date-field and
1163 quoted-printable encoding
1164 * NGMimeHeaderFieldParser.m : insert generating from NSDate date-field
1166 Tue Jun 1 16:48:38 1999 Jan Reichmann <jan@mdlink.de>
1168 * NGMimeBodyGenerator.m: fixed bug (add generated boundary to multipart)
1170 Wed May 26 11:01:48 1999 Jan Reichmann <jan@mdlink.de>
1172 * NGMimeBodyGenerator.m fixed nil-body bug
1174 Fri May 7 20:42:53 1999 Jan Reichmann <jan@mdlink.de>
1176 * add -stringValue to NGMimeHeaderFields
1178 Tue May 4 16:16:47 1999 Helge Hess <helge@trex.mdlink.de>
1180 * added MIME generator classes
1182 Tue May 4 11:43:39 1999 Jan Reichmann <jan@mdlink.de>
1184 * NGMimeBodyPartParser.m: fixed remove-comments bug
1186 Tue May 4 11:30:53 1999 Helge Hess <helge@trex.mdlink.de>
1188 * NGMimeBodyParser.m: added NGMimeRfc822BodyParser class
1190 * NGMimePartParser.m: added new delegate method to apply content
1191 transfer encoding like stuff on MIME bodies.
1193 Thu Apr 22 18:58:02 1999 Helge Hess <helge@trex.mdlink.de>
1195 * renamed NGMimeParser to NGMimePartParser
1197 Tue Apr 20 18:27:44 1999 Jan Reichmann <jan@mdlink.de>
1199 * NGMimeParser.m: fixed content-length LA-bug
1201 Tue Apr 20 11:01:27 1999 Jan Reichmann <jan@mdlink.de>
1203 * NGMimeBodyParser.m: end-of-line chars needn`t to be on end of
1206 body can be less than 2 * boundary (remove assert)
1207 if start- or end-boundary wasn`t found the left over data were append
1210 * NGMimeParser.m : check whether content-type, content-length,
1211 subject are already in headers
1213 * NGMimeType.m : fixed len bug
1215 Mon Apr 19 08:55:42 1999 Jan Reichmann <jan@mdlink.de>
1217 * NGMimeParser.m: add delegate for use of content-length-field
1218 fixed read content-length bug
1220 Fri Apr 16 19:52:46 1999 Helge Hess <helge@trex.mdlink.de>
1222 * NGMimeParser.m: improved content-length parsing
1224 Fri Apr 16 18:48:35 1999 Helge Hess <helge@trex.mdlink.de>
1226 * NGMimeParser.m: rewritten to support MIME mails
1228 Fri Apr 16 12:33:46 1999 Helge Hess <helge@trex.mdlink.de>
1230 * NGMimeType.m, NGConcreteMimeType.[hm]: added 'name' parameter to
1231 text type and added x-vcard type
1233 * NGMimeType.m: make MIME type names and parameters lowercase
1235 * NGMimeBodyParser.m: added support for different EOL sequences
1237 * NGMimeParser.m: added delegates to parse a body of a part or to
1238 select a body parser for a body of a part.
1240 * NGConcreteMimeType.m: fixed bug, message/rfc822 is not a composite
1243 Mon Apr 12 16:28:47 1999 Helge Hess <helge@trex.mdlink.de>
1245 * use #include instead of #import, made headers #include safe
1247 Mon Mar 29 11:39:45 1999 Helge Hess <helge@trex.mdlink.de>
1249 * added kit class NGMime
1251 * separate MIME parsers for messages and general MIME.
1253 Mon Jan 18 20:17:19 1999 Helge Hess <helge@trex.mdlink.de>
1255 * NGConcreteMimeType.m: fixed bug in NSConcreteTextMimeType
1256 -parametersAsDictionary method
1258 Sat Jan 9 21:09:29 1999 Helge Hess <helge@trex.mdlink.de>
1260 * NGMimeParser.m: new 'foundEOF' variable
1262 Tue Dec 15 17:56:40 1998 Helge Hess <helge@trex.mdlink.de>
1264 * NGConcreteMimeType.m: fixed -isEqual: of NGConcreteGenericMimeType
1266 Fri Nov 27 14:50:03 1998 Helge Hess <helge@trex.mdlink.de>
1268 * started WIN32 support
1270 Thu Nov 5 12:25:22 1998 Helge Hess <helge@trex.mdlink.de>
1272 * added NGMimeHeaderFields.[hm] with NGMimeContentDispositionHeaderField
1275 * NGMimeHeaderFieldParser.m: added NGMimeContentDispositionHeaderFieldParser
1278 * added NGMimeBodyPart for parts contained in multiparts
1280 * made NSData/NSMutableData a NGMimePart
1282 * added NGMimeMultipartBody class
1284 Wed Nov 4 21:07:48 1998 Helge Hess <helge@trex.mdlink.de>
1286 * NGMimeType.m: bugfix in wildcard-type creation
1288 * NGConcreteMimeType.m: bugfix in wildcard matching
1290 * NGMimeBodyParser.m: added NGMimeMultipartBodyParser for parsing
1293 Wed Nov 4 18:49:22 1998 Helge Hess <helge@trex.mdlink.de>
1295 * added NGMimeBodyPartParser for parsing the entities in multipart-bodies.
1297 * NGConcreteMimeType.m: added fast concrete implementations of
1300 * NGMimeType.m: added advanced type-comparison/matching methods
1302 * Added new protocol and class NGMimeBodyParser responsible for parsing
1303 raw body data provided by the NGMimeParser.
1305 1998-10-09 Helge Hess <helge@trex.mdlink.de>