-
Notifications
You must be signed in to change notification settings - Fork 339
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve context resolve failure info #1083
Improve context resolve failure info #1083
Conversation
Hey David this looks really promising. Just one minor thing, I think the formatting should be a little different. Eg you have:
I would change to:
And similarly:
To:
We don't need the extra syntaxes ? and >>> since the description header already gives enough context. Also though, I'm not clear as to why the cycle output actually shows requirements that go past the cycle package? Here:
Finally, I thnk it'd be good to add a line to the output like so:
|
Ok so on further thought wrt cycle, how about this:
In other words, just show the dep chain from each request, to where it first hits a pkg in the cycle. Any more info than this is redundant, since the cycle is already identified on that first line. |
Yes, I was thinking if it's redundant as well.
Fine touch ! About cyclic path, I was thinking that maybe would be better to show the full cycle for better knowing what's going on in one full path ? If shorter path is desired, we could stop visiting nodes when hitting the edge that marked as |
About the additional hint message for viewing graph, what about |
Okay, now the message looks like this
And this
|
Indeed yes, I'd forgotten we added --fail-graph a while back.
cheers
A
…On Tue, May 25, 2021 at 8:43 PM David Lai ***@***.***> wrote:
Okay, now the message looks like this
resolve failed, by ***@***.***, on Tue May 25 18:41:58 2021, using Rez v2.88.2
requested packages:
pipeline
maya
houdini-18
~platform==windows (implicit)
~arch==AMD64 (implicit)
~os==windows-10.0.18362.SP0 (implicit)
The context failed to resolve:
The following package conflicts occurred: (python-2 <--!--> python==3)
Resolve paths starting from initial requests to conflict:
pipeline --> pipeline-1 --> maya-2020 --> pymel-2 --> python-2
maya --> maya-2020 --> pymel-2 --> python-2
houdini-18 --> houdini-18 --> python-3
To see a graph of the failed resolution, add --fail-graph in your rez-env or rez-build command.
And this
resolve failed, by ***@***.***, on Tue May 25 18:42:46 2021, using Rez v2.88.2
requested packages:
pipeline
cycle
~platform==windows (implicit)
~arch==AMD64 (implicit)
~os==windows-10.0.18362.SP0 (implicit)
The context failed to resolve:
A cyclic dependency was detected: cycle-1 --> bigger-5 --> nuke-10 --> cycle-1
Resolve paths starting from initial requests to cycle:
pipeline --> pipeline-0 --> nuke-10 --> cycle-1
cycle --> cycle-1
To see a graph of the failed resolution, add --fail-graph in your rez-env or rez-build command.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#1083 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAMOUSVZJ4OF4BIA4WIDXELTPN5OJANCNFSM45KXEZ4A>
.
|
Continue from #971, and based on the suggestion in this comment, here is another take that work no top of context resolve graph.
Say we have these packages and try requesting
"pipeline", "maya", "houdini-18"
:The output from current master branch:
And here's the output from this PR branch:
And here's an example on cyclic failure:
The output:
Here is the full code of above testing examples.