3 ms·
Right, but I guess OP's point was that its not immediately obvious that this is a breaking change - and thus why the proposed usage is dangerous.
by tlonny 3y ago
Right, but I guess OP's point was that its not immediately obvious that this is a breaking change - and thus why the proposed usage is dangerous.
- gwern 3y agoIndeed, how could the dev know? Are you assuming the developer is omniscient and knows every abbreviation used worldwide? Realistically, he has not the slightest idea anyone is using 'sta' and so wouldn't know to hardwire an override.
- thedanbob 3y agoMy point was that the dev knows "sta" is currently available as an abbreviation for "start", and when he adds "status" it no longer will be. So if he wants to maintain strict backwards compatibility he should add it back in manually. It's no longer unambiguous, but it does maintain the previous behavior. Of course I personally would go with option two, where its documented that the abbreviations exist but are subject to change and you shouldn't rely on them.
- gwern 3y agoThe dev also "knows" that 'star' is available as an abbreviation. And in a realistic set of options for a real tool like git, there might be combinatorially many possible abbreviations which he now has to "know" and think about every possible intersection or ambiguity.