1 Ticket numbers in this file can be looked up by visiting
2 http://twistedmatrix.com/trac/ticket/<number>
4 Twisted Words 12.1.0 (2012-06-02)
5 =================================
9 - twisted.words.protocols.irc.DccChatFactory.buildProtocol now
10 returns the protocol object that it creates (#3179)
11 - twisted.words.im no longer offers an empty threat of a rewrite on
19 Twisted Words 12.0.0 (2012-02-10)
20 =================================
22 Improved Documentation
23 ----------------------
24 - twisted.words.im.basechat now has improved API documentation.
32 Twisted Words 11.1.0 (2011-11-15)
33 =================================
37 - twisted.words.protocols.irc.IRCClient now uses a PING heartbeat as
38 a keepalive to avoid losing an IRC connection without being aware
43 - twisted.words.protocols.irc.IRCClient now replies only once to
44 known CTCP queries per message and not at all to unknown CTCP
46 - IRCClient.msg now determines a safe maximum command length,
47 drastically reducing the chance of relayed text being truncated on
48 the server side. (#5176)
50 Deprecations and Removals
51 -------------------------
52 - twisted.words.protocols.irc.IRCClient.me was deprecated in Twisted
53 9.0 and has been removed. Use IRCClient.describe instead. (#5059)
60 Twisted Words 11.0.0 (2011-04-01)
61 =================================
65 - twisted.words.protocols.irc.IRCClient now has an invite method.
70 - twisted.words.protocols.irc.IRCClient.say is once again able to
71 send messages when using the default value for the length limit
73 - twisted.words.protocols.jabber.jstrports is once again able to
74 parse jstrport description strings. (#4771)
75 - twisted.words.protocols.msn.NotificationClient now calls the
76 loginFailure callback when it is unable to connect to the Passport
77 server due to missing SSL dependencies. (#4801)
78 - twisted.words.protocols.jabber.xmpp_stringprep now always uses
79 Unicode version 3.2 for stringprep normalization. (#4850)
81 Improved Documentation
82 ----------------------
83 - Removed the non-working AIM bot example, depending on the obsolete
84 twisted.words.protocols.toc functionality. (#4007)
85 - Outdated GUI-related information was removed from the IM howto.
88 Deprecations and Removals
89 -------------------------
90 - Remove twisted.words.protocols.toc, that was largely non-working
91 and useless since AOL disabled TOC on their AIM network. (#4363)
98 Twisted Words 10.2.0 (2010-11-29)
99 =================================
103 - twisted.words.protocols.irc.IRCClient.msg now enforces a maximum
104 length for messages, splitting up messages that are too long.
109 - twisted.words.protocols.irc.IRCClient no longer invokes privmsg()
110 in the default noticed() implementation. (#4419)
111 - twisted.words.im.ircsupport.IRCProto now sends the correct name in
112 the USER command. (#4641)
114 Deprecations and Removals
115 -------------------------
116 - Remove twisted.words.im.proxyui and twisted.words.im.tap. (#1823)
119 Twisted Words 10.1.0 (2010-06-27)
120 =================================
124 - twisted.words.im.basechat.ChatUI now has a functional
125 contactChangedNick with unit tests. (#229)
126 - twisted.words.protocols.jabber.error.StanzaError now correctly sets
127 a default error type and code for the remote-server-timeout
129 - twisted.words.protocols.jabber.xmlstream.ListenAuthenticator now
130 uses unicode objects for session identifiers (#4345)
133 Twisted Words 10.0.0 (2010-03-01)
134 =================================
138 - twisted.words.protocols.irc.IRCClient.irc_MODE now takes ISUPPORT
139 parameters into account when parsing mode messages with arguments
140 that take parameters (#3296)
144 - When twisted.words.protocols.irc.IRCClient's versionNum and
145 versionEnv attributes are set to None, they will no longer be
146 included in the client's response to CTCP VERSION queries. (#3660)
148 - twisted.words.protocols.jabber.xmlstream.hashPassword now only
149 accepts unicode as input (#3741, #3742, #3847)
153 - #2503, #4066, #4261
156 Twisted Words 9.0.0 (2009-11-24)
157 ================================
161 - IRCClient.describe is a new method meant to replace IRCClient.me to send
162 CTCP ACTION messages with less confusing behavior (#3910)
163 - The XMPP client protocol implementation now supports ANONYMOUS SASL
164 authentication (#4067)
165 - The IRC client protocol implementation now has better support for the
166 ISUPPORT server->client message, storing the data in a new
167 ServerSupportedFeatures object accessible via IRCClient.supported (#3285)
171 - The twisted.words IRC server now always sends an MOTD, which at least makes
172 Pidgin able to successfully connect to a twisted.words IRC server (#2385)
173 - The IRC client will now dispatch "RPL MOTD" messages received before a
174 "RPL MOTD START" instead of raising an exception (#3676)
175 - The IRC client protocol implementation no longer updates its 'nickname'
176 attribute directly; instead, that attribute will be updated when the server
177 acknowledges the change (#3377)
178 - The IRC client protocol implementation now supports falling back to another
179 nickname when a nick change request fails (#3377, #4010)
181 Deprecations and Removals
182 -------------------------
183 - The TOC protocol implementation is now deprecated, since the protocol itself
184 has been deprecated and obselete for quite a long time (#3580)
185 - The gui "im" application has been removed, since it relied on GTK1, which is
186 hard to find these days (#3699, #3340)
190 - #2763, #3540, #3647, #3750, #3895, #3968, #4050
192 Words 8.2.0 (2008-12-16)
193 ========================
197 - There is now a standalone XMPP router included in twisted.words: it can be
198 used with the 'twistd xmpp-router' command line (#3407)
199 - A server factory for Jabber XML Streams has been added (#3435)
200 - Domish now allows for iterating child elements with specific qualified names
202 - IRCClient now has a 'back' method which removes the away status (#3366)
203 - IRCClient now has a 'whois' method (#3133)
207 - The IRC Client implementation can now deal with compound mode changes (#3230)
208 - The MSN protocol implementation no longer requires the CVR0 protocol to
209 be included in the VER command (#3394)
210 - In the IRC server implementation, topic messages will no longer be sent for
211 a group which has no topic (#2204)
212 - An infinite loop (which caused infinite memory usage) in irc.split has been
213 fixed. This was triggered any time a message that starts with a delimiter
215 - Jabber's toResponse now generates a valid stanza even when stanzaType is not
217 - The lifetime of authenticator instances in XmlStreamServerFactory is no
218 longer artificially extended (#3464)
230 - JID objects now have a nice __repr__ (#3156)
231 - Extending XMPP protocols is now easier (#2178)
235 - The deprecated mktap API is no longer used (#3127)
236 - A bug whereby one-time XMPP observers would be enabled permanently was fixed
245 - Provide function for creating XMPP response stanzas. (#2614, #2614)
246 - Log exceptions raised in Xish observers. (#2616)
247 - Add 'and' and 'or' operators for Xish XPath expressions. (#2502)
248 - Make JIDs hashable. (#2770)
252 - Respect the hostname and servername parameters to IRCClient.register. (#1649)
253 - Make EventDispatcher remove empty callback lists. (#1652)
254 - Use legacy base64 API to support Python 2.3 (#2461)
255 - Fix support of DIGEST-MD5 challenge parsing with multi-valued directives.
257 - Fix reuse of dict of prefixes in domish.Element.toXml (#2609)
258 - Properly process XMPP stream headers (#2615)
259 - Use proper namespace for XMPP stream errors. (#2630)
260 - Properly parse XMPP stream errors. (#2771)
261 - Fix toResponse for XMPP stanzas without an id attribute. (#2773)
262 - Move XMPP stream header procesing to authenticators. (#2772)
266 - #2617, #2640, #2741, #2063, #2570, #2847
274 - (Jabber) IQ.send now optionally has a 'timeout' parameter which
275 specifies a time at which to errback the Deferred with a
277 - (Jabber) SASL authentication, resource binding and session
278 establishment were added. (#1046) The following were done in
279 support of this change:
280 - Rework ConnectAuthenticator to work with initializer objects that
281 provide a stream initialization step.
282 - Reimplement iq:auth as an initializer.
283 - Reimplement TLS negotiation as an initializer.
284 - Add XMPPAuthenticator as a XMPP 1.0 client authenticator (only), along
285 with XMPPClientFactory.
286 - Add support for working with pre-XMPP-1.0 error stanzas.
287 - Remove hasFeature() from XmlStream as you can test (uri, name) in
289 - Add sendFooter() and sendStreamError() to XmlStream
293 - (Jabber) Deferreds from queries which were never resolved before
294 a lost connection are now errbacked (#2006)
295 - (Jabber) servers which didn't send a 'realm' directive in
296 authentication challenges no longer cause the Jabber client to
298 - (MSN) error responses are now properly turned into errbacks (#2019)
299 - (IRC) A trivial bug in IRCClient which would cause whois(oper=True)
300 to always raise an exception was fixed (#2089)
301 - (IM) Bugs in the error handling and already-connecting cases of
302 AbstractAccount.logOn were fixed (#2086)
306 - #1734, #1735, #1636, #1936, #1883, #1995, #2171, #2165, #2177
315 - Add support for stream and stanza level errors
316 - Create new IQ stanza helper that works with deferreds
317 - Add TLS support for initiating entities to XmlStream
318 - Fix account registration
320 - Fix various namespace issues
322 - Store namespace declarations in parsed XML for later serialization
323 - Fix user name/group collision in server service (#1655).
324 - Correctly recognize MSN capability messages (#861).
328 - Misc: #1283, #1296, #1302, #1424
329 - Fix unicode/str confusion in IRC server service.
335 - Fix digest authentication in Jabber
336 - Add Jabber xmlstream module that contains the Jabber specific bits that
337 got factored out of Twisted Xish's xmlstream, and make it suitable for
338 implementing full XMPP support.
340 - Fixed serialization in _ListSerializer
341 - Removed unneeded extra whitespace generated in serialization
342 - Removed _Serializer in favour of _ListSerializer
343 - Use unicode objects for representing serialized XML, instead of utf-8
345 - Properly catch XML parser errors
346 - Rework and fix element stream test cases
347 - Strip xmlstream from all Jabber specifics that moved to Twisted Words
348 - Added exhaustive docstrings to xmlstream.
351 - Not backwards compatible
354 - Fix some miscellaneous bugs in OSCAR
355 - Add QUIT notification for IRC
356 - Fix message wrapping
358 - Add stringprep support for Jabber IDs
359 This only works properly on 2.3.2 or higher