Updating an old project to modern broadcasting

I’ve been tasked with updating an old 0.6 project to modern Julia and am having a really hard time working with the new broadcasting interface. The old code defined

 Base.broadcast!(f, output::BroadcastTypes, args...) = # ...

But I haven’t been able to get a combination of the broadcast style etc to work as simply as this. Is there a way to recreate the same functionality as redefining broadcast! with the new interface?

For context, here is the bit of code I’m working on: BPJSpec.jl/broadcasting.jl at master · kiranshila/BPJSpec.jl · GitHub


I think you can just delete all this code and just define getindex/setindex and making ProgressBar<:AbstractArray


I tried that but ran into a lot of problems with how the fusion mucks with the remote calls