Structured, Exchangeable lock file format (requirements.txt 2.0?)

This might be a totally insane idea, but what if the “exchangable lock file format” could optionally specify what installer should be used, sort of like PEP517/518 specifies build backends? So pip could act as a “universal” installer, and either:

  • just install from some “pip-standard” lock file format, or:
  • install the specified installer and then invoke it against it’s preferred lock file.

That way:

  • runtime providers only need to concern themselves with a single tool, pip (which they’re already supporting anyways)
  • folks that want to continue using some non-pip installer can continue to do so with no change to their existing workflow
1 Like