I often find myself using 3rd party libraries in my platformio projects and keep repeating a pattern of forking a repo, adding a library.json, and linking to my fork in
lib_deps. I also often find myself needing different library.json files for different pio envs and it starts getting unweildy.
The real behavior I would ideally want is to be able to specify a json manifest in the lib_deps. The manifest already includes the git repo for the library as well as custom build flags and source filters. It’s much easier for me to maintain multiple library manifests that each point to the same git repo but have different build e.g src filters for different envs.
This would make it significantly easier to work with libraries that don’t have pio manifest in them but I also find myself wanting this feature for libraries with pio support, e.g esp32-camera. This repo has a library.json which is missing cpp files in the srcFilter because they are platform dependent and different for esp32s2 vs s3. My only solution was to fork the repo, create a different branch per config, and link to different branches in the different lib_deps. This is a huge pain and this is a library that already has pio support!
Being able to link to a manifest would make everything simpler - much easier for me to include a few manifests in my codebase and avoid forks and multiple branches.
It feels like all the pieces for this already exist in pio which has an excellent dependency finder and library manager. I find myself using pio for native c++ projects with no embedded at all because of this. Is something like this on the roadmap at all?