Releases: bytebeamio/uplink
Releases · bytebeamio/uplink
v1.6.1
v1.6.0
Significant Changes
- Enable multiple applications to connect to uplink over bridge
NOTE: Please ensure that you only accept an action and send responses from one of the connected apps, this is the expected behavior for apps connecting to uplink over TCP.
- Rework config for
serializer_metrics
:
[serializer_metrics]
- buf_size = 10
- flush_period = 30
+ enabled = true
- Publishes
serializer_metrics
as JSON to the topic "/tenants/{tenant_id}/devices/{device_id}/serializer_metrics/jsonarray" by default. Can be reconfigured by setting the optional topic field in theconfig.toml
file. - Adds
stream_metrics
to keep track of data streams as they flow through uplink. This feature can be enabled by adding the following toconfig.toml
:
[stream_metrics]
enabled = true
What's Changed
- fix: code improvements and clippy suggestions by @de-sh in #77
- fix: use
action_id
and let it alias asid
for "action_status" by @de-sh in #78 - feat: Add
ignore_actions_if_no_clients
by @bmcpt in #79 - fix: default to no persistence by @de-sh in #81
- feat: make
keep_alive
configurable by @de-sh in #80 - feat: let
Serializer
queryPackage
s batch size by @de-sh in #83 - feat: stream name from
Package
inSerializer
by @de-sh in #84 - feat: collect and log
batching_latency
as a metric by @de-sh in #86 - fix: serializer metrics ouroboros by @de-sh in #85
- feat: collect and forward
stream_metrics
by @de-sh in #87 - fix: compiling to non linux/android targets by @de-sh in #88
- feat: multiple tcp collectors, broadcast actions by @de-sh in #76
- feat: compile binary for m1 mac on release by @de-sh in #89
Full Changelog: v1.5.1...v1.6.0
v1.5.1
v1.5.0
Significant Changes
- Allow users to configure uplink's in-built downloader to be triggered on different action names:
- [ota]
+ [downloader]
- enabled = true
+ actions = ["update_firmware"] # list of action_name values that can trigger a file download, e.g. "send_file"
path = "/path/to/downloads"
- Action JSON received by connected app over bridge:
{
'action_name': 'update_firmware',
- 'payload': '{..,"ota_path":"/path/to/downloads/x.x.x/artifact"}'
+ 'payload': '{..,"download_path":"/path/to/downloads/update_firmware/x.x.x/artifact"}'
}
- Allow optional configuration of stream size for log collector:
[journalctl]
+ stream_size = 10 # flushes after 10 log entries
What's Changed
- feat: enable stream sizing for linux logs by @de-sh in #68
- feat: refactor as
FileDownloader
to handle non OTA actions by @de-sh in #69 - fix: parse timestamp for journalctl log entries into millis by @de-sh #71
Full Changelog: v1.4.1...v1.5
v1.4.1
Significant Changes
- journalctl parsing and collectiion has been added for linux logging support. Now one can configure uplink to collect and forward logs to the platform by including the following in their
config.toml
:
[journalctl]
tags = ["kernel"]
priority = 6
What's Changed
- feat: add demo rust program by @Jagannathes in #59
- feat: linux logs with journactl by @de-sh in #52
- fix: disable journalctl by default by @de-sh in #60
- fix:
ActionResponse
fromPayload
by @de-sh in #62 - feat: refactor
base
by @de-sh in #63 - chore: update deps and base rustc version by @de-sh in #61
- feat: update
sysinfo
and track component temperatures by @de-sh in #65 - fix: set timestamp at point of stat collection by @de-sh in #66
- feat: refactor with
Streams
by @de-sh in #64 - feat: clippy fixes and code clean-up by @de-sh in #67
New Contributors
- @Jagannathes made their first contribution in #59
Full Changelog: v1.4.0...v1.4.1
v1.4.0
Significant Changes
- Stream configurations need not have a topic field, this is enabled by dynamic topic creation based on the provided device and project IDs.
- Add support for android target compilation with logcat based log collection, which can be enabled by adding
run_logcat = true
toconfig.toml
. - Stream configurations for
action_status
andserializer_metrics
is now performed separately from custom streams.action_status
is compulsory, whereasserializer_metrics
is optional.
What's Changed
- feat: make stream topic field optional by @de-sh in #42
- fix: override configs for demo simulator by @de-sh in #41
- fix: Simulator updates by @de-sh in #45
- Android exe by @bmcpt in #51
- feat: rework config by @de-sh in #50
- fix: Forward server errors as
ActionResponse
by @de-sh in #53
Full Changelog: v1.3.0...v1.4.0
v1.3.0
What's Changed
- Fix
Serializer
bugs and documentation by @de-sh in #28 - make tools/tunshell work by @bmcpt in #27
- Add tests for
Serializer
by @de-sh in #29 - ci(release): Added aarch musl and gnu build in release process by @henil in #30
- update rumqttc to v0.14 by @de-sh in #32
- Remove
Controller
by @de-sh in #31 - feat: remove
RxTx
by @de-sh in #34 - feat: Port demo simulator to new main by @de-sh in #26
- feat: use
config-rs
instead offigment
by @de-sh in #33 - Argonaut config for simulator by @argonautbot in #35
- fix: runit new command by @de-sh in #36
- fix:
ActionResponse
json generated in Simulator by @de-sh in #37 - feat: add demo go and python programs by @de-sh in #40
New Contributors
- @argonautbot made their first contribution in #35
Full Changelog: v0.2.0...v1.3.0
v1.2.0
Initial Release v1.1.0
What's Changed
- Add System statistics collector by @de-sh in #1
- Run
refresh_memory()
to ensuretotal_memory
is properly set by @de-sh in #5 - Refactor as a library by @gautambt in #3
- Update how action responses are documented by @de-sh in #8
- Err on receiving no content_length by @de-sh in #9
- Ensure lesser frequency of action responses by @de-sh in #10
- New release process by @de-sh in #13
- Add example config to README by @de-sh in #15
- Error out instead of panic by @de-sh in #14
- Update to rumqttc v0.11, sysinfo v0.23 and fix cippy suggestions by @de-sh in #18
- Run
OtaDownloader
as a separate thread by @de-sh in #11 - Update CI/CD by @henil in #21
New Contributors
Full Changelog: https://github.com/bytebeamio/uplink/commits/v1.1.0