Closed AlbertDeFusco closed 2 years ago
By the way, I'd be open to dropping Python 2.7 support if necessary.
I'm going to keep working on the tests.
I may wait to drop 2.7 tests when I complete a PR to add py 3.9 testing. I think some tests fail when anaconda-project is installed in py 3.9 env and I'ld check if there are bugs.
For those here who are interested I've gotten tests passing for all but three scenarios added the following exclusions to the github action.
The Ubuntu Conda 4.8 + py 3[7-8] fail for one test that checks a timestamp on the live project environment, but it does not exist for older or newer versions of Conda.
I plan to drop testing support for Py 2.7 in the near future.
# Odd timestamp behavior
- pyver: 3.7
os: ubuntu-latest
cver: 4.8
- pyver: 3.8
os: ubuntu-latest
cver: 4.8
# Old versions will be trimmed from tests soon
- os: windows-latest
pyver: 2.7
cver: 4.6
- os: windows-latest
pyver: 3.6
cver: 4.6
A question for those of you who maybe interested (@jbednar , @jlstevens , @philippjfr ?).
Anaconda Project had previously decided that the default platforms are linux-64, osx-64, and win-64. You see this when initializing a project or locking a project
platforms:
- linux-64
- osx-64
- win-64
At some point osx-arm64
is going to start gaining in popularity, but right now only Python >=3.8 is available and many packages are missing so I may feel a little hesitant about adding the platform
osx-arm64
be added to the default platforms? Having osx-armt64 in default platform may cause locking to fail more often for users, and especially those who do not use osx-arm64.osx-arm64
is considered default only if anaconda-project is being run on osx-arm64? This would allow osx-arm64 to enter into the platforms:
key without the user having to explicitly write it, as they would now and with this PRoh, nevermind above! Anaconda Project already does option 2 above. I just need to adjust tests to account for this. Some tests were not originally intended to run on non default platforms hardware.
Tests pass on all platforms. Any comments or concerns before I merge?
This adds
linux-aarch64
andosx-arm64
as known platforms.Further, this PR also solves #274 and allows
CONDA_SUBDIR
env var to be used to override the current platform.For example, on an Apple M1 you can now force it to create envs for osx-64. First you'll see that Conda determines my platform is osx-arm64. I can force anaconda-project to create an osx-64 env_spec by setting
CONDA_SUBDIR=osx-64
. Otherwise the prepare would fail because Python 3.7 is not available for osx-arm64. Note that you must keep CONDA_SUBDIR set for all anaconda-project actions, not just the prepare step.