@rupalc found any fix to your case? I too don't have multiple dequeing but am getting the crash
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: MyCollectionViewCell.typeName, for: indexPath) as! MyCollectionViewCell
let viewModel = MyViewModel()
cell.configureCell(viewModel: viewModel)
cell.layoutIfNeeded()
return cell
}