May be it's best to make the conn always have a `components` and be None by default?