Releases: bytebeamio/uplink
Releases · bytebeamio/uplink
v2.9.0-android-rc
* fix typo * make utilities compile for android
v2.9.0
Significant Changes
- Downloads are continuously retried till the action gets timedout.
What's Changed
- feat: name threads when spawning by @de-sh in #292
- fix: continuous retry till timeout by @de-sh in #294
- fix: usize multiplication overflow on 32bit machines by @de-sh in #295
- refactor: remove timeout information from apps by @de-sh in #293
Full Changelog: v2.8.1...v2.9.0
v2.8.1-rc
v2.8.0
Significant Changes
- We now create and use
.downloaded
/.persistence
directories where uplink was started from when the user has not otherwise configured the path. - Uplink will check and ensure there is disk space to download file into, erring out otherwise.
- Uplink only retries downloads that failed due to network error, that too by continuing from where last attempt had failed at, instead of starting from scratch, but only upto 3 times.
- Code maintenance and readability improvements also included.
What's Changed
- docs: quickstart uplink by @de-sh in #266
- fix: retry only
reqwest
errors by @de-sh in #269 - fix: downloader thread error out without logline by @de-sh in #270
- fix: spawn generators to remove time skew by @de-sh in #272
- refactor:
TunshellSession
~>TunshellClient
by @de-sh in #273 - test: use
current_dir
, remove unused loop by @de-sh in #271 - refactor: reintroduce single device simulator as an uplink built-in by @de-sh in #274
- refactor: setup connections with bridge before spawn by @de-sh in #277
- feat: ensure disk has enough space to download file into by @de-sh in #268
- fix: simulator should send
action_status
to bridge asActionResponse
by @de-sh in #283 - feat: don't persist simulated streams in-memory by @de-sh in #284
- fix: timeout process as per config by @de-sh in #287
- refactor: split handling of data and actions by @de-sh in #279
- feat: try continuing partially downloaded files by @de-sh in #286
Full Changelog: v2.7.1...v2.8.0
v2.7.1
v2.7.0
Significant Changes
- Uplink will start with a TCP interface on port 5050 by default if the
tcpapps
field is not defined in theconfig.toml
. - Uplink now supports triggering a download and then running the downloaded file as a shell script. This feature can be enabled with the following example config:
# Redirecting the download action to the script runner post download
action_redirections = { "send_script" = "run_script" }
# Configure the script runner to accept run_script actions
script_runner = [{ name = "run_script" }]
# Configure the downloader to accept send_script actions and download script into path
[downloader]
actions = [{ name = "send_script" }]
path = "/path/to/file"
What's Changed
- feat: built-in script runner by @de-sh in #252
- Logcat fixes by @amokfa in #250
- test: verify tunshell action pass-through by @de-sh in #263
- feat: default main on port 5050 if tcpapps unconfigured by @de-sh in #264
Full Changelog: v2.6.0...v2.7.0
v2.7.0-react
v2.6.0
Significant Changes
- Uplink now flushes all streams waiting on bridge during shutdown and waits 5 seconds before shutting down, allowing the transmission or persistence of data. Previously any data left unflushed on bridge during shutdown would have been lost.
- Uplink will by default use the current directory instead of
/var/lib/uplink
, allowing for execution on platforms other than just linux. - Uplink file-downloader(#258) and stat collector(#259) bug fixes and improvements.
What's Changed
- doc: update apps.md by @de-sh in #245
- argonaut workflow Setup : by @argonautbot in #249
- feat: force flush all streams before shutdown by @de-sh in #251
- fix: use
flush_period
instead ofbuf_size
for important streams by @de-sh in #255 - Uplink should ignore
save_current_action
failures by @amokfa in #253 - fix: stop download on action timeout, don't drop action on resend by @de-sh in #258
- fix: glob error stopping stat collector by @de-sh in #259
- feat: use
current_dir
instead of/var/lib
by @de-sh in #260
Full Changelog: v2.5.0...v2.6.0
v2.5.0
Significant Changes
DeviceShadow
collector that pushes ontodevice_shadow
stream on regular intervals and updates device's network ping times. The following configuration can be addedconfig.toml
, to set the time interval between device shadow updation to be 30 seconds:
[device_shadow]
interval = 30 # time in seconds between each update
Note: the collector will push device_shadow
with "latency": 10000
(10s) if uplink encounters an error like network outage.
device_shadow
JSON Array type as received by the platform
[{
"sequence": Integer,
"timestamp": Integer,
"latency": Integer,
"uplink_version": String
},
...]
- Spawning multiple Tunshell sessions is now possible through parallel
launch_shell
actions. OTAInstaller
now expects anupdater
script/binary inside the tarball as the entry point.
What's Changed
- feat: Add scripts and examples for rpi by @sai-kiran-y in #237
- fix: Cleanup Code by @sai-kiran-y in #238
- set file perms by @amokfa in #240
- feat: collector to push ping latency updates on
device_shadow
stream by @de-sh in #236 - Generic installer by @amokfa in #241
- feat: parallelized actions run immediately by @de-sh in #239
- fix: bridge failure to shutdown on file permission denied by @de-sh in #243
New Contributors
- @sai-kiran-y made their first contribution in #237
Full Changelog: v2.4.0...v2.5.0
v2.4.0
Significant Changes
- Persisting actions on uplink shutdown allows users to temporarily halt uplink and restart it, without losing out on information with regards to the action that is in execution and hence allowing the user to bring back up both uplink and the external action handler, continuing action execution as if nothing had happened. This is possible because uplink stores action information along with all on-disk persistence files in the same directory, the diff for changes to support this is provided below:
+ persistence_path = "/path/to/dir"
[streams.stream_name]
topic = "/stream/topic"
buf_size = 100
- persistence = { path = "/path/to/dir", max_file_count = 3, max_file_size = 10485760 }
+ persistence = { max_file_count = 3, max_file_size = 10485760 }
What's Changed
- refactor: use
VecDeque
for readability by @de-sh in #227 - fix: update backup-deserializer to support uplink v2.3 by @de-sh in #233
- feat: current action persistence on abrupt shutdowns by @de-sh in #216
- feat: log processes by unit name in journalctl by @de-sh in #225
Full Changelog: v2.3.0...v2.4.0