-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Don't require abi3
in shared file names or at least make it clear that it is required in the error message
#117
Comments
The reason we do this is because it's otherwise impossible to infer the user's intent when they pass us a single extension (instead of a package distribution): there's nothing invalid about a non (This is non-ideal, since as you note the See #116 for some related context -- we could relax this to allow any extension by requiring that the user always pass
Thank you! If you could improve the error message in a PR, I would greatly appreciate it. |
Call make_specs() explicitly and handle exceptions from it in order to show the appropriate error message instead of letting argparse call it implicitly. As mentioned in that module documentation: > In general, the type keyword is a convenience that should only be used > for simple conversions that can only raise one of the three supported > exceptions. Anything with more interesting error-handling or resource > management should be done downstream after the arguments are parsed. And this is exactly what this commit does. Closes pypa#117.
I rather like the idea of allowing any file names if But for now I've just created a PR improving the error message, it's already better than nothing IMHO. |
I'm not sure what is the intention here, but currently the tool doesn't accept shared libraries if they don't have
abi3
in their name and doesn't say that this is the reason for not accepting them:FWIW this is with abi3audit==0.0.17 under Debian 12 (Bookworm).
Personally I think that the tool shouldn't insist on the
.abi3.
part: I understand that it's the standard convention for the wheels, but we don't distribute our Python extensions in a wheel and so they don't have it in their names, but if the tool does insist on enforcing this convention, it should at least say so, i.e. output something likeabi3audit: error: argument SPEC: 'foo.so' not recognized as Python extension because it doesn't contain '.abi3.' in its name
As it is, I had to go look at the source code to understand what was going on, which is suboptimal from the user experience point of view.
I should be able to make a PR changing this code to do either of the things above, please let me know if you'd like me to make one.
The text was updated successfully, but these errors were encountered: