1 | 1.3.1 - 20140324
|
2 | ================
|
3 |
|
4 | Broker:
|
5 | - Prevent possible crash on client reconnect. Closes bug #1294108.
|
6 | - Don't accept zero length unsubscription strings (MQTT v3.1.1 fix)
|
7 | - Don't accept QoS 3 (MQTT v3.1.1 fix)
|
8 | - Don't disconnect clients immediately on HUP to give chance for all data to
|
9 | be read.
|
10 | - Reject invalid un/subscriptions e.g. foo/+bar #/bar.
|
11 | - Take more care not to disconnect clients that are sending large messages.
|
12 |
|
13 | Client library:
|
14 | - Fix socketpair code on the Mac.
|
15 | - Fix compilation for WITH_THREADING=no.
|
16 | - Break out of select() when calling mosquitto_loop_stop().
|
17 | - Reject invalid un/subscriptions e.g. foo/+bar #/bar.
|
18 |
|
19 | Clients:
|
20 | - Fix keepalive value on mosquitto_pub.
|
21 | - Fix possibility of mosquitto_pub not exiting after sending messages when
|
22 | using -l.
|
23 |
|
24 | 1.3 - 20140316
|
25 | ==============
|
26 |
|
27 | Broker:
|
28 | - The broker no longer ignores the auth_plugin_init() return value.
|
29 | - Accept SSLv2/SSLv3 HELLOs when using TLSv1, whilst keeping SSLv2 and SSLv3
|
30 | disabled. This increases client compatibility without sacrificing security.
|
31 | - The $SYS tree can now be disabled at runtime as well as at compile time.
|
32 | - When remapping bridged topics, only check for matches when the message
|
33 | direction is correct. This allows two identical topics to be remapped
|
34 | differently for both in and out.
|
35 | - Change "$SYS/broker/heap/current size" to "$SYS/broker/heap/current" for
|
36 | easier parsing.
|
37 | - Change "$SYS/broker/heap/maximum size" to "$SYS/broker/heap/maximum" for
|
38 | easier parsing.
|
39 | - Topics are no longer normalised from e.g a///topic to a/topic. This matches
|
40 | the behaviour as clarified by the Oasis MQTT spec. This will lead to
|
41 | unexpected behaviour if you were using topics of this form.
|
42 | - Log when outgoing messages for a client begin to drop off the end of the
|
43 | queue.
|
44 | - Bridge clients are recognised as bridges even after reloading from
|
45 | persistence.
|
46 | - Basic support for MQTT v3.1.1. This does not include being able to bridge to
|
47 | an MQTT v3.1.1 broker.
|
48 | - Username is displayed in log if present when a client connects.
|
49 | - Support for 0 length client ids (v3.1.1 only) that result in automatically
|
50 | generated client ids on the broker (see option allow_zero_length_clientid).
|
51 | - Ability to set the prefix of automatically generated client ids (see option
|
52 | auto_id_prefix).
|
53 | - Add support for TLS session resumption.
|
54 | - When using TLS, the server now chooses the cipher to use when negotiating
|
55 | with the client.
|
56 | - Weak TLS ciphers are now disabled by default.
|
57 |
|
58 | Client library:
|
59 | - Fix support for Python 2.6, 3.0, 3.1.
|
60 | - Add support for un/subscribing to multiple topics at once in un/subscribe().
|
61 | - Clients now close their socket after sending DISCONNECT.
|
62 | - Python client now contains its version number.
|
63 | - C library mosquitto_want_write() now supports TLS clients.
|
64 | - Fix possible memory leak in C/C++ library when communicating with
|
65 | a broker that doesn't follow the spec.
|
66 | - Return strerror() through mosquitto_strerror() to make error printing
|
67 | easier.
|
68 | - Topics are no longer normalised from e.g a///topic to a/topic. This matches
|
69 | the behaviour as clarified by the Oasis MQTT spec. This will lead to
|
70 | unexpected behaviour if you were using topics of this form.
|
71 | - Add support for SRV lookups.
|
72 | - Break out of select() on publish(), subscribe() etc. when using the threaded
|
73 | interface. Fixes bug #1270062.
|
74 | - Handle incoming and outgoing messages separately. Fixes bug #1263172.
|
75 | - Don't terminate threads on mosquitto_destroy() when a client is not using
|
76 | the threaded interface but does use their own thread. Fixes bug #1291473.
|
77 |
|
78 | Clients:
|
79 | - Add --ciphers to allow specifying which TLS ciphers to support.
|
80 | - Add support for SRV lookups.
|
81 | - Add -N to sub client to suppress printing of EOL after the payload.
|
82 | - Add -T to sub client to suppress printing of a topic hierarchy.
|
83 |
|
84 | 1.2.3 - 20131202
|
85 | ================
|
86 |
|
87 | Broker:
|
88 | - Don't always attempt to call read() for SSL clients, irrespective of whether
|
89 | they were ready to read or not. Reduces syscalls significantly.
|
90 | - Possible memory leak fixes.
|
91 | - Further fix for bug #1226040: multiple retained messages being delivered for
|
92 | subscriptions ending in #.
|
93 | - Fix bridge reconnections when using multiple bridge addresses.
|
94 |
|
95 | Client library:
|
96 | - Fix possible memory leak in C/C++ library when communicating with
|
97 | a broker that doesn't follow the spec.
|
98 | - Block in Python loop_stop() until all messages are sent, as the
|
99 | documentation states should happen.
|
100 | - Fix for asynchronous connections on Windows. Closes bug #1249202.
|
101 | - Module version is now available in mosquitto.py.
|
102 |
|
103 | Clients:
|
104 | - mosquitto_sub now uses fwrite() instead of printf() to output messages, so
|
105 | messages with NULL characters aren't truncated.
|
106 |
|
107 | 1.2.2 - 20131021
|
108 | ================
|
109 |
|
110 | Broker:
|
111 | - Fix compliance with max_inflight_messages when a non-clean session client
|
112 | reconnects. Closes one of the issues on bug #1237389.
|
113 |
|
114 | Client library:
|
115 | - Fix incorrect inflight message accounting, which caused messages to go
|
116 | unsent. Partial fix for bug #1237351.
|
117 | - Fix potential memory corruption when sending QoS>0 messages at a high rate
|
118 | using the threaded interface. Further fix for #1237351.
|
119 | - Fix incorrect delay scaling when exponential_backoff=true in
|
120 | mosquitto_reconnect_delay_set().
|
121 | - Some pep8 fixes for Python.
|
122 |
|
123 | 1.2.1 - 20130918
|
124 | ================
|
125 |
|
126 | Broker:
|
127 | - The broker no longer ignores the auth_plugin_init() return value. Closes
|
128 | bug #1215084.
|
129 | - Use RTLD_GLOBAL when opening authentication plugins on posix systems. Fixes
|
130 | resolving of symbols in libraries used by authentication plugins.
|
131 | - Add/fix some config documentation.
|
132 | - Fix ACLs for topics with $SYS.
|
133 | - Clients loaded from the persistence file on startup were not being added to
|
134 | the client hash, causing subtle problems when the client reconnected,
|
135 | including ACLs failing. This has been fixed.
|
136 | - Add note to mosquitto-tls man page stating that certificates need to be
|
137 | unique. Closes bug #1221285.
|
138 | - Fix incorrect retained message delivery when using wildcard subs in some
|
139 | circumstances. Fixes bug #1226040.
|
140 |
|
141 | Client library:
|
142 | - Fix support for Python 2.6, 3.0, 3.1.
|
143 | - Fix TLS subjectAltName verification and segfaults.
|
144 | - Handle EAGAIN in Python on Windows. Closes bug #1220004.
|
145 | - Fix compilation when using WITH_TLS=no.
|
146 | - Don't fail reconnecting in Python when broker is temporarily unavailable.
|
147 |
|
148 | 1.2 - 20130708
|
149 | ==============
|
150 |
|
151 | Broker:
|
152 | - Replace O(n) username lookup on CONNECT with a roughly O(1) hashtable version.
|
153 | - It is now possible to disable $SYS at compile time.
|
154 | - Add dropped publish messages to load tree in $SYS. Closes bug #1183318.
|
155 | - Add support for logging SUBSCRIBE/UNSUBSCRIBE events.
|
156 | - Add "log_dest file" logging support.
|
157 | - Auth plugin ACL check function now passes the client id as well as username
|
158 | and password.
|
159 | - The queue_qos0_messages option wasn't working correctly, this has now been
|
160 | fixed. Closes bug #1125200.
|
161 | - Don't drop all messages for disconnected durable clients when
|
162 | max_queued_messages=0.
|
163 | - Add support for "log_type all".
|
164 | - Add support for "-v" option on the command line to provide the equivalent of
|
165 | "log_type all" without needing a config file.
|
166 | - Add the "upgrade_outgoing_qos" option, a non-standard feature.
|
167 | - Persistence data is now written to a temporary file which is atomically
|
168 | renamed on completion, so a crash during writing will not produce a corrupt
|
169 | file.
|
170 | - mosquitto.conf is now installed as mosquitto.conf.example
|
171 | - Configuration file errors are now reported with filename and line number.
|
172 | - The broker now uses a monotonic clock if available, to avoid changes in time
|
173 | causing client disconnections or message retries.
|
174 | - Clean session and keepalive status are now display the log when a client
|
175 | connects.
|
176 | - Add support for TLSv1.2 and TLSv1.1.
|
177 | - Clients that connect with zero length will topics are now rejected.
|
178 | - Add the ability to set a maximum allowed PUBLISH payload size.
|
179 | - Fix an ACL with topic "#" incorrectly granting access to $SYS.
|
180 | - Fix retained messages incorrectly being set on wildcard topics, leading to
|
181 | duplicate retained messages being sent on subscription. Closes bug #1116233.
|
182 | - Don't discard listener values when no "port" option given. Closes bug
|
183 | #1131406.
|
184 | - Client password check was always failing when security was being reapplied
|
185 | after a config reload. This meant that all clients were being disconnected.
|
186 | This has been fixed.
|
187 | - Fix build when WITH_TLS=no. Closes bug #1174971.
|
188 | - Fix single outgoing packets not being sent in a timely fashion if they were
|
189 | not sent in one call to write(). Closes bug #1176796.
|
190 | - Fix remapping of messages for clients connected to a listener with
|
191 | mount_point set. Closes bug #1180765.
|
192 | - Fix duplicate retained messages being sent for some wildcard patterns.
|
193 | - If a client connects with a will topic to which they do not have write
|
194 | access, they are now disconnected with CONNACK "not authorised".
|
195 | - Fix retained messages on topic foo being incorrectly delivered to
|
196 | subscriptions of /#
|
197 | - Fix handling of SSL errors on SSL_accept().
|
198 | - Fix handling of QoS 2 messages on client reconnect.
|
199 | - Drop privileges now sets supplementary groups correctly.
|
200 | - Fix load reporting interval (is now 60s).
|
201 | - Be strict with malformed PUBLISH packets - clients are now disconnected
|
202 | rather than the packet discarded. This goes inline with future OASIS spec
|
203 | changes and makes other changes more straightforward.
|
204 | - Process incoming messages denied by ACL properly so that clients don't keep
|
205 | resending them.
|
206 |
|
207 | - Add support for round_robin bridge option.
|
208 | - Add bridge support for verifying remote server certificate subject against
|
209 | the remote hostname.
|
210 | - Fix problem with out of order calls to free() when restarting a lazy bridge.
|
211 | - The broker now attempts to resolve bind_address and bridge addresses
|
212 | immediately when parsing the config file in order to detect invalid hosts.
|
213 | - Bridges now set their notification state before attempting to connect, so if
|
214 | they fail to connect the state can still be seen.
|
215 | - Fix bridge notification payload length - no need to send a null byte.
|
216 |
|
217 | - mosquitto_passwd utility now reports errors more clearly.
|
218 | - Fix "mosquitto_passwd -U".
|
219 |
|
220 | Client library:
|
221 | - Add support for TLSv1.2 and TLSv1.1, except for on the Python module.
|
222 | - Add support for verifying remote server certificate subject against the
|
223 | remote hostname.
|
224 | - Add mosquitto_reconnect_async() support and make asynchronous connections
|
225 | truely asynchronous rather than simply deferred. DNS lookups are still
|
226 | blocking, so asynchronous connections require an IP address instead of
|
227 | hostname.
|
228 | - Allow control of reconnection timeouts in mosquitto_loop_forever() and after
|
229 | mosquitto_loop_start() by using mosquitto_reconnect_delay_set().
|
230 | - Fix building on Android NDK.
|
231 | - Re-raise unhandled errors in Python so as not to provide confusing error
|
232 | messages later on.
|
233 | - Python module supports IPv6 connections.
|
234 | - mosquitto_sub_topic_tokenise() was behaving incorrectly if the last topic
|
235 | hierarchy had only a single character. This has been fixed. Closes bug
|
236 | #1163348.
|
237 | - Fix possible crash after disconnects when using the threaded interface with
|
238 | TLS.
|
239 | - Allow build/install without Python. Closes bug #1174972.
|
240 | - Add support for binding connection to a local interface.
|
241 | - Implement maximum inflight messages handling.
|
242 | - Fix Python client not handling will_payload==None.
|
243 | - Fix potential memory leak when setting username/password.
|
244 | - Fix handling of QoS 2 messages on reconnect.
|
245 | - Improve handling of mosquitto_disconnect() with threaded mode.
|
246 |
|
247 |
|
248 | Clients:
|
249 | - Add support for TLSv1.2 and TLSv1.1.
|
250 | - Sub client can now suppress printing of messages with the retain bit set.
|
251 | - Add support for binding connection to a local interface.
|
252 | - Implement maximum inflight messages handling for the pub client.
|
253 |
|
254 | 1.1.3 - 20130211
|
255 | ================
|
256 |
|
257 | Broker:
|
258 | - mosquitto_passwd utility now uses tmpfile() to generate its temporary data
|
259 | storage file. It also creates a backup file that can be used to recover data
|
260 | if an errors occur.
|
261 |
|
262 | Other:
|
263 | - Build script fixes to help packaging on Debian.
|
264 |
|
265 | 1.1.2 - 20130130
|
266 | ================
|
267 |
|
268 | Client library:
|
269 | - Fix tls_cert_reqs not being set to SSL_VERIFY_PEER by default. This meant
|
270 | that clients were not verifying the server certificate when connecting over
|
271 | TLS. This affects the C, C++ and Python libraries.
|
272 |
|
273 | 1.1.1 - 20130116
|
274 | ================
|
275 |
|
276 | Broker:
|
277 | - Fix crash on reload if using acl patterns.
|
278 |
|
279 | Client library:
|
280 | - Fix static C++ functions not being exported on Windows. Fixes bug #1098256.
|
281 |
|
282 | 1.1 - 20121219
|
283 | ==============
|
284 |
|
285 | Broker:
|
286 | - Add $SYS/broker/messages/dropped
|
287 | - Add $SYS/broker/clients/expired
|
288 | - Replace $SYS/broker/+/per second/+ with moving average versions published at
|
289 | $SYS/broker/load/#
|
290 | - Add $SYS/broker/load/sockets/+ and $SYS/broker/load/connections/+
|
291 | - Documentation on password file format has been fixed.
|
292 | - Disable SSL compression. This reduces memory usage significantly and removes
|
293 | the possibility of CRIME type attacks.
|
294 | - Enable SSL_MODE_RELEASE_BUFFERS mode to reduce SSL memory usage further.
|
295 | - Add allow_duplicate_messages option.
|
296 | - ACL files can now have comment lines with # as the first character.
|
297 | - Display message on startup about which config is being loaded.
|
298 | - Fix max_inflight_messages and max_queued_messages not being applied.
|
299 | - Fix documentation error in mosquitto.conf.
|
300 | - Ensure that QoS 2 queued messages are sent out in a timely manner.
|
301 | - Local bridges now act on clean_session correctly.
|
302 | - Local bridges with clean_session==false now remove unused subscriptions on
|
303 | broker restart.
|
304 | - The $SYS/broker/heap/# messages now no longer include "bytes" as part of the
|
305 | string for ease of use.
|
306 |
|
307 | Client library:
|
308 | - Free memory used by OpenSSL in mosquitto_lib_cleanup() where possible.
|
309 | - Change WebSocket subprotocol name to mqttv3.1 to make future changes easier
|
310 | and for compatibility with other implementations.
|
311 | - mosquitto_loop_read() and mosquitto_loop_write() now handle errors
|
312 | themselves rather than having mosquitto_loop() handle their errors. This
|
313 | makes using them in a separate event loop more straightforward.
|
314 | - Add mosquitto_loop_forever() / loop_forever() function call to make simple
|
315 | clients easier.
|
316 | - Disable SSL compression. This reduces memory usage significantly and removes
|
317 | the possibility of CRIME type attacks.
|
318 | - Enable SSL_MODE_RELEASE_BUFFERS mode to reduce SSL memory usage further.
|
319 | - mosquitto_tls_set() will now return an error or raise an exception
|
320 | immediately if the CA certificate or client certificate/key cannot be
|
321 | accessed.
|
322 | - Fix potential memory leaks on connection failures.
|
323 | - Don't produce return error from mosquitto_loop() if a system call is
|
324 | interrupted. This prevents disconnects/reconnects in threaded mode and
|
325 | simplifies non-threaded client handling.
|
326 | - Ignore SIGPIPE to prevent unnecessary client quits in threaded mode.
|
327 | - Fix document error for mosquitto_message_retry_set().
|
328 | - Fix mosquitto_topic_matches_sub() for subscriptions with + as the final
|
329 | character. Fixes bug #1085797.
|
330 | - Rename all "obj" parameters to "userdata" for consistency with other
|
331 | libraries.
|
332 | - Reset errno before network read/write to ensure EAGAIN isn't mistakenly
|
333 | returned.
|
334 | - The message queue length is now tracked and used to determine the maximum
|
335 | number of packets to process at once. This removes the need for the
|
336 | max_packets parameter which is now unused.
|
337 | - Fix incorrect error value in Python error_string() function. Fixes bug
|
338 | #1086777.
|
339 | - Reset last message in/out timer in Python module when we send a PINGREQ.
|
340 | Fixes too-early disconnects.
|
341 |
|
342 | Clients:
|
343 | - Clients now display their own version number and library version number in
|
344 | their help messages.
|
345 | - Fix "mosquitto_pub -l -q 2" disconnecting before all messages were
|
346 | transmitted.
|
347 | - Fix potential out-of-bounds array access with client ids. Fixes bug
|
348 | #1083182.
|
349 |
|
350 | Other:
|
351 | - mosquitto_passwd can now convert password files with plain text files to
|
352 | hashed versions.
|
353 |
|
354 | 1.0.5 - 20121103
|
355 | ================
|
356 |
|
357 | Broker:
|
358 | - Fix crash when the broker has use_identity_as_username set to true but a
|
359 | client connects without a certificate.
|
360 | - mosquitto_passwd should only be installed if WITH_TLS=yes.
|
361 |
|
362 | Library:
|
363 | - Use symbolic errno values rather than numbers in Python module to avoid
|
364 | cross platform issues (incorrect errno on Mac OS).
|
365 |
|
366 | Other:
|
367 | - Build script fixes for FreeBSD.
|
368 |
|
369 | 1.0.4 - 20121017
|
370 | ================
|
371 |
|
372 | Broker:
|
373 | - Deal with poll() POLLIN/POLLOUT before POLL[RD]HUP to correctly handle the
|
374 | case where a client sends data and immediately closes its socket.
|
375 |
|
376 | Library:
|
377 | - Fix memory leak with messages of QoS=2. Fixes bug #1064981.
|
378 | - Fix potential thread synchronisation problem with outgoing packets in the
|
379 | Python module. Fixes bug #1064977.
|
380 |
|
381 | Clients:
|
382 | - Fix "mosquitto_sub -l" incorrectly only sending one message per second.
|
383 |
|
384 | 1.0.3 - 20120927
|
385 | ================
|
386 |
|
387 | Broker:
|
388 | - Fix loading of psk files.
|
389 | - Don't return an error when reloading config if an ACL file isn't defined.
|
390 | This was preventing psk files being reloaded.
|
391 | - Clarify meaning of $SYS/broker/clients/total in mosquitto(8) man page.
|
392 | - Clarify meaning of $SYS/broker/messages/stored in mosquitto(8) man page.
|
393 | - Fix non-retained message delivery when subscribing to #.
|
394 | - Fix retained message delivery for subs to foo/# with retained messages at
|
395 | foo.
|
396 | - Include the filename in password/acl file loading errors.
|
397 |
|
398 | Library:
|
399 | - Fix possible AttributeError when self._sock == None in Python module.
|
400 | - Fix reconnecting after a timeout in Python module.
|
401 | - Fix reconnecting when there were outgoing packets in the queue in the Python
|
402 | module.
|
403 | - Fix problem with mutex initialisation causing crashes on some Windows
|
404 | installations.
|
405 |
|
406 | 1.0.2 - 20120919
|
407 | ================
|
408 |
|
409 | Broker:
|
410 | - If the broker was configured for persistence, a durable client had a
|
411 | subscription to topics in $SYS/# and had messages in its queue when the
|
412 | broker restarted, then the persistent database would have messages missing
|
413 | and so the broker would not restart properly. This has been fixed.
|
414 |
|
415 | Library:
|
416 | - Fix threading problem on some systems.
|
417 |
|
418 | Tests:
|
419 | - Close socket after 08-ssl-connect-no-auth-wrong-ca.py test to prevent
|
420 | subsequent tests having problems.
|
421 |
|
422 | Build scripts:
|
423 | - Install pskfile.example in CMake. Fixes bug #1037504.
|
424 |
|
425 | Other:
|
426 | - Fix db_dump parameter printing message store and sub chunks.
|
427 |
|
428 | 1.0.1 - 20120815
|
429 | ================
|
430 |
|
431 | Broker:
|
432 | - Fix default log_dest when running as a Windows service.
|
433 |
|
434 | Client library:
|
435 | - Fix incorrect parameters in Python on_log() callback call. Fixes bug
|
436 | #1036818.
|
437 |
|
438 | Clients:
|
439 | - Clients now don't display TLS/TLS-PSK usage help if they don't support it.
|
440 |
|
441 | Build scripts:
|
442 | - Fix TLS-PSK support in the CMake build files.
|
443 | - Fix man page installation in the CMake build files.
|
444 | - Fix SYSCONFDIR in cmake on *nix when installing to /usr. Fixes bug #1036908.
|
445 |
|
446 | Documentation:
|
447 | - Fix mqtt/MQTT capitalisation in man pages.
|
448 | - Update compiling.txt.
|
449 | - Fix incorrect callback docs in mosquitto.py. Fixes bug #1036607.
|
450 | - Fix various doc typos and remove obsolete script. Fixes bug #1037088.
|
451 |
|
452 | 1.0 - 20120814
|
453 | ==============
|
454 |
|
455 | Broker:
|
456 |
|
457 | - Add SSL/TLS support.
|
458 | - Add TLS-PSK support, providing a simpler encryption method for constrained
|
459 | devices.
|
460 | - Passwords are now salted+hashed if compiled with WITH_TLS (recommended).
|
461 | - Add mosquitto_passwd for handling password files.
|
462 | - Add $SYS/broker/publish/messages/{sent|received} to show the number of
|
463 | PUBLISH messages sent/received.
|
464 | - Add $SYS/broker/publish/bytes/{sent|received} to show the number of
|
465 | PUBLISH bytes sent/received.
|
466 | - Add reload parameter for security init/cleanup functions.
|
467 | - Add option for expiring disconnected persistent clients.
|
468 | - Add option for queueing of QoS 0 messages when persistent clients are
|
469 | disconnected.
|
470 | - Enforce client id limits in the broker (only when WITH_STRICT_PROTOCOL is
|
471 | defined).
|
472 | - Fix reloading of log configuration.
|
473 | - Add support for try_private config option for bridge connections.
|
474 | - Add support for autosave_on_changes config option.
|
475 | - Add support for include_dir config option.
|
476 | - Add support for topic remapping.
|
477 | - Usernames were being lost when a non clean-session client reconnected,
|
478 | potentially causing problems with ACLs. This has been fixed.
|
479 | - Significant improvement to memory handling on Windows.
|
480 | - Bridges with outgoing topics will now set the retain flag correctly so that
|
481 | messages will be retained on the remote broker.
|
482 | - Incoming bridge connections are now detected by checking if bit 8 of the
|
483 | protocol version number is set. This requires support from the remote broker.
|
484 | - Add support for notification_topic option.
|
485 | - Add $SYS/broker/subscriptions/count and $SYS/broker/retained messages/count.
|
486 | - Add restart_timeout to control the amount of time an automatic bridge will
|
487 | wait before reconnecting.
|
488 | - Overlapping subscriptions are now handled properly. Fixes bug #928538.
|
489 | - Fix reloading of persistence_file and persistence_location.
|
490 | - Fix broker crash on incorrect protocol number.
|
491 | - Fix missing COMPAT_ECONNRESET define on Windows.
|
492 | - Clients that had disconnected were not always being detected immediately on
|
493 | Linux. This has been fixed.
|
494 | - Don't save $SYS messages to the on-disk persistent db. All $SYS messages
|
495 | should be reconstructed on a restart. This means bridge connection
|
496 | notifications will now be correct on a restart.
|
497 | - Fix reloading of bridge clients from the persistent db. This means that
|
498 | outgoing bridged topics should always work.
|
499 | - Local bridges are now no longer restricted by local ACLs.
|
500 | - Discard publish messages with zero length topics.
|
501 | - Drop to "mosquitto" user even if no config file specified.
|
502 | - Don't incorrectly allow topic access if ACL patterns but no normal ACL rules
|
503 | are defined.
|
504 |
|
505 | Client library:
|
506 |
|
507 | - Add SSL/TLS support.
|
508 | - Add TLS-PSK support, providing a simpler encryption method for constrained
|
509 | devices.
|
510 | - Add javascript/websockets client library.
|
511 | - Add "struct mosquitto *mosq" parameter for all callbacks in the client
|
512 | library. This is a binary incompatible change so the soversion of the
|
513 | libraries has been incremented. The new parameter should make it easier to
|
514 | use callbacks in practice.
|
515 | - Add mosquitto_want_write() for use when using own select() loop with
|
516 | mosquitto_socket().
|
517 | - Add mosquitto_connect_async() to provide a non-blocking connect client call.
|
518 | - Add mosquitto_user_data_set() to allow user data pointer to be updated.
|
519 | - Add "int rc" parameter to disconnect callback to indicate whether disconnect
|
520 | was unexpected or the result of calling mosquitto_disconnect().
|
521 | - Add mosquitto_strerror() for obtaining a string description of error numbers.
|
522 | - Add mosquitto_connack_string() for obtaining a string description of MQTT
|
523 | connection results.
|
524 | - Add mosquitto_will_clear() and change mosquitto_will_set() to only set the
|
525 | will.
|
526 | - Add mosquitto_sub_topic_tokenise() and mosquitto_sub_topic_tokens_free()
|
527 | utility functions to tokenise a subscription/topic string into a string
|
528 | array.
|
529 | - Add mosquitto_topic_matches_sub() to check whether a topic matches a
|
530 | subscription.
|
531 | - Replaced mosquitto_log_init() with mosquitto_log_callback_set() to allow
|
532 | clients to decide what to do with log messages.
|
533 | - Client will now disconnect itself from the broker if it doesn't receive a
|
534 | PINGRESP in the keepalive period after sending a PINGREQ.
|
535 | - Client will now send a PINGREQ if it has not received a message from the
|
536 | broker in keepalive seconds.
|
537 | - mosquitto_new() will now generate a random client id if the id parameter is
|
538 | NULL.
|
539 | - Added max_packets to mosquitto_loop(), mosquitto_loop_read() and
|
540 | mosquitto_loop_write() to control the maximum number of packets that are
|
541 | handled per call.
|
542 | - Payload parameters are now void * instead of uint8_t *.
|
543 | - The clean_session parameter has been moved from mosquitto_connect() to
|
544 | mosquitto_new() because it is a client parameter rather than a connection
|
545 | parameter.
|
546 | - Functions now use int instead of uint*_t where possible.
|
547 | - mosquitto_new() now sets errno to indicate failure type.
|
548 | - Return MOSQ_ERR_INVAL on zero length topic.
|
549 | - Fix automatic client id generation on Windows.
|
550 | - mosquitto_loop_misq() can now return MOSQ_ERR_NO_CONN.
|
551 | - Compile static library as well as dynamic library with default makefiles.
|
552 | - Rename C++ namespace from mosquittopp to mosqpp to remove ambiguity.
|
553 | - C++ lib_init(), lib_version() and lib_cleanup() are now in the mosqpp
|
554 | namespace directly, not mosquittopp class members.
|
555 | - The Python library is now written in pure Python and so no longer depends on
|
556 | libmosquitto.
|
557 | - The Python library includes SSL/TLS support.
|
558 | - The Python library should now be compatible with Python 3.
|
559 |
|
560 | Other:
|
561 |
|
562 | - Fix db_dump reading of retained messages.
|
563 | - Add example of logging all messages to mysql.
|
564 | - Add C++ client example.
|
565 | - Fix potential buffer overflow in pub/sub clients.
|
566 | - Add "make binary" target that doesn't make documents.
|
567 | - Add "--help" arguments to pub/sub clients.
|
568 | - Fix building on Solaris.
|
569 |
|
570 | 0.15 - 20120205
|
571 | ===============
|
572 |
|
573 | - Add support for $SYS/broker/clients/maximum and $SYS/broker/clients/active
|
574 | topics.
|
575 | - Add support for $SYS messages/byte per second received/sent topics.
|
576 | - Updated mosquitto man page - $SYS hierarchy and signal support were out of
|
577 | date.
|
578 | - Auto generated pub/sub client ids now include the hostname.
|
579 | - Tool for dumping persistent DB contents is available in src/db_dump. It isn't
|
580 | installed by default.
|
581 | - Enforce topic length checks in client library.
|
582 | - Implement "once" and "lazy" bridge start types.
|
583 | - Add new return type MOSQ_ERR_ERRNO to indicate that the errno variable should
|
584 | be checked for the real error code.
|
585 | - Add support for connection_messages config option.
|
586 | - mosquitto_sub will now refuse to run if the -c option (disable clean session)
|
587 | is given and no client id is provided.
|
588 | - mosquitto_pub now gives more useful error messages on invalid input or other
|
589 | error conditions.
|
590 | - Fix Python will_set() true/True typo.
|
591 | - Fix messages to topic "a/b" incorrectly matching on a subscription "a" if
|
592 | another subscription "a/#" exists.
|
593 |
|
594 | 0.14.4 - 20120106
|
595 | =================
|
596 |
|
597 | - Fix local bridge notification messages.
|
598 | - Fix return values for more internal library calls.
|
599 | - Fix incorrect out of memory checks in library and broker.
|
600 | - Never time out local bridge connections.
|
601 |
|
602 | 0.14.3 - 20111210
|
603 | =================
|
604 |
|
605 | - Fix potential crash when client connects with an invalid CONNECT packet.
|
606 | - Fix incorrect invalid socket comparison on Windows.
|
607 | - Server shouldn't crash when a message is published to foo/ when a
|
608 | subscription to foo/# exists (bug #901697).
|
609 | - SO_REUSEADDR doesn't work the same on Windows, so don't use it.
|
610 | - Cygwin builds now support Windows service features.
|
611 | - Fix $SYS/broker/bytes/sent reporting.
|
612 |
|
613 | 0.14.2 - 20111123
|
614 | =================
|
615 |
|
616 | - Add uninstall target for libs.
|
617 | - Don't try to write packet whilst in a callback.
|
618 |
|
619 | 0.14.1 - 20111117
|
620 | =================
|
621 |
|
622 | - Fix Python sytax errors (bug #891673).
|
623 |
|
624 | 0.14 - 20111116
|
625 | ===============
|
626 |
|
627 | - Add support for matching ACLs based on client id and username.
|
628 | - Add a Windows installer file (NSIS based).
|
629 | - Add native support for running the broker as a Windows service. This is the
|
630 | default when installed using the new installer.
|
631 | - Fix client count for listeners. When clients disconnect, decrement the
|
632 | count. Allow max_connections to work again.
|
633 | - Attempt to send all packets immediately upon being queued. This will result
|
634 | in more immediate network communication in many cases.
|
635 | - Log IP address when reporting CONNACK packets if the client id isn't yet
|
636 | known.
|
637 | - Fix payload length calculation in python will_set function.
|
638 | - Fix Python publish and will_set functions for payload=None.
|
639 | - Fix keepalive value being lost when reconnecting a client (bug #880863).
|
640 | - Persistence file writing now uses portable file functions, so the Cygwin
|
641 | broker build should no longer be necessary.
|
642 | - Duplicate code between the client and broker side has been reduced.
|
643 | - Queued messages for clients reconnecting with clean_session=false set were
|
644 | not being sent until the next message for that client was received. This has
|
645 | been fixed (bug #890724).
|
646 | - Fix subscriptions to # incorrectly matching against topics beginning with /
|
647 |
|
648 | 0.13 - 20110920
|
649 | ===============
|
650 |
|
651 | - Implement bridge state notification messages.
|
652 | - Save client last used mid in persistent database (DB version number bumped).
|
653 | - Expose message id in Python MosquittoMessage.
|
654 | - It is now possible to set the topic QoS level for bridges.
|
655 | - Python MosquittoMessage payload parameter is now a Python string, not a
|
656 | ctypes object which makes it much easier to use.
|
657 | - Fix queueing of messages for disconnected clients. The max_queued_messages
|
658 | option is now obeyed.
|
659 | - C++ library is now in its own namespace, mosquittopp.
|
660 | - Add support for adding log message timestamps in the broker.
|
661 | - Fix missing mosquitto_username_pw_set() python binding.
|
662 | - Fix keepalive timeout for reconnecting non clean-session clients. Prevents
|
663 | immediate disconnection on reconnection.
|
664 | - Fix subscription wildcard matching - a subscription of +/+ will now match
|
665 | against /foo
|
666 | - Fix subscription wildcard matching - a subscription of foo/# will now match
|
667 | against foo
|
668 | - When restoring persistent database, clients should be set to non
|
669 | clean-session or their subscriptions will be immediately removed.
|
670 | - Fix SUBACK payload for multiple topic subscriptions.
|
671 | - Don't send retained messages when a client subscribes to a topic it is
|
672 | already subscribed to.
|
673 |
|
674 | 0.12 - 20110725
|
675 | ===============
|
676 |
|
677 | - Reload (most) configuration on SIGHUP.
|
678 | - Memory tracking is no longer compiled in the client library.
|
679 | - Add --help option to mosquitto to display usage.
|
680 | - Add --id-prefix option to clients to allow easier use with brokers that are
|
681 | using the clientid_prefix option.
|
682 | - Fix compilation on QNX.
|
683 | - Add -P as a synonym argument for --pw in the clients.
|
684 | - Fix python MosquittoMessage payload parameter. This is now returned as a
|
685 | pointer to an array of c_uint8 values so binary data is handled correctly.
|
686 | If a string is needed, use msg.payload_str
|
687 | - Fix memory leaks on client authentication.
|
688 | - If password_file is not defined then clients can now connect even if they
|
689 | use a username/password.
|
690 | - Add mosquitto_reconnect() to the client library.
|
691 | - Add option for compiling with liberal protocol compliance support (enabled
|
692 | by default).
|
693 | - Fix problems with clients reconnecting and old messages remaining in the
|
694 | message store.
|
695 | - Display both ip and client id in the log message when a client connects.
|
696 | Change the socket connection message to make it more obvious that it is just
|
697 | a socket connection being made (bug #801135).
|
698 | - Fix retained message delivery where a subscription contains a +.
|
699 | - Be more lenient when reloading persistent database to reduce errors with
|
700 | empty retained messages.
|
701 |
|
702 | 0.11.3 - 20110707
|
703 | =================
|
704 |
|
705 | - Don't complain and quit if persistence_file option is given (bug #802423).
|
706 | - Initialise listeners correctly when clients with duplicate client ids
|
707 | connect. Bug #801678.
|
708 | - Memory tracking is now disabled for Symbian builds due to lack of malloc.h.
|
709 | - Fix memory tracking compilation for kFreeBSD.
|
710 | - Python callbacks can now be used with class member functions.
|
711 | - Fix persistent database writing of client message chunks which caused
|
712 | errors when restoring (bug #798164).
|
713 |
|
714 | 0.11.2 - 20110626
|
715 | =================
|
716 |
|
717 | - Don't free contexts in mqtt3_context_disconnect() (bug #799688 / #801678).
|
718 | - Only free will if present when freeing a client context.
|
719 |
|
720 | 0.11.1 - 20110620
|
721 | =================
|
722 |
|
723 | - Fix buffer overrun when checking for + and # in topics (bug #799688).
|
724 | - Pub client now quits if publish fails.
|
725 |
|
726 | 0.11 - 20110619
|
727 | ===============
|
728 |
|
729 | - Removed all old sqlite code.
|
730 | - Remove client id limit in clients.
|
731 | - Implemented $SYS/broker/heap/maximum size
|
732 | - Implemented $SYS/broker/clients/inactive to show the number of disconnected
|
733 | non-clean session clients.
|
734 | - $SYS/broker/heap/current size and maximum size messages now include "bytes"
|
735 | to match rsmb message format.
|
736 | - Implemented the retained_persistence config file option - a synonym of the
|
737 | "persistence" option.
|
738 | - Added security_external.c to broker source to make it easier for third
|
739 | parties to add support for their existing username/password and ACL database
|
740 | for security checks. See external_security_checks.txt.
|
741 | - $SYS messages are now only republished when their value changes.
|
742 | - Windows native broker now responds to command line arguments.
|
743 | - Simplify client disconnecting so wills gets sent in all cases (bug #792468).
|
744 | - Clients now have a --quiet option.
|
745 | - The on_disconnect() callback will always be called now, even if the client
|
746 | has disconnected unexpectedly.
|
747 | - Always close persistent DB file after restoring.
|
748 | - Return error code when exiting the clients.
|
749 | - mosquitto_publish() now returns MOSQ_ERR_INVAL if the topic contains + or #
|
750 | - mosquitto now silently rejects published messages with + or # in the topic.
|
751 | - max_connections is now a per-listener setting instead of global.
|
752 | - Connection count is now reduced when clients disconnect (bug #797983).
|
753 |
|
754 | 0.10.2 - 20110106
|
755 | =================
|
756 |
|
757 | - Don't abort when connecting if the first connection fails. This is important
|
758 | on e.g. Windows 7, where IPV6 is offered as the first choice but may not be
|
759 | available.
|
760 | - Deal with long logging messages properly (bug #785882).
|
761 | - Fix library compilation on Symbian - no pselect() available.
|
762 | - Don't stop processing subscriptions on received messages after a
|
763 | subscription with # matches. (bug #791206).
|
764 |
|
765 | 0.10.1 - 20110512
|
766 | =================
|
767 |
|
768 | - Fix Windows compilation.
|
769 | - Fix mosquitto.py on Windows - call lib init/cleanup.
|
770 | - Don't abort when connecting if given an unknown address type (assuming an
|
771 | IPv4 or IPv6 address is given).
|
772 |
|
773 | 0.10 - 20110429
|
774 | ===============
|
775 |
|
776 | - Implement support for the password_file option and accompanying
|
777 | authentication requirements in the broker.
|
778 | - Implement topic Access Control Lists.
|
779 | - mosquitto_will_set() and mosquitto_publish() now return
|
780 | MOSQ_ERR_PAYLOAD_SIZE if the payload is too large (>268,435,455 bytes).
|
781 | - Bridge support can now be disabled at compile time.
|
782 | - Group together network writes for outgoing packets - don't send single byte
|
783 | writes!
|
784 | - Add support for clientid_prefixes variable.
|
785 | - Add support for the clientid config variable for controlling bridge client
|
786 | ids.
|
787 | - Remove 32-bit database ID support because htobe64() no longer used.
|
788 | - Multiple client subscriptions to the same topic result in only a single
|
789 | subscription. Bug #744077.
|
790 |
|
791 | 0.9.3 - 20110310
|
792 | ================
|
793 |
|
794 | - Set retained message status for QoS 2 messages (bug #726535).
|
795 | - Only abort with an error when opening listening sockets if no address family
|
796 | is available, rather than aborting when any address family is not available.
|
797 | - Don't clean queued messages when a non clean session client reconnects.
|
798 | - Make mosquitto.py compatible with Python <2.6.
|
799 | - Fix mosquitto.h header includes for Windows.
|
800 |
|
801 | 0.9.2 - 20110208
|
802 | ================
|
803 |
|
804 | - Only send a single DISCONNECT command when using -l in the pub client.
|
805 | - Set QoS=1 on PUBREL commands to meet protocol spec.
|
806 | - Don't leak sockets on connection failure in the library.
|
807 | - Install man pages when building under cmake.
|
808 | - Fix crash bug on malformed CONNECT message.
|
809 | - Clients are now rejected if their socket peer name cannot be obtained on
|
810 | connection.
|
811 | - Fix a number of potential problems caused when a client with a duplicate id
|
812 | connects.
|
813 | - Install mosquitto.conf under cmake.
|
814 |
|
815 | 0.9.1 - 20101203
|
816 | ================
|
817 |
|
818 | - Add missing code for parsing the "bind_address" configuration option.
|
819 | - Fix missing include when compiling with tcp-wrappers support.
|
820 | - Add linker version script for C library to control exported functions.
|
821 |
|
822 | 0.9 - 20101114
|
823 | ==============
|
824 |
|
825 | - Client and message data is now stored in memory with custom routines rather
|
826 | than a sqlite database. This removes the dependencies on sqlite, pcre and
|
827 | sqlite3-pcre. It also means that the persistent database format has had to
|
828 | be reimplemented in a custom format. Optional support for importing old
|
829 | sqlite databases is provided.
|
830 | - Added IPv6 support for mosquitto and the clients.
|
831 | - Provide username and password support for the clients and client libraries.
|
832 | This is part of the new MQTT v3.1 spec.
|
833 | - The broker supports the username and password connection flags, but will not
|
834 | do anything with the username and password.
|
835 | - Python callback functions now optionally take an extra argument which will
|
836 | return the user object passed to the Mosquitto() constructor, or the calling
|
837 | python object itself if nothing was given to Mosquitto().
|
838 | - Remove the mosquitto command line option "-i interface".
|
839 | - Remove the mosquitto.conf "interface" variable.
|
840 | - Add support for the listener config variable (replaces the interface
|
841 | variable)
|
842 | - Add support for the bind_address config variable.
|
843 | - Change the port config variable behaviour to match that of rsmb (applies to
|
844 | the default listener only, can be given just once).
|
845 | - Fix QoS 2 protocol compliance - stop sending duplicate messages and handle
|
846 | timeouts correctly. Fixes bug #598290.
|
847 | - Set retain flag correctly for outgoing messages. It should only be set for
|
848 | messages sent in response to a subscribe command (ie. stale data).
|
849 | - Fix bug in returning correct CONNACK result to on_connect client callback.
|
850 | - Don't send client will if it is disconnected for exceeding its keepalive
|
851 | timer.
|
852 | - Fix client library unsubscribe function incorrectly sending a SUBSCRIBE
|
853 | command when it should be UNSUBSCRIBE.
|
854 | - Fix max_inflight_messages and max_queued_messages operation. These
|
855 | parameters now apply only to QoS 1 and 2 messages and are used regardless of
|
856 | the client connection state.
|
857 | - mosquitto.conf now installed to /etc/mosquitto/mosquitto.conf instead of
|
858 | /etc/mosquitto.conf. The /etc/mosquitto/ directory will be used for password
|
859 | and access control files in the future.
|
860 | - Give the compile time option of using 32-bit integers for the database IDs
|
861 | instead of 64-bit integers. This is useful where htobe64()/be64toh() are not
|
862 | available or for embedded systems for example.
|
863 | - The DUP bit is now set correctly when resending PUBREL messages.
|
864 | - A port to Windows native has been partially completed. This currently drops a
|
865 | number of features, including the ability to change configuration parameters
|
866 | and persistent storage.
|
867 |
|
868 | 0.8.3 - 20101004
|
869 | ================
|
870 |
|
871 | - Fix QoS 2 protocol compliance - stop sending duplicate messages and handle
|
872 | timeouts correctly. Fixes bug #598290. (backported from future 0.9 code)
|
873 |
|
874 | 0.8.2 - 20100815
|
875 | ================
|
876 |
|
877 | - Fix default loop() timeout value in mosquitto.py. Previous value was 0,
|
878 | causing high cpu load.
|
879 | - Fix message handling problem in client library when more than one message was
|
880 | in the client queue.
|
881 | - Fix the logic used to determine whether a QoS>0 message needs to be retried.
|
882 | - Fix the Python sub.py example so that it quits on error.
|
883 |
|
884 | 0.8.1 - 20100812
|
885 | ================
|
886 |
|
887 | - Improve python interface
|
888 | - Fix incorrect return value from message delete function
|
889 | - Use logging function to print error messages in clients.
|
890 | - Fix python installation script DESTDIR.
|
891 | - Fix library destination path for 64-bit machines.
|
892 |
|
893 | 0.8 - 20100807
|
894 | ==============
|
895 |
|
896 | - Topics starting with a / are treated as distinct to those not starting with
|
897 | a /. For example, /topic/path is different to topic/path. This matches the
|
898 | behaviour of rsmb.
|
899 | - Correctly calculate the will QoS on a new client connection (bug #597451).
|
900 | - Add "addresses" configuration file variable as an alias of "address", for
|
901 | better rsmb compatibility.
|
902 | - Bridge clean_session setting is now false, to give more sensible behaviour
|
903 | and be more compatible with rsmb.
|
904 | - Add cleansession variable for configuring bridges.
|
905 | - Add keepalive_interval variable for bridges.
|
906 | - Remove default topic subscription for mosquitto_sub because the old
|
907 | behaviour was too confusing.
|
908 | - Added a C client library, which the pub and sub clients now use.
|
909 | - Added a C++ client library (bound to the C library).
|
910 | - Added a Python client library (bound to the C library).
|
911 | - Added CMake build scripts to allow the library and clients (not the broker)
|
912 | to be compiled natively on Windows.
|
913 |
|
914 | 0.7 - 20100615
|
915 | ==============
|
916 |
|
917 | - mosquitto_pub can now send null (zero length) messages.
|
918 | - Don't store QoS=0 messages for disconnected clients with subscriptions of
|
919 | QoS>0.
|
920 | - accept() all available sockets when new clients are connecting, rather than
|
921 | just one.
|
922 | - Add option to print debug messages in pub and sub clients.
|
923 | - hg revision is now exported via $SYS/broker/changeset
|
924 | - Send Will when client exceeds keepalive timer and is disconnected.
|
925 | - Check to see if a client has a will before sending it.
|
926 | - Correctly deal with clients connecting with the same id multiple times.
|
927 | - Add compile time option to disable heap memory tracking.
|
928 | - Use poll() instead of select() to allow >1024 clients.
|
929 | - Implement max_connections.
|
930 | - Run VACUUM on in-memory database on receiving SIGUSR2.
|
931 | - Fix bridge keepalive timeouts and reconnects.
|
932 | - Don't attempt to drop root privileges when running on Windows as this isn't
|
933 | well supported (bug #586231).
|
934 |
|
935 | 0.6.1 - 20100506
|
936 | ================
|
937 |
|
938 | - Fix DB auto upgrade for messages table.
|
939 |
|
940 | 0.6 - 20100505
|
941 | ==============
|
942 |
|
943 | - Basic support for connecting multiple MQTT brokers together (bridging).
|
944 | - mosquitto_sub can now subscribe to multiple topics (limited to a global QoS).
|
945 | - mosquitto_pub can now send a file as a message.
|
946 | - mosquitto_pub can now read all of stdin and send it as a message.
|
947 | - mosquitto_pub can now read stdin and send each line as a message.
|
948 | - mosquitto will now correctly run VACUUM on the persistent database on exit.
|
949 | - Implement a more efficient database design, so that only one copy of each
|
950 | message is held in the database, rather than one per subscribed client.
|
951 | - Add the store_cleanup_interval config option for dealing with the internal
|
952 | message store.
|
953 | - Add support for disabling "clean session" for the sub client.
|
954 | - Add support for automatic upgrading of the mosquitto DB from v1 to v2.
|
955 | - Add persistence_file config option to allow changing the filename of the
|
956 | persistence database. This allows multiple mosquitto DBs to be stored in the
|
957 | same location whilst keeping persistence_location compatible with rsmb.
|
958 | - Don't store QoS=0 messages for disconnected clients. Fixes bug #572608. This
|
959 | wasn't correctly fixed in version 0.5.
|
960 | - Don't disconnect clients if they send a PUBLISH with zero length payload
|
961 | (bug #573610).
|
962 | - If a retained message is received with a zero length payload, the retained
|
963 | message for that topic is deleted.
|
964 | - Send through zero length messages.
|
965 | - Produce a warning on unsupported rsmb options instead of quitting.
|
966 | - Describe clean session flag in the mqtt man page.
|
967 | - Implement the max_inflight_messages and max_queued_messages features in the
|
968 | broker.
|
969 |
|
970 | 0.5.4 - 20100311
|
971 | ================
|
972 |
|
973 | - Fix memory allocation in mqtt3_fix_sub_topic() (bug #531861).
|
974 | - Remove accidental limit of 100 client connections.
|
975 | - Fix mosquitto_pub handling of messages with QoS>0 (bug #537061).
|
976 |
|
977 | 0.5.3 - 20100303
|
978 | ================
|
979 |
|
980 | - Will messages are now only sent when a client disconnects unexpectedly.
|
981 | - Fix all incoming topics/subscriptions that start with a / or contain
|
982 | multiple / in a row (//).
|
983 | - Do actually disconnect client when it sends an empty subscription/topic string.
|
984 | - Add missing $SYS/broker/clients/total to man page.
|
985 |
|
986 | 0.5.2 - 20100302
|
987 | ================
|
988 |
|
989 | - Always update last backup time, so that the backup doesn't run every time
|
990 | through the main loop once autosave_interval has been reached.
|
991 | - Report $SYS/broker/uptime in the same format as rsmb.
|
992 | - Make mandatory options obvious in usage output and man page of mosquitto_pub.
|
993 | Fixes bug #529990.
|
994 | - Treat subscriptions with a trailing slash correctly. This should fix bugs
|
995 | #530369 and #530099.
|
996 |
|
997 | 0.5.1 - 20100227
|
998 | ================
|
999 |
|
1000 | - Must daemonise before pid file is written.
|
1001 |
|
1002 | 0.5 - 20100227
|
1003 | ==============
|
1004 |
|
1005 | - No longer store QoS=0 messages for disconnected clients that do not have
|
1006 | clean start set.
|
1007 | - Rename msg_timeout option to retry_interval for better rsmb compatibility.
|
1008 | - Change persistence behaviour. The database is now stored in memory even if
|
1009 | persistence is enabled. It is written to disk when mosquitto exits and also at
|
1010 | periodic intervals as defined by the new autosave_interval option.
|
1011 | - The writing of the persistence database may be forced by sending mosquitto
|
1012 | the SIGUSR1 signal.
|
1013 | - Clients that do not send CONNECT as their first command are now
|
1014 | disconnected.
|
1015 | - Boolean configuration values may now be specified with true/false as well as
|
1016 | 1/0.
|
1017 | - Log message on CONNECT with invalid protocol or protocol version.
|
1018 | - Default sqlite3-pcre path on Linux is now /usr/lib/sqlite3/pcre.so to match
|
1019 | future sqlite3-pcre packages.
|
1020 | - Add mosquitto_sub and mosquitto_pub, simple clients for subscribe/publish.
|
1021 | - Add man pages for clients.
|
1022 | - Add general man page on mqtt.
|
1023 | - Root privileges are now dropped only after attempting to write a pid file
|
1024 | (if configured). This means that the pid file can be written to /var/run/
|
1025 | directly and should fix bug #523183.
|
1026 |
|
1027 | 0.4.2 - 20100203
|
1028 | ================
|
1029 |
|
1030 | - Fix segfault on client connect with invalid protocol name/version.
|
1031 |
|
1032 | 0.4.1 - 20100112
|
1033 | ===============
|
1034 |
|
1035 | - Fix regex used for finding retained messages to send on new subscription.
|
1036 |
|
1037 | 0.4 - 20100105
|
1038 | ==============
|
1039 |
|
1040 | - Added support for wildcard subscriptions using + and #.
|
1041 | - All network operations are now non-blocking and can cope with partial
|
1042 | packets, meaning that networking should be a lot more reliable.
|
1043 | - Total messsages/bytes sent/received are now available in $SYS.
|
1044 | - Improved logging information - use client ip address and id instead of
|
1045 | socket number.
|
1046 | - Broker build timestamp is available in $SYS.
|
1047 | - Keepalive==0 is now correctly treated as "never disconnect".
|
1048 | - Fixed manpage installation.
|
1049 | - Fixed incorrect $SYS hierarchy locations in documentation and code.
|
1050 | - Debug type log messages are no longer sent to "topics".
|
1051 | - Default logging destination no longer includes "topics" to prevent possible
|
1052 | error logging to the db before it is initialised.
|
1053 | - Periodic $SYS messages can now be disabled.
|
1054 | - stdout and stderr are flushed when logging to them to give more timely
|
1055 | updates.
|
1056 | - dup is now set correctly when resending messages.
|
1057 | - Database format bumped due to topic column naming fix.
|
1058 |
|
1059 | 0.3 - 20091217
|
1060 | ==============
|
1061 |
|
1062 | - The port option in the configuration file and --port command line argument
|
1063 | may now be given any number of times to make mosquitto listen on multiple
|
1064 | sockets.
|
1065 | - Add new config file and command line option "interface" to specify an
|
1066 | interface to listen on, rather than all interfaces.
|
1067 | - Added host access control through tcp-wrappers support.
|
1068 | - Set SO_REUSEADDR on the listening socket so restart is much quicker.
|
1069 | - Added support for tracking current heap memory usage - this is published on
|
1070 | the topic "$SYS/broker/heap/current size"
|
1071 | - Added code for logging to stderr, stdout, syslog and topics.
|
1072 | - Added logging to numerous places - still plenty of scope for more.
|
1073 |
|
1074 | 0.2 - 20091204
|
1075 | ==============
|
1076 |
|
1077 | - Replaced the command line option --foreground with --daemon, swapping the
|
1078 | default behaviour.
|
1079 | - Added the command line option --config-file, to specify a config file to
|
1080 | load. If this is not given, no config file is load and the default options
|
1081 | are used.
|
1082 | - Added the command line option --port for specifying the port to listen on.
|
1083 | This overrides values in the config file.
|
1084 | - Don't use persistence by default.
|
1085 | - Default behaviour is now more sane when run by a normal user with no command
|
1086 | line options (combination of above changes).
|
1087 | - Added option user to config file, defaulting to a value of mosquitto. If
|
1088 | this value isn't blank and mosquitto is started by root, then it will drop
|
1089 | privileges by changing to the user and its primary group. This replaces the
|
1090 | current behaviour of refusing to start if run by root.
|
1091 | - Fix non-persistent mode, which would never work in the previous release.
|
1092 | - Added information on default values of msg_timeout and sys_interval to the
|
1093 | mosquitto.conf man page. (closes bug #492045).
|