In order to factor out EntityChange as a standalone library we should remove calls that are only made from Repo
The only changes are made in:
- setRevisionInfo
- setMetadataFromRC
- setMetadataFromUser
Some random ideas for what to do:
- Create a new class inheriting from EntityChange in Repo to add the setRevisionInfo method only in Repo
- Try to remove all setter methods and instead move the logic to the Factory
- maybe we can extract the “setter” part and leave that in Lib, but move the rest of EntityChange and ClientChange to the separate package? (from https://phabricator.wikimedia.org/T257439#6315632)