Deva_Rishi: IF the library folder in the sketch book folder was top priority, we could at least have the option of overriding the auto library choices. As it sits it just makes the confusion worse.It is of course right next to the actual sketch folder, which does have top priority, so just a copy-paste away, but that does cause many duplicate files etc.
Some people really thought about it but unfortunately did not want it set up the same way as you.
And we come full circle.
After copy and pasting my library, what does the other libraries do when they find the one they depend on missing from the library folder?
As far as i know, the compiler will pick the files it needs from any source using the order, local sketch, core, arduino libraries, and sketch folder libraries and combine them into one code. (recently someone put an altered version of HardwareSerial.h in the sketch folder and that was selected over the original) s'pose you could do a small test to see if the dependencies work the way you want them to.
Willpatel_Kendmirez:
Is that "manual" as in book of words, or "manual" as distinct from automated
Well, I meant the latter but in this case both definitions apply.
Robin2:
A grand opportunity to force them to do a bit o' learnin'
True. However, "easy" isn't just about coddling the user. It also makes life better for the people providing support.
Deva_Rishi:
As far as i know, the compiler will pick the files it needs from any source using the order, local sketch, core, arduino libraries, and sketch folder libraries and combine them into one code. (recently someone put an altered version of HardwareSerial.h in the sketch folder and that was selected over the original) s'pose you could do a small test to see if the dependencies work the way you want them to.
There are a couple things that can cause "priority inversion":
The library with the best architecture match (as determined by the architectures field in the library's library.properties file vs. the name of the architecture folder of the hardware package for the selected board) gets priority. Explicit match > wildcard match > mismatch. If library.properties file is missing, that is considered a wildcard match.
The library with folder name matching the file name in the #include directive gets priority.