<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body>
<div dir="auto" style="font-family: Aptos, Aptos_MSFontService, -apple-system, Roboto, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(33, 33, 33);">
Probably best to think of dependencies as opaque.</div>
<div dir="auto" style="font-family: Aptos, Aptos_MSFontService, -apple-system, Roboto, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(33, 33, 33);">
<br>
</div>
<div dir="auto" style="font-family: Aptos, Aptos_MSFontService, -apple-system, Roboto, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(33, 33, 33);">
fwupd requires protobuf-c, not broken protobuf-c that didn't get updated. That'd be slackrepo's responsibility. Or yours.</div>
<div dir="auto" style="font-family: Aptos, Aptos_MSFontService, -apple-system, Roboto, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(33, 33, 33);">
<br>
</div>
<div dir="auto" style="font-family: Aptos, Aptos_MSFontService, -apple-system, Roboto, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(33, 33, 33);">
Watch the updates list?</div>
<div id="ms-outlook-mobile-body-separator-line" data-applydefaultfontstyles="true" dir="auto" style="font-family: Aptos, Aptos_MSFontService, -apple-system, Roboto, Arial, Helvetica, sans-serif; font-size: 12pt;">
<div style="font-family: Aptos, Aptos_MSFontService, -apple-system, Roboto, Arial, Helvetica, sans-serif; font-size: 12pt;">
<br>
</div>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> SlackBuilds-users <slackbuilds-users-bounces@slackbuilds.org> on behalf of Fellype <fellype@gmail.com><br>
<b>Sent:</b> Tuesday, April 28, 2026 2:14:11 PM<br>
<b>To:</b> SlackBuilds.org Users List <slackbuilds-users@slackbuilds.org><br>
<b>Subject:</b> Re: [Slackbuilds-users] Please list all direct dependencies as dependencies</font>
<div> </div>
</div>
<div>
<div dir="ltr">
<div class="x_gmail_quote x_gmail_quote_container">
<blockquote class="x_gmail_quote" style="margin:0px 0px 0px 0.8ex; border-left:1px solid rgb(204,204,204); padding-left:1ex">
I know that some like to "optimize" the dependency list of SlackBuilds by not listing dependencies that are already included as dependencies of dependencies.  I would humbly ask to please not do this.  If a package directly depends on another package, explicitly
 list it as a dependency.  For those familiar with C programming, this is similar to the question of which headers to include in your source files (whether or not to list headers that are already included by other headers).<br>
<br>
Why?  2 reasons:<br>
<br>
1) You don't have to track the dependency list of your dependencies (and their dependencies, etc.).  It shouldn't matter if a dependency 3 levels deep drops a dependency on something you actually need.<br>
<br>
2) Slackrepo's rebuild logic depends on it.  When a package is updated, slackrepo builds it and then rebuilds all packages that depend on it.  It does not, however, rebuild packages that depend on rebuilt packages.<br>
<br>
For me, the fwupd build failed with error:<br>
<br>
protoc-gen-c: error while loading shared libraries: libabsl_log_internal_check_op.so.2508.0.0: cannot open shared object file: No such file or directory<br>
<br>
The reason is that abseil-cpp was updated, and slackrepo duly rebuilt protobuf3.  However, it did not rebuild protobuf-c, as protobuf-c only lists protobuf3 as a dependency (and not abseil-cpp).  fwupd depends on protobuf-c.  The (trimmmed) slackrepo dependency
 tree output is:<br>
<br>
Dependency tree:<br>
system/fwupd (update for version 1.9.34)<br>
  libraries/protobuf-c (ok)<br>
    development/protobuf3 (ok)<br>
      development/abseil-cpp (ok)<br>
<br>
After explicitly telling slackrepo to rebuild protobuf-c, the fwupd build succeeded.  I can thus infer that protobuf-c directly depends on abseil-cpp.  In other words, whenever abseil-cpp is upgraded protobuf-c needs to be rebuilt.<br>
<br>
Of course, maintainers are free to do as they wish.  I ask because I prefer not to rebuild all my SBo packages each week, instead (re)building only what is necessary.  This happens infrequent enough that I usually forget this is the issue, wait a week for the
 build to be fixed, and after further investigation remember that some of the dependencies need a manual rebuild.<br>
<br>
</blockquote>
<div>AFAIK, this 'optimization' is currently a SBo policy (needs confirmation)..</div>
<div>In addition to your suggestion, I think it would be interesting to have an entry like 'AFFECTS=""' in the .info files, where the dependees could/should be listed. This could be used by slackrepo/sbopkg/sbotools for automation to list and/or rebuild the
 dependees.</div>
<div><br>
</div>
<div>Regards,</div>
<div>Fellype</div>
</div>
</div>
</div>
</body>
</html>