1Revision history for Net-IMAP-Server
2
31.39 2016-05-01T00:42:17Z
4 - Use 127.0.0.1 instead of localhost in tests
5 - Fix precedence error with "return" in
6   Net::IMAP::Server::Mailbox->selected
7
81.38 2014-01-26T20:16:17Z
9 - Pass tests with IO::Socket::SSL 1.950 and above, which verify server SSL
10   certificates by default.
11
121.37 2014-01-26T19:14:17Z
13 - Fix parsing par parenthesized expressions with recent Regexp::Common
14
151.36 2012-01-17T08:09:17Z
16 - Fix string literals (such as for APPEND), which have counted characters
17   incorrectly since 1.32 due to newline trimming.
18
191.35 2012-11-12T03:22:17Z
20 - Switch to AnyEvent, from EV
21
221.34 2012-07-28T15:49:17Z
23 - Don't rely on $" being set to the default " " during UID SEARCH
24
251.33 2012-04-07T19:37:17Z
26 - Test fixes; use recv() with MSG_PEEK | MSG_DONTWAIT to determine if a
27   TCP connection is in state CLOSE_WAIT
28
291.32 2012-04-06T00:45:17Z
30 - Trim newlines passed to all commands, including continuation lines
31 - Remove erroneous extra \n on server SASL responses
32 - Bump MIME::Base64 dependency, and adjust bad mime encoding techniques to
33   compensate
34 - Better mapping of SASL mechanism names to method names
35
361.31 2012-04-01T01:18:17Z
37 - Add test dependency on IO::Socket::SSL
38 - Minor ASCII art updates
39
401.30 2011-10-25T11:30:17Z
41 - Beginnings of a testsuite based on the RFC spec
42 - Prepend, rather then append, un-asked-for message attributes, for picky
43   clients
44 - Properly escape mailbox names with quotes in LIST/LSUB
45 - Trap and report base64 errors during AUTH
46 - Returning -1 from a SASL auth now returns BAD, while returning false
47   returns NO
48 - Send an [ALERT] if the password was sent unprotected in plaintext
49 - Remove an incorrect call to ->socket which caused errors during DESTROY
50 - Selecting a bogus mailbox now leaves the state unselected
51 - Return BAD on CREATE or RENAME with 8-bit mailbox names or invalid UTF-7
52   encoding
53 - Forbid removal of INBOX
54
551.29 2010-08-02T10:42:17Z
56 - Fix "UID SEARCH 1,2"
57 - Allow "UID SEARCH *"
58 - A better fix for [rt.cpan.org #58160], which is caused by a bug in
59   DateTime::Format::Strptime ([rt.cpan.org #58459])
60 - Fix a minor bug in UID wherein unknown subcommands would attempt to call
61   a nonexistant method
62
631.28 2010-06-08T14:14:17Z
64 - Prevent warnings when CLOSE is called
65 - strftime("%e") can generate leading space, which strptime("%e") fails to
66   parse; parse with strptime("%n%e")
67
68 [rt.cpan.org #58160]
69 - Ensure that EXAMINE collowed by SELECT in the same mailbox leaves it
70   write-able [rt.cpan.org #58162]
71
721.27 2010-05-03T21:27:17Z
73 - Make ->handle_command return the instance of the ::Command subclass that
74   ran, for more useful subclassing
75
761.26 2009-12-15T22:31:17Z
77 - Fix ->read_only to only care about ->selected_read_only if the mailbox
78   is currently selected.
79 - Add a ->select callback (defautls to doing nothing) on mailboxes which
80   is called when it becomes selected.
81 - The content returned by FETCH BODY[1] should be the raw content, without
82   decoding transport encoding.
83
841.25 2009-11-07T23:58:17Z
85 - BACKWARDS-INCOMPATIBLE CHANGE: Net::IMAP::Server::Command's ->log method
86   takes a loglevel argument by default, and simply defers to Net::Server's
87   logging infratructure.
88 - Handle more of Net::Server's arguments to ->new, including logging
89 - Pass through arguments to Net::Server any arguments to ->run
90 - Support mailboxes with flat hierarchies (undef hierarchy separator)
91 - Fix a bug where UID COPY set two OK responses
92
931.24 2009-10-16T11:01:17Z
94 - Fix overzealous caching during mailbox renaming
95 - Bump Net::Server::Coro dep, to be able to specify SSL certificate paths
96
971.23 2009-07-17T17:34:17Z
98 - Fix RT#47955; session flags were never getting stored, causing no
99   messages to ever be marked \Recent
100
1011.22 2009-07-13T12:13:17Z
102 - Warning avoidance for "substr outside of string" warnings
103 - Net::IMAP::Server::Command::UID still contained a reference to
104   untagged_fetch
105
1061.21 2009-07-09T14:52:17Z
107 - Bump copyright, link to mailing list
108 - Remove mostly undocumented an no-servicable-parts session_flags
109 - untagged_* renamed to _unsent_* (and thus private)
110 - A bit more documentation of accessors
111 - Better error message on unknown SEARCH token
112 - Add caching of "start of the day in utc" for searching
113 - Add extraction of "start of the Date: header in utc" for searching
114 - Add BEFORE, ON, SINCE, SENTBEFORE, SENTON, SENTSINC support to SEARCH
115 - Document Net::IMAP::Server::Message->expunged
116
1171.20 2009-06-19T16:04:17Z
118 - The logic for STATUS UNSEEN was backwards, counting the number of seen
119   messages.  Reported by Paul Miller <jettero@cpan.org>
120
1211.19 2009-06-19T13:26:17Z
122 - Fix POD coverage on Net::IMAP::Server::Error
123
1241.18 2009-06-17T14:50:16Z
125 - Handle compile errors in required commands better
126 - Add missing DateTime::Format::Strptime dependency
127
1281.17 2009-05-03T14:54:17Z
129 - Document "NO" and "BAD" die() arguments
130 - Fix mailbox read-only attribute
131
1321.16 2009-04-07T23:45:17Z
133 - Make UID fetches no longer O(range client requested), which is fragile
134   when there are few messages but they are high in UID.
135
1361.15 2009-04-06T12:49:17Z
137 - Calls to ->header_raw were being made on Email::MIME objects, instead of
138   Email::MIME::Header objects.  Reported by <dan@moore.cx>
139
1401.14 2009-04-06T03:55:17Z
141 - Bump Email::MIME dep, for ->header_raw method
142 - Fix typo in RFC reference.  Reported by <dan@moore.cx>
143 - Documentation typo fixes
144
1451.13 2009-03-20T14:11:17Z
146 - More UNSEEN fixes; the UNSEEN reported by STATUS and the UNSEEN reported
147   by SELECT are different beasts, and have been split into different
148   methods.
149
1501.12 2009-03-10T13:46:17Z
151 - Ensure that mailboxes passed to CREATE aren't trying to encode things
152   they shouldn't be, by round-tripping and comparing.
153 - Match query in LIST and LSUB against encoded path, not raw utf8 path
154 - Support for adding new commands via 'add_command' in Net::IMAP::Server
155
1561.11 2009-03-06T14:20:17Z
157 - Move IMAP-UTF-7 handling into model's ->split, so it runs for _all_
158   client-given input.	Then adjust ->handle_command to be able to send
159   specific messages to the client on some exceptions.	Reported by Jan
160   Dvorak <jdvorak@uikt.mendelu.cz>.
161 - Add a case for the suspected edge case where a timeout or printing error
162   is discovered while handling a command
163 - Upper-case command name in "command not recognized" to not leak
164   implementation as much
165
1661.10 2009-03-05T14:27:17Z
167 - Fix a major bug where UNSEEN reported the total number of unseen
168   messages in the mailbox, rather than the sequence of the first unseen
169   message.  Reported by Jan Dvorak <jdvorak@uikt.mendelu.cz>
170 - Always return un-decoded headers to the client.  Reported by Jan Dvorak
171   <jdvorak@uikt.mendelu.cz>
172 - Fixes for people who have set $" to something odd
173
1741.08 2009-02-24T16:27:17Z
175 - UTF-7 support for mailbox naming
176 - Add and document purge => 1 option to full_path
177
1781.07 2008-11-23T01:03:24Z
179 - Fixed missing UNIVERSAL::require dep
180
1811.06 2008-11-17T17:06:52Z
182 - Added NAMESPACE support
183
1841.05 2008-10-20T16:40:19Z
185 - Fixed spelling of 'separator' -- THIS BREAKS BACKWARDS COMPATIBILITY if
186   you had overridden the 'seperator' method.
187 - Added some missing pod on Net::IMAP::Server::DefaultModel
188
1891.01 2008-08-16T21:06:31Z
190 - Now with updated changelog and signatures - no functionality changes
191
1921.00 2008-08-16T21:05:25Z
193 - Remove Email::Folder dep, and default load_data behavior
194
1950.95 2008-08-06T18:46:09Z
196 - We can intuit the is_inbox mailbox property
197 - Include a simple example server
198
1990.9 2008-07-07T17:35:04Z
200 - Add update_tree hook so servers can dynamically create sub-mailboxes
201
2020.8 2008-06-16T18:34:56Z
203 - Special-casing for Zimbra clients
204 - client_id is a connection property, not an auth property
205 - Bump the Net::Server::Coro dep
206
2070.7 2008-05-19T13:30:17Z
208 - Per-session message flags actually stored on the session
209 - STATUS is now on the mailbox
210
2110.6 2008-05-16T13:29:12Z
212 - Add missing Net::SSLeay dep
213
2140.5 2008-04-25T12:18:17Z
215 - Add 'use Coro's for the places I added 'cede's
216 - Module::Install version bump
217
2180.4 2008-04-23T15:24:22Z
219 - Weaken the timeout callback, so we don't leak connection objects
220 - Don't double-store refs to connections
221 - Actually clean out old keys in the connection hash
222 - Try to print from the right coro, so EV doesn't complain about recursive
223   entry, and then wedge the next time it happens.
224 - Drop some more 'cede's in for commands which do many things
225
2260.3 2008-03-11T12:33:14Z
227 - Connections weren't being fully closed on timeout
228
2290.2 2008-03-10T16:47:52Z
230 - Initial release to CPAN
231