Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Allow displaying the derivation tree (#6124)
I need this for debugging error messages. I used an environment variable instead of a trace log so you can do `UV_INTERNAL__SHOW_DERIVATION_TREE=1` and run a test to see the tree in the test snapshot without further changes. e.g. ```rust // Resolving should fail. uv_snapshot!(context.filters(), context.lock().arg("--preview").current_dir(&workspace), @r###" success: false exit_code: 1 ----- stdout ----- UV_INTERNAL__SHOW_DERIVATION_TREE root==0a0.dev0 depends on foo* root==0a0.dev0 depends on bar[some-extra]* foo==0.1.0 depends on anyio==4.1.0 bar[some-extra]==0.1.0 depends on anyio==4.2.0 no versions of bar[some-extra]<0.1.0 | >0.1.0 ----- stderr ----- Using Python 3.12.[X] interpreter at: [PYTHON-3.12] × No solution found when resolving dependencies: ╰─▶ Because only bar[some-extra]==0.1.0 is available and bar[some-extra] depends on anyio==4.2.0, we can conclude that all versions of bar[some-extra] depend on anyio==4.2.0. And because foo depends on anyio==4.1.0, we can conclude that foo and all versions of bar[some-extra] are incompatible. And because your workspace requires bar[some-extra] and foo, we can conclude that your workspace's requirements are unsatisfiable. "### ); ```
- Loading branch information