Because the real deal is not about the way ECS is used, the thing is about packing the data together.
And dynamic memory allocations make super difficult for you to pack your objects together (cache efficiency), if you can’t avoid cache misses there’s no reason to ditch objects for the sake of ECS pattern.
It’s all about avoiding to leave CPU cache to read data (L1, L2, L3) having to search dynamic memory…
lol There’s a reason why Intel is sponsoring Unity’s ECS efforts haha