Setting.self doesn't change DB state -- it only generates a hash that can be used to create a Setting object. The actual issue is in Setting#create code, and I can't simultaneously support both the old and the proposed call semantic. 

I think spreading the change over a couple of releases while not ideal is tolerable and leaves a copious amount of time for plugin authors to catch up. Having said that, I'm ok with announcing the breaking change and implementing it right away too.