Open alanhdu opened 2 years ago
Bump to this - especially since 1.0 switched to a poetry resolver and started ignoring markers like platform_system
in dependencies.pip
, there is no way to define a multi-platform environment unless all packages exist on all platforms?
Looks like selector support is even implemented in environment file parsing, but explicitly disabled. Was there a problem with setting platform
on Dependency
objects when trying to resolve?
I might be interested in adding in selector support, but I wonder if there are any issues I should be aware of - to save me from spending x hours and discovering them on my own
Bump; I'm using conda-lock in conjunction with a pyproject.toml, and support for platform specific dependencies would be useful within the [tool.conda-lock.dependencies]
section. I would be happy to make a PR to enable such a change using dictionary syntax equivalent to poetry dependencies.
When specifying my
environment.yml
file, I would like some way of specifying dependencies that only exist on a particular operating system (e.g. I might want to pin a particular version ofpywine32
orpyobjc-core
).From browsing the docs, it doesn't look like there's a first-class way of doing this with conda-lock (although maybe there is and this is just a request for better documentation).
It looks like there's a feature request to solve this in upstream conda (xref xref https://github.com/conda/conda/issues/8089) by allowing
# [linux]
or# [osx]
selectors that hasn't been implemented, but maybe there's a way for conda-lock to some kind of partial support (even if it's not the full selector) without solving the full issue?