According to the docs, "you can either add or remove aliases individually, or send the full set of aliases for a language". But it seems like sending the full set of aliases is not supported if the set is empty?
Steps to reproduce:
Make a wbeditentity request with data set to {"aliases":{"en":[]}}
Actual result:
No changes are made.
Expected result:
Existing English aliases are removed.
Acceptance criteria
- API behaviour is changed to match the expected one, as described above
- documentation of the API input is changed to make the behaviour for empty list input explicit
Deployment Blocker
This change will be announced as a breaking change to avoid tools that has been using the current behavior in any way from starting to delete aliases unintentionally. Wait until sub-task is done T223079
Hints
Probably a good place to start is: \Wikibase\Repo\ChangeOp\Deserialization\AliasesChangeOpDeserializer::getIndexedAliasesChangeOps