
Version 0.2.2 (2020-01-08)

- TODO implement feedback from https://www.reddit.com/r/rust/comments/eleleu/my_first_cli_in_rust_lsvine_list_contents_of/
- WONTDO: insert new-line in filenames > 50
- enh: drop useless variable table_isdir
- enh: factor out a struct Level1Dir to gather data. Instead of multiple Vec to track different features of a directory, just one Vec of the struct.
- enh: refactor `table1` to `level1_dirs`
- enh: skip empty dirs
- enh: refactor `l1` and `l2` to `level1_paths` and `level2_paths`
- enh: refactor `table2` to `level1_vine`
- enh: refactor `ncol` to `n_l2paths` and `nrow` to `n_l1dirs`
- feat: improve the final conversion of the Vec<Level1Dir> into a displayable Table by factoring out a TableBuf struct and impl
- feat: improve the first conversion Vec<Path> to Vec<Level1Dir> by by factoring out a `vecpath2vecl1dir` function
- feat: added tests
- enh: ran `cargo clippy` and integrated suggestions
    - including iterator, no "return", increment, struct no dupe key-value name, single char for `starts_with`, redundant copy
- feat: split out code into multiple files
    - based on https://doc.rust-lang.org/book/ch07-05-separating-modules-into-different-files.html
- feat: dropped unwrap usage and handling None and errors
- TODO ask about deep nesting of braces after removing unwrap (check `vecpath2vecl1dir`)
    - also how to implement `vecpath2vecl1dir_asInheritedIterators.rs`
- TODO suggest improvements to multi-file chapter in https://github.com/rust-lang/book/issues/1760


Version 0.2.{0,1} (2020-01-07)

- feat: first release after porting from python to rust
- feat: implemented maximum columns in displayed table and wrap around
- feat: display dir names (column header)
- feat: break down single table of all directories into several tables each of which fits on the terminal width
- feat: color directories in blue

