platformio/platformio-core

integrity.dat under libdeps seems to be order dependent?

Aberta

#5.491 aberto em 5 de ago. de 2026

 (4 comentários) (0 reação) (0 responsável)Python (791 forks)batch import
help wantedwontfix

Métricas do repositório

Stars
 (7.329 estrelas)
Métricas de merge de PR
 (Mesclagem média 109d 16h) (5 fundiu PRs em 30d)

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

Guia do colaborador