-
-
Notifications
You must be signed in to change notification settings - Fork 10.5k
linkage_checker: simplify logic for declared deps and include recursive deps #2297
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
Conversation
include recursive deps.
This will mean we have no easy way of telling which linkages are or are not explicitly included in the formula. |
Yes. But keep in mind that recursive dependencies are explicitly exposed in LDFLAGS. Complaining about it later feels inconsistent. |
Printing them as possibly undeclared doesn't necessarily amount to complaining. Ideally I think we should print out the indirect, undeclared ones in one list and the flat-out opportunistic ones in another list rather than lumping them together in a generic undeclared pile. But just not printing the former makes it harder to answer the question: what's this linked to that's not noted explicitly with a depends_on? |
Aw, smells like |
Yes, by definition. One hopes |
Not sure on the state of this. @ilovezfs? Feel free to point out what would need done from your perspective and/or close if we're at the end of this road. |
This seems like the best idea. It won't result in code simplification but printing out two different lists here feels like the right thing for now. |
Agreed. @zmwangx are you willing to implement it as two lists? |
I may take a look this weekend, but I'm kind of short on time recently and is juggling free time between several things, so feel free. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. |
Sorry guys, I forgot about this. I'll close this since the improvement would be very minor anyway. |
brew tests
with your changes locally?Use
Formula#runtime_dependencies
to collect dependencies.This inevitably pulls in all recursive deps, which might be controversial (I think this was discussed during the
:linked
dependency days, and no conclusion was reached; the discussion died off after:linked
was dropped, but dependency resolution has improved since then, so it's worth taking another look), but IMO is a good idea.Concrete example: in the case of
ffmpeg
, depending on eithertheora
orlibvorbis
(both of which has a hard dependency onlibogg
) would introduce alibogg
linkage, which is currently listed under "possible undeclared dependencies".