have \ the same identifier. \ The collection is never empty. resolvelib >=0.6.0 :param identifier: The value returned by ``identify()``. :param requirements: The requirements all returned candidates must satisfy. Mapping of identifier, iterator of requirement pairs. :param incompatibilities: Incompatible versions that must be excluded from the returned list. :returns: An iterable that orders candidates by preference, \ e.g. the most preferred candidate comes first. r7