I’m stilling planning to do this in mousebender. Getting packaging.metadata
parsing METADATA
files is the next step in this work.
I still don’t want to touch that in a v1 as it is an inherent compromise in environment reproducibility.
Got an idea (What information is needed to choose the right dependency (file) for a platform? is part of it).
I have a design in my head that would allow for different lock files for different platforms. The steps necessary to get there are:
packaging.metadata
to readMETADATA
files- Resolver using resolvelib that only considers wheels
- Tool to generate the lock file(s)
- Tool to install from the lock file(s)
Steps 2 - 3 I’m assuming will be in mousebender since they are somewhat specific, although I do plan to have this all accessible via APIs.
It’s only intractable if you try to please all the people all the time. If you are willing to bound the use-case and how people will interact with the tool you can get a solution, but you have to choose the target use-case first (my design addresses app/cloud/deployment developers).