(module: str)
| 2 | |
| 3 | |
| 4 | def stub_distribution_name(module: str) -> str | None: |
| 5 | top_level = module.split(".", 1)[0] |
| 6 | |
| 7 | dist = non_bundled_packages_flat.get(top_level) |
| 8 | if dist: |
| 9 | return dist |
| 10 | |
| 11 | if top_level in non_bundled_packages_namespace: |
| 12 | namespace = non_bundled_packages_namespace[top_level] |
| 13 | components = module.split(".") |
| 14 | for i in range(len(components), 0, -1): |
| 15 | module = ".".join(components[:i]) |
| 16 | dist = namespace.get(module) |
| 17 | if dist: |
| 18 | return dist |
| 19 | |
| 20 | return None |
| 21 | |
| 22 | |
| 23 | # Stubs for these third-party packages used to be shipped with mypy. |
searching dependent graphs…