Skip to content

Duplicate DeferredFragmentIdentifiers generated #3565

Open
apollographql/apollo-ios-dev
#700
@AnthonyMDev

Description

@AnthonyMDev

Summary

I've experienced a situation in which the DeferredFragmentIdentifiers for a query are generating with duplicate values in the dictionary.

This causes a compilation error due to conflicting property names in the DeferredFragmentIdentifier enum.

Version

1.22.0

Steps to reproduce the behavior

Add this query operation to the AnimalKingdomAPI and run codegen:

query AllAnimalsDeferQuery {
  allAnimals {
    __typename
    id
    height {
      feet
      inches
    }
    ...HeightInMeters
    ...WarmBloodedDetails
    species
    skinCovering
    ... on Pet @defer(label: "deferredPet") {
      ...PetDetails
      ...WarmBloodedDetails
      ... on Animal @defer(label: "deferredPetAnimal") {
        height {
          relativeSize
          centimeters
        }
      }
    }
    ... on Cat @defer(label: "deferredCat") {
      isJellicle
    }
    ... on ClassroomPet {
      ... on Bird {
        wingspan
      }
    }
    ... on Dog @defer(label: "deferredDog") {
      favoriteToy
      birthdate
    }
    predators {
      species
      ... on WarmBlooded @defer(label: "deferredWarmbloodedPredator") {
        predators {
          species
        }
        ...WarmBloodedDetails
        laysEggs
      }
    }
  }
}

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions