platformio/platformio-core

integrity.dat under libdeps seems to be order dependent?

Ouverte

#5 491 ouverte le 5 août 2026

 (4 commentaires) (0 réaction) (0 personne assignée)Python (791 forks)batch import
help wantedwontfix

Métriques du dépôt

Stars
 (7 329 étoiles)
Métriques de merge PR
 (Merge moyen 109j 16h) (5 PRs mergées en 30 j)

Description

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

Guide contributeur