Serious answer: A lot of times these legacy software are different from sqlite. To end to end test sqlite is a lot easier than a VPN client under distinct environments. It's simply a lot more costly and harder to setup or even possible to find all of these moving variables.
A change in behavior maybe construed as a bug, a breaking change or a regression, and a lot of time it's not so obvious. Sometimes you want the original behavior, sometimes you don't. Sometimes changing one for the better means another behavior needs to go, and you don't know if the user already depended on that other behavior. That's the real staying power of legacy software despite universal agreement that they suck.