-
-
Notifications
You must be signed in to change notification settings - Fork 15
Use latestworld-if-toplevel
#60
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
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #60 +/- ##
==========================================
+ Coverage 81.72% 82.47% +0.75%
==========================================
Files 3 3
Lines 93 97 +4
==========================================
+ Hits 76 80 +4
Misses 17 17 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
have_float |= mi.specTypes.parameters[2] === Float64 | ||
end | ||
@test !have_float # not wrapped inside `@compile_workload` | ||
@test_broken have_char # is wrapped |
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.
@mortenpi @benlorenz note that the pattern used in your reports blocks effective precompilation. If you haven't followed, here's the issue: if you compile external (outside of the package, e.g., Base or whatever) code before you reach @compile_workload
, it will not be cached. The problem is that your construct forces compilation of the anonymous function before @compile_workload
turns on. Thus, any code not "owned" by your package that can't be inferrably traced back to a caller in your package will be dropped from the precompile cache.
As a guide to understanding the test, know that Base.inferencebarrier
is used in NotPrecompiled
to force runtime dispatch, so that the isa_bool
specializations cannot be traced back to NotToplevel
.
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.
Also CC @jpthiele
I added this branch manually to my local nightly version and was able to precompile HTTP. |
But switching |
It wasn't appearing before
I've added a warning to the documentation about avoiding this In case someone gets to this before me, I've tagged this |
Fixes #58