This is a bug to track the issues in Wikibase Repository that prevent it from working with new types of Entities, and thus the blockers for commons, advanced queries, etc.
The two main issues are:
- Bad assumptions about Entities. For instance that they all have statements, or all have a fingerprint.
- OCP violations: code that handles entities in a way that requires specific handling for different types, without providing an extension mechanism.
These can typically be found together.
- https://lists.wikimedia.org/pipermail/wikidata-tech/2014-August/000545.html & https://lists.wikimedia.org/pipermail/wikidata-tech/2014-August/000546.html
Wikibase DataModel and Wikibase QueryEngine contained several instances of these problems as well. Since those have all been fixed some time ago, there are plently of examples of how this can be done.
To spot code making one of the described mistakes, you can look for:
- code type hinting against Entity
- code using deprecated methods of Entity
- classes that have a name starting with "Entity" and have checks like "if is item"