|
13 | 13 | from poetry.repositories import RepositoryPool |
14 | 14 | from poetry.repositories.installed_repository import InstalledRepository |
15 | 15 | from poetry.repositories.lockfile_repository import LockfileRepository |
16 | | -from poetry.utils.extras import get_extra_package_names |
17 | 16 |
|
18 | 17 |
|
19 | 18 | if TYPE_CHECKING: |
@@ -301,11 +300,6 @@ def _do_install(self) -> int: |
301 | 300 | extras=set(self._extras), |
302 | 301 | ) |
303 | 302 |
|
304 | | - # We need to filter operations so that packages |
305 | | - # not compatible with the current system, |
306 | | - # or optional and not requested, are dropped |
307 | | - self._filter_operations(ops, lockfile_repo) |
308 | | - |
309 | 303 | # Validate the dependencies |
310 | 304 | for op in ops: |
311 | 305 | dep = op.package.to_dependency() |
@@ -344,34 +338,5 @@ def _populate_lockfile_repo( |
344 | 338 | if not repo.has_package(package): |
345 | 339 | repo.add_package(package) |
346 | 340 |
|
347 | | - def _filter_operations(self, ops: Iterable[Operation], repo: Repository) -> None: |
348 | | - extra_packages = self._get_extra_packages(repo) |
349 | | - for op in ops: |
350 | | - package = op.target_package if isinstance(op, Update) else op.package |
351 | | - |
352 | | - if op.job_type == "uninstall": |
353 | | - continue |
354 | | - |
355 | | - if not self._env.is_valid_for_marker(package.marker): |
356 | | - op.skip("Not needed for the current environment") |
357 | | - continue |
358 | | - |
359 | | - # If a package is optional and not requested |
360 | | - # in any extra we skip it |
361 | | - if package.optional and package.name not in extra_packages: |
362 | | - op.skip("Not required") |
363 | | - |
364 | | - def _get_extra_packages(self, repo: Repository) -> set[NormalizedName]: |
365 | | - """ |
366 | | - Returns all package names required by extras. |
367 | | -
|
368 | | - Maybe we just let the solver handle it? |
369 | | - """ |
370 | | - return get_extra_package_names( |
371 | | - repo.packages, |
372 | | - {k: [d.name for d in v] for k, v in self._package.extras.items()}, |
373 | | - self._extras, |
374 | | - ) |
375 | | - |
376 | 341 | def _get_installed(self) -> InstalledRepository: |
377 | 342 | return InstalledRepository.load(self._env) |
0 commit comments