So should we force product owners to support multiple older versions of clients, even though the backend is progressed? Who will pay for this extra cost, the users who don't upgrade their devices? I don't think so.
Do every rule has to be written, or does writing them into law makes it logical every time? App owners can add "we only support client versions which is max 6 months older than current stable version" to their EULA and it is also fine (while being worse than current situation) then?