-
Notifications
You must be signed in to change notification settings - Fork 153
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
Add a public API #472
Add a public API #472
Conversation
It was always triggered twice on PRs, so I hope it will work as intended now.
The tmp_path and tmp_path_factory fixtures are based on pathlib while tmpdir/tmpdir_factory are based on the third party py.path.local library.
This lets MyPy use the type definitions in this library from other projects too.
Thanks for the mentioned @agronholm! I took a cursory look through the PR, on the GitHub UI and only spotted one thing (which you've already addressed :P). I don't wanna commit to spending time reviewing code on a Sunday -- but I may be able to take a more proper look tomorrow. |
I really want to get this tool chain to a state where this ridiculous notion of converting So, here are steps I want to take (not entirely sure about the order):
Only if there's no "proper" way of doing things, would I want to re-add |
Thanks. If there are no problems, then we can maybe get the ball rolling with the changes on the setuptools side too. |
@agronholm One last change for |
Why? This seems a bit icky to me. Normally interfaces have defined exceptions that they raise. Having a magic field in the class that indicates what exception some method would raise seems like less-than-good design to me. I don't want to add anything that is really specific to a third party library that has otherwise no use in the project. Can we have an alternative here? |
I've made the following changes recently:
I've also been working on a local |
I'm open to ideas for alternatives. I can't think of any way to allow implementing general logic of the form:
where exception type isn't overly generic like ValueError. Coupling it with the source object to catch |
If there's an interface that has a |
Well, installer has a bootstrapping concern since it (along with build) are supposed to help make build-up-from-source easier. More importantly, it was implemented when wheel didn't have a public API. My hope is that I'd be able to cleanly migrate to using wheel under the hood; especially once bdist_wheel moves to setuptools. None the less, it's more of a suggestion rather than a demand to be clear. As implemented, this works. :) PS: it does have a predefined error type. |
@pradyunsg well, flit-core itself is capable of creating wheels without using wheel. So as long as installer can install generated wheels without wheel, that should not break the bootstrap chain especially now that wheel is built with flit-core. The important bit is that flit-core must not ever use wheel, that will result in cycles. |
Closing in favor of pypa/packaging#805. |
This enables official support for using
wheel
as a library, rather than just a setuptools extension and CLI utility.Closes #262.