Not about this PR, but why is `needs_saved` a function?