Skip to content

[feature] Better error message on error in workspaces #19009

@ibrawada

Description

@ibrawada

What is your suggestion?

Hello all,

I was trying to do a conan workspace super-install on a project with around 10 components and it always failed with following error message. From the logs i couldn't tell what is the actual problem or where the problem is.

ERROR: Traceback (most recent call last):
File "C:\Python\Python3.10.10\lib\site-packages\conan\cli\cli.py", line 297, in main
cli.run(args)
File "C:\Python\Python3.10.10\lib\site-packages\conan\cli\cli.py", line 193, in run
command.run(self._conan_api, args[0][1:])
File "C:\Python\Python3.10.10\lib\site-packages\conan\cli\command.py", line 199, in run
sub.run(conan_api, parser, *args)
File "C:\Python\Python3.10.10\lib\site-packages\conan\cli\command.py", line 217, in run
info = self._method(conan_api, parent_parser, self._parser, *args)
File "C:\Python\Python3.10.10\lib\site-packages\conan\cli\commands\workspace.py", line 228, in workspace_super_install
conan_api.graph.analyze_binaries(ws_graph, args.build, remotes=remotes, update=args.update,
File "C:\Python\Python3.10.10\lib\site-packages\conan\api\subapi\graph.py", line 211, in analyze_binaries
binaries_analyzer.evaluate_graph(graph, build_mode, lockfile, remotes, update,
File "C:\Python\Python3.10.10\lib\site-packages\conan\internal\graph\graph_binaries.py", line 445, in evaluate_graph
self._evaluate_package_id(node, config_version)
File "C:\Python\Python3.10.10\lib\site-packages\conan\internal\graph\graph_binaries.py", line 402, in _evaluate_package_id
compute_package_id(node, self._modes, config_version, self._hook_manager)
File "C:\Python\Python3.10.10\lib\site-packages\conan\internal\graph\compute_pid.py", line 26, in compute_package_id
req_info = RequirementInfo(dep_node.pref.ref, dep_node.pref.package_id,
File "C:\Python\Python3.10.10\lib\site-packages\conan\internal\graph\graph.py", line 249, in pref
assert self.ref is not None and self.package_id is not None, "Node %s" % self.recipe
AssertionError: Node Editable

ERROR: Node Editable

Now i am almost 100% sure that the problem was that an intermediate library was not part of the workspace and the problem disappeared as soon as it was added.

  1. Is it possible to have Conan show the name of the package/reference that has a problem?

  2. Would it also be possible for Conan to analyse the graph and notify the developer that between libA and libD there are libB and libC that are not part of the workspace and should be added?

Thanks in advance

Have you read the CONTRIBUTING guide?

  • I've read the CONTRIBUTING guide

Metadata

Metadata

Assignees

Labels

component: uxNo changes to core business logic

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions