I don't get your points. Nobody's claiming that the default behaviour of SetImage() should change, it's okay like it is at the moment.
But I could also argue that when constructing a sprite, it's initial size should be (0, 0), independent from the image's size, because dimensions should not change when setting a new image (and personally I think that constructing an sf::Sprite with an sf::Image is for this matter the same as just setting a new image). But whatever, different people have different meanings of this, so none of both behaviours is correct, instead Laurent has to define the default behaviour depending on his meaning, which is perfectly fine.
Personally, I would expect that when I set another image for a sprite, it will get drawn completely, which is the most natural behaviour (change image, see image). But again, this is only my meaning of setting a new image.
To elimate this problem, thus satisfying all people, SetImage() could get a new parameter, for example "bool ChangeSize = false". And like you see in the signature, the size wouldn't be changed by default, since the default value is set to "false". That won't break compatibility, but support people having a different meaning of SetImage(). Also, that feature would be absolutely easy to find, since when I'm changing an image and recognize it doesn't change the sprite's size, I'll lookup SetImage() in the Doxygen docs, where I'll find that second parameter with a slight description. Voila!
Edit: Regarding to this:
I think the rest of you guys should use Hiura's function, or use images of the same resolution.
Laurent has declined some small enhancements in the past, thus forcing me to write a lot of those small functions, which are sometimes really elemental. But in this case, a second parameter wouldn't bloat the API nor be useless.
And: why should I *always* use images of the same resolution? That highly depends on what you're actually doing. Animations mostly work fine with that, but these can also have frames with different sizes, where you'd be happy to write "blah.SetImage( frame[5], true )", wouldn't you?