forked from AnyEvent-XMPP/AnyEvent-XMPP
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Changes
289 lines (265 loc) · 14.8 KB
/
Changes
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
Revision history for AnyEvent::XMPP:
0.55 Sat, 01 Mar 2014 22:41:30 +0100
- Receipts: skip re-send if this jabber account is offline
- Bugfix: properly clear the disconnected callback
- add repository information to META file
0.54 Wed Dec 5 23:21:03 CET 2012
- Add AnyEvent::XMPP::Ext::Receipts for XEP-0184 message receipts
- Fix error message "protocol error" when connecting without
Net::SSLeay by depending on Net::SSLeay
- Bugfix: don’t call ->release on destroyed object
0.53 Wed Oct 10 13:05:08 CEST 2012
- Fix send_iq_hook, send_message_hook, send_presence_hook
- Enable create_cbs for MUC::Message as well (thanks omega)
- switch from Digest::SHA1 to Digest::SHA which is in core
(thanks jones)
- Fix parser error on auth failure (thanks RHOELZ)
- Bugfix: properly set $handled = 1 in IQ handlers
0.52 Fri Aug 14 10:53:23 CEST 2009
- fixed a problem in xmpp_datetime_as_timestamp.
0.51 Fri Aug 14 10:53:23 CEST 2009
- small uncleanliness fixed in ::Parser.
- thanks to [email protected], who found an incompat.
between OE 1.1 and AnyEvent::XMPP (thanks to [email protected]).
- added message id and xml_node to IM::Message/Delayed
(thanks to [email protected]).
0.5 Mon Mar 16 21:13:13 CET 2009
- added patch for Ext::Pubsub.
- melo fixed some memleaks.
- fixed another long time memleak in the parser.
0.4 Sun Feb 15 22:59:38 CET 2009
- added a $dont_retrieve_vcard to ::Ext::VCard, to
prevent retrieval when session_ready event comes.
- implemented support for old-style (tcp port 5223) SSL connections,
use the old_style_ssl option for ::Connection to enable TLS handshaking
upon TCP connect.
- added $message argument to subscription related events. the contents
comes from the <status> elements in the presence stanza.
- made special contact for keeping track of the presences of our own
resources. See ::IM::Roster::get_own_contact() and ::IM::Contact::is_me().
- minor fixes in ::Ext::MUC.
- added 'stream_version_override' parameter to ::Connection, mostly
for testing purposes with ejabberd (to enforce old-jabber-style
authentication).
- partially reversed a patch w.r.t. hostname usage for SASL mechanism.
A flag 'use_host_as_sasl_hostname' is provided for giving the hostname
to SASL.
- rewrote AnyEvent::XMPP::Ext::MUC a bit and made the API more sane.
for example: join_room doesn't take a callback anymore.
- added more C<disco_feature> methods to the extensions, so that
they can be registered to an ::Ext::Disco extension to display
support for certain features.
- xmpp_datetime_as_timestamp fixed w.r.t. UTC based timestamps.
- added possibility to override iq_xml events, and documented
how to overtake handling of message, presence and iq stanzas.
- added patch from Pedro Melo to give stanzas sent by a ::Component
the right namespace.
- added patch from Pedro Melo to fix passing of the host in ::Component.
0.3 Mon Jan 28 23:00:58 CET 2009
- fixed a bug in disconnect error reporting.
- fixed bad parameter passing of AnyEvent::XMPP::Client to
AnyEvent::XMPP::IM::Account, also 'host' is used for overriding
the destination host now (and not 'domain', as it was in version
0.2).
- half fixed RT #42194 (Domain vs. host and GSSAPI),
passing the hostname specified by 'host' for ::Connection to
Authen::SASL's client_new method.
- fixed bug in ::XMPP::Client where remove_account didn't work
as expected (and set_accounts).
0.2 Sun Dec 28 15:09:25 CET 2008
- Using the better tested AnyEvent::Handle and
AnyEvent::Socket for DNS resolution, TCP connect and TLS now.
- override_host and override_port have been removed.
- weird DNS SRV handling and comments have been removed.
- removed blocked_write option and drain function, send_buffer_empty event
should be used. blocking behaviour should be emulated with send_buffer_empty
at the toplevel of the program.
- improved message tracking api in ::IM::Account
- added added_account/removed_account events to ::Client
- added set_accounts() function to ::Client
- removed unneccessary sample (devcl)
- renamed module from Net::XMPP2 to AnyEvent::XMPP
- minor additions to ::Ext::Pubsub.
0.14 Fri Aug 1 12:13:11 CEST 2008
- NOTICE: This is the last release of this module under the name
Net::XMPP2. All further releases will be done under the name
AnyEvent::XMPP!
- applied fixes from git://github.com/melo/net--xmpp2.git
branch component-reply-with-from.
- fixed small bug in simple_component.
- fixed a debugging bug in the drain method of SimpleConnection,
where the written data wasn't passed to the debugging events.
- improved the documentation a bit and fixed typos.
0.13 Tue Apr 15 13:07:02 CEST 2008
- added a 'send_buffer_empty' event, to be able to wait
for an empty send buffer. and also the C<drain> method, which
will block until the send buffer is empty. also added a C<blocking_write>
option for L<Net::XMPP2::Connection>.
- added a default handler to L<Net::XMPP2::Parser> which
recognizes and stores CDATA now correctly, so that it can
be retrieved from the nodes structure by the C<as_string> method
of L<Net::XMPP2::Node> correctly.
0.12 Fri Apr 11 16:30:40 CEST 2008
- API CHANGE: The C<connect> method of L<Net::XMPP2::SimpleConnection>
and thus L<Net::XMPP2::Connection> is now non-blocking!
IMPORTANT: Please revisit your connection code and adjust accordingly!
- improved the documentation w.r.t. event callback arguments a bit
- improved the documentation of the send_iq method of Net::XMPP2::Connection
- added samples/display_my_avatar
- added support for XEP-0054 (vCard) and added a test for it (z_07_vcard.t)
- replaced the big and unmaintainable MUC test by some smaller
tests.
- fixed a bug with disconnect event propagation by Net::XMPP2::Client
- added a connect_timeout argument to Net::XMPP2::Connection and
added an interface for setting it to ::SimpleConnection.
- fixed a serious bug in the split_jid regex, and added a test for
split_jid
- fixed a few connection error bugs in Net::XMPP2::Client and the
SimpleConnection class.
0.11 Fri Mar 21 03:00:58 CET 2008
- tweaked tests a bit
- and added use strict to some modules
- fixed a small oversight in Ext::Version w.r.t. to 'use strict'
- added the pod-coverage test
- added some more MUC functions (Net::XMPP2::Ext::MUC::Room::get_users)
- added nickcollision callback
- fixed some errors in the documentation
- added a xmpp_datetime_as_timestamp utility function
- fixed a minor documentation bug in Net::XMPP2::Client
- removed the init method from the public interface and made
the stream initiation implicit on connect.
0.10 Wed Dec 12 15:38:58 CET 2007
- implemented conversation/chat session tracking,
see Net::XMPP2::Client::send_message and
Net::XMPP2::IM::Account::send_tracked_message.
- fixed a race condition with the account adding routine
of Net::XMPP2::Client.
- also fixed a small bug in stream initiation, Net::XMPP2 now
sends a xml declaration again.
- implemented a very old authentication method which makes Net::XMPP2
now also work with jabberd 1.4.2. See also the
'disable_old_jabber_authentication' option in Net::XMPP2::Connection
- fixed cpan bug #29724 (unpacking the tarball on os x works now
after renaming devcl -> dev_client).
- fixed a bug with handling the is_room query in MUC
0.09 Sun Sep 16 09:25:25 CEST 2007
- fixed a small bug important bug in namespace setting when binding
a resource. this was a showstopper for eg. jabber.org.
0.08 Sat Sep 15 10:50:00 CEST 2007
- fixed glitches in tests
- added disco_info example
- updated disco_info example, added data form retrieval in disco_info
- fixed bug in whitespace ping
- added character filter functions for filtering out not-allowed XML
chars before sending them to the server. Even though this might be
a programmer error and shouldn't probably be handled by Net::XMPP2
I added it for convenience. Hopefully noone is confused.
- fixed potential bug in ping extension
- added a sample bot samples/talkbot
- fixed small issue in Writer.pm
- added other sample bot samples/talkbot_channel
- added sample script to retrieve roster: samples/retrieve_roster
0.07 Tue Aug 14 19:22:11 CEST 2007
- implemented whitespace ping and:
- XEP-0199 - XMPP Ping
- added next_iq_id() method to Net::XMPP2::Connection
- additions to Net::XMPP2::Event, you can now implement guards
for unregistration of registered event callbacks. You can also
remove all callbacks now and event names are case sensitive now.
- Net::XMPP2::Client adding already existing accounts
now updates them.
- further todo items killed for MUC support
- implemented mapping of old error codes to the new condition strings
and the other way around too in Net::XMPP2::Error::Stanza
- fallback namespace function for simxml() is now enabled all the time,
now default namespaces are nearly always generated an the namespace of a
node fallsback to the parent node if none was supplied.
- increased test timeout to 20 secs and offered an environment variable
to override it.
- the XML writer doesn't write a encoding declaration anymore, for the sake
of XMPP.
0.06 Wed Aug 1 15:53:56 CEST 2007
- reply_iq_result and reply_iq_error now attach a from attribute themselves.
- added general instructions for the test suite which also seems to be
useful to test servers :-)
- implemented XEP-0092
- reviewed the message API a bit, take care
- started implementation of MUC (XEP-0045).
- added support for:
- XEP-0082 - XMPP Date and Time Profiles
- XEP-0091 - Delayed Delivery (legacy)
- XEP-0203 - Delayed Delivery (new)
- reworked subscription system a bit, now you have to subscribe
manually by calling the contact's methods yourself.
- fixed weirdties with JID prepping
- removed to attribute from iq auth get
- implemented iq auth (XEP-0078)
- fixed some bugs and improved the API a bit
- implemented the possibility of intercepting events from the library.
0.05 Fri Jul 27 17:45:16 CEST 2007
- fixed destructor problem in disco
- disco extension now supports multiple identities
- added some unit tests!!!11
- improved error reporting a bit of internal exceptions
- fixed a bug where empty passwords didn't work
- typo bugfix in Net::XMPP2::Ext::Registration::submit_form
- lots of documentation bugfixes and also added some
more useful examples to the synopsises.
- fixed a bug with enabling and disabling multiple features
with enable_feature (as Ext::OOB does).
0.04 Thu Jul 26 20:41:57 CEST 2007
- actually added event send_stanza_data after documenting it
- added samples/simple_register_example
- fixed some bugs in Net::XMPP2::Ext::Disco
- now really added support for in band registration (XEP-0077)
- added support for out of band transfers (XEP-0066)
0.03 Wed Jul 25 12:04:06 CEST 2007
- fundamentally changed how events work, it's now less
errorprone for the programmer (you don't have to return
a true value now all the time and can call $self->unreg_me
for unregistering a callback).
Because of this change send_*_hook and contact_did_* events
have changed their arguments.
- implemented SAX event generator for easier integration
with other XML libraries and generation of DOM.
- added the possibility to completly restore the original
XML data from a Net::XMPP2::Node.
- implemented the component protocol to establish a component
stream with a server.
- reordered events a bit so that session_ready comes after
roster retrieval (when it is retrieved)
- added possibility to set the initial presence priority
or prevent sending of initial presence
(see Net::XMPP2::IM::Connection).
- fixed some minor issue with handling invalid disco results
- added send_*_hook event hooks for future extensions
like the entity capabilities to be able to add payload
to outgoing stanzas
0.02 Wed Jul 11 22:55:56 CEST 2007
- added iq_xml event
- added development client example in samples/devcl/
- added some debugging events: debug_recv, debug_send, send_stanza_data,
and recv_stanza_xml.
- the error event now also provides error reporting
about exceptions (eq. in IQ callbacks, which is certainly
useful for development!)
- fixed error in binding-handling in case the bind iq gets a timeout
- added samples/room_lister* and samples/conference_lister
- redesigned disco mechanism a bit
- added error collection event for nicer error reporting capabilities
- added samples/disco_test
- implemented XEP-0004
- added samples/limit_searcher
- added simxml()
- splitting up large packets when writing
- fixed bad link in documentation of Net::XMPP2::IM::Connection
- added samples/simple_example_1
- fixed some typos (thanks to lynx aka carlo)
0.01 Thu Jul 5 19:34:30 CEST 2007
- fixed first bugs and tested in daily usage.
- implemented XEP-0086
- implemented XEP-0030
- implemented XEP-0077
- implemented 95% of RFC 3921
- implemented 95% of RFC 3920
- first version, released to an unsuspecting world :-)