]> git.sur5r.net Git - tio/blob - ChangeLog
Bump Standards-Version
[tio] / ChangeLog
1 === tio v1.38 ===
2
3
4
5 Changes since tio v1.37:
6
7  * Redirect error messages to stderr
8
9  * Improve help and man page
10
11  * Mention config file in --help
12
13  * Fix running without config file
14
15  * Fix config file error messages
16
17  * Redirect error messages to stderr
18
19  * Add repology packaging status
20
21  * Fix parsing of default settings
22
23    Default configuration file settings were not parsed in case a section
24    was matched. Now we make sure that the default (unnamed) settings are
25    always parsed.
26
27  * Append to existing log file (no truncation)
28
29  * Add socket info to show configuration
30
31  * Print socket info at startup
32
33  * Fix socket option parsing
34
35 Peter Collingbourne:
36
37  * Match user input against config section names if pattern matching was unsuccessful.
38
39    This allows for better config file ergonomics if the user has a diverse
40    set of serial devices as the name does not need to be specified in
41    the config file twice.
42
43  * Add support for external control via a Unix domain socket.
44
45    This feature allows an external program to inject output into and
46    listen to input from a serial port via a Unix domain socket (path
47    specified via the -S/--socket command line flag, or the socket
48    config file option) while tio is running. This is useful for ad-hoc
49    scripting of serial port interactions while still permitting manual
50    control. Since many serial devices (at least on Linux) get confused
51    when opened by multiple processes, and most commands do not know
52    how to correctly open a serial device, this allows a more convenient
53    usage model than directly writing to the device node from an external
54    program.
55
56    Any input from clients connected to the socket is sent on the serial
57    port as if entered at the terminal where tio is running (except that
58    ctrl-t sequences are not recognized), and any input from the serial
59    port is multiplexed to the terminal and all connected clients.
60
61    Sockets remain open while the serial port is disconnected, and writes
62    will block.
63
64    Example usage 1 (issue a command):
65
66      echo command | nc -UN /path/to/socket > /dev/null
67
68    Example usage 2 (use the expect command to script an interaction):
69
70      #!/usr/bin/expect -f
71
72      set timeout -1
73      log_user 0
74
75      spawn nc -UN /path/to/socket
76      set uart $spawn_id
77
78      send -i $uart "command1\n"
79      expect -i $uart "prompt> "
80      send -i $uart "command2\n"
81      expect -i $uart "prompt> "
82
83 lexaone:
84
85  * fix for using option 'log' without 'log-filename' in config file
86
87
88
89 Changes since tio v1.36:
90
91  * Make libinih a fallback dependency
92
93    This means that in case meson does not find libinih it will
94    automatically clone libinih and include it in the build.
95
96    The libinih library is reconfigured to be statically built so that no
97    shared object will be installed.
98
99 Sylvain LAFRASSE:
100
101  * Fix timestamp parsing in INI conf
102
103  * Factorize timestamp parsing to be coherent with command line format in configuration file.
104
105
106
107 Changes since tio v1.35:
108
109  * Add support for defaults in config file
110
111    If no section name is specified the configuration will be considered the
112    default one.
113
114    This allows to set e.g. a default color code for sections which do not
115    configure a color code.
116
117  * Handle SIGHUP
118
119    Handle SIGHUP so that the registered exit handlers are called to restore
120    the terminal back to its orignal state.
121
122  * Add color configuration support
123
124  * Bypass unused result warnings
125
126  * Force dependency on libinih
127
128    Configuration file support is considered a mandatory feature.
129
130  * Update headers
131
132  * Update AUTHORS
133
134  * Update man page
135
136  * Move string_to_long() to misc.c
137
138  * Update CircleCI config
139
140  * Update tio gif
141
142  * Update README
143
144  * Update LICENSE date
145
146  * Remove redundant COPYING file
147
148 Liam Beguin:
149
150  * Document configuration file options
151
152  * Add support for a configuration file
153
154  * misc: add _unused macro
155
156    Some parameters are expected to be unused.
157    Add a basic macro to mute these compiler warnings.
158
159  * options: expose string_to_long()
160
161    Expose string_to_long() so that other source files can use it.
162
163
164
165 Changes since tio v1.34:
166
167  * Add support for automatically generated log filename
168
169    Automatically generate log filename if none is provided.
170
171    The auto generated file name is on the form:
172    "tio_DEVICE_YYYY-MM-DDTHH:MM:SS.log"
173
174  * Add support for configurable timestamp format
175
176    Also changes default timestamp format from ISO8601 to classic 24-hour
177    format as this is assumed to be the format that most users would prefer.
178
179    And reintroduces strict but optional ISO8601 format.
180
181    This feature allows to easily add more timestamp formats in the future.
182
183  * Reintroduce asm-generic/ioctls.h
184
185    It is needed for ppc builds.
186
187  * Add macro hack to workaround older buggy glibc
188
189 Robey Pointer:
190
191  * Add support for high bps on OS X
192
193
194
195 Changes since tio v1.33:
196
197  * Fix setspeed2 compilation
198
199  * Only apply color formatting when using color option
200
201    To help the color blind who may use custom terminal foreground /
202    background colors.
203
204  * Update README
205
206  * Add '-c, --color' option
207
208    Allow user to select which ANSI color code to use to colorize the tio
209    text. To successfully set the color the color code must be in the range
210    0..255.
211
212    If color code is negative tio will print all available ANSI colors.
213
214    The default color is changed to bold white to make tio defaults usable
215    for most users, including color blind users.
216
217  * Fix setspeed2 check
218
219  * Fix meson header check string
220
221  * Reintroduce long timestamp format
222
223    But make the timestamp format RFC3339 compliant instead. The RFC states:
224
225    NOTE: ISO 8601 defines date and time separated by "T".
226          Applications using this syntax may choose, for the sake of
227          readability, to specify a full-date and full-time separated by
228          (say) a space character.
229
230    This way we keep the information specified by ISO 8601 but make it more
231    human readable which is better for the console output.
232
233  * Update version year
234
235 Sylvain LAFRASSE:
236
237  * Fix TTY device listing on Darwin. (#136)
238
239  * Fix TCGETS2 search on Darwin.
240
241
242
243 Changes since tio v1.32:
244
245  * Show auto connect status in show configuration
246
247  * Use '#pragma once' in all headers
248
249  * Improve printed output
250
251    Get rid of inconsistencies in the printed output (error printing,
252    colors, etc.).
253
254    Prepare for user configurable color.
255
256  * Rename option -i to -L
257
258  * Shorten timestamp
259  
260  * Shorten timestamp description
261
262    We do not need the date part of the timestamp. It simply takes up too
263    much precious line space. In case of logging to file, one can easily
264    conclude the date from the file date information.
265
266  * Replace Travis with circleCI
267
268  * Replace autotools with meson
269
270    To introduce much simpler build configuration which is also easier to
271    maintain.
272
273  * Add list serial devices feature
274
275    For convenience, add a --list-devices option which lists the available
276    serial devices.
277
278  * Cleanup: Use dot notation for default options struct
279
280  * Update AUTHORS
281
282  * Add command to show version
283
284    The key sequence ctrl-t v will now show the version of tio.
285
286  * Align format of timestamps
287  
288  * Add Sylvain as official co-maintainer
289
290 Sylvain LAFRASSE:
291
292  * Add '-t' option description for time stamping.
293
294  * Add description for time stamping.
295
296  * Resolved tio/tio#84: Added timestamps in log file if enabled.
297
298 attila-v:
299
300  * Refine timestamps with milliseconds and ISO-8601 format (#129).
301
302    * Show milliseconds too in the timestamp (#114) and log file (#124)
303    * Change timestamp format to ISO-8601.
304
305 Yin Fengwei:
306
307  * Output newline on stdout with hex print mode
308
309    This is to fix the issue #104. The timestamp will always be
310    printed at the beginning of line:
311
312    [10:25:56] Switched to hexadecimal mode
313    0d 0a 0d [10:25:57] 41 43 52 4e 3a 5c 3e 0d 0a 0d [10:25:58] 41
314
315    is changed to:
316
317    [12:34:56] 45 72 72 6f 72 3a 20 49 6e 76 61 6c 69 64 20
318    [12:34:56] 41 43 52 4e 3a 5c 3e
319    [12:34:56] 41 43 52 4e 3a 5c 3e
320    [12:34:57] 41 43 52 4e 3a 5c 3e 6c 73
321
322 Jakob Haufe:
323
324  * Make comparison POSIX compliant
325
326    String comparison with == is not POSIX compliant and can fail with e.g.
327    dash.
328
329 Henrik Brix Andersen:
330
331  * Add bash completion of tty devices.
332
333  * Add -t/--timestamp to bash completion script.
334
335 Henner Zeller:
336
337  * Local echo: show character by character even if stdout buffered.
338
339 Björn Stenberg:
340
341  * Show error when failing to open a tty
342
343 Alban Bedel:
344
345  * Fix out of tree builds
346
347    Out of tree builds are currently broken because $(top_srcdir)src/include
348    is not in the search path. In tree builds are working because autconf add
349    $(top_builddir)/src/include to the search path for the generated config.h.
350    As $(top_builddir) and $(top_srcdir) are identical during in tree builds
351    the search path still end up beeing somehow correct.
352
353    To fix this add -I$(srcdir)/include to the CPPFLAGS in Makefile.am.
354
355 Fabrice Fontaine:
356
357  * src/setspeed2.c: fix redefinition of termio
358
359    Include ioctls.h and termbits.h from asm-generic instead of asm to avoid
360    build failures.
361
362 Erik Moqvist
363
364  * Exit if output speed cannot be set.
365
366 Lars Kellogg-Stedman:
367
368  * fflush() after putchar() for print_hex and print_normal
369
370    In order for local echo to work properly, we have to either call
371    fflush(stdout) after every character or just disable line buffering.
372    This change calls fflush() after putchar().
373
374  * Disable line buffering in stdout
375
376    In order for local echo to work properly, we have to either call
377    fflush(stdout) after every character or just disable line buffering.
378    This change uses setbuf(stdout, NULL) to do the latter.
379
380 George Stark:
381
382  * dont show line state if ioctl failed
383
384  * add serial lines manual control
385
386 arichi:
387
388  * Flush every local echo char
389
390    Flush stdout at every char in case it
391    happens to be buffered.
392
393 Mariusz Midor:
394
395  * Newline: handle booth NL and CR
396
397    Flag ONLCRNL expects code \n after press Enter, but on some systems \r is send instead.
398
399
400
401 Changes since tio v1.31:
402
403  * Update AUTHORS
404
405  * Minor code style cleanups
406
407  * Cleanup print macros
408
409  * Flush output
410
411    Make sure output is transmitted immediately by flushing the output.
412
413 Robey Pointer:
414
415  * add optional timestamps
416
417    with "-t" or "C-t T", toggle a timestamp prefix to each line.
418
419 Jakub Wilk:
420
421  * Fix typos
422
423 Sylvain Lafrasse:
424
425  * Added macOS compatibility
426
427  * Made O_NONBLOCK flag to open() call specific to macOS only.
428
429  * Added macOS-related details.
430
431  * Added O_NONBLOCK flag to open() call for macOS (10.13.6) compatibility.
432
433
434
435 Changes since tio v1.30:
436
437  * Update date
438
439  * Update AUTHORS
440
441 Henner Zeller:
442
443  * Clarify the input/output variable names (No-op change)
444
445  * Organize options the same sequence they are mentioned in cmdline help.
446
447  * Update README.
448
449  * Map CR->NL locally on output instead of using tio.c_oflag |= OCRNL.
450
451    This mostly is intended to have local echo output exactly what is sent
452    to the remote endpoint.
453    A nice side-effect is, that it also fixes tty-implementations, that can't
454    deal with the OCRNL flag on tio.c_oflag.
455
456  * Provide local-echo option.
457
458    Can be switched on with -e on the command line.
459    Can be toggled with Ctrl t e while program is running.
460
461  * Write to logfile as soon as we have the data, don't buffer.
462
463    Logfiles are important to see what happened, in particular if something
464    unexpected happened; so we want to make sure that the logfile is flushed
465    to disk.
466
467    Before this change, the logfile was typically written at the end in
468    a large chunk as the default (large) buffering applied. Now, characters are
469    written out ASAP, so it is possible to get a live-view with a
470    tail -f <logfile>
471
472
473
474 Changes since tio v1.29:
475
476  * Update README
477
478  * Update man page and bash completion
479
480  * Update AUTHORS
481
482 qianfan Zhao:
483
484  * ONLCRNL: change the method to map NL to CR-NL
485
486
487
488 Changes since tio v1.28:
489
490  * Add mapping flags INLCRNL and ODELBS
491
492    The following new mapping flags are added:
493
494    INLCRNL: Map NL to CR-NL on input.
495    ODELBS: Map DEL to BS on output.
496
497    Flags requested and tested by Jan Ciger (janoc).
498
499
500
501 Changes since tio v1.27:
502
503  * Update README
504
505  * Update AUTHORS
506
507  * Add snap status to README.md
508
509  * Add README.md to prettify GitHub page
510
511  * Add missing header
512
513 Petr VanÄ›k:
514
515  * Add missing header file under musl-libc
516
517    Musl's inclusion tree slightly differs from glibc, therefore TCGETS2 is
518    not reachable through sys/ioctl.h, so asm/ioctls.h needs to be included
519    too.
520
521 Jakub Wilk:
522
523  * Fix grammar and typos
524
525
526
527 Changes since tio v1.26:
528
529  * Update man page
530
531  * Add support for setting non-standard baudrates
532
533    Support for non-standard baudrate settings will be automatically enabled
534    if the termios2 interface is detected available. However, to play it
535    safe, the old and widely supported termios interface will still be used
536    when setting standard baudrates.
537
538  * Cleanup
539
540  * Update AUTHORS
541
542
543
544 Changes since tio v1.25:
545
546  * Reconfigure stdin
547
548    Make stdin behave more raw'ish. In particular, don't
549    translate CR -> NL on input.
550
551  * Add special character map feature
552
553    Add a --map option which allows mapping special characters, in particular CR and
554    NL characters which are used in various combinations on various platforms.
555
556  * Cleanup
557
558  * Update AUTHORS
559
560  * Update README
561
562  * Mention website
563
564  * Update man page
565
566
567
568 Changes since tio v1.24:
569
570  * Fix error applying new stdout settings
571
572    On Fedora 26 tio will quit with the following error message:
573
574    "Error: Could not apply new stdout settings (Invalid argument)"
575
576    In case of Fedora, it turns out that the new stdout settings used are a
577    bit too aggressive because an empty termios structure is used. To remedy
578    this we reuse the existing stdout settings and only reconfigure the
579    specific options we need to make a "raw" stdout configuration.
580
581  * Remove unused pkgconfig in configure
582
583  * Code cleanup
584
585    Remove unused variable.
586
587
588
589 Changes since tio v1.23:
590
591  * Optimize clear screen command
592
593    Replaced system call with inline ANSI/VT100 clear screen code sequence
594
595  * Fix bash completion installation
596
597    Fixed the configure script to avoid that the bash completion script gets
598    installed outside of the prefix location. The default install location
599    is now $prefix/share/bash-completion/completions.
600
601    Use the configure option '--with-bash-completion-dir=PATH' if you need
602    to install the bash completion script elsewhere.
603
604 Jakub Wilk:
605
606  * Add missing commas in conditional sentences
607
608
609
610 Changes since tio v1.22:
611
612  * Update copyright headers
613
614 Jakub Wilk:
615
616  * Fix typos
617
618
619
620 Changes since tio v1.21:
621
622  * Update man page date
623
624  * Update copyright year
625
626  * Code cleanup
627
628  * Update README and man page
629
630
631
632 Changes since tio v1.20:
633
634  * Add support for hexadecimal mode
635
636    A new key command 'ctrl-t h' is introduced which toggles between
637    hexadecimal mode and normal mode. When in hexadecimal mode data received
638    will be printed in hexadecimal.
639
640  * Do not distribute src/bash_completion/tio
641
642    Since the bash completion tio script is now autogenerated from tio.in it
643    should not be distributed in the tarball.
644
645  * Add missing forward flag
646
647  * Update AUTHORS file
648
649 Adam Borowski:
650
651  * 'ctrl-t b' to send serial break.
652
653 Jakub Wilk:
654
655  * Removed git commit references from ChangeLog
656
657    ChangeLog is primary useful for users who don't have the git repository
658    at hand.
659
660    Replace git commit references with version numbers; or if the change
661    only cleans up another change with no release in between, remove the
662    changelog item completely.
663
664
665
666 Changes since tio v1.19:
667
668  * Added more error handling of terminal calls
669
670    Also removed duplicate terminal flushing calls.
671
672  * Revert "Added support for non-standard baud rates"
673
674    This reverts a change made in v1.18.
675
676    Reverting because supporting non-standard or arbitrary baud rates is
677    troublesome because the c library provides no means of doing so and even
678    if bare metal linux kernel interface is used it will not work on all
679    Linux kernels version.
680
681
682
683 Changes since tio v1.18:
684
685  * Rearranged key commands
686
687    Rearranged the key commands:
688
689    ctrl-t c (clear screen) is now
690    ctrl-t l which is similar to the well known shell ctrl-l
691
692    ctrl-t i (show settings information) is now
693    ctrl-t c (show configuration)
694
695    Updated man page accordingly.
696
697  * Added "ctrl-t c" key command to clear screen
698
699
700
701 Changes since tio v1.17:
702
703  * Updated man page
704
705  * Added support for non-standard baud rates
706
707    Only enabled when possible, that is, when the BOTHER definition is
708    available.
709
710    It is untested but it should work as described here:
711    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=683826
712
713    Some Cypress USB<->serial devices supposedly supports arbitrary speeds.
714
715  * Generate baudrate switch cases based on detection
716
717    Support a single source of baud rate configuration as discussed in
718    https://github.com/tio/tio/issues/45 .
719
720    To do so, autogeneration of the switch cases which do the baud rate
721    option value check and configuration/conversion in tty_configure() is
722    introduced via a single macro.
723
724    Just to be safe, this change also enables configure detection of all
725    baud rates, including the ones previously assumed supported by most/all
726    systems (POSIX).
727
728  * Minor cleanup
729
730  * Exit when not a tty device in autoconnect mode
731
732 Jakub Wilk:
733
734  * Added non-standard baud rates that are defined on FreeBSD
735
736  * Capitalized "GitHub" in README
737
738
739
740 Changes since tio v1.16:
741
742  * Compacted tty_configure() a bit
743
744  * Fixed automatic baud rate enablement
745
746  * Minor cleanups
747
748  * Added autodetection of available baud rates
749
750    Various platforms support different baud rates.
751
752    To avoid adding platform specific handling generic baud rate detection
753    tests are introduced in the configure script. Successfully detected baud
754    rates are automatically enabled. This applies to both the C code and the
755    bash completion script.
756
757    Note:
758    Baud rates below 57600 are defined by POSIX-1 and supported by most
759    platforms so only baud rate 57600 and above are tested.
760
761  * Updated bash-completion
762
763  * Fixed printf() format type
764
765  * Added Travis build configuration
766
767 Jakub Wilk:
768
769  * Generated bash completion at configure time
770
771  * Reduce code duplication in baud rate detection
772
773  * Add support for baud rates 200 and 1800
774
775  * Fixed baudrate type
776
777
778
779 Changes since tio v1.15:
780
781  * Updated man page
782
783  * Updated README
784
785  * Removed obsolete packaging files
786
787  * Removed use of deprecated bzero()
788
789
790
791 Changes since tio v1.14:
792
793  * Removed + to remove potential confusion
794
795  * Added input digit checks
796
797  * Fixed license string
798
799  * Introduced tty_configure()
800
801    Moved tty configuration actions to tty_configure() in tty.c. This way
802    options.c is strictly about parsing options nothing else.
803
804  * Function names cleanup
805
806  * Updated AUTHORS file
807
808    Added Nick who created the new tio package for Arch Linux.
809
810  * Fixed tx/rx counters type
811
812 Jakob Haufe:
813
814  * Include config.h before standard headers
815
816    Large file support was meant to be enabled in v1.11.
817    This change enables it for real.
818
819
820
821 Changes since tio v1.13:
822
823  * Fixed tio_printf macro
824
825  * Fixed launch hints
826
827    Fixed launch hints not being printed in no autoconnect mode.
828
829  * Added 'ctrl-t ?' to list available commands
830
831  * Fixed log mechanism
832
833    To avoid echoing only log what is received from tty device.
834
835  * Improved tio output
836
837    Added titles and indentation to commands output for clearer separation
838    when firing commands repeatedly.
839
840    Also added print of tio version and quit command hint at launch.
841
842  * Cleaned up tio print mechanism
843
844 Jakub Wilk:
845
846  * Fixed grammar
847
848    "allow" is a transitive verb, which requires an object,
849    so "allow to <verb>" is ungrammatical.
850
851  * Fixed typo
852
853
854
855 Changes since tio v1.12:
856
857  * Fixed some error prints
858
859  * Fixed error printing for no autoconnect mode
860
861    Always print errors but only print silent errors when in no autoconnect
862    mode.
863
864  * Added key command for showing session settings
865
866    A new key command "ctrl-t i" is added to allow the user to display the
867    various session settings information (baudrate, databits, log file, etc.).
868
869    This is useful in case you have a running session but have forgotten
870    what the settings are.
871
872
873
874 Changes since tio v1.11:
875
876  * Consolidated command key handling
877
878  * Moved delay mechanism into separate function
879
880  * Retired obsolete usleep()
881
882    Replaced with nanosleep()
883
884  * Added simple tx/rx statistics command (ctrl-t s)
885
886    To display the total number of bytes transmitted/received simply perform the
887    'ctrl-t s' command sequence.
888
889    This feature can be useful when eg. trying to detect non-printable
890    characters.
891
892  * Further simplification of key handling
893
894    Changed so that the "ctrl-t ctrl-t" sequence is now simply "ctrl-t t" to
895    send the ctrl-t key code. This is inspired by screen which does similar
896    to send its command key code (ctrl-a a).
897
898    This change also eases adding new key commands if needed.
899
900    Updated man page accordingly.
901
902  * Cleaned up and simplified key handling
903
904 Jakub Wilk:
905
906  * Insert output delay only if something was output
907
908
909
910 Changes since tio v1.10:
911
912  * Enabled large file support (LFS)
913
914    Added autotools AC_SYS_LARGEFILE to support 64 bit file size handling.
915
916  * Updated tio title
917
918
919
920 Changes since tio v1.9:
921
922  * Introduced lock on device file
923
924    Tio will now test for and obtain an advisory lock on the tty device file
925    to prevent starting multiple sessions on the same tty device.
926
927  * Updated AUTHORS
928
929 Jakub Wilk:
930
931  * Treat EOF on stdin as error
932
933
934
935 Changes since tio v1.8:
936
937  * Cleanup of error handling
938
939    Introduced consistent way of handling errors and printing error messages.
940
941    Also upgraded some warnings to errors.
942
943  * Updated localtime() error message
944
945  * Cleanup
946
947 Jakub Wilk:
948
949  * Fix error handling for select()
950
951    Previously the error handling code for select() was unreachable.
952
953  * Removed unneeded quotes from AM_CFLAGS
954
955  * Expanded tabs
956
957  * Fixed setting "tainted"
958
959    Set "tainted" if and only if any character was read from the device.
960
961    Ctrl-t is no longer sent to the device on exit, so the trick to avoid
962    its echo is not necessary.
963
964    Characters read from stdin don't directly affect output, so they
965    shouldn't enable "tainted".
966
967  * Used \r in color_printf()
968
969    \033[300D is an unusual way to move the cursor back to column 1.
970    Use straightforward \r instead.
971
972  * Added missing \r\n to warning messages
973
974    \n alone is not enough, because the terminal is in raw mode.
975
976
977
978 Changes since tio v1.7:
979
980  * Fixed enablement of compiler warnings
981
982  * Fixed log_open() prototype
983
984  * Fixed index error wrt ctrl-t detection
985
986  * Fixed handling of ctrl-t
987
988    Before, when exercising the quit key sequence (ctrl-t + q) the ctrl-t code
989    (0x14) would be sent.
990
991    This is now fixed so that it is not sent.
992
993    However, in case it is needed to send ctrl-t to the device it is possible by
994    simply repeating the ctrl-t.
995
996    Meaning, ctrl-t + ctrl-t = ctrl-t sent to device.
997
998  * Improved error handling
999
1000    Fixes a memory leak and avoids aggressive busy looping when problems
1001    accessing tty device.
1002
1003  * Removed redundant log_close() call
1004
1005  * Enabled compiler warnings
1006
1007 Jakub Wilk:
1008
1009  * Stopped copying arguments to fixed-size buffers
1010
1011    Don't needlessly copy command-line arguments into fixed-size buffers.
1012
1013    Previously the program crashed if an overlong pathname was provided on
1014    the command line. Also, some systems (such as GNU Hurd) don't define
1015    MAXPATHLEN at all.
1016
1017  * Added const to log_open() prototype
1018
1019  * Completed the ^g to ^t transition
1020
1021    In v1.7 the escape key was changed from ^g to ^t, but some
1022    code and comments still referred to the old key.
1023
1024  * Used HTTPS for tio.github.io
1025
1026  * Man page beautification
1027
1028  * Bumped date in man page
1029
1030  * Improve man page formatting
1031
1032    Use regular font for metacharacters such as "[]", "," or "|";
1033    use italic font for metavariables.
1034
1035  * Fixed hyphen vs minus vs em-dash confusion in man page
1036
1037    - prints as hyphen;
1038    \- prints as minus sign;
1039    \em prints as em-dash.
1040
1041
1042
1043 Changes since tio v1.6:
1044
1045  * Changed escape key from ^g to ^t
1046
1047    After renaming to "tio" it makes sense to change the escape key
1048    accordingly. Hence, the new escape key is ^t.
1049
1050    Meaning, in session, its now ctrl-t + q to quit.
1051
1052 Jakub Wilk:
1053
1054  * Fixed silly "tio or tio" in man page
1055
1056  * Fixed typo
1057