Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug: cannot install on mac os. #208

Closed
queglay opened this issue Jan 5, 2025 · 5 comments
Closed

Bug: cannot install on mac os. #208

queglay opened this issue Jan 5, 2025 · 5 comments
Labels
bug Something isn't working

Comments

@queglay
Copy link

queglay commented Jan 5, 2025

Describe the bug

I'm new to this but very excited to see progress in supporting houdini.

Following the docs to install the hatch command fails on mac os for me. I have the same python version installed required for houdini 20.5 (3.11) and also by default pip is using 3.10.

Just a side note: Although I'm not very familiar with hatch, I have noticed commands like pip install
which is not ideal. More explicit usage of pip and the python major version is best practice with something like:
python3.11 -m pip install

Expected Behaviour

The hatch command should not fail.

Current Behaviour

this is the output:

MacBook-Pro-2:deadline-cloud-for-houdini user$ hatch run install --houdini-version 20.5
ERROR: Ignored the following yanked versions: 0.48.5
ERROR: Ignored the following versions that require a different python version: 0.49.0 Requires-Python <3.13,>=3.8; 0.49.1 Requires-Python <3.13,>=3.8; 0.49.2 Requires-Python <3.13,>=3.8; 0.49.3 Requires-Python <3.13,>=3.8
ERROR: Could not find a version that satisfies the requirement deadline==0.49.* (from versions: 0.47.0, 0.47.1, 0.47.2, 0.47.3, 0.48.0, 0.48.1, 0.48.2, 0.48.3, 0.48.4, 0.48.6, 0.48.7, 0.48.8, 0.48.9)
ERROR: No matching distribution found for deadline==0.49.*
MacBook-Pro-2:deadline-cloud-for-houdini user$ python3.11 --version
Python 3.11.11
MacBook-Pro-2:deadline-cloud-for-houdini user$ pip --version
pip 24.3.1 from /usr/local/lib/python3.10/site-packages/pip (python 3.10)

Reproduction Steps

hatch run install --houdini-version 20.5

Environment

At minimum:

  1. Operating system: Mac OS 15.11
  2. Version of Houdini: 20.5.445
    3: Version of this package: latest as of today. According to change log last release was 0.7.4, but mainline hash which is what I used is at aed5d1c
@queglay queglay added bug Something isn't working needs triage A new issue that needs a first look labels Jan 5, 2025
@epmog
Copy link
Contributor

epmog commented Jan 6, 2025

Hey @queglay, thanks for filing an issue.

Can you confirm that the output of python --version and/or python3 --version results in 3.13?

When you do a hatch run command, hatch will create a venv with your projects runtime dependencies using the installed python it finds. Since deadline-cloud 0.49 currently says it doesn't support python3.13 (but older ones didn't limit the version), it's unable to resolve the dependencies when creating that venv. I've got a PR for deadline-cloud that hopefully I just need to test on Windows to explicitly add python 3.13 support (aws-deadline/deadline-cloud#544).

There should be a better error message in this repo when you attempt to perform the hatch run command, but this repo doesn't currently lock the upper end for support python versions. We'll have to add that.

To manually workaround this until deadline-cloud releases with a version that says it works with python 3.13, you can control which python hatch uses with HATCH_PYTHON=/path/to/python (https://hatch.pypa.io/latest/plugins/environment/virtual/#python-resolution)

@epmog epmog removed the needs triage A new issue that needs a first look label Jan 6, 2025
@queglay
Copy link
Author

queglay commented Jan 6, 2025

Hey @epmog , thanks for your reply. python isn't aliased to anything by default on my mac, but with a venv I get:

MacBook-Pro-2:firehawk-infra user$ python --version
bash: python: command not found
MacBook-Pro-2:firehawk-infra user$ python3 --version
Python 3.13.1
MacBook-Pro-2:deadline-cloud-for-houdini user$ python3.13 -m venv myenv313
MacBook-Pro-2:deadline-cloud-for-houdini user$ source myenv313/bin/activate
(myenv313) MacBook-Pro-2:deadline-cloud-for-houdini user$ python --version
Python 3.13.1
(myenv313) MacBook-Pro-2:deadline-cloud-for-houdini user$ hatch run install --houdini-version 20.5
ERROR: Ignored the following yanked versions: 0.48.5
ERROR: Ignored the following versions that require a different python version: 0.49.0 Requires-Python <3.13,>=3.8; 0.49.1 Requires-Python <3.13,>=3.8; 0.49.2 Requires-Python <3.13,>=3.8; 0.49.3 Requires-Python <3.13,>=3.8
ERROR: Could not find a version that satisfies the requirement deadline==0.49.* (from versions: 0.47.0, 0.47.1, 0.47.2, 0.47.3, 0.48.0, 0.48.1, 0.48.2, 0.48.3, 0.48.4, 0.48.6, 0.48.7, 0.48.8, 0.48.9)
ERROR: No matching distribution found for deadline==0.49.*
(myenv313) MacBook-Pro-2:deadline-cloud-for-houdini user$ python3 --version
Python 3.13.1

Do I have to use python 3.13 or are we find with 3.11 for now?

I also tried using the env var suggested:

MacBook-Pro-2:firehawk-infra user$ export HATCH_PYTHON="/usr/local/bin/python3.11"
MacBook-Pro-2:firehawk-infra user$ cd /Users/user/git/deadline-cloud-for-houdini
MacBook-Pro-2:deadline-cloud-for-houdini user$ hatch run install --houdini-version 20.5
ERROR: Ignored the following yanked versions: 0.48.5
ERROR: Ignored the following versions that require a different python version: 0.49.0 Requires-Python <3.13,>=3.8; 0.49.1 Requires-Python <3.13,>=3.8; 0.49.2 Requires-Python <3.13,>=3.8; 0.49.3 Requires-Python <3.13,>=3.8
ERROR: Could not find a version that satisfies the requirement deadline==0.49.* (from versions: 0.47.0, 0.47.1, 0.47.2, 0.47.3, 0.48.0, 0.48.1, 0.48.2, 0.48.3, 0.48.4, 0.48.6, 0.48.7, 0.48.8, 0.48.9)
ERROR: No matching distribution found for deadline==0.49.*

@epmog
Copy link
Contributor

epmog commented Jan 6, 2025

You may have to run hatch env prune since it might be in a partially created state.

As for the aliases, it might just be part of the standard searching hatch is doing for a python. which hatch may reference python3.13 since it'll try to match the hatch install if python/python3 are not set.

@queglay
Copy link
Author

queglay commented Jan 9, 2025

Thanks @epmog , prune did work, I just had to do:

MacBook-Pro-2:deadline-cloud-for-houdini user$ export HATCH_PYTHON="/usr/local/bin/python3.11"
MacBook-Pro-2:deadline-cloud-for-houdini user$ hatch env prune
MacBook-Pro-2:deadline-cloud-for-houdini user$ hatch run install --houdini-version 20.5

@queglay queglay closed this as completed Jan 9, 2025
@epmog
Copy link
Contributor

epmog commented Jan 9, 2025

That's great to hear! The next deadline-cloud release will have 3.13 support, so your setup will work in the future without that override.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants