Closed Apeng7364 closed 8 months ago
The issue isn't even multiple versions of pyenv. The code does pyenv_version[:3]
, which for versions >= 3.9 is just always wrong.
Yeah that is sloppy version parsing, will have to fix.
pyenv
is a user setup issue, not gdb related. Thinking more into it, I don't think we should get involved at all into making gef compatible for it.
In my opinion this should be done from a separate script that'd be source
-d before gef is. Happy to do the PR (and docs) for it. Thoughts cc @Grazfather ?
It might be a use case we want support, but I don't use it personally (for GDB) and I think it adds a lot of complexity. And I can't even help test it, so I'd rather not worry about it.
A gef-extras script to do it would be nice!
GEF+GDB version
Operating System
Ubuntu 23.10
Describe the issue you encountered
When setting multiple global versions by pyenv, gef will throw an AssertionError.
The Pyenv site packages path is set inappropriately, and should not just get the output of
pyenv version-name
as the python version of pyenv. And the python directory name in site_packages is also set inappropriately when python version >= 3.10.There is a possible solution:
Do you read the docs and look at previously closed issues/PRs for similar cases?
Yes
Architecture impacted
Describe your issue. Without a proper reproduction step-by-step, your issue will be ignored.
Set multiple pyenv global versions:
gef script will throw an AssertionError
Minimalist test case
No response
Additional context?
No response