Path 1: 10 calls (0.48)

['/Users/andrehora/Documents/git/projects-pathspotter/pylint/tests/lint/../regrtest_data/directory'] (6) ['/Users/andrehora/Documents/git/projects-pat...

None (40) '/Users/andrehora/Documents/git/projects-pathspotter/pylint/tests/lint/../regrtest_data/directory/subdirectory/module.py' (12) '/Users/andre...

GeneratorExit (10)

1def _discover_files(self, files_or_modules: Sequence[str]) -> Iterator[str]:
2        """Discover python modules and packages in sub-directory.
3
4        Returns iterator of paths to discovered modules and packages.
5        """
6        for something in files_or_modules:
7            if os.path.isdir(something) and not os.path.isfile(
8                os.path.join(something, "__init__.py")
9            ):
10                skip_subtrees: list[str] = []
11                for root, _, files in os.walk(something):
12                    if any(root.startswith(s) for s in skip_subtrees):
13                        # Skip subtree of already discovered package.
14                        continue
15
16                    if _is_ignored_file(
17                        root,
18                        self.config.ignore,
19                        self.config.ignore_patterns,
20                        self.config.ignore_paths,
21                    ):
22                        skip_subtrees.append(root)
23                        continue
24
25                    if "__init__.py" in files:
26                        skip_subtrees.append(root)
27                        yield root
28                    else:
29                        yield from (
30                            os.path.join(root, file)
31                            for file in files
32                            if file.endswith(".py")
33                        )
34            else:
35                yield something
            

Path 2: 9 calls (0.43)

['/Users/andrehora/Documents/git/projects-pathspotter/pylint/tests/lint/../regrtest_data/directory'] (6) ['/Users/andrehora/Documents/git/projects-pat...

None (27) '/Users/andrehora/Documents/git/projects-pathspotter/pylint/tests/lint/../regrtest_data/directory/subdirectory/module.py' (12) '/Users/andre...

GeneratorExit (9)

1def _discover_files(self, files_or_modules: Sequence[str]) -> Iterator[str]:
2        """Discover python modules and packages in sub-directory.
3
4        Returns iterator of paths to discovered modules and packages.
5        """
6        for something in files_or_modules:
7            if os.path.isdir(something) and not os.path.isfile(
8                os.path.join(something, "__init__.py")
9            ):
10                skip_subtrees: list[str] = []
11                for root, _, files in os.walk(something):
12                    if any(root.startswith(s) for s in skip_subtrees):
13                        # Skip subtree of already discovered package.
14                        continue
15
16                    if _is_ignored_file(
17                        root,
18                        self.config.ignore,
19                        self.config.ignore_patterns,
20                        self.config.ignore_paths,
21                    ):
22                        skip_subtrees.append(root)
23                        continue
24
25                    if "__init__.py" in files:
26                        skip_subtrees.append(root)
27                        yield root
28                    else:
29                        yield from (
30                            os.path.join(root, file)
31                            for file in files
32                            if file.endswith(".py")
33                        )
34            else:
35                yield something
            

Path 3: 2 calls (0.1)

['/Users/andrehora/Documents/git/projects-pathspotter/pylint/tests/regrtest_data/directory/subdirectory'] (1) ['.'] (1)

None (4) '/Users/andrehora/Documents/git/projects-pathspotter/pylint/tests/regrtest_data/directory/subdirectory/module.py' (2) '/Users/andrehora/Docum...

1def _discover_files(self, files_or_modules: Sequence[str]) -> Iterator[str]:
2        """Discover python modules and packages in sub-directory.
3
4        Returns iterator of paths to discovered modules and packages.
5        """
6        for something in files_or_modules:
7            if os.path.isdir(something) and not os.path.isfile(
8                os.path.join(something, "__init__.py")
9            ):
10                skip_subtrees: list[str] = []
11                for root, _, files in os.walk(something):
12                    if any(root.startswith(s) for s in skip_subtrees):
13                        # Skip subtree of already discovered package.
14                        continue
15
16                    if _is_ignored_file(
17                        root,
18                        self.config.ignore,
19                        self.config.ignore_patterns,
20                        self.config.ignore_paths,
21                    ):
22                        skip_subtrees.append(root)
23                        continue
24
25                    if "__init__.py" in files:
26                        skip_subtrees.append(root)
27                        yield root
28                    else:
29                        yield from (
30                            os.path.join(root, file)
31                            for file in files
32                            if file.endswith(".py")
33                        )
34            else:
35                yield something