Jetbrain's model is a good middle ground - you get perpetual access to versions released while your sub was active.
My JB subscriptions expire at the end of this month, if I don't re-up, I have to downgrade to 2020.1 versions and forego all the improvements and bugfixes in 2020.2 and 2020.3 (2020.3 is the latest release, which I'm currently using).
It's a good thing their products are top notch.