Free software is still driven by developers working on what interests or concerns them.
If it is being developed in the developer's free time then this should be expected, The software is effectively a hobby which the developer enjoys and users benefit from. Innovation is enjoyable, maintenance isn't, and users if they aren't paying should expect this. If they want reliable long term maintenance (or any other "boring" issues) they should consider playing for support, like in any normal business relationship,
If I (as a spare-time software developer) gets asked to do something I'm not interested in, I may not refuse, but it gets placed at the end of a priority sorted list, and it can stay there for a long time. However, If I can see that it is of use to a large amount of users I will usually do it, but it is as a favour and it shouldn't be expected (I get annoyed when I feel this is the case).
Why should a developer be expected to do something users want, if the developer has no interest in it, and the users aren't willing to pay or at least make a donation? It's not expected in other aspects of life, and so I don't understand why it is increasingly being expected in free software.