platformio/platformio-core

integrity.dat under libdeps seems to be order dependent?

開放

#5,491 建立於 2026年8月5日

 (4 則留言) (0 個反應) (0 位負責人)Python (791 個分叉)batch import
help wantedwontfix

倉庫指標

星標
 (7,329 顆星)
PR 合併指標
 (平均合併 109天 16小時) (30 天內合併 5 個 PR)

描述

I have been investigating an issue with our docker images whereby running

platformio pkg install 
platformio run

will cause the library dependencies to be reinstalled. From what I found, they can produce different orders in the resulting integrity.dat file.

In the platformio.ini, I have:

libdeps = 
    https://github.com/thomasfredericks/Bounce2#d744e0690f5b5d403f2847014fa1b16c72da9970
    solarcaratuva/boost-preprocessor@^1.77.0 

platformio pkg install creates an integrity.dat file with the same order:

https://github.com/thomasfredericks/Bounce2#d744e0690f5b5d403f2847014fa1b16c72da9970
solarcaratuva/boost-preprocessor@^1.77.0 

Whereas platformio run creates an integrity.dat file with a different ordering:

solarcaratuva/boost-preprocessor@^1.77.0
https://github.com/thomasfredericks/Bounce2#d744e0690f5b5d403f2847014fa1b16c72da9970

Changing the order of my libdeps to match the resolution order of platformio run fixes the problem for pkg install but I think they should could just sort the integrity.dat before checking for matches.

Version

PlatformIO Core, version 6.1.19

貢獻者指南