If you remove a feature within just a few months of warning, users will be pissed. I think it is valid to feel frustrated about that. Its unrealistic to closely follow the development of every package you are using.
Now, I am NOT saying they are entitled to a solution. I am just saying, if you declare something stable (if you don't, do whatever you want) then you are creating a certain expectation and you should be very cautious not not break the expectation.
My intention is simply for the sake of the discussion to separate the two issues: There is the entitlement issue. There is also the issue of certain libraries and frameworks that keep changing things.