JuliaGizmos / WebIO.jl

A bridge between Julia and the Web.
https://juliagizmos.github.io/WebIO.jl/latest/
Other
228 stars 64 forks source link

type stability and compile time improvements #480

Open rafaqz opened 2 years ago

rafaqz commented 2 years ago

A grab bag of changes to improve compile time:

rafaqz commented 2 years ago

It doesn't break Interact.jl or Blink.jl or anything they use, they're the motivation for this. Maybe other things, I'm not sure...

The other PR is more important than this too, this is comparatively minor. If you want to see benchmarks for this, we should merge that and rebase and compare to that base line.

After that and the other improvements to InteractBase/Widgets.jl/AssetRegistry.jl, This PR gives another 20% improvement or so getting slider under one second. Nothing sensational, but this is death by 1000 cuts... it takes all 5 PRs to get slider from 15s to 1s...

halleysfifthinc commented 1 year ago

Bump. Could we get this rolling? With #476 / #478, I think there are substantial enough changes to warrant a minor release, which would be breaking since WebIO is pre v1. Backwards compatibility wouldn't need to be guaranteed in that case.

rafaqz commented 1 year ago

I lost some steam on this after fixing Parsers.jl, which was the major source of compile time here. But yes we should clean it up.