code: private void removeDependencyCycle(List<DependencyInfo> dependenciesInfo) {
          HashSet<DependencyInfo> recursiveDependecies = new HashSet<>();
  
          Iterator<DependencyInfo> parentDependenciesIterator = dependenciesInfo.iterator();
  
          while (parentDependenciesIterator.hasNext()) {
              recursiveDependecies.clear();
              removeDependencyCycle(parentDependenciesIterator.next(), recursiveDependecies);
          }
      }
docs: Removes dependencies tree cycles from dependencies trees.
  Dependency cycle is a dependency that one (or more) of its grand-children or grand-parents is itself.
  This method use Recursive DFS - https://www.geeksforgeeks.org/detect-cycle-in-a-graph/
  
  @param dependenciesInfo