Eternal maintenance is not the point of writing software; it's just an unfortunate inevitability.
Much though I really hate to admit this, npm and the node community are on the right track here.
Take this example, there's really no reason for me to do anything EXCEPT that the upstream dependencies have been yanked. Now I need to do a bunch of porting.