Skip to content

Commit f97a90b

Browse files
committed
Do not log anything by default
Signed-off-by: Tushar Goel <tushar.goel.dav@gmail.com>
1 parent d29f034 commit f97a90b

2 files changed

Lines changed: 31 additions & 18 deletions

File tree

src/python_inspector/resolution.py

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
from typing import Sequence
1616
from zipfile import ZipFile
1717

18+
import click
1819
import packaging.requirements
1920
import packaging.utils
2021
import packaging.version
@@ -512,6 +513,7 @@ def get_resolved_dependencies(
512513
repos: Sequence[utils_pypi.PypiSimpleRepository] = tuple(),
513514
as_tree: bool = False,
514515
max_rounds: int = 200000,
516+
debug: bool = False,
515517
):
516518
"""
517519
Return resolved dependencies of a ``requirements`` list of Requirement for
@@ -521,17 +523,22 @@ def get_resolved_dependencies(
521523
Used the provided ``repos`` list of PypiSimpleRepository.
522524
If empty, use instead the PyPI.org JSON API exclusively instead
523525
"""
524-
resolved_requirements = {
525-
packaging.utils.canonicalize_name(r.name): r.specifier
526-
for r in requirements
527-
if getattr(r, "is_requirement_resolved", False)
528-
}
529-
resolver = Resolver(
530-
provider=PythonInputProvider(
531-
environment=environment, repos=repos, resolved_requirements=resolved_requirements
532-
),
533-
reporter=BaseReporter(),
534-
)
535-
results = resolver.resolve(requirements=requirements, max_rounds=max_rounds)
536-
results = format_resolution(results, as_tree=as_tree, environment=environment, repos=repos)
537-
return results
526+
try:
527+
resolved_requirements = {
528+
packaging.utils.canonicalize_name(r.name): r.specifier
529+
for r in requirements
530+
if getattr(r, "is_requirement_resolved", False)
531+
}
532+
resolver = Resolver(
533+
provider=PythonInputProvider(
534+
environment=environment, repos=repos, resolved_requirements=resolved_requirements
535+
),
536+
reporter=BaseReporter(),
537+
)
538+
results = resolver.resolve(requirements=requirements, max_rounds=max_rounds)
539+
results = format_resolution(results, as_tree=as_tree, environment=environment, repos=repos)
540+
return results
541+
except Exception as e:
542+
if debug:
543+
click.secho(f"{e!r}", err=True)
544+
return None

src/python_inspector/resolve_cli.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -158,8 +158,8 @@ def resolve_dependencies(
158158
159159
dad --spec "flask==2.1.2" --json -
160160
"""
161-
162-
click.secho(f"Resolving dependencies...")
161+
if debug:
162+
click.secho(f"Resolving dependencies...")
163163

164164
netrc = None
165165
if netrc_file:
@@ -181,7 +181,8 @@ def resolve_dependencies(
181181
direct_dependencies.append(dep)
182182

183183
if not direct_dependencies:
184-
click.secho("Error: no requirements requested.")
184+
if debug:
185+
click.secho("Error: no requirements requested.")
185186
sys.exit(1)
186187

187188
if debug:
@@ -232,6 +233,7 @@ def resolve_dependencies(
232233
repos=repos,
233234
as_tree=False,
234235
max_rounds=max_rounds,
236+
debug=debug,
235237
)
236238

237239
cli_options = [f"--requirement {rf}" for rf in requirement_files]
@@ -268,7 +270,9 @@ def resolve_dependencies(
268270
click.secho("done!")
269271

270272

271-
def resolve(direct_dependencies, environment, repos=tuple(), as_tree=False, max_rounds=200000):
273+
def resolve(
274+
direct_dependencies, environment, repos=tuple(), as_tree=False, max_rounds=200000, debug=False
275+
):
272276
"""
273277
Resolve dependencies given a ``direct_dependencies`` list of
274278
DependentPackage and return a tuple of (initial_requirements,
@@ -281,6 +285,7 @@ def resolve(direct_dependencies, environment, repos=tuple(), as_tree=False, max_
281285

282286
for dependency in direct_dependencies:
283287
# FIXME We are skipping editable requirements for now
288+
# https://github.com/nexB/python-inspector/issues/41
284289
if dependency.extra_data.get("is_editable"):
285290
continue
286291
requirement = Requirement(requirement_string=dependency.extracted_requirement)
@@ -293,6 +298,7 @@ def resolve(direct_dependencies, environment, repos=tuple(), as_tree=False, max_
293298
repos=repos,
294299
as_tree=as_tree,
295300
max_rounds=max_rounds,
301+
debug=debug,
296302
)
297303

298304
initial_requirements = [d.to_dict() for d in direct_dependencies]

0 commit comments

Comments
 (0)