private static @NotNull List<SetupTask> collectTasks(@NotNull Module module, @NotNull PsiDirectory commandDir, boolean setuptools) {
    final List<SetupTask> result = new ArrayList<>();
    for (PsiFile commandFile : commandDir.getFiles()) {
      if (commandFile instanceof PyFile && !SKIP_NAMES.contains(commandFile.getName())) {
        final String taskName = FileUtilRt.getNameWithoutExtension(commandFile.getName());
        result.add(createTaskFromFile((PyFile)commandFile, taskName, setuptools));
      }
    }

    if (setuptools) {
      final QualifiedName name = QualifiedName.fromComponents("wheel", "bdist_wheel", "bdist_wheel");
      final PsiElement bdistWheel = PyResolveImportUtil.resolveTopLevelMember(name, PyResolveImportUtil.fromModule(module));

      if (bdistWheel instanceof PyClass) {
        final PsiFile file = bdistWheel.getContainingFile();
        if (file instanceof PyFile) {
          result.add(createTaskFromFile((PyFile)file, "bdist_wheel", true));
        }
      }
    }

    return result;
  }
private static @NotNull List<SetupTask> collectTasks(@NotNull Module module, @NotNull PsiDirectory commandDir, boolean setuptools)