build icon indicating copy to clipboard operation
build copied to clipboard

[feature-request] Make `Missing dependencies` errors more clear

Open bolshoytoster opened this issue 9 months ago • 1 comments

I'm trying to install angr==9.2.123 via python -m build --wheel --no-isolation. I have pyvex==9.2.123, bitstring==4.3.0 and bitarray==3.1.1 installed. When I try to build, I'm given this error:

ERROR Missing dependencies:
        pyvex>=9.2.123
        bitstring -> bitarray<3.1,>=3.0.0

This error seems to suggest that I don't have pyvex>=9.2.123 installed, when really, the problem is just with bitarray. I was wondering if there would be any way to make it more clear where the issue actually is, since this took me about an hour to figure out.

bolshoytoster avatar Mar 16 '25 11:03 bolshoytoster

This looks like a bug. If bitstring is a dependency of pyvex, it should've been displayed like the second line:

        pyvex>=9.2.123 -> bitstring -> bitarray<3.1,>=3.0.0

If bitstring isn't a dependency of pyvex, pyvex shouldn't have been listed at all.

If bistring isn't a direct build dependency of angr, bitstring shouldn't have been listed separately.

Do you have a step-by-step repro?

layday avatar Mar 16 '25 11:03 layday