Description
Configuration
Operating system:
Win10 + VSCode + PIO
PlatformIO Version (platformio --version
):
6.1.11
Description of problem
The platformio.ini contains several environments. Every environment requires a different set of libraries, which are configured by lib_deps. The problem is that ALL dependencies are downloaded for every environment, means .pio/libdeps/<ENV> contains always all of them.
Steps to Reproduce
platformio.ini
[env:testA]
board = esp32doit-devkit-v1
board_build.filesystem = littlefs
platform = espressif32 @ ~6.5.0
framework = arduino
lib_deps =
A
[env:testB]
board = esp32doit-devkit-v1
board_build.filesystem = littlefs
platform = espressif32 @ ~6.5.0
framework = arduino
lib_deps =
B
lib/A/library.json
{
"name": "A",
"dependencies": [{
"owner": "makuna",
"name": "NeoPixelBus",
"version": "~2.7.3"
}]
}
lib/B/library.json
{
"name": "B",
"dependencies": [{
"owner": "bodmer",
"name": "TFT_eSPI",
"version": "~2.5.31"
}]
}
Actual Results
.pio/libdeps/testA/ folder contains NeoPixelBus and TFT_eSPI libraries
.pio/libdeps/testB/ folder contains NeoPixelBus and TFT_eSPI libraries
Expected Results
.pio/libdeps/testA/ folder contains ONLY NeoPixelBus library
.pio/libdeps/testB/ folder contains ONLY TFT_eSPI library
Notes
It seems LDF loops over every library in ./lib instead of following environment wise.