diff --git a/pip_utils/cli.py b/pip_utils/cli.py index baea582..dbce289 100644 --- a/pip_utils/cli.py +++ b/pip_utils/cli.py @@ -124,10 +124,16 @@ def _parser(): dest='update', help='update packages that can be updated' ) + parser_outdated.add_argument( + '--globals', + action='store_true', + help='output packages installed in globals.' + ) parser_outdated.add_argument( '-h', '--help', action='help', help=argparse.SUPPRESS) + parser_outdated.set_defaults( func=command_outdated) diff --git a/pip_utils/outdated.py b/pip_utils/outdated.py index 7607f1a..633da06 100644 --- a/pip_utils/outdated.py +++ b/pip_utils/outdated.py @@ -51,7 +51,7 @@ class ListCommand(object): 'version': None, 'log': None, 'index_url': 'https://pypi.python.org/simple', - 'cache_dir': os.path.join(os.environ['HOME'], '.cache/pip'), + 'cache_dir': None, 'outdated': True, 'retries': 5, 'allow_all_external': False, @@ -64,6 +64,9 @@ class ListCommand(object): 'verbose': 0 } + if 'HOME' in os.environ: + options['cache_dir'] = os.path.join(os.environ['HOME'], '.cache/pip') + @staticmethod def _build_package_finder(options, index_urls, session): """ @@ -221,6 +224,9 @@ def output_package(dist): @classmethod def run_outdated(cls, options): """Print outdated user packages.""" + if options.globals: + cls.options['user'] = False + latest_versions = sorted( cls.find_packages_latest_versions(cls.options), key=lambda p: p[0].project_name.lower())