Re: output of RUN_DEPENDS changes unexpectedly

From: Dan Langille <dan_at_langille.org>
Date: Thu, 26 Oct 2023 17:41:12 UTC
On Thu, Oct 26, 2023, at 1:11 PM, Renato Botelho wrote:
> On 24/10/23 15:45, Dan Langille wrote:
>> Hello,
>> 
>> I noticed an anomaly today.
>> 
>> Watch how the output of make -V RUN_DEPENDS changes for tomcat-devel as we move through the tree.
>> 
>> This is a fresh checkout of ports
>> [18:40 empty dan /usr/ports] % cd www/tomcat-devel
>> [18:41 empty dan /usr/ports/www/tomcat-devel] % make -V RUN_DEPENDS
>> jsvc:devel/apache-commons-daemon /usr/local/openjdk21/bin/java:java/openjdk21
>> 
>> The above is valid output
>> 
>> [18:41 empty dan /usr/ports/www/tomcat-devel] % git checkout  5699269
>> Note: switching to '5699269'.
>> 
>> You are in 'detached HEAD' state. You can look around, make experimental
>> changes and commit them, and you can discard any commits you make in this
>> state without impacting any branches by switching back to a branch.
>> 
>> If you want to create a new branch to retain commits you create, you may
>> do so (now or later) by using -c with the switch command. Example:
>> 
>>    git switch -c <new-branch-name>
>> 
>> Or undo this operation with:
>> 
>>    git switch -
>> 
>> Turn off this advice by setting config variable advice.detachedHead to false
>> 
>> HEAD is now at 569926974bfd www/tomcat{85,9,101}: adjust rc.d script to support Java versions 20+
>> [18:42 empty dan /usr/ports/www/tomcat-devel] % make -V RUN_DEPENDS
>> jsvc:devel/apache-commons-daemon /bin/java:
>> 
>> 
>> That's not right.
>> 
>> I tried commits before and after 5699269 - both good.
>> 
>> Inquiring minds, FreshPorts not the least, wants to know why the RUN_DEPENDS failed for that commit.
>> 
>> 
>> [18:43 empty dan /usr/ports/www/tomcat-devel] % git checkout  d994e83
>> Previous HEAD position was 569926974bfd www/tomcat{85,9,101}: adjust rc.d script to support Java versions 20+
>> HEAD is now at d994e83b45c4 net-mgmt/ocsinventory-{server,ocsreports}: Update to 2.12.1
>> [18:44 empty dan /usr/ports/www/tomcat-devel] % make -V RUN_DEPENDS   jsvc:devel/apache-commons-daemon /usr/local/openjdk21/bin/java:java/openjdk21
>> 
>> 
>> [18:44 empty dan /usr/ports/www/tomcat-devel] % git checkout 2fdb6fb
>> Previous HEAD position was d994e83b45c4 net-mgmt/ocsinventory-{server,ocsreports}: Update to 2.12.1
>> HEAD is now at 2fdb6fb45908 www/tomcat{85,9,101}: adjust rc.d script to support Java versions 20+
>> [18:44 empty dan /usr/ports/www/tomcat-devel] % make -V RUN_DEPENDS  jsvc:devel/apache-commons-daemon /usr/local/openjdk21/bin/java:java/openjdk21
>
> I suspect it's related to the problem reported here:
>
> https://lists.freebsd.org/archives/freebsd-ports/2023-October/004814.html
>
> It seems like when you checkout 5699269 your tree is moved to a point of 
> quarterly 2023Q4.  I see it here as remotes/freebsd/2023Q4~7
>
> Then those java commits are missing and it's not possible to satisfy 
> dependencies.

Good, I understand. As expected, much of the FreshPorts code exists to handle exceptions such as this. :) I had already coded for this but wanted to follow up so I understood why it failed.

Thank you.
-- 
  Dan Langille
  dan@langille.org