Skip to content

Avoid infinite loops in data includes

Alberto Silva requested to merge Avoid_infinite_loops_in_data_includes into 1.1.x

Description

  • Logic to avoid infinite loops in JSON includes has been disabled, due to an edge case found by @Luis Gil where the same include was being used twice in different parts of the JSON and it was considered an infinite loop.
  • While we implement a proper logic (the previous one was based on GraphQL fragments where the same include can't appear twice), there is no protection against infinite loops.
  • Please review this commit where that logic is removed: e774bd83

Steps to reproduce

  1. CASE 1: Use the same JSON include in several places of a JSON, without nesting it. It will include only the first one, and it should include all of them.
  2. CASE 2: Use the same JSON include in several places of a JSON, nesting it. It should include only the first one.
  3. Use https://biko.slack.com/files/UCLQR1937/F01RLSJ4J5N/dev-efs-cms10032021-1016.tgz as a reference (only accesible to Biko employees)

Merge request reports