| ⇢ | A | IdentifiersHelper added | |
| ⇢ | A | SubcollectionDataProvider added | |
| ⇢ | A | ChainSubcollectionDataProvider added | |
| A | ↘ | B | ApiLoader got worse |
| ⇢ | C | IdentifiersHelper::normalizeIdentifiers() added | |
| ⇢ | C | SubcollectionDataProvider::getSubcollection() added | |
| ⇢ | A | ChainSubcollectionDataProvider::getSubcollection() added | |
| ⇢ | A | ReadListener::getSubcollectionData() added | |
| ⇢ | A | IdentifiersHelper::__construct() added | |
| ⇢ | A | SubcollectionDataProvider::__construct() added | |
| ⇢ | A | PropertyMetadata::withSubcollection() added | |
| ⇢ | A | ChainSubcollectionDataProvider::__construct() added | |
| ⇢ | A | PropertyMetadata::getSubcollection() added | |
| A | ↘ | B | RequestAttributesExtractor::extractAttributes() got worse |
| B | ↘ | C | SerializerContextBuilder::createFromRequest() got worse |
| C | ↘ | D | ApiLoader::load() got worse |
| C | ↗ | B | ApiLoader::addRoute() improved |
| C | ↛ | ItemDataProvider::normalizeIdentifiers() removed |