-
-
Notifications
You must be signed in to change notification settings - Fork 132
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
perf: make ape --help
faster
#2333
Conversation
29874c2
to
464548a
Compare
|
I hate to say this, but with some of the "public" api moving around would it make sense to call this a v0.9 breaking change? |
I think all of the original imports still work though, but I was going to cross check all the plugins.
|
Like for example, if something was in Internally, we are importing from more direct sources but that is just for making Ape faster and not a clear indication of public API usage. I am still testing all the plugins just to be sure, and can test ApePay as well. |
I did find something with ApePay but technically ApePay was already doing it wrong. |
@fubuloubu OK, I have tested a bunch of stuff to ensure nothing is breaking anywhere... Also - down to check more repos and such too. Thoughts? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thoughts?
LFG
Makes
ape --help
faster by:__getattr__
for exports (__init__.py
files in root of all plugins) so things are loading as requested and not on initial module load_cli.py
files - make all the slows imports have locally and lazierBefore:
After:
Some of the work was broken out in smaller PRs to keep this draft simpler:
#2334
#2335
#2336
#2337
#2338
and i can probably do more if still needed
NOTE: Any CLI plugin needs to also be updated. Installing
ape-tokens
with this branch renders the benefits null unless it also follows suite and making its__init__.py
and_cli.py
files load faster.Plugin PRs:
ApeWorX/ape-tokens#46
TBD vyper, solidity and whatever else