* reduce ci matrix
* python runscript without bash
(cherry picked from commit 9b148a6679722db5eb7ffabd3a27a8579f296319)
* change link dest function to handle '\?\' links
* add path normalization for windows support
* Revert "add path normalization for windows support"
This reverts commit 2ab0fc1b3c.
* link variable extraction without normpath
* type annotation
* blacken
* missing black files
* variable renames from '2775765a' outside link function
* from '2775765a' use method for default flags
* fix defaults from method
* variable renames from '2775765a' in link function and method renames
* refactor if clauses into blocks
* maybe fix if refactor
* remove unreachable code
* remove silly disambiguation semantics
* remove silly disambiguation semantics 2
* incremental else swap
* bring source existence check to front
* bring source existence check to front and remove old back check
* refactor almost final case
* check symlink broken cases up front
* add return missing
* flip block order to make things easier to understand
This patch makes the launcher script prefer `python`, when present, over
`python3`. This way, the launcher uses the user's preferred `python`
(which is often set up as a symbolic link to a particular python2.x or
python3.x), when available.
The version checking code fails on Python 2.6 and earlier.
`sys.version_info` only became a named tuple in Python 2.7. The
recommended way to get the check to work in earlier versions of Python
is to access it as a regular tuple.
Add support for YAML format configuration files. In addition, this
commit adds instructions about YAML config files to the README, and it
also changes the README to encourage use of YAML instead of JSON.