publish
Applies publication:
The first publication for an address stores its identity key. A later one with a different identity key throws PreKeyPublicationException.IdentityKeyConflict.
A signed prekey with a higher ID than the current one replaces it. The same ID with the same key and signature changes nothing. The same ID with other bytes, or a lower ID, throws PreKeyPublicationException.SignedPreKeyConflict.
A one-time prekey whose ID was consumed before is skipped. One that is available with the same bytes changes nothing; with other bytes it throws PreKeyPublicationException.OneTimePreKeyConflict. New ones are added.
A repeated one-time prekey ID within publication throws PreKeyPublicationException.InvalidPublication.
Publishing the same publication again is harmless.