Open ajelinski opened 1 year ago
LGTM! Thanks for pinning this down. Maybe we could also delete version of open_pdks older than 1.0.286
? (That could reclaim precious disk space on the channel)
LGTM! Thanks for pinning this down. Maybe we could also delete version of open_pdks older than
1.0.286
? (That could reclaim precious disk space on the channel)
Are you sure these old packages aren't used by anyone?
Btw. perhaps we should add a constraint to the OpenLane package so that open_pdks has to be newer than that? It can be an optional one, i.e., not making any open_pdks required for running OpenLane. Also it'd be best to have this compatibility set more precisely since now the latest OpenLane allows using any openroad and open_pdks versions but unfortunately I don't know enough about these tools to establish it.
Btw. perhaps we should add a constraint to the OpenLane package so that open_pdks has to be newer than that? It can be an optional one, i.e., not making any open_pdks required for running OpenLane.
Yes, I was thinking about the same thing, maybe it could leverage https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#run-constrained, like the open_pdks package does with magic
:
https://github.com/hdl/conda-eda/blob/master/misc/open_pdks/meta.yaml#L47-L48
Also it'd be best to have this compatibility set more precisely since now the latest OpenLane allows using any openroad and open_pdks versions but unfortunately I don't know enough about these tools to establish it.
Something I was thinking was to pin_compatible(min_pin='x.x.x', ...
) to make sure we always require at least the version of all dependencies for which the package test passed. WDYT?
This change will ensure a problem when testing OpenLane in the same CI that:
open_pdks
with that new magic version won't happen again since debugging this isn't trivial.It turned out all of the open_pdks packages newer than 1.0.286 have a strict magic version requirement. The just-built magic package will be always preferred in CI so when building
open_pdks
fail and the CI built a new version of the magic package then this old1.0.286
Open-PDKs package will be used which doesn't work well with the other latest packages.Such a run happened in https://github.com/hdl/conda-eda/actions/runs/3828789250/jobs/6551196431#step:7:3305