(Argh, hit commit before filling the bug description)
All TpSignaledMessage created by TpTextChannel should be guaranteed to have its sender prepared with factory contact features.
This affects tp_text_channel_get_pending_messages(), "message-received", "message-sent" and "pending-message-removed".
We probably don't want to reorder members-changed and message-received signals, so implementation should probably reuse the same GQueue as made in bug #38248.
Patch available, based on the branch for bug #38248
Code looks good but add at least one check in the test asserting that contact features are prepared.
unit test added, branch merged.