I was thinking if the model is: buy Version 1 for $99... then next year, Version 2 is out with lots of new features for the upgrade price of $79 -- well, then nothing really stops you from releasing new features under Version 1, but at some point you kinda have to hold something back for Version 2, or there won't be any reason to upgrade. So it shifts the incentives toward holding back big new features, and away from incremental updates.
And if you need some money and have a few features, release version 3 - even if it doesn't feel like enough to really cut a new version for.
Your cash flow for the software now becomes a big bang with then drawing on it until you run out and need some more.
Subscriptions offer a more measured approach. "I have 10,000 people with subscriptions of $10/month - each month I'll bring in $100k which is then used for these expenses."
There's no push to release a build because AWS changed their pricing or that you want to hire a new developer.
That really depends what timeframes you need to be working with. Adding new features to version n for free still incentivizes users of version < n to pay for the upgrade.