Is making a struct readonly a breaking change?