aboutsummaryrefslogtreecommitdiffstats
path: root/CHANGELOG.md
blob: 73d6a8433f1cc7816facd80cae1effac80f53103 (plain)
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
<!--
SPDX-FileCopyrightText: 2025 Tomasz Kramkowski <tomasz@kramkow.ski>
SPDX-License-Identifier: CC-BY-SA-4.0
-->

# Changelog

## [0.3.0] - 2025-07-10

### Added

* Configurable global timeout
* Configurable per-program timeout
* Configurable logging

### Fixed

* The changelog now highlights breaking changes with a "BREAKING:" prefix
* The changelog now has dates for each release

## [0.2.0] - 2025-07-04

### Added

* BREAKING: Error if the config contains credentials but is group or world
  readable.
* BREAKING: The message DUP, QoS, and RETAIN fields as well as the Packet
  Identifier (when QoS is 1 or 2) are now appended (in that order) to the
  process arguments.
* The global QoS default can be configured using the `qos` top level config key.
* Routes can be lists of programs or a map containing `qos` and `programs` keys.
* The per-subscription QoS can be overriden by setting the route's `qos` config
  key.

### Changed

* BREAKING: The default subscription QoS is now 2 (exactly once)

### Fixed

* Changelog 0.1.0 link now references the tag not an arbitrary diff.
* The entire MQTT message should now be attempted to be written (previously it
  may have been cut off in some situations).

## [0.1.0] - 2025-06-27

### Added

* Running programs, asynchronously, in response to MQTT messages based on a set
  of configured routes with a 60 second timeout. Programs are executed once per
  gessage, receive the message on stdin and the topic as an argument.
* Configure an MQTT server using a host, port and optional credentials.

[0.3.0]: https://the-tk.com/cgit/mqttr/diff/?id=v0.3.0&id2=v0.2.0
[0.2.0]: https://the-tk.com/cgit/mqttr/diff/?id=v0.2.0&id2=v0.1.0
[0.1.0]: https://the-tk.com/cgit/mqttr/tag/?h=v0.1.0