It's a lot easier in modern programming languages, where a new variant can be intruduced by adding a parameter. For common cases, this can hide the ened for versioning and future-proofing from the developer.
Unless, of course, you're making a change from an absolute date to a relative one, both expressed as an integer (:-()