-
Notifications
You must be signed in to change notification settings - Fork 89
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] tests fail with conda auto_stack #357
Comments
I'll give this a try on my Mac as well. My typical setup is as follows. I'm going to update the CONTRIBUTING.md file
|
Related to these things, maybe we should provide an |
:) I've been thinking about that, too. Maybe I'll study compiler bootstraping to see if we could do something similar. I've seen other projects use Makefiles for things that anaconda-project does well. |
@mforbes , so I'm looking at this some more and this test seems to remove the entry to the base env PATH (not the condabin) and so fails. The question is what behavior do you feel is best?
|
I think that anaconda-project should, by default, behave like conda and respect the stacking - so the base environment would be kept on the path. However, I think it is also very important that anaconda-project have a way of ignoring any system or user preferences to ensure reproducibility (similar to issue #336). I am not sure of the best way to do this, but options might include:
Footnotes
|
My vote is for an anaconda-project.yml to be fully independent of any configuration or settings the user may have configured for conda more generally, apart from a very small number of exceptions that are about configuring the server and tokens that might be necessary for conda to operate with a local mirror, behind a firewall, etc. Apart from those exceptions, I believe the file should include any options that are needed, or else it won't be reproducible. Given that this is a breaking change, it seems like something to do when renaming to |
I like where this is going and I think in the context of the proposed I do believe there is room for anaconda-project to have control over channel_priority for itself that can operate independent of the condarc config. I would say this key can be set in the anaconda-project.yml file globally and for any When it comes to auto_stack there is some overlap in my research on how anaconda-project manages PATH. Anaconda Project was written at a time before
If we were to add an auto_stack configuration option I'm concerned that now this project would be explicitly calling out a dependency on something outside of its control (i.e., a package installed in the base env) and would not be reproducible. I know I've used system tools in my run commands (like grep) without adding it as a dependency and maybe that's a bad habit. I'm not sure that it is necessary to allow re-configuration of the global To come back, even though some tests fail with |
I have not noticed any issues when using anaconda-project. My basic use-case is to have a bunch of tools like Mercurial, Conda, Poetry, etc. installed in my base environment, then activating other environments on top for python isolation. I still like to be able to use my version control when I am doing work without having to install mercurial in the project environment for example. Update: I did not check this very carefully – # anaconda-project.yaml
...
commands:
shell:
unix: bash --init-file .init-file.bash
env_spec: phys-521-2021 # .init-file.bash
export PS1="\h:\W \u\$ "
source $(conda info --base)/etc/profile.d/conda.sh
# Assume that this is set by running anaconda-project run shell
CONDA_ENV="${CONDA_PREFIX}"
conda deactivate
conda activate base
conda activate "${CONDA_ENV}"
alias ap="anaconda-project"
alias apr="anaconda-project run" I was doing this so that the path would properly show that the |
from @mforbes
The text was updated successfully, but these errors were encountered: