This switches the stdio-protocol for the low-level installer from simple, line-based messages to JSON.
This solves a number of problems, most prominently that messages can now contain multiline text (or for that matter, any kind of data), as JSON handles that transparently. The actual "meaty" changes are in #3, the others are either some simple cleanups or test infra. I have also included a testsuite for both the Perl side of things, as well as the TUI, to ensure that it works and cannot be accidently broken easily in the future. Tested this by installing of PVE and PBS. Christoph Heiss (6): low-level: align wording of finish message ui: stdio: log error if display_html() is called on stdio backend tui, ui: switch over to JSON-based protocol test: add tests for UI^2 stdio protocol buildsys: setup proper test environment for testsuite tui: install progress: add tests for UI^2 stdio protocol Makefile | 9 +- Proxmox/UI/StdIO.pm | 43 ++-- proxmox-low-level-installer | 2 +- .../src/views/install_progress.rs | 195 +++++++++++++----- test/Makefile | 6 +- test/ui2-stdio.pl | 96 +++++++++ 6 files changed, 280 insertions(+), 71 deletions(-) create mode 100755 test/ui2-stdio.pl -- 2.42.0 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel