Flux mutating updates?

I am trying to transfer a model from Python into Julia.

Each time I compute my loss function I sample the parameters in my model and store them in a struct. Trying to compute gradients of my loss using Flux gives an error that “Mutating arrays is not supported”.

Within the Flux source I see that it updates parameters using a mutating operator. How is Flux able to use mutating operators in the !update function without throwing an error?