* master: (28 commits)
Update README to combine environment sections
Update README
os.path.samefile is not available on windows.
Add shell-style execution on the Mac
Use os.path.samefile to get around filename case insensitivity
Add test for before_build executing in a shell
Fix some linter warnings
Add CIBW_ENVIRONMENT to README and reorder options
Fix empty env string case
Fix string splitting for the env string
Making call from run_tests to run_test subprocess.check_call
Fixing 'ValueError: Attempted relative import in non-package'
Update README.md
Reducing code duplication in bin/run_test.py and bin/run_tests.py
Semicolons need quoting
Ignore vscode project settings
Windows uses a different pathsep so have to use that in the test
Make shell evals work and add tests for that
Use parse_environment in the main code
Run the unit tests in CI
...
# Conflicts:
# .travis.yml
# appveyor.yml
# run_tests.py
revert PR9; add --no-deps to pip wheel
Revert PR9; it was never actually needed in the first place it just fixed an
issue by side effect.
1) add --no-deps to pip wheel step in order to avoid building wheels for
dependencies. This also addresses the issues raised in PR #11.
2) Modify the pip install step across platforms to allow installation of
dependencies from the index. (This is required since we will no longer be
building wheels for dependencies).
+ In linux environment, if there was no matching python configurations for a
particular architecture (i.e. if that architecture was skipped) the docker
build script would just crash. The offending line:
for whl in /tmp/linux_wheels/*.whl; do
would result in whl being equal to the unexpanded glob expression. Rather
than checking this in the bash script, python checks whether there are any
actual wheels to build and skips the script if there are none.
+ added universal_newlines=True when making the call to grab the package name -
this fix is required for python3 since other a bytes prefix (b'') will be
added to the package name
+ In the linux/docker environment, added a try/catch statement around the
docker script for KeyboardInterrupt that will kill the docker subprocess in
cases where cibuildwheel is being run interactively.