Skip to content

Releases: ktos/Mokosh

Version 2.0.0-pre

11 May 13:31
ab07f40
Compare
Choose a tag to compare
Version 2.0.0-pre Pre-release
Pre-release

What's Changed

Introducing, hugely rewritten and rearchitectured, Mokosh version 2.0.0.

BREAKING CHANGES

  • LogLevel instead of DebugLevel,
  • RemoteDebug is not a required dependency,
  • prefix is set in a constructor, not in begin(),
  • setConfigFile(false) is removed, there is an option in constructor to not use LittleFS,
  • MDNS and OTA are moved to separate services,
  • things related to Wi-Fi connection are moved into a separate service,
  • things related to MQTT (publishing/subscribing) are moved into a separate service.

Features

  • A new modular service system: services as a classes which are automatically "looped",
  • DebugAdapters, a new system where old macros like mdebugV are now publishing to different listeners, SerialDebugAdapter is included by default, RemoteDebug will be facaded with TelnetDebugAdapter in the future,
  • Commands received by MQTT or from some other services, are now divided into command and parameters,
  • Built-in methods for retrying operations are introduced.

Full Changelog: v0.9.0...v2.0.0-pre

Version 0.9.0

12 Sep 17:40
Compare
Choose a tag to compare
  • Added message handler allowing to react to any kind of MQTT message on any topic,
  • Added handling messages on RemoteDebug's Telnet session as if they were send my MQTT, so any kind of standard command still works,
  • Added support for multiple SSIDs,
  • Added warnings on running some functions after begin() if they are not supposed to,
  • Added a possibility to register interval functions after begin(),
  • Added a support for timeouted (one-shot) functions.

Version 0.8.0

15 Apr 10:07
Compare
Choose a tag to compare
  • Switch to TickTwo instead of having internal array for interval functions, onInterval was removed, registerIntervalFunction is now used (BREAKING CHANGE),
  • MokoshError is now enum,
  • Templates are used (e.g. get<String>) instead of regular functions in getting the configuration values (BREAKING CHANGE).

Version 0.7.3

15 Apr 10:05
Compare
Choose a tag to compare
  • Change IP Address message to have a retained flag (BREAKING CHANGE).

Version 0.7.2

15 Apr 10:04
Compare
Choose a tag to compare
  • add showing line and file information in debug output

Version 0.7.1

15 Apr 10:03
Compare
Choose a tag to compare
  • fix getting ChipID on ESP32,
  • switch to using LittleFS on both ESP32 and ESP8266 (BREAKING CHANGE).

Version 0.7.0

15 Apr 10:01
Compare
Choose a tag to compare
  • Switched to the own fork of RemoteDebug, to remove WebSockets debugging (BREAKING CHANGE).

Version 0.6.0

03 May 18:57
Compare
Choose a tag to compare
  • Updated the library interface to use a more standardized naming of functions (BREAKING),
  • Allowed daisy-chaining for set* functions,
  • Added a possibility to use MDNS without OTA.

Version 0.5.0

18 Apr 19:10
Compare
Choose a tag to compare

A huge release, with a breaking change in the way how configuration is handled.

  • Added library.json for compatibility with PlatformIO,
  • Enabled reset option in RemoteDebug,
  • Reverted to SPIFFS instead of LittleFS on ESP32 because of backward compatibility issues (especially on PlatformIO),
  • Added support for ArduinoOTA,
  • Added possibility to ignore connection errors,
  • Fixed crashing when a nonexisting key was accessed in reading configuration,
  • Fixed mdebug macros to work properly even if RemoteDebug is not configured,
  • Changed into using JSON as a configuration source, renamed classes, changed public API, removed MokoshConfiguration struct (BREAKING),
  • Changed into the usage of std::function instead of C-style callbacks,
  • Added ability to disable automatic Wi-Fi connection and use custom Client, e.g. GSM,
  • Added ability to use custom client id in MQTT connection,
  • Added a possibility to override existing function registered with onInterval,
  • Changed constants into char* instead of String (BREAKING),
  • Added a possibility to use a domain name for MQTT broker instead of IP.

Also new CI system using GitHub Actions and PlatformIO has been introduced.

Version 0.4.1

18 Apr 18:59
Compare
Choose a tag to compare

Changes:

  • Add automatic reconnecting on message publish