-------------------------------------------------------------------------------- Fedora EPEL Update Notification FEDORA-EPEL-2022-468177c178 2022-06-28 01:43:12.813381 --------------------------------------------------------------------------------
Name : tio Product : Fedora EPEL 9 Version : 1.40 Release : 1.el9 URL : https://tio.github.io/ Summary : Simple TTY terminal I/O application Description : Tio is a simple TTY terminal application which features a straightforward commandline interface to easily connect to TTY devices for basic input/output.
-------------------------------------------------------------------------------- Update Information:
# tio v1.40 * Add config support for log-strip * Add config support for hex-mode * Rename `--hex` to `--hex-mode` * Fix completion for `-e`, `--local-echo` * Ignore newlines in hex output * Fix newline in `warning_printf()` * Fix `ansi_printf_raw()` in no color mode * Enter non- interactive mode when piping to tio Add support for a non interactive mode which allows other application to pipe data to tio which then forwards the data to the connected serial device. Non ineractive means that tio does not react to interactive key commands in the incoming stream. This allows users to pipe binary data directly to the connected serial device. Example use: `$ cat commands.txt | tio /dev/ttyUSB0` * Also strip backspace from log To make log strip feature consistent so that we remove all unprintable control characters and escape sequences. * Socket code cleanup * Cleanup man page * Rename `--log-filename` to `--log-file` * Allow strip escape sequence characters from log file The log without escape key stripped is like: ``` ^M[12:47:17] ACRN:> ^M[12:47:17] ACRN:>lasdfjklsdjf ^M ^M[12:47:18] Error: Invalid command. ^M[12:47:19] ACRN:> ^M[12:47:26] ACRN:> ^M[12:47:26] ACRN:>sdafkljsdkaljfklsadjflksdjafjsda^H ^H^H... ^M ^M[12:47:31] Error: Invalid command. ``` After strip escape key, the log is like: ``` [12:49:18] ACRN:> [12:49:19] ACRN:> [12:49:19] ACRN:>ls [12:49:19] Error: Invalid command. [12:49:19] ACRN:> [12:49:19] ACRN:>dfaslhj [12:49:24] Error: Invalid command. ``` Beside escape key, it also handle backspace key as well. # tio v1.39 * Improve key command response for local echo and timestamp * Fix invalid hex character error message * Make sure only matched config section is parsed * Add support for `disable` keyword in config file * Unify error message formating * Cleanup list devices code * Fix command- line `tty-device|config` parsing Allow user to add options on both sides of the provided config argument. For example: `$ tio -b 9600 am64-evm -e` Before, tio only allowed adding arguments after the config argument. Implemented as simple as possible by introducing two stage option parsing. * Update bash completion * Add support for IPv4 and IPv6 network sockets Add support for IPv4 and IPv6 network sockets via socket syntax `inet:<port>` and `inet6:<port>` respectively. For example, to listen and redirect serial device I/O to a host bound IPv4 socket simply do: `$ tio /dev/ttyUSB0 --socket inet:4444` To connect do e.g.: `$ nc 127.0.0.1 4444` Likewise, for IPv6 do: `$ tio /dev/ttyUSB0 --socket inet6:4444` To connect do e.g.: `$ nc ::1 4444` If port is `0` or no port is provided default port `3333` is used. * Fix tio deleting unix socket file If tio has a unix file socket open, a second tio instance of tio may delete the socket file. This change fixes so that it will not be deleted and tio will instead error and complain about conflicting socket file. * Rework color option Rework the color option to support setting ANSI color code values ranging from 0..255 or `none` for no color or `list` to print a list of available ANSI colors codes. Also, disables color when piping. * Remove print of hex mode status at startup * Remove newline option in hex mode * Fix configfile memory leaks * Remove command-line option inconsistencies Optional arguments, as parsed by the `getopt_long` mechanism, are inherently inconsistent with how you define required arguments. To avoid confusion we decide to avoid this inconsistency by replacing optional options with additional options with required argmuments. * Replace `1` with `enable` in config files * Convert errors to warnings * Extended hexadecimal mode. While in hex mode (`ctrl`-`t` `h`) you can output hexadecimal values. E.g.: to send `0x0A` you have to type `0A` (always 2 characters). Added option `-x`, `--hex` to start in hexadecimal mode. Added option `--newline-in-hex` to interpret newline characters in hex mode. This is disabled by default, because, in my opinion, hex stream is fundamentally different from text, so a "new line" is meaningless in this context. # tio v1.38 * Redirect error messages to stderr * Improve help and man page * Mention config file in `--help` * Fix running without config file * Fix config file error messages * Redirect error messages to stderr * Add repology packaging status * Fix parsing of default settings Default configuration file settings were not parsed in case a section was matched. Now we make sure that the default (unnamed) settings are always parsed. * Append to existing log file (no truncation) * Add socket info to show configuration * Print socket info at startup * Fix socket option parsing * Match user input against config section names if pattern matching was unsuccessful. This allows for better config file ergonomics if the user has a diverse set of serial devices as the name does not need to be specified in the config file twice. * Add support for external control via a Unix domain socket. This feature allows an external program to inject output into and listen to input from a serial port via a Unix domain socket (path specified via the `-S`/`--socket` command line flag, or the socket config file option) while tio is running. This is useful for ad-hoc scripting of serial port interactions while still permitting manual control. Since many serial devices (at least on Linux) get confused when opened by multiple processes, and most commands do not know how to correctly open a serial device, this allows a more convenient usage model than directly writing to the device node from an external program. Any input from clients connected to the socket is sent on the serial port as if entered at the terminal where tio is running (except that `ctrl-t` sequences are not recognized), and any input from the serial port is multiplexed to the terminal and all connected clients. Sockets remain open while the serial port is disconnected, and writes will block. Example usage 1 (issue a command): `echo command | nc -UN /path/to/socket > /dev/null` Example usage 2 (use the expect command to script an interaction): ``` #!/usr/bin/expect -f set timeout -1 log_user 0 spawn nc -UN /path/to/socket set uart $spawn_id send -i $uart "command1\n" expect -i $uart "prompt> " send -i $uart "command2\n" expect -i $uart "prompt> " ``` * fix for using option `log` without `log-filename` in config file # tio v1.37 * Fix timestamp parsing in INI conf * Factorize timestamp parsing to be coherent with command line format in configuration file # tio v1.36 * Add support for defaults in config file If no section name is specified the configuration will be considered the default one. This allows to set e.g. a default color code for sections which do not configure a color code. * Handle `SIGHUP` Handle `SIGHUP` so that the registered exit handlers are called to restore the terminal back to its orignal state. * Add color configuration support * Bypass unused result warnings * Force dependency on libinih Configuration file support is considered a mandatory feature. * Update headers * Update `AUTHORS` * Update man page * Move `string_to_long()` to `misc.c` * Update CircleCI config * Update tio gif * Update `README` * Update `LICENSE` date * Remove redundant `COPYING` file * Document configuration file options * Add support for a configuration file * misc: add `_unused` macro Some parameters are expected to be unused. Add a basic macro to mute these compiler warnings. * options: expose `string_to_long()` Expose `string_to_long()` so that other source files can use it. -------------------------------------------------------------------------------- ChangeLog:
* Sat Jun 18 2022 Robert Scheck robert@fedoraproject.org 1.40-1 - Upgrade to 1.40 (#2098148) * Sun Jun 12 2022 Robert Scheck robert@fedoraproject.org 1.39-1 - Upgrade to 1.39 (#2096097) * Sat Jun 4 2022 Robert Scheck robert@fedoraproject.org 1.38-1 - Upgrade to 1.38 (#2092955) * Thu Apr 14 2022 Robert Scheck robert@fedoraproject.org 1.37-1 - Upgrade to 1.37 (#2075385) * Tue Mar 22 2022 Robert Scheck robert@fedoraproject.org 1.36-1 - Upgrade to 1.36 (#2066516) -------------------------------------------------------------------------------- References:
[ 1 ] Bug #2098148 - tio-1.40 is available https://bugzilla.redhat.com/show_bug.cgi?id=2098148 --------------------------------------------------------------------------------
This update can be installed with the "yum" update programs. Use su -c 'yum update tio' at the command line. For more information, refer to "YUM", available at https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7%5C /html/System_Administrators_Guide/ch-yum.html
All packages are signed with the Fedora EPEL GPG key. More details on the GPG keys used by the Fedora Project can be found at https://fedoraproject.org/keys --------------------------------------------------------------------------------
epel-package-announce@lists.fedoraproject.org