Releases: thin-edge/thin-edge.io
0.12.0
What's Changed
Features
- Support configurable tedge-mapper MQTT topics by @rina23q in #2033
- tedge init command #1764 by @albinsuresh in #2001
- download: Partial downloads by @Bravo555 in #1966
- Configurable timeout for custom operation handler by @PradeepKiruvale in #1917
- Retry http requests to c8y fails with the response status code 401,403 and 404 by @PradeepKiruvale in #2065
- Filtering criteria in apt-sm-plugin output by @Ruadhri17 in #1961
- Add a symlink to tedge-apt-plugin in /etc/tedge/sm-plugins by @PradeepKiruvale in #2027
Fixes
- Removing an operation with mv command does not remove the operation by @PradeepKiruvale in #1978
- tedge-mapper-c8y sync with tedge-agent by @PradeepKiruvale in #2050
- Improve downloader logging behaviour and make SoftwareManager exit immediately on ^C by @Bravo555 in #2049
What's Changed in 0.12.0 (full list)
- Added 14 steps to cover the whole config list by @gligorisaev in #1976
- Proc macro for tedge config by @jarhodes314 in #1936
- Fix setting names to match the new tedge-config by @didier-wenzek in #1989
- update deps to fix failing check on nightly by @Bravo555 in #1994
- Fix server/client auth docs page not appearing by @Bravo555 in #1995
- feat(tedge-mapper): retrieve agent version from cargo package version instead of calling the tedge cli by @reubenmiller in #1996
- Removing an operation with mv command does not remove the operation by @PradeepKiruvale in #1978
- ci: remove usage of actions-rs/toolchain@v1 as it is not actively maintained by @reubenmiller in #1999
- CI improvements by @Bravo555 in #1997
- Filtering criteria in apt-sm-plugin output by @Ruadhri17 in #1961
- fix(docs): remove outdated statement about optional HSM by @reubenmiller in #2000
- fix(test-framework): Fix Should Have MQTT Messages keyword for payload pattern matching by @reubenmiller in #2004
- download: Partial downloads by @Bravo555 in #1966
- tedge init command #1764 by @albinsuresh in #2001
- Bump crate-ci/typos from 1.14.3 to 1.15.0 by @dependabot in #2021
- Replace actions-rs with toolchain install by @Bravo555 in #2011
- fix(ci): use official github hosted runner names by @reubenmiller in #2009
- docker/docker-compose images are always pruned by @PradeepKiruvale in #2016
- Flaky test mapper_fails_during_sw_update_recovers_and_process_response test by @PradeepKiruvale in #2002
- Export tedge features via a library crate by @jarhodes314 in #2014
- Configurable timeout for custom operation handler by @PradeepKiruvale in #1917
- Requirements and design of thin-edge Rust extensions by @didier-wenzek in #1549
- fix(ci): remove erroneous prefix before run commands by @reubenmiller in #2022
- Add missing pub constructor by @didier-wenzek in #2015
- Child device firmware management specification #1998 by @albinsuresh in #2007
- Fix spell check failures by @rina23q in #2029
- Refactor tedge-mapper by using new tedge config API by @rina23q in #2013
- Add workflow to upload coverage report on pushes to main by @Bravo555 in #2025
- Add a symlink to tedge-apt-plugin in /etc/tedge/sm-plugins by @PradeepKiruvale in #2027
- Add test fot tedge init by @gligorisaev in #2031
- Improve ConnectUrl parse error message by @Bravo555 in #2038
- update doc to reflect the custom ops timeout by @PradeepKiruvale in #2037
- Don't exit ConfigManager if error processing event and improve config snapshot error message by @Bravo555 in #2040
- Bump joonvena/robotframework-reporter-action from 2.1 to 2.2 by @dependabot in #2024
- Fix/docs layout by @didier-wenzek in #2034
- Remove the file prefix numbers on documentation pages by @didier-wenzek in #2044
- Fix AwsConverter and AzConverter not being killed by JSON parse error by @rina23q in #2047
- pass config location to plugin-sm from agent by @Ruadhri17 in #2008
- Fix compilation error on nightly by @Bravo555 in #2052
- Fix thin-edge markdown to be accepted by Docusaurus. by @didier-wenzek in #2003
- docs: minor formatting improvements by @reubenmiller in #2053
- feat: publish docusaurus docs to github pages by @reubenmiller in #2054
- Fix broken links by @didier-wenzek in #2055
- docs: fix management typo in title by @reubenmiller in #2057
- docs: fix getting started step indentation by @reubenmiller in #2056
- tedge-mapper-c8y sync with tedge-agent by @PradeepKiruvale in #2050
- Move out Install section by @didier-wenzek in #2058
- docs: refactor markdown guidelines to show components by @reubenmiller in #2059
- Add DocCardList to all index pages by @didier-wenzek in #2060
- dev(docs): ignore symlink created when building the docs by @reubenmiller in #2061
- Improve documentation of the main concepts by @didier-wenzek in #2046
- Fix broken anchor links by @didier-wenzek in #2062
- Support configurable tedge-mapper MQTT topics by @rina23q in #2033
- Extra tools in dev-containers by @albinsuresh in #1988
- Refactor plugins by using new TEdgeConfig API by @Ruadhri17 in #2064
- Bump crate-ci/typos from 1.15.0 to 1.16.0 by @dependabot in #2066
- Fix Rust 1.71.0 update-related errors by @Bravo555 in #2072
- tedge-agent must use new tedge-config by @PradeepKiruvale in #2073
- Fix bug in ConcurrentServerMessageBox by @Bravo555 in #2068
- docs(fix): add missing commas to json examples by @reubenmiller in #2074
- Improve downloader logging behaviour and make SoftwareManager exit immediately on ^C by @Bravo555 in #2049
- Remove hardcoded port in test_mqtt_server.rs by @Bravo555 in #2076
- fix(c8y-bridge): don't use mqtt wildcard due to breaking change in cumulocity by @reubenmiller in #2078
- docs: remove duplicate row in the external broker instructions by @reubenmiller in #2080
- fix(test): remove erroneous robot framework resource import by @reubenmiller in #2083
- Guidelines for MQTT topics by @albinsuresh in #2030
- Bump actions/upload-pages-artifact from 1 to 2 by @dependabot in #2067
- docs(mqtt): fix invalid json in an example by @reubenmiller in #2084
- docs: mark mqtt v1 mapper docs as draft by @reubenmiller in #2090
- test(software): use local http server with rate limiting instead of external resource by @reubenmiller in #2085
- Refactor tedge to use new config by @PradeepKiruvale in #2077
...
0.11.0
Release notes:
This release marks a significant milestone in thin-edges's history. The thin-edge.io components have been refactored to use an Actor model which improves the internal project structure and lays the ground work for even faster releases, with even more features in the future (and not to mention even easier to test features 💯).
Functionally, everything will work as it did before, however you may notice that the traceability of each component has improved significantly, allowing you to better reason with what is going on.
A big thanks to the core team who worked very hard over the last few months to make this happen ❤️
- @didier-wenzek, @albinsuresh, @rina23q, @PradeepKiruvale, @gligorisaev, @Bravo555, @Ruadhri17, @jarhodes314, @jmshark, @reubenmiller
New features
Refactoring
- Migrate all services to use the actor model (no breaking changes have been introduced) by Core Team (too many PRs to mention here)
Monitoring
- Add support for PID files by @Ruadhri17 in #1849
MQTT
- Add MQTT client authentication by @Bravo555 in #1864
- Add MQTT server authentication by @Bravo555 in #1816
- mosquitto.conf: put
per_listener_settings
first by @Bravo555 in #1919 - Add separate HTTP and MQTT endpoints for Cumulocity by @Bravo555 in #1957
- fix(cli): use clean session when validating url connectivity during tedge connect by @reubenmiller in #1967
- Quit the MQTT event loop on Outgoing::Disconnect by @didier-wenzek in #1982
Telemetry
- Measurement type is static as "ThinEdgeMeasurement" by @PradeepKiruvale in #1911
Packaging
- feat: package all binaries in single tarball by @reubenmiller in #1944
- Improve debian systemd service enable/start logic in post installation scripts by @reubenmiller in #1865
Misc.
- feat: use native (OS) certs by default for reqwest by @reubenmiller in #1891
- Downloader to download directly to target location by @albinsuresh in #1881
Bug fixes
- fix: always remove/purge if package exists by @reubenmiller in #1866
- Ignore errors when cleaning up remote access plugin by @jarhodes314 in #1871
- fix: use transfer dir setting instead of hard-coded path by @reubenmiller in #1898
- tedge-mapper-c8y service restart is required after a change of supported operation file contents by @PradeepKiruvale in #1959
Docs
- Cosmetic documentation improvements by @didier-wenzek in #1892
Developer
- Add just file support by @Ruadhri17 in #1889
What's Changed in 0.11.0 (full list)
- feat: add new plugins to install/remove script by @reubenmiller in #1857
- fix: bump tedge version in script to 0.10.0 by @reubenmiller in #1858
- Correct spell check errors by @gligorisaev in #1860
- Feat: Detect latest thin-edge.io version via github api in install script by @reubenmiller in #1861
- Rewrite c8y-log-plugin using c8y_log_manager by @didier-wenzek in #1820
- Remove message box trait by @jmshark in #1855
- Refactor c8y-config-plugin to use c8y-config-manager actor by @albinsuresh in #1828
- Add #[derive(Document)] to TEdgeConfigDto and replace FilePath with camino::Utf8PathBuf by @jarhodes314 in #1867
- Remove unnecessary AWS config field alias by @Bravo555 in #1859
- Add support for PID files by @Ruadhri17 in #1849
- fix: always remove/purge if package exists by @reubenmiller in #1866
- Added examples to keywords by @gligorisaev in #1868
- Add test for checking the lock file creation set/unset by @gligorisaev in #1851
- Add MQTT server authentication by @Bravo555 in #1816
- Add Converter trait and ConvertingActor by @didier-wenzek in #1873
- Impl Sender for TimedMessageBox test helper by @albinsuresh in #1870
- Fixed most clippy lints and enabled clippy for all targets by @Bravo555 in #1874
- Ignore errors when cleaning up remote access plugin by @jarhodes314 in #1871
- Removed the Task trait by @jmshark in #1878
- Downloader to download directly to target location by @albinsuresh in #1881
- Fix flaky test: test_fs_events by @didier-wenzek in #1882
- Install rust version from Cargo.toml in CI checks by @jarhodes314 in #1885
- Improve debian systemd service enable/start logic in post installation scripts by @reubenmiller in #1865
- Add test for documented configuration examples by @jarhodes314 in #1877
- Add tedge-downloader-actor by @rina23q in #1884
- add test for raising alarms in folder telemetry and move the child de… by @gligorisaev in #1887
- feat: use native (OS) certs by default for reqwest by @reubenmiller in #1891
- Cosmetic documentation improvements by @didier-wenzek in #1892
- docs: use inline code blocks to avoid warnings by @reubenmiller in #1893
- Add steps to check PID in lock file by @gligorisaev in #1895
- Add a Config type parameter to MessageSink by @didier-wenzek in #1880
- Refactor Azure and Aws mapper using actors by @PradeepKiruvale in #1888
- docs: add missing debian packages to instructions by @reubenmiller in #1901
- Bump peter-evans/create-pull-request from 4 to 5 by @dependabot in #1903
- get pid api by @PradeepKiruvale in #1890
- docs: use double quotes instead of open/close by @reubenmiller in #1897
- doc: fix spelling mistakes by @reubenmiller in #1900
- fix: use transfer dir setting instead of hard-coded path by @reubenmiller in #1898
- Use mdbook-pagetoc to add a table of contents to each page by @didier-wenzek in #1904
- Add just file support by @Ruadhri17 in #1889
- Refactor the collectd mapper using actors by @didier-wenzek in #1817
- New
c8y_firmware_manager
by @rina23q in #1830 - Cargo update by @didier-wenzek in #1910
- Improve actor builders by @didier-wenzek in #1913
- mosquitto.conf: put
per_listener_settings
first by @Bravo555 in #1919 - CI: use beta toolchain for clippy by @Bravo555 in #1924
- Delay systemd automatic service restarts by 5 sec by @reubenmiller in #1921
- Run
cargo update
to passcargo audit
by @Bravo555 in #1925 - Add MQTT client authentication by @Bravo555 in #1864
- Fix rename by @Ruadhri17 in #1914
- Test configuration management on main device by @reubenmiller in #1875
- Test configuration of tedge services to use a remote MQTT broker by @reubenmiller in #1848
- Fix/1896/file modifications by @jmshark in #1928
- Fix typo in mqtt.client.auth.key set error message by @Bravo555 in #1929
- Fix MQTT session of c8y_http_proxy by @didier-wenzek in #1933
- extend error message for chown function by @Ruadhri17 in #1930
- ci(fix): Used fixed version for udep...
0.10.0
Release notes:
New features
Cloud Connectors
- Add aws support - Samuel's version without CSR by @Bravo555 in #1723
- Add child device support for azure (measurements) by @toewsar in #1805
Commands (CLI)
Configuration
- Allow configuration to be passed in using TEDGE_ environment variables by @jarhodes314 in #1790 and #1837
- Add configuration option to disable lock file creation by @Ruadhri17 in #1818
- Issue#1804 tedge config setting for data path by @albinsuresh in #1807
Device Management
- Add c8y-firmware-plugin to support Child Devices (only) by @rina23q in #1719
- Add Cumulocity IoT remote access plugin (
c8y-remote-access-plugin
) by @jarhodes314 in #1694
Monitoring
- Adapt monitoring of daemons to new Service Monitoring Feature in 10.14 by @PradeepKiruvale in #1728
MQTT
Telemetry
- Support custom fragments in alarm creation by @PradeepKiruvale in #1699
- tedge alarm does not transform message fragment to text in the tedge-mapper-c8y by @PradeepKiruvale in #1715
Bug fixes
- Fix issues with
flock
preventing to launch a daemon even if not con… by @didier-wenzek in #1740
Docs
- Doc fix misalignment and typos in c8y-configuration-plugin specs by @rina23q in #1700
- Fix uninstall script name in the doc by @PradeepKiruvale in #1713
- Software management plugin docs: fix grammer and api mistakes by @reubenmiller in #1727
- Use mdbook-cmdrun to generate man pages by @didier-wenzek in #1809
- update yocto documentation by @Ruadhri17 in #1796
- Refactor the documentation layout. by @didier-wenzek in #1841
Build
- Build/publish artifacts - musl, zigbuild and cloudsmith by @reubenmiller in #1712
Developer
- feat: add vscode devcontainer definition by @reubenmiller in #1690
What's Changed since 0.10.0
- Fix default version logic in thin-edge install script by @reubenmiller in #1698
- feat: add vscode devcontainer definition by @reubenmiller in #1690
- Create tedge reference docs by @github-actions in #1668
- Doc fix misalignment and typos in c8y-configuration-plugin specs by @rina23q in #1700
- update dev container instructions by @reubenmiller in #1701
- Add initial data model by @cstoidner in #1677
- Add Cumulocity remote access plugin by @jarhodes314 in #1694
- Fix remove remote access install by @reubenmiller in #1706
- Bump crate-ci/typos from 1.13.9 to 1.13.10 by @dependabot in #1708
- Update the health status document by @PradeepKiruvale in #1704
- Support custom fragments in alarm creation by @PradeepKiruvale in #1699
- tedge_mapper az/collectd services start running when the thin-edge device restarts by @PradeepKiruvale in #1683
- Doc: Update the supported operation file example by @rina23q in #1702
- Refactor the download implementation of c8y-configuration-plugin by @rina23q in #1709
- Fix uninstall script name in the doc by @PradeepKiruvale in #1713
- Build/publish artifacts - musl, zigbuild and cloudsmith by @reubenmiller in #1712
- publish workflow: skip installation of build dependencies by @reubenmiller in #1717
- remove unnecessary build jobs from pull-request-checks workflow by @reubenmiller in #1720
- Support posix shells in uninstall script by @reubenmiller in #1722
- Introduce actor-based thin-edge components by @didier-wenzek in #1622
- tedge alarm does not transform message fragment to text in the tedge-mapper-c8y by @PradeepKiruvale in #1715
- Software management plugin docs: fix grammer and api mistakes by @reubenmiller in #1727
- refactor robot framework tests by @reubenmiller in #1714
- Add aws support - Samuel's version without CSR by @Bravo555 in #1723
- Wait for mapper health message before starting software list assertion by @reubenmiller in #1730
- Implemented
tedge reconnect aws
by @Bravo555 in #1737 - Additional dev tools in devcontainer by @albinsuresh in #1736
- Fix issues with
flock
preventing to launch a daemon even if not con… by @didier-wenzek in #1740 - Adapt monitoring of daemons to new Service Monitoring Feature in 10.14 by @PradeepKiruvale in #1728
- Simplify actor spawn logic by @didier-wenzek in #1742
- Applied clippy lints by @Bravo555 in #1734
- Issue #1724 Derive actor configs from TEdgeConfig by @albinsuresh in #1745
- Add c8y-firmware-plugin by @rina23q in #1719
- Bump crate-ci/typos from 1.13.10 to 1.13.12 by @dependabot in #1755
- disable unstable alarm tests by @PradeepKiruvale in #1756
- Fix clippy warning almost_swapped by @didier-wenzek in #1761
- Bump actions/checkout from 2 to 3 by @dependabot in #1759
- Bump actions/download-artifact from 1 to 3 by @dependabot in #1760
- Improve naming for message box builder traits by @didier-wenzek in #1748
- Remove tedge_actors dependency on anyhow by @didier-wenzek in #1752
- tedge-mapper-c8y sends the incorrect service type when the service is down by @PradeepKiruvale in #1754
- Bump actions/upload-artifact from 1 to 3 by @dependabot in #1758
- Test tasks improvements by @reubenmiller in #1751
- Switched to stable clippy by @Bravo555 in #1766
- Aws topic mapping by @Bravo555 in #1739
- Deprecate useless specialization: C8YConnectionBuilder by @didier-wenzek in #1770
- use relative svg link to prevent CORB error by @reubenmiller in #1780
- remove duplicate container networks before tests by @reubenmiller in #1781
- Fix the flaky alarms tests by @PradeepKiruvale in #1765
- Output tedge config control messages to stderr by @Bravo555 in #1771
- Combine message box receivers by @jmshark in #1738
- Add address/port config settings for crates using MQTT clients by @Bravo555 in #1789
- Allow configuration to be passed in using TEDGE_ environment variables by @jarhodes314 in #1790
- Simplify Actor Builders by @didier-wenzek in #1772
- Add a RobotFramework test for c8y-firmware-plugin by @rina23q in #1787
- Document tedge_actors crate by @didier-wenzek in #1744
- All service statuses are set to down and remain down after restarting mosquitto by @PradeepKiruvale in #1788
- Issue #1782 Non blocking firmware download by @albinsuresh in #1791
- Add test for jwt request b...
0.9.0
Release notes:
New features
Device Management
- Configurable restart command by @6367f766 in #1577
Commands (CLI)
- tedge reconnect command by @6367f766 in #1656
- Add output to
tedge cert create
andtedge cert remove
commands by @Bravo555 in #1654 - Improve the error messages when certificates having issues for c8y by @rina23q in #1589
Custom operation handler
Child Configuration Management
- Issue #1544 Enable config operation timer reset with executing status by @albinsuresh in #1606
- Configurable http port by @6367f766 in #1596
- http port bug fix by @6367f766 in #1608
- Fix panic when "http.port" is already in use by @6367f766 in #1621
- Declare child devices again if deleted in cloud by @6367f766 in #1644
MQTT Topics
Software Management
- Add support for
latest
version keyword by @6367f766 in #1615
Misc. Improvements
- Add logs to parsing inventory.json logic by @PradeepKiruvale in #1629
- Control log level via configuration by @PradeepKiruvale in #1624
- Rename debian packages to conform to standards by @reubenmiller in #1625
- Enhance the alarm and event message conversion error logs by @PradeepKiruvale in #1646
Bug fixes
- Retry unauthorized HTTP request with a renewed JWT token by @didier-wenzek in #1586
- Issue #1544 Timeout unacknowledged config management operation requests by @albinsuresh in #1593
- tedge connect c8y fails to connect to cumulocity cloud on yocto by @PradeepKiruvale in #1600
- Parse timezone with negative offset by @6367f766 in #1634
- Gracefully handle unknown config by @6367f766 in #1632
- Fix tedge-apt-plugin list to show the correct version by @rina23q in #1667
- Health status messages on startup and shutdown of tedge daemons by @PradeepKiruvale in #1650
Docs
- New docs/tutorials by @hansb001 in #1576
- Domain Model by @cstoidner in #1554
- Improve "Build Thin Ege for Yocto" tutorial by @Bravo555 in #1564
- remove $ prefix in shells by @reubenmiller in #1628
- Markdown rendering for mermaid diagrams and notes by @albinsuresh in #1669
- add child device tutorial by @hansb001 in #1642
Build
- support auto git semver versioning of packages by @reubenmiller in #1635
What's Changed since 0.9.0
- fix string formatting warning by @reubenmiller in #1588
- Add
alarm/alarms/create
topic to c8y_bridge configuration by @rina23q in #1590 - Improve the error messages when certificates having issues for c8y by @rina23q in #1589
- Doc fixes logging config by @reubenmiller in #1585
- Retry unauthorized HTTP request with a renewed JWT token by @didier-wenzek in #1586
- New docs/tutorials by @hansb001 in #1576
- Issue #1544 Timeout unacknowledged config management operation requests by @albinsuresh in #1593
- Simplify implementation of thin_edge_json::utils::excerpt by @didier-wenzek in #1604
- Configurable http port by @6367f766 in #1596
- Remove cache from the job to build for arm architecture by @rina23q in #1601
- Configurable restart command by @6367f766 in #1577
- Refactor build script to single script by @reubenmiller in #1587
- tedge connect c8y fails to connect to cumulocity cloud on yocto by @PradeepKiruvale in #1600
- Issue #1544 Enable config operation timer reset with executing status by @albinsuresh in #1606
- Only install gcc on when requested by @reubenmiller in #1609
- fix broken debian packages in cleanup by @reubenmiller in #1610
- Update documentation to reflect Apama plugin changes by @jdoc-sag in #1489
- Domain Model by @cstoidner in #1554
- use force when fixing broken deb packages by @reubenmiller in #1613
- Refactor
tedge_config
crate by @6367f766 in #1612 - Add support for
latest
version keyword by @6367f766 in #1615 - http port bug fix by @6367f766 in #1608
- Add default value for reboot command in system.toml by @6367f766 in #1619
- Fix panic when "http.port" is already in use by @6367f766 in #1621
- Improve "Build Thin Ege for Yocto" tutorial by @Bravo555 in #1564
- Retire
thin_edge_json
andagent_interface
into newtedge api
crate by @6367f766 in #1620 - Parse timezone with negative offset by @6367f766 in #1634
- Add logs to parsing inventory.json logic by @PradeepKiruvale in #1629
- support auto git semver versioning of packages by @reubenmiller in #1635
- Gracefully handle unknown config by @6367f766 in #1632
- Control log level via configuration by @PradeepKiruvale in #1624
- remove $ prefix in shells by @reubenmiller in #1628
- Adding test for child device conf mgmt by @gligorisaev in #1640
- Create vision.md by @andrej-schreiner in #1226
- Rename debian packages to conform to standards by @reubenmiller in #1625
- Don't specify version by @mjj29 in #1614
- Add rust-toolchain file by @6367f766 in #1645
- Enable toolchain via github action for cargo fmt by @6367f766 in #1649
- fix debian upgrade path by @reubenmiller in #1647
- remove apama plugin by @reubenmiller in #1648
- Declare child devices again if deleted in cloud by @6367f766 in #1644
- remove mdbook-toc dependency by @reubenmiller in #1652
- Enhance the alarm and event message conversion error logs by @PradeepKiruvale in #1646
- Fix the c8y custom operation status handling by @rina23q in #1641
- Add output to
tedge cert create
andtedge cert remove
commands by @Bravo555 in #1654 - publish debian packages to jfrog for development purposes by @reubenmiller in #1651
- Improve formatting in RobotFramework README by @Bravo555 in #1653
- tedge reconnect command by @6367f766 in #1656
- Update rust import style setting by @6367f766 in #1665
- Sort dependencies by @6367f766 in #1666
- Fix tedge-apt-plugin list to show the correct version by @rina23q in #1667
- Markdown rendering for mermaid diagrams and notes by @albinsuresh in #1669
- Health status messages on startup and shutdown of tedge daemons by @PradeepKiruvale in #1650
- Missleading status during starting of c8y_log_plugin and c8y_conf...
0.8.1
Release notes:
Bugfix highlights
- Update after stopping tedge_agent not functioning until key file is manually deleted #1551
- Empty directory for a child ops not creating the child device in c8y #1526
What's Changed
- Issue #1461 Remove redundant c8y-config-plugin code by @albinsuresh in #1531
- Fix log plugin does not load .toml configuration file at startup by @rina23q in #1534
notify
event extension - fix tedge mapper child device create events by @initard in #1538- Create tedge reference docs by @github-actions in #1539
- Issue #1513 Document how to write child device config management agent by @albinsuresh in #1536
- Replace minus by hyphen in doc by @rina23q in #1545
- Update supported ops doc for child devices by @PradeepKiruvale in #1542
- Update the upgrade part of the installation guide by @rina23q in #1548
- Update pull-request-checks.yml to fix typos job by @rina23q in #1559
- Remove flockfile for tedge_agent before running --init in postint script by @rina23q in #1557
- fix tedge typo in docs by @reubenmiller in #1558
- Update workflows to remove deprecated warning messages by @rina23q in #1556
- Bump crate-ci/typos from 1.12.12 to 1.12.14 by @dependabot in #1566
- Vision statement for thin-edge core by @didier-wenzek in #968
- Fix the operation name typo by @PradeepKiruvale in #1568
- Sporadic test failures in c8y tests by @PradeepKiruvale in #1567
- Add "OT" in spell-check dictionnary by @didier-wenzek in #1571
- Fix redundant ops create by @PradeepKiruvale in #1570
- Change the restart temporary file location from /run/tedge_agent to /tmp by @rina23q in #1575
- Patch version bump by @github-actions in #1581
- Create tedge reference docs by @github-actions in #1582
Full Changelog: 0.8.0...0.8.1
0.8.0
Release notes:
New features
Enhanced child device support
- The Cumulocity mapper creates a child device and report its supported operations on Cumulocity. User guide: Supported Operations for Child Devices
- Configuration management plugin supports child devices. User guide: Enable configuration management on child devices Specs: Device Configuration Management using Cumulocity.
Support for Yocto
You can add thin-edge as a layer to your customized Linux distribution. User guide: Build Thin Edge for a Yocto Linux distribution
OTA update of thin-edge.io
Now all thin-edge.io packages can be upgraded remotely from Cumulocity. #1466
Enhanced service monitoring via MQTT
Add more health endpoints for c8y-log-plugin
, c8y-configuration-plugin
, and tedge-watchdog
. #1172
What's Changed since 0.7.7
- tedge-mapper-c8y inventory not working by @PradeepKiruvale in #1498
- Tests for tedge-mapper extension to support child device operation. by @PradeepKiruvale in #1488
- Add test for device inventory fragments by @PradeepKiruvale in #1501
- Yocto: Add Yocto Linux documentation tutorial page by @Bravo555 in #1342
- Fix compilation error in tedge_utils regarding tracing by @rina23q in #1516
- Create tedge reference docs by @github-actions in #1517
- [Self-Update] Update Debian maintainers scripts of c8y-*-plugin by @rina23q in #1508
- Fix fragments tests to work with
tedge
installed by @initard in #1518 - Increase mqtt test server debug message by @initard in #1519
- [Self-Update] Update Debian maintainer scripts of tedge_watchdog tedge_mapper by @rina23q in #1509
- New documentation by @hansb001 in #1512
- Ignore .vimspector.json a debug configuration file by @initard in #1521
- Refactor file system monitoring library to use
notify
crate by @initard in #1511 - Add step to disconnect from c8y before uninstalling tedge by @gligorisaev in #1522
- Ignore c8y operations created for child devices by @rina23q in #1514
- Remove not running task, change Git hub field name by @gligorisaev in #1523
- [Self-Update] Update Debian maintainer scripts of tedge_agent by @rina23q in #1510
- Allow tedge_apt_plugin to downgrade packages by @rina23q in #1524
- Fix --init of tedge_agent run by root by @rina23q in #1525
- Issue #1480: c8y-config-plugin to fail cloud operation on execution failure by @albinsuresh in #1507
- Fix path to c8y-configuration-plugin.toml by @albinsuresh in #1528
- Log plugin does not load config file at startup by @rina23q in #1533
Full Changelog: 0.7.7...0.8.0
0.7.7
Release notes:
New features
- Configuration management plugin supports child devices. Specs here
- The Cumulocity mapper supports child devices' supported operations.
- Fix: Custom operations do not accept arbitrary topics #1356
- Fix: configuration plugin does not support multiple operations at once #1359
What's Changed
- Create tedge reference docs by @github-actions in #1452
- Update cargo.lock check to 1.63.0 by @initard in #1455
- Update README.md - removal of unmaintained roadmap project by @AndrejS321 in #1457
- Custom operations do not accept arbitrary topics by @PradeepKiruvale in #1450
- Porting automated tasks and test cases into thin-edge.io repository by @gligorisaev in #1449
- Bump rumqttc from 0.10.0 to 0.17.0 by @dependabot in #1463
- #1335 file transfer http api by @initard in #1402
- Fix loading of root certificates by @didier-wenzek in #1467
- Change tedge agent service file to run as root by @initard in #1471
- fs_notify generates events on wrong directory paths by @PradeepKiruvale in #1456
- Start http file transfer server with external address by @initard in #1472
- Fix spell check GitHub Actions warning by @initard in #1473
- Issue #1337 Child device support for c8y-config-plugin by @albinsuresh in #1381
- Return custom operation status by @PradeepKiruvale in #1475
- Feature/repaired the PR for add 4 tests by @gligorisaev in #1476
- Thin Edge File Transfer Repository reference guide by @albinsuresh in #1361
- Add test for http file transfer api by @gligorisaev in #1478
- Update the c8y mapper to declare child supported operations by @PradeepKiruvale in #1474
- Handle multiple-line SmartREST operations by @rina23q in #1483
- Issue #1405 Merge c8y_translator crate into c8y_mapper by @albinsuresh in #1477
- Issue #1405 Merge disjoint c8y crates into unified c8y_api crate by @albinsuresh in #1468
- Specify child devices configuration management by @didier-wenzek in #1417
- Cargo update by @didier-wenzek in #1492
- Closes #1486 Set port 8000 as default HTTP port for tedge-agent by @albinsuresh in #1490
- Patch version bump by @github-actions in #1495
- File permission API to change ownership of directory even if it already exists by @albinsuresh in #1497
- Patch version bump by @github-actions in #1499
- Issue #1480: Prevent c8y-config-plugin crashing on bad input by @albinsuresh in #1502
Full Changelog: 0.7.5...0.7.7
0.7.5
Release notes:
Highlights
- Many bugfixes
- Improve tedge_apt_plugin error messages #1183
- Transfer tests/PySys/tedge_connect tests to new test framework #1256
- Add new test for thin-edge health-check feature #1202
What's Changed
- Add manifest fields to all crates by @Bravo555 in #1355
- Move alarms converter code to a separate file by @PradeepKiruvale in #1366
- Flockfile misc refactorings by @matthiasbeyer in #1350
- Fix install array expansion by @matthiasbeyer in #1375
- Rename C8YPASSWORD to C8YPASS by @PradeepKiruvale in #1376
- Create Robotframework Automated Tests transfered from PySys by @gligorisaev in #1319
- Agreement on a governance model for thin-edge by @didier-wenzek in #1203
- Outsource contributing from governance by @matthiasbeyer in #1379
- Create tedge reference docs by @github-actions in #1399
- fixed tedge agent --init duplicating sub folders by @initard in #1398
- Move the certificate management to a common place by @PradeepKiruvale in #1373
- Cleanup contributing by @matthiasbeyer in #1384
- Rewrite sections about maintainers and teams by @TheNeikos in #1408
- Re-subscribe to the mqtt topics once the connection comes back by @PradeepKiruvale in #1360
- tedge-watchdog.service stays in status activating by @PradeepKiruvale in #1409
- Fix typos by @matthiasbeyer in #1413
- Directory for custom fragments /etc/tedge/device does not exist by @PradeepKiruvale in #1425
- Patch version bump by @github-actions in #1451
Full Changelog: 0.7.4...0.7.5
0.7.4
Release notes:
Highlights
- Extend alarms API to support child devices #1204
- Script to delete thin-edge.io from device #1231
- MQTT health endpoints for tedge plugin extensions #1172
What's Changed
- Create tedge reference docs by @github-actions in #1258
- Dependabot by @matthiasbeyer in #1239
- Bump actions/checkout from 2 to 3 by @dependabot in #1262
- Bump peter-evans/create-pull-request from 3 to 4 by @dependabot in #1263
- Bump actions/upload-artifact from 2 to 3 by @dependabot in #1264
- Remove unused test for
tedge cert
by @didier-wenzek in #1259 - Run all pull request checks on the changes of workflow files by @rina23q in #1270
- Update sha1 by @matthiasbeyer in #1271
- Update backoff by @matthiasbeyer in #1272
- Bump serde from 1.0.139 to 1.0.140 by @dependabot in #1267
- Bump mockall from 0.10.2 to 0.11.1 by @dependabot in #1266
- Add feature flag fs-notify to armv7 test by @rina23q in #1275
- fix cargo clippy --all-features for fs_notify by @initard in #1277
- run clippy with --all-features by @initard in #1276
- Extend events API to support child devices by @PradeepKiruvale in #1243
- Bump zip from 0.5.13 to 0.6.2 by @dependabot in #1281
- Update x509 parser by @matthiasbeyer in #1284
- Bump tracing-subscriber from 0.3.14 to 0.3.15 by @dependabot in #1283
- Bump clap from 3.2.12 to 3.2.14 by @dependabot in #1282
- Bump test-case from 2.1.0 to 2.2.1 by @dependabot in #1288
- Bump zeroize from 1.5.6 to 1.5.7 by @dependabot in #1293
- Bump nix from 0.23.1 to 0.24.2 by @dependabot in #1292
- Disable the pull request limit for dependabot by @matthiasbeyer in #1290
- Bump serial_test from 0.6.0 to 0.8.0 by @dependabot in #1294
- Bump fastrand from 1.7.0 to 1.8.0 by @dependabot in #1295
- tedge mapper dynamic discovery of operations by @initard in #1250
- Remove "serde" module in "clock" crate by @matthiasbeyer in #1298
- Update rumqttd by @matthiasbeyer in #1301
- Remove system pysys tests run from after-merge workflow by @rina23q in #1300
- MQTT health endpoints for tedge plugin extensions by @PradeepKiruvale in #1299
- Replace actions-rs/toolchain with dtolnay/rust-toolchain by @matthiasbeyer in #1303
- c8y configuration plugin implementation by @initard in #1249
- fs_notify crate for c8y log plugin by @initard in #1245
- Improve GitHub issue template by @rina23q in #1306
- removing apt integration tests by @initard in #1305
- Improve installation guide of thin-edge by @rina23q in #1309
- Add "needs" on the Udeps job to run after Rust code changes by @rina23q in #1313
- update health check doc by @PradeepKiruvale in #1316
- Remove unused deps by @matthiasbeyer in #1317
- tedge_util style fixes by @matthiasbeyer in #1208
- Update Cargo.lock by @matthiasbeyer in #1321
- Extend alarms API to support child devices by @PradeepKiruvale in #1314
- Add RF test case for MQTT health check c8y by @gligorisaev in #1327
- Script to remove or purge the thin-edge.io by @PradeepKiruvale in #1320
- Update the document to show how to uninstall thin-edge.io by @PradeepKiruvale in #1331
- Remove let nothing equals by @matthiasbeyer in #1311
- Make systemd watchdog backend only build for linux by @matthiasbeyer in #1318
- update doc by @PradeepKiruvale in #1345
- Yocto: Add homepage and repository fields to manifests of tedge and tedge_mapper crates by @Bravo555 in #1330
- Issue #1197 Document events API for child devices by @albinsuresh in #1198
- Restart of tedge-mapper-c8y is recreating deleted child devices by @PradeepKiruvale in #1344
- fix the typos in the uninstall script and doc by @PradeepKiruvale in #1346
- Issue #1204 Document alarms API for child devices by @albinsuresh in #1205
- make log directory configurable during init by @initard in #1338
- Clippy: Remove let unit by @matthiasbeyer in #1279
- Add check whether lockfile is up to date by @matthiasbeyer in #1339
- Clippy fixes by @matthiasbeyer in #1349
- Update rustc: 1.58.1 -> 1.63.0 by @matthiasbeyer in #1297
- Enhance the tedge_apt_plugin error message to be more verbose by @PradeepKiruvale in #1341
- Patch version bump by @github-actions in #1348
- Add shellcheck action, fix issues by @matthiasbeyer in #1326
- Replace scripts commands for the cross-Unix system compatibility by @Ruadhri17 in #1354
Full Changelog: 0.7.3...0.7.4
0.7.3
Release notes:
Bugfixes
- Plugins panic when payload is formatted incorrectly #1220
- c8y_configuration_plugin --init and c8y_log_plugin --init are overwriting exiting files #1189
- .toml format for c8y-log-plugin and c8y-configuration-plugin is different #1209
- Flush the file buffer after writing to the file #1242
Documentation
- Document the decision to refactor thin-edge using rust components #1202
Refactoring