I would suggest that major version releases with significant new features should be paid for, though with a discount for people who bought the previous version.
You should still provide bugfix releases for free for the previous major version, though. Those are faults in a product you have sold and, to a point, your customers have a right to those repairs.
Put it this way - you buy a new monitor. You specifically choose that model because it has a HDMI input which you expect to need, though at the moment you'll only be using DVI. Six months later, you discover the HDMI input doesn't work. You try to get a repair or replacement, only to be told "sorry, you'll just have to buy the new model".
In the UK at least, that would be a violation of consumer protection laws.
With software, with all that "not sold, licensed" BS, it somehow seems to work out a bit different from the legal perspective. Even so - if you charge someone for a broken product and then try to charge them again for the repair/replacement, don't expect them to be loyal customers, and don't be surprised when you start seeing blog posts warning people to avoid your products.