Skip to content

Conversation

@weiji14
Copy link
Owner

@weiji14 weiji14 commented Aug 5, 2019

Lots of new goodies in Python 3.7! Mainly nice to haves e.g. better parallelization with improved asyncio usability via asyncio.run(), easier debugging using breakpoint(), etc. Most of this DeepBedMap's dependencies have supported Python 3.7 for months already, all except onnx-chainer but that's changed with chainer/onnx-chainer#192. Woohoo!

TODO:

@weiji14 weiji14 added dependencies Pull requests that update a dependency file python Pull requests that update Python code labels Aug 5, 2019
@weiji14 weiji14 added this to the v0.9.4 milestone Aug 5, 2019
@weiji14 weiji14 self-assigned this Aug 5, 2019
Github Actions can now do proper Ci/CD, see announcement at https://github.blog/2019-08-08-github-actions-now-supports-ci-cd/! Semi-automatically migrating the old main.workflow to a push.yml using https://github.com/actions/migrate/releases/tag/2019-08-06%4020-47, see also https://help.github.com/en/articles/migrating-github-actions-from-hcl-syntax-to-yaml-syntax. Deprecate use of actions/docker/cli (just use actions/checkout which has docker?) and manually edited the 'runs-on' to 'ubuntu-18.04' aka Bionic Beaver instead of 'ubuntu-latest'.
Closes #163 Convert Github Actions from V1 HCL syntax to V2 YAML syntax.
Bumps [python](https://github.com/python/cpython) from 3.6.7 to 3.7.3. Had to change pip in the conda environment.yml to use the py37 version, plus update the hash in the Pipfile.lock. Also added HDF5_DIR environment variable to get `pip install netcdf4` to work!
- [Release notes](https://github.com/python/cpython/releases/tag/v3.7.3)
- [Changelog](https://docs.python.org/3/whatsnew/3.7.html)
- [Commits](python/cpython@3.6...3.7)
Keeping our main README.md file a bit more up to date! Updated installation instructions for the conda 4.7 (#161) python 3.7 world (a lot better than conda 4.6 and python 3.6), and made sure to set the HDF5_DIR environment variable as in c80041d to install [netCDF4](https://github.com/Unidata/netcdf4-python) properly. Also refreshed some of those outdated descriptions of the files we have in our repository's directory structure!
@weiji14 weiji14 marked this pull request as ready for review August 14, 2019 05:16
@weiji14
Copy link
Owner Author

weiji14 commented Aug 14, 2019

Could have updated netcdf4 from 1.4.1 to 1.5.1.2, but that would require compiling the netcdf4-python package from source. No easy way to specify that in the Pipfile, but we could use the PIP_NO_BINARY environment variable (see this Stack Overflow post) and do it like so:

PIP_NO_BINARY=netCDF4 pipenv install netcdf4==1.5.1.2

but that won't be accurately reflected in the Pipfile.lock (?) that would undermine reproducibility as compiling the package at different times (with different compilers) may yield slightly different netcdf4 library products ☹️

Wait, but sticking to netcdf==1.4.1 and using python 3.7 still means we are compiling it (that's why we see this and also why $HDF5_DIR was set) 🤦‍♂️ , but at least we don't need to modify our Dockerfile to set a new $PIP_NO_BINARY environment variable... Anyways, too out of scope for this Pull Request, so pushing that forward to the future.

@weiji14 weiji14 merged commit 6175757 into master Aug 14, 2019
@weiji14 weiji14 deleted the python_3.7 branch August 14, 2019 05:33
weiji14 added a commit that referenced this pull request Aug 14, 2019
Closes #162 Upgrade from Python 3.6 to 3.7.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update Python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant