Skip to content
This repository has been archived by the owner on Dec 21, 2023. It is now read-only.

Support Python 3.7 #788

Closed
3 tasks done
TobyRoseman opened this issue Jun 28, 2018 · 21 comments
Closed
3 tasks done

Support Python 3.7 #788

TobyRoseman opened this issue Jun 28, 2018 · 21 comments

Comments

@TobyRoseman
Copy link
Collaborator

TobyRoseman commented Jun 28, 2018

As of yesterday Python 3.7 has been officially released. We should support it.

At an absolute minimum these things will need to be done:

  • Ensure everything builds with 3.7 and that the built package can be imported.
  • All unit test pass on both macOS and Linux.
  • Upload 3.7 wheel to PyPI on next release.

We'll probably want to have only beta support for 3.7 in its first release.

@TobyRoseman
Copy link
Collaborator Author

In order to support Python 3.7, all of our dependencies need to support Python 3.7. We currently have two dependencies that do not support 3.7: MXNet and Core ML Tools.

Python 3.7 support for Core ML Tools is being tracked here

@TobyRoseman
Copy link
Collaborator Author

Python 3.7 support for MXNet is being tracked here.

@mdivk
Copy link

mdivk commented Nov 8, 2018

Any progress on supporting python 3.7? Thanks.

@TobyRoseman
Copy link
Collaborator Author

Core ML Tools is a dependency of Turi Create. It does not support Python 3.7. We'll have to wait until Core ML Tools support Python 3.7.

@easp
Copy link

easp commented Nov 14, 2018

The homebrew package manager's 'python' formula has installed python 3.7.x since mid-summer.

To roll back to Python 3.6.x:

brew unlink python
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb

Once Turicreate supports python 3.7, you can use brew switch later to switch back to the latest python version.

@tomharper
Copy link

the only dependency that I can see that is not up to date is coreml tools- this seems pretty surmountable at this point

@TobyRoseman
Copy link
Collaborator Author

@tomharper - It would also require us to update the versions for many of our dependencies, most notably MXNet.

@tomharper
Copy link

mxnet is on 3.7 now also, but i understand this will probably be some work

@tomharper
Copy link

looks like that is on 3.7 now too, but i don't know how much work that is to update.

@nickjong nickjong added this to the 6.0 milestone May 23, 2019
@TobyRoseman
Copy link
Collaborator Author

In order to support Python 3.7, we will need to update most of our dependencies. MXNet will probably be the most difficult to update. This is being tracked separately in #1455.

@TobyRoseman TobyRoseman self-assigned this Jun 8, 2019
@dhendo
Copy link

dhendo commented Aug 13, 2019

It looks like all the dependencies now support 3.7?

@TobyRoseman
Copy link
Collaborator Author

In our next release we will support Python 3.7, for macOS only.

@dhendo
Copy link

dhendo commented Aug 14, 2019

Is there a reason Linux will be unsupported?

@TobyRoseman
Copy link
Collaborator Author

@dhendo - Yes, there is a reason Python 3.7 will be unsupported for Linux in our next release.

We use a package called MXNet to do some of our deep learning on macOS and all of our deep learning on Linux. The version of MXNet which we currently depend on doesn't support Python 3.7. So we need to depend on a newer version of MXNet. We've experience several issues (mostly nondeterministic hangs) using newer versions of MXNet on Linux.

In the long term, we are committed to supporting Python 3.7 on Linux. However due to quality reasons we can not support it in our next release.

@dhendo
Copy link

dhendo commented Aug 19, 2019

Thanks, that makes sense.

@chyzzqo2
Copy link

How is support looking for the next release? The 3.7 issue on MXNet is closed but since @TobyRoseman closed it before the comment above, i don't think it is actually the blocker. Is there any issue on that repo that we can follow?

@syoutsey syoutsey added the verify label Nov 8, 2019
@srikris
Copy link
Contributor

srikris commented Nov 16, 2019

@chyzzqo2 We will be supporting 3.7 in TC 6.0.

@syoutsey syoutsey added the p1 label Nov 19, 2019
@TobyRoseman
Copy link
Collaborator Author

With the release of 6.0, TuriCreate now support Python 3.7.

@ChrisLane ChrisLane mentioned this issue Apr 8, 2020
3 tasks
@arnoldmashava
Copy link

(base) C:\Users\Arnold Mashava>conda install -c anaconda mxnet
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment:
Found conflicts! Looking for incompatible packages.
This can take several minutes. Press CTRL-C to abort.
failed

UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:

Specifications:

  • mxnet -> python[version='>=3.5,<3.6.0a0|>=3.6,<3.7.0a0']

Your python: python=3.7

If python is on the left-most side of the chain, that's the version you've asked for.
When python appears to the right, that indicates that the thing on the left is somehow
not available for the python version you are constrained to. Note that conda will not
change your python version to a different minor version unless you explicitly specify
that.

@TobyRoseman
Copy link
Collaborator Author

@arnoldmashava - TuriCreate does not have native Windows support. We are tracking that issue in #533.

@liliyabevcyk
Copy link

liliyabevcyk commented Jul 5, 2022

@TobyRoseman @dhendo
Hey
Is the last release fully supporting Python 3.7, for Linux?
Your documentation and pypi say that 3.7 is only for mac but I can actually install it and looks like it's working...
Did you just forget to update documentation? Can I get any trouble using python 3.7 and Linux?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

13 participants