platformio/platformio-core

integrity.dat under libdeps seems to be order dependent?

Offen

#5.491 geöffnet am 05.08.2026

 (4 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)Python (791 Forks)batch import
help wantedwontfix

Repository-Metriken

Stars
 (7.329 Sterne)
PR-Merge-Metriken
 (Durchschn. Merge 109T 16h) (5 gemergte PRs in 30 T)

Beschreibung

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

Contributor Guide