Skip to content

Changelog

Kamil Baczkowicz edited this page Jun 1, 2016 · 82 revisions

0.6.0 beta

Please use with caution and report any issues:

  • Editable chart series with support for custom JSONPath expressions
  • Enhanced searching capability for JSON object with inline scripts with JSONPath
  • Minor fixes and improvements (#771, #72 and #77)

0.5.0 (released on 01/04/2016)

  • New way of creating subscriptions
    • By default the "Define new subscription" pane is now hidden (unless you are in the Basic perspective)
    • The "Subscriptions and received messages" tab pane has now got a new tab symbol
    • Clicking on the new tab symbol or Ctrl+Shift+S will pop up a window for creating a new subscription
    • Right click allows you to attach the window instead
    • Hold the Control button when hitting Enter or clicking on Subscribe to keep the window
    • (Re)sizing of other panes (e.g. "Scripted publications") should work properly now (#25)
  • New "Basic" perspective
  • Formatting improvements
    • Support for decoding Eclipse Kura's message payload (#56)
    • Support for pretty JSON and XML formatting (#65)
    • Added more sample inputs for various types of formatters
  • Manual and auto export of charts as PNG images - see the "Options" button (#60)
  • New context menu item ("Edit...") for the connection tab, allowing you to jump straight into editing your connection settings rather than going via "Manager connections" and selection the connection manually
  • Improvements to the scripted publications table
    • Looking inside subfolders (see the context menu)
    • Showing subfolder name (if applicable)
    • New context menu item ("Set script directory") to reload scripts from a given location
    • Default sort order applied
  • Keyboard shortcuts
    • Ctrl + N for new connection
    • Ctrl + M for managing connections
    • Ctrl + Shift + S for new subscription
  • New built-in CA certificate for iot.eclipse.org (needed after Eclipse moved to Let's Encrypt certificates)
  • Fix for TLS/SSL keys when using key files rather than keystores (#63)
  • Fix for script's stop command not working when repeat flag selected ([#64](https://github.com/kamilfb/mqtt- spy/issues/64))
  • Fix for resizing the main window when larger fonts are configured in the OS (#66)
  • Fix for resizing the connection properties window (#68)
  • Fix for "new subscription" tab (#69)
  • Fix for saving messages as scripts (#70)

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.4.0_control-panel.png

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.5.0_connection-tab.png

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.5.0_kura.png

0.4.0 (released on 01/02/2016)

  • Advanced TLS/SSL options (see the TLS/SSL wiki)
    • Support for 6 different modes of configuring TLS/SSL
    • Support for various trust and key store types - JKS (default & .jks), JCEKS (.jceks), PKCS12 (.p12, .pfx) and BKS (.bks)
    • Support for trust/key store and key passwords
  • Experimental support for WebSockets (based on Eclipse Paho 1.0.3-SNAPSHOT)
  • Configuration perspectives and a new "Basic" perspective
  • UI improvements
  • New audit replay (wiki to be updated soon with examples...)
  • Dependency updates (RichTextFX & Moquette)
  • Fix for issues #55, #57 and #58

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.4.0_connection-tab.png

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.4.0_ssl-tls.png

0.3.1 (released on 01/12/2015)

  • New 'About' window (Menu -> Help -> About)
  • New graphics (primarily Oxygen based)
  • Bug fixes
    • Workaround / fix for Oracle JRE bug resulting in the Subscribe button not working properly (#49, #50)
    • Fix for re-subscribing on reconnects (#51)

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.3.1_connection-tab.png

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.3.1_about.png

0.3.0 (released on 01/10/2015)

  • User interface improvements
    • Connections can be now grouped into folders and reordered (drag&drop)
    • Added security status to connection tabs and lists
    • Improved context menus
    • Input format for publications is now available only in the detailed perspectives
    • Run with scripts now changes the Publish button's label
    • Long-running message log processing can be cancelled or put into background
  • Support for empty client ID (MQTT 3.1.1; #44)
  • Added MQTT servers to the sample configuration file (iot.eclipse.org, test.mosquitto.org, broker.mqtt-dashboard.com) - first two are configured to use TLS with server-only authentication (using publicly available certificate authority files)
  • Requires at least Java 8 Update 40
  • Removed dependency on ControlsFx, which was causing issues with Java 8 Update 60 and later (#45)
  • Bug fixes (opening message log, subcribing from the the summary tab)

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.3.0_connection-tab.png

0.2.0 (released on 01/08/2015)

  • Automated testing with test cases (see wiki for details)
    • Can be run with (connection tab’s pane visibility menu) and without a connection (see the Window menu)
    • Written and run as scripts; similar to publication scripts
    • Support for any types of assertions and checks available in Java and JavaScript
    • Divided into steps, including before (setup) and after (clean-up) sections
    • Auto export of results
  • Performance improvements
  • UI improvements
    • Each pane on the connection tab contains a settings button for hiding and detaching
  • Scripting improvements
    • Dynamic subscriptions
    • Access to received messages
  • Formatting improvements
    • Formatting scripts
    • New “Formatters” view (replaces “Converter”)
  • Update to latest JAXB commons

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.2.0_connection-tab.png

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.2.0_test-cases.png

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.2.0_formatters.png

0.1.11 (released on 01/06/2015)

  • Experimental SSL/TLS support (#36)
    • Server only authentication (tried with test.mosquitto.org)
    • Server and client
    • SSL properties
  • Automatically populating the protocol prefix when establishing connection (e.g. tcp:// or ssl://)
  • Updated to the latest moquette version

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.11_ssl-tls.png

0.1.10 (released on 01/05/2015)

  • Sending and receiving binary files (e.g. images)
    • For a sample script that sends an image see the Scripting wiki
    • For saving received files use the 'Tools' button on the subscription tab, then 'Export', 'Messages' and 'Binary file'
  • Improved handling of large messages
  • Removed source code referencing the UNICEF fundraising page (as requested by the Eclipse legal team in relation to contributing mqtt-spy to Eclipse Paho)

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.10_file-export.png

0.1.9 (released on 15/04/2015)

  • Added topic summary chart (with live updates; Subscription tab -> Show message count chart)
  • Added message length info for publications (label goes red when new lines present; only present in detailed views)
  • Upgraded to Eclipse Paho Java Client v1.0.2 (Paho 1.1)
  • Added MQTT protocol version and support for long client IDs in connection settings (#31)
  • Fixed UI colouring (#32)
  • Fixed build issues (#33 and #34)
  • Removed unused dependencies (as a result the mqtt-spy jar is now 50% smaller in size)

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.9_connection-tab.png http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.9_connection-list.png

0.1.8 (released on 01/03/2015)

  • Charts
    • Auto-refresh for live data
    • Historical values
    • One or more topics (select which from the summary table)
    • Driven by message payload or its size (could be formatted with subscription scripts; available from the summary table's context menu)
    • Message load charts (available from the subscription tab's context menu)
    • Pan and zoom (see the Overview wiki for info)
    • Value tooltips
  • UI improvements
    • Auto-resize for topic search field (#26)
    • Remembering 'resizable message pane' flag - see the 'Window' menu (#27)
    • Lists of browsed/filtered/all topics can be exported to clipboard ('Tools' -> 'Export' -> 'Topics')
    • New context menu item for the summary table - 'Filtered topics' -> 'Deselect all and select filtered topics'; other items renamed slightly
    • Application icon
  • Text conversions (added Base64 for input and fixed #29)

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.8_charts.png http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.8_charts-local-load.png http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.8_charts-eclipse-load.png http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.8_charts-eclipse-clients.png

0.1.7 (released on 15/02/2015)

  • Detachable connection and subscription tabs (available from the tab's context menu)
  • Detachable connection panes (e.g. 'Publish message' or 'Scripted publications' - see the connection tab's context menu)
  • Script creator (saving current/recent messages as scripts; see the Publish button's menu)
  • Scripted publications pane improvements
    • Double click to start a script (if not running)
    • New context menu items
      • Copy script location to clipboard
      • Delete script from list
      • Delete script from disk
  • Change color for existing subscription (see the subscription tab's context menu)

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.7_detached-panes.png

0.1.6 (released on 30/01/2015)

  • Creating message log (audit) - see the Message Log wiki
  • Content-based filtering for browsed messages (see the new button 'Filter')
  • Exporting browsed messages (see the 'Tools' button; this uses the XML-based message log format)
  • Fix to message order when browsing selected topics
  • Fix to change detection in 'Manage connections'
  • Fix to script execution for received messages

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.6_filter-and-export.png

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.6_log-settings.png

0.1.5 (released on 16/01/2015)

  • Improved message searching
    • Simple payload search (default)
    • Search with predefined script (see the new configuration parameter in Subscriptions tab)
    • Search with in-line script (e.g. content.contains("3") && topic.contains("test"))
  • Improved resizing of the message and summary panes; added new toggle to the connection tab's context menu (Issue 17)
  • Simplified saving subscriptions to configuration file (Issue 22)
  • Formatting XML files (configuration & stats; Issue 23)
  • Predefined publication scripts with auto-start (Issue 24)
  • Remembering window size and selected perspective upon application restart

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.5_message-search.png

0.1.4 (released on 02/01/2015)

  • Remembering and restoring published messages (see the 'Publish' button's menu)
  • Keyboard shortcuts (requires focus on the publication topic field)
    • ENTER - publish message
    • ALT + DIGIT - restores the last X message (e.g. ALT + 1 restores the most recent; ALT + 2 the second most recent; ALT + 0 the 10th most recent)

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.4_recent-messages.png

0.1.3 (released on 19/12/2014)

  • Parametrised publications (see Scripting wiki for details; and the 'Publish' button's menu)
  • Reformatting/modifying content with subscription scripts
  • Using Eclipse Paho Java Client v1.0.1

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.3_connection-tab.png

0.1.2 (released on 01/12/2014)

  • Message log browsing (see the Logger menu)
  • Message log replay with customisable replay speed (via JS scripts; see Scripting wiki for details)
  • 'Repeat' flag in scripted publications
  • Subscription scripts (e.g. for sending auto-reply)
  • Improved formatting

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.2_message-log.png

0.1.1 (released on 26/11/2014)

  • High availability features
    • Support for multiple server URIs (as provided by Eclipse Paho Java client)
    • Automatic reconnection and resubscription
  • New XML configuration format for connections & new connection parameters (reconnection - see above; auto-subscribe on opening connection, see Issue 16)
  • Base64 converter (see Window -> Converter)
  • Received message length now displayed in bytes (B), kilobytes (kB) and megabytes (MB); exact length is now displayed in tooltip

http://baczkowicz.pl/mqtt-spy/images/mqtt-spy_v0.1.1_edit-connections.png

0.1.0 (released on 19/10/2014)

  • The “new secret feature” is now available on the control panel... ;-)
  • Scripted publications (with JavaScript, using the Nashorn engine; see Scripting wiki for details)
  • Improved topic filtering (new text field on 'Received messages summary')
  • Improved message storage (now keeping last X messages for each topic)
  • Perspectives (Menu -> View -> Perspectives)
  • Customisable pane visibility (Connection tab's context menu -> Show/hide panes)
  • Other UI improvements
  • Bug fixes
  • ControlsFX 8.20.7 & RichTextFX 0.5

0.0.11 (released on 27/09/2014)

  • Broker statistics (now available from the connection tab's context menu)
  • Statistics for received messages (shown as averages over 5s, 30s and 5m; see the ‘Received messages summary’ pane’s title)
  • Connection status (now displayed in tab's tooltip; just hover your mouse over to see it; for connection failures this includes the failure reason and time)
  • Subscription status (now also indicated in the tab's tooltip)
  • Subscription can be now created from the ‘Received messages summary’ context menu
  • Performance improvements (handling over 500 messages / second)
  • Minor UI improvements
  • Bug fixes

0.0.10 (released on 20/09/2014)

  • MQTT Retained flag added for publications and subscriptions
  • MQTT Last Will and Testament settings
  • Performance improvements (handling over 200 messages / second)
  • Bug fixes
  • Now using “_” intead of “-” as the client ID timestamp separator (to make it work with IBM® WebSphere MQ)

0.0.9 (released on 11/09/2014)

  • Control panel
    1. Configuration file checking
    2. Connection summary
    3. Checking for updates

0.0.8 (released on 09/09/2014)

  • Improved connection management
  • Saving connection settings to configuration file
  • Support for default configuration file (stored in user’s home directory)
  • Performance improvements (handling over 100 messages / second)

0.0.7 (released on 01/09/2014)

  • User authentication (MQTT username & password)
  • Read-only connection management

0.0.6

  • Added message search capability based on formatted content
  • Filtering now applied by clicking on the "Show" column or through the context menu of the summary table
  • Updated context menus
  • Styling improvements
  • Bug fix for message content text blur

0.0.5 (released on 08/08/2014)

  • Easy access to broker's statistics by subscribing to $SYS/# (tested with mosquitto and HiveMQ)
  • Topic filtering for received messages (driven from the summary table's context menu)
  • Content of the last message received showed in the summary table
  • New formatter available for encoding individual characters (e.g. # with its hexadecimal value; only using the configuration file)
  • Maximum number of messages stored for each subscription can be now defined in the configuration file
  • Actions triggered from keyboard & mouse (subscribing and message browsing)
  • Bug fix for clearing the summary table

0.0.4 (released on 27/07/2014)

  • Auto-loading of the configuration file (command line usage: --configuration=”file location”) and XSD validation
  • Formatters for incoming messages (basic formatting via GUI, more complex by using the configuration file)
  • Selected tabs have font weight set to bold, so that it's easier to spot which ones are selected
  • Minor UI improvements

0.0.3 (released on 04/07/2014)

  • Redesigned content of the connection tab (with collapsible panes)
  • Added publication capability
  • Recording topics used for publications and subscriptions in drop down lists
  • Configuration file now defines whether to create subscription tabs or just populate the drop down list
  • Added optional connection settings to the configuration file (clean session, connection timeout, keepalive)
  • General improvements

0.0.2 (released on 22/06/2014)

  • Loading configuration files with predefined connections and subscriptions
  • New context menu item (copy subscription topic) for the subscription tab
  • Changes to the “New connection” window
    1. Removed unused fields
    2. Added auto-connect
    3. Added connection name
  • Minor UI tweaks
  • General improvements

0.0.1 (released on 10/06/2014)

  • Initial release