Skip to content

Commit 471e090

Browse files
author
Glenn Jones
committed
pip-review excludes packages that are listed in .pipignore
1 parent 2806478 commit 471e090

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

bin/pip-review

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ except ImportError:
2828
raise error
2929
return output
3030

31+
PIP_IGNORE_FILE = u'.pipignore'
3132

3233
check_output = partial(_check_output, shell=True)
3334

@@ -131,7 +132,7 @@ def get_latest_versions(pkg_names):
131132
return zip(pkg_names, versions)
132133

133134

134-
def get_installed_pkgs(local=False):
135+
def get_installed_pkgs(ignores, local=False):
135136
logger = logging.getLogger(u'pip-review')
136137
command = 'pip freeze'
137138
if local:
@@ -147,9 +148,13 @@ def get_installed_pkgs(local=False):
147148
name = line.split('#egg=', 1)[1]
148149
if name.endswith('-dev'):
149150
name = name[:-4]
151+
if name in ignores:
152+
continue
150153
yield name, 'dev', 'dev', True
151154
else:
152155
name, version = line.split('==')
156+
if name in ignores:
157+
continue
153158
yield name, parse_version(version), version, False
154159

155160

@@ -231,7 +236,9 @@ def main():
231236
'Are you sure? [y/n] '):
232237
raise SystemExit('Quitting')
233238

234-
installed = list(get_installed_pkgs(local=args.local))
239+
with open('.pipignore', 'r') as ignore_file:
240+
ignores = set([x.strip() for x in ignore_file.readlines()])
241+
installed = list(get_installed_pkgs(ignores, local=args.local))
235242
lookup_on_pypi = [name for name, _, _, editable in installed
236243
if not editable or args.editables]
237244
latest_versions = dict(get_latest_versions(lookup_on_pypi))

0 commit comments

Comments
 (0)