Offload more work to the underlying pip command used to install the
build requirements, so there's no need to duplicate code to handle
environment markers/extras. This is done by setting the correct options
from the finder passed in argument to `_install_build_reqs`.
* Add a global option to disable colors
This is a fix for issue #2449
All it does is simply add a global option --no-color
Internally it switches ColorizedStreamHandler to StreamHandler if
this flag is detected.
* Fix lint errors
* not sure it makes the code more readable though ...
* Fix typo
* Choose logging class before assigning
* As requested per review
* Make the code shorter and easier to follow
* Be polite to followers, add commas
* Add functional test for the --no-color output
* Better detection of windows
* Fix fragile tests - can't trust script --quiet
* The version found in Travis-CI does not respect this flag
It added a prefix line and suffix line found if one does not
add the flag --quiet (script from util-linux 2.26.2).
As such the out put is:
Script started on Fri 27 Oct 2017 07:17:30 AM CEST
\x1b[31mCannot uninstall requirement noSuchPackage, not installed\x1b[0m\n
Script done on Fri 27 Oct 2017 07:17:31 AM CEST
With this change, the test should pass, and is hopefully more stable.
* Simplify testing for color or no-color
When reading bytes from subprocesses, use the locale encoding. Don't fail if the data is encoded incorrectly - instead, use the backslashreplace error handler (and warn the user).