juergbi opened a new pull request, #1993:
URL: https://github.com/apache/buildstream/pull/1993

   The comparison function used to sort dependencies does not impose a total 
ordering. This means that the order of the sorted list depends on the order of 
inputs and implementation details of the sort algorithm.
   
   Python 3.13 changes the sort algorithm in a way that may affect the sorting 
of dependencies. This in turn affects the staging order and cache keys of 
elements.
   
   This commit embeds the list sort algorithm from Python 3.12.9 in BuildStream 
and uses that to sort dependencies. This restores cache key compatibility 
across Python versions despite the flaw of the comparison function.
   
   The comparison function is not modified at this point to prevent changes in 
staging order and cache keys on Python <= 3.12.
   
   Fixes #1988.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to