So I'm just looking for some explanation regarding some custom code for a weakaura for my rogue that I had found back when Legion first released but has since been broken since the 8.0 prepatch.

Below is the custom code written to display the duration for Garrote which includes changing the text color to account for the pandemic mechanic. Since the BFA prepatch the weakaura no longer displays the duration, just the icon.

I'm just wondering if someone can explain why it broke, or explain the select function and the parameters being passed to it (as I feel something there might be causing the issue as my fiddling around and changing the "4" parameter in the local aura line to 1, 2, or 3 would cause the duration to display again but would not change color at the correct time for the pandemic mechanic). All I could determine was that the Ellipsis (i.e. the "...") represents a variable number of arguments and that the select function is selecting from among them but I don't get what those arguments can or could be. Feel free to correct me if my current understanding is incorrect.
Code:
function(progress, ...)
    local aura = select(4, ...)
    local duration = select(6, UnitDebuff("target", aura, nil, "PLAYER")) or 0
    
    local refresh = duration*0.3
    local remaining = progress - GetTime()
    
    if progress ~= 0 then
        if remaining < refresh then
            if aura_env.garroteSnapshot then
                return "|cFFE18800"..format("%.1f", remaining)
            else
                return "|cFF00FF00"..format("%.1f", remaining)
            end
        else
            if aura_env.garroteSnapshot then
                return "|cFFE1E100"..format("%.1f", remaining)
            else
                return "|cFFFFFFFF"..format("%.1f", remaining)
            end
        end
    end
end
If someone is able to explain or point me in the right direction I'd really appreciate it.