exa/xtests
Benjamin Sago 2d1f462bfa Switch to the new options parser
This commit removes the dependency on the ‘getopts’ crate entirely, and re-writes all its uses to use the new options parser instead.

As expected there are casualties galore:

- We now need to collect the options into a vector at the start, so we can use references to them, knowing they’ll be stored *somewhere*.
- Because OsString isn’t Display, its Debug impl gets used instead. (This is hopefully temporary)
- Options that take values (such as ‘sort’ or ‘time-style’) now parse those values with ‘to_string_lossy’. The ‘lossy’ part means “I’m at a loss for what to do here”
- Error messages got a lot worse, but “--tree --all --all” is now a special case of error rather than just another Misfire::Useless.
- Some tests had to be re-written to deal with the fact that the parser works with references.
- ParseError loses its lifetime and owns its contents, to avoid having to attach <'a> to Misfire.
- The parser now takes an iterator instead of a slice.
- OsStrings can’t be ‘match’ patterns, so the code devolves to using long Eq chains instead.
- Make a change to the xtest that assumed an input argument with invalid UTF-8 in was always an error to stderr, when that now in fact works!
- Fix a bug in Vagrant where ‘exa’ and ‘rexa’ didn’t properly escape filenames with spaces in.
2017-07-26 17:48:18 +01:00
..
2017-07-04 17:48:30 +01:00
2017-07-06 00:21:38 +01:00
2017-07-06 00:39:54 +01:00
2017-04-29 10:56:17 +01:00
2017-05-17 23:12:27 +01:00
2017-05-17 23:12:27 +01:00
2017-05-17 23:12:27 +01:00
2017-06-25 11:53:59 +01:00
2017-05-16 20:53:28 +01:00
2017-07-06 00:52:27 +01:00
2017-06-28 18:41:31 +01:00
2017-06-28 18:41:31 +01:00
2017-06-28 18:41:31 +01:00
2017-06-28 18:41:31 +01:00
2017-06-28 18:41:31 +01:00
2017-06-28 18:41:31 +01:00
2017-04-30 11:58:29 +01:00
2017-04-30 11:58:29 +01:00
2017-05-30 15:32:11 +01:00
2017-05-30 15:32:11 +01:00
2017-07-26 17:48:18 +01:00
2017-06-29 14:52:02 +01:00
2017-06-29 14:52:02 +01:00

Extra tests

These extra tests are intended to be run from a Vagrant VM that has already had its environment set up -- see the section in the README for more details.