Skip to content

Commit f095f9c

Browse files
committed
Remove unused get_installed_distributions
1 parent a176189 commit f095f9c

File tree

4 files changed

+5
-109
lines changed

4 files changed

+5
-109
lines changed

src/pip/_internal/commands/list.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@
1414
from pip._internal.metadata import BaseDistribution, get_environment
1515
from pip._internal.models.selection_prefs import SelectionPreferences
1616
from pip._internal.network.session import PipSession
17-
from pip._internal.utils.misc import stdlib_pkgs, tabulate, write_output
17+
from pip._internal.utils.compat import stdlib_pkgs
18+
from pip._internal.utils.misc import tabulate, write_output
1819
from pip._internal.utils.parallel import map_multithread
1920

2021
if TYPE_CHECKING:

src/pip/_internal/metadata/base.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
DirectUrlValidationError,
2323
DirInfo,
2424
)
25-
from pip._internal.utils.misc import stdlib_pkgs # TODO: Move definition here.
25+
from pip._internal.utils.compat import stdlib_pkgs
2626
from pip._internal.utils.misc import egg_link_path_from_sys_path
2727
from pip._internal.utils.urls import url_to_path
2828

src/pip/_internal/utils/misc.py

Lines changed: 1 addition & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
AnyStr,
2323
BinaryIO,
2424
Callable,
25-
Container,
2625
ContextManager,
2726
Iterable,
2827
Iterator,
@@ -41,7 +40,7 @@
4140
from pip import __version__
4241
from pip._internal.exceptions import CommandError
4342
from pip._internal.locations import get_major_minor_version, site_packages, user_site
44-
from pip._internal.utils.compat import WINDOWS, stdlib_pkgs
43+
from pip._internal.utils.compat import WINDOWS
4544
from pip._internal.utils.virtualenv import (
4645
running_under_virtualenv,
4746
virtualenv_no_global,
@@ -395,36 +394,6 @@ def egg_link_path_from_sys_path(raw_name: str) -> Optional[str]:
395394
return None
396395

397396

398-
def get_installed_distributions(
399-
local_only=True, # type: bool
400-
skip=stdlib_pkgs, # type: Container[str]
401-
include_editables=True, # type: bool
402-
editables_only=False, # type: bool
403-
user_only=False, # type: bool
404-
paths=None, # type: Optional[List[str]]
405-
):
406-
# type: (...) -> List[Distribution]
407-
"""Return a list of installed Distribution objects.
408-
409-
Left for compatibility until direct pkg_resources uses are refactored out.
410-
"""
411-
from pip._internal.metadata import get_default_environment, get_environment
412-
from pip._internal.metadata.pkg_resources import Distribution as _Dist
413-
414-
if paths is None:
415-
env = get_default_environment()
416-
else:
417-
env = get_environment(paths)
418-
dists = env.iter_installed_distributions(
419-
local_only=local_only,
420-
skip=skip,
421-
include_editables=include_editables,
422-
editables_only=editables_only,
423-
user_only=user_only,
424-
)
425-
return [cast(_Dist, dist)._dist for dist in dists]
426-
427-
428397
def get_distribution(req_name):
429398
# type: (str) -> Optional[Distribution]
430399
"""Given a requirement name, return the installed Distribution object.

tests/unit/test_utils.py

Lines changed: 1 addition & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@
3030
egg_link_path,
3131
format_size,
3232
get_distribution,
33-
get_installed_distributions,
3433
get_prog,
3534
hide_url,
3635
hide_value,
@@ -186,9 +185,8 @@ def test_noegglink_in_sitepkgs_venv_global(self):
186185

187186
@patch('pip._internal.utils.misc.dist_in_usersite')
188187
@patch('pip._internal.utils.misc.dist_is_local')
189-
@patch('pip._internal.utils.misc.dist_is_editable')
190188
class TestsGetDistributions:
191-
"""Test get_installed_distributions() and get_distribution().
189+
"""Test get_distribution().
192190
"""
193191
class MockWorkingSet(list):
194192
def require(self, name):
@@ -212,80 +210,12 @@ def require(self, name):
212210
Mock(test_name='normal', project_name='distribute')
213211
))
214212

215-
def dist_is_editable(self, dist):
216-
return dist.test_name == "editable"
217-
218213
def dist_is_local(self, dist):
219214
return dist.test_name != "global" and dist.test_name != 'user'
220215

221216
def dist_in_usersite(self, dist):
222217
return dist.test_name == "user"
223218

224-
@patch('pip._vendor.pkg_resources.working_set', workingset)
225-
def test_editables_only(self, mock_dist_is_editable,
226-
mock_dist_is_local,
227-
mock_dist_in_usersite):
228-
mock_dist_is_editable.side_effect = self.dist_is_editable
229-
mock_dist_is_local.side_effect = self.dist_is_local
230-
mock_dist_in_usersite.side_effect = self.dist_in_usersite
231-
dists = get_installed_distributions(editables_only=True)
232-
assert len(dists) == 1, dists
233-
assert dists[0].test_name == "editable"
234-
235-
@patch('pip._vendor.pkg_resources.working_set', workingset)
236-
def test_exclude_editables(self, mock_dist_is_editable,
237-
mock_dist_is_local,
238-
mock_dist_in_usersite):
239-
mock_dist_is_editable.side_effect = self.dist_is_editable
240-
mock_dist_is_local.side_effect = self.dist_is_local
241-
mock_dist_in_usersite.side_effect = self.dist_in_usersite
242-
dists = get_installed_distributions(include_editables=False)
243-
assert len(dists) == 1
244-
assert dists[0].test_name == "normal"
245-
246-
@patch('pip._vendor.pkg_resources.working_set', workingset)
247-
def test_include_globals(self, mock_dist_is_editable,
248-
mock_dist_is_local,
249-
mock_dist_in_usersite):
250-
mock_dist_is_editable.side_effect = self.dist_is_editable
251-
mock_dist_is_local.side_effect = self.dist_is_local
252-
mock_dist_in_usersite.side_effect = self.dist_in_usersite
253-
dists = get_installed_distributions(local_only=False)
254-
assert len(dists) == 4
255-
256-
@patch('pip._vendor.pkg_resources.working_set', workingset)
257-
def test_user_only(self, mock_dist_is_editable,
258-
mock_dist_is_local,
259-
mock_dist_in_usersite):
260-
mock_dist_is_editable.side_effect = self.dist_is_editable
261-
mock_dist_is_local.side_effect = self.dist_is_local
262-
mock_dist_in_usersite.side_effect = self.dist_in_usersite
263-
dists = get_installed_distributions(local_only=False,
264-
user_only=True)
265-
assert len(dists) == 1
266-
assert dists[0].test_name == "user"
267-
268-
@patch('pip._vendor.pkg_resources.working_set', workingset_stdlib)
269-
def test_gte_py27_excludes(self, mock_dist_is_editable,
270-
mock_dist_is_local,
271-
mock_dist_in_usersite):
272-
mock_dist_is_editable.side_effect = self.dist_is_editable
273-
mock_dist_is_local.side_effect = self.dist_is_local
274-
mock_dist_in_usersite.side_effect = self.dist_in_usersite
275-
dists = get_installed_distributions()
276-
assert len(dists) == 0
277-
278-
@patch('pip._vendor.pkg_resources.working_set', workingset_freeze)
279-
def test_freeze_excludes(self, mock_dist_is_editable,
280-
mock_dist_is_local,
281-
mock_dist_in_usersite):
282-
mock_dist_is_editable.side_effect = self.dist_is_editable
283-
mock_dist_is_local.side_effect = self.dist_is_local
284-
mock_dist_in_usersite.side_effect = self.dist_in_usersite
285-
dists = get_installed_distributions(
286-
skip=('setuptools', 'pip', 'distribute'))
287-
assert len(dists) == 0
288-
289219
@pytest.mark.parametrize(
290220
"working_set, req_name",
291221
itertools.chain(
@@ -301,15 +231,13 @@ def test_freeze_excludes(self, mock_dist_is_editable,
301231
)
302232
def test_get_distribution(
303233
self,
304-
mock_dist_is_editable,
305234
mock_dist_is_local,
306235
mock_dist_in_usersite,
307236
working_set,
308237
req_name,
309238
):
310239
"""Ensure get_distribution() finds all kinds of distributions.
311240
"""
312-
mock_dist_is_editable.side_effect = self.dist_is_editable
313241
mock_dist_is_local.side_effect = self.dist_is_local
314242
mock_dist_in_usersite.side_effect = self.dist_in_usersite
315243
with patch("pip._vendor.pkg_resources.working_set", working_set):
@@ -320,11 +248,9 @@ def test_get_distribution(
320248
@patch('pip._vendor.pkg_resources.working_set', workingset)
321249
def test_get_distribution_nonexist(
322250
self,
323-
mock_dist_is_editable,
324251
mock_dist_is_local,
325252
mock_dist_in_usersite,
326253
):
327-
mock_dist_is_editable.side_effect = self.dist_is_editable
328254
mock_dist_is_local.side_effect = self.dist_is_local
329255
mock_dist_in_usersite.side_effect = self.dist_in_usersite
330256
dist = get_distribution("non-exist")

0 commit comments

Comments
 (0)