Sub-dependencies in libraries specified in lib_deps being automatically downloaded to root lib_deps folder

Apologies if this is a noob question. Project in question is here:

This didn’t happen before, at least not that I am aware of, but some of the libraries I’ve specified in lib_deps, have had some of their own dependencies downloaded directly to the lib_deps folder. Ideally I just want it to download the library itself, and keep it contained as such.

If you open the project above into vis studio, it will start automatically downloading them into .pio\libdeps\esp32dev

I have a feeling this is causing some issues with the build overall, since the project above compiled without issues until I revisited it just recently.

Can anyone tell me how I can prevent this from happening? Or am I being a big dummy

This is normal. All library dependencies, whether directly referenced or whether they are subdependencies of some library, are downloaded there.

You normally also don’t want to push the .pio temp folder into a repository – you garuantee compilation by fixating the platform version (espressif32@…) and library versions. You didn’t do the first point, which allowed an update to Arduino-ESP32 2.0.x which broke the older OneWire version specified in lib_deps and present in .pio\libdeps.

In any case, let’s just get the project up and compiling again. I’ve filed a pull request at Fix project compilation, add CI by maxgerhardt · Pull Request #1 · idorurez/weather_station · GitHub which fixes the platformio.ini and instructs the Github CI to build your project for verification.

Wow, this is beyond any help I’ve ever had! Thank you so much for the clarification, and the build yaml (I didn’t even know this was possible). I’ve went ahead and added /.pio to .gitignore.

In the future I’ll set the platform version on my other projects too.

It’s compiling as expected now!

Thank you!!!