-
Notifications
You must be signed in to change notification settings - Fork 19
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
CI improvements, Inference improvements for recursive functions, Downstream testing #88
Conversation
Benchmark ResultJudge resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsA ratio greater than
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfoTarget
Baseline
Target resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Baseline resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Runtime information
Architecture: x86_64
Benchmark ResultJudge resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsA ratio greater than
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfoTarget
Baseline
Target resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Baseline resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Runtime information
Architecture: x86_64
Benchmark ResultJudge resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsA ratio greater than
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfoTarget
Baseline
Target resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Baseline resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Runtime information
Architecture: x86_64
Benchmark ResultJudge resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsA ratio greater than
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfoTarget
Baseline
Target resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Baseline resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Runtime information
Architecture: x86_64
Benchmark ResultJudge resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsA ratio greater than
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfoTarget
Baseline
Target resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Baseline resultBenchmark Report for /home/runner/work/ResumableFunctions.jl/ResumableFunctions.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
|
10f8d6e
to
04b8503
Compare
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## master #88 +/- ##
==========================================
- Coverage 85.93% 84.39% -1.54%
==========================================
Files 5 5
Lines 320 391 +71
==========================================
+ Hits 275 330 +55
- Misses 45 61 +16 ☔ View full report in Codecov by Sentry. |
04b8503
to
fca8e64
Compare
d8f2616
to
63edc75
Compare
@gerlero , I reapplied the improvements from 0.6.6, added donwnstream testing, and improved the CI a bit. Could you look through it -- should be fairly minor changes. @pepijndevos , the changes you made to improve inference seem to cause a crash in the compiler when recursive resumable functions are employed. There is probably an elegant way to solve this, but for the moment I simply disabled your improvements when a recursive function is detected. Could you skim through the commit that makes that change? Please do not hesitate to file issues with ideas of how to do this in a better way. Here are the newly added tests specifically for recursive functions The commits are meant to be read separately, not squashed on merge. Hopefully that would make reviewing much easier as the vast majority of added lines are simply for CI configuration. |
The downstream failures for |
I think this is a reasonable precaution. If you think through what the generic struct would look like for a recursive function it's an infinite recursion at the type level, and the way we do it also results in basically a function with infinite arguments. |
@Krastanov Sure! I'll review it in the next few days. |
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.
Looks good to me. I'd add that couple of @test
macros, but AFAIC this can be merged.
…e functions) and #86 (repeated variable names)
b5e0afc
to
6888499
Compare
Fixes #86
Fixes #82
Fixes #80 (actual problem was recursive functions)