`lib_compat_mode` does NOT make a difference for `lib_deps`?

How I understand it now:

  • lib_deps specifies the libs to be downloaded
  • the libs have a config specifying what platforms/frameworks they are compatible with
  • lib_compat_mode specifies how strict should be LDF to include the already downloaded libs

Da fk.

Why would anyone want to download the lib if it cannot be used later anyway?

The WTF I stumbled upon right now:

  1. lib_deps: https://github.com/bblanchon/ArduinoJson.git#5.x
  2. Cool, the dependency is downloaded, everything compiles, nice.
  3. #include "ArduinoJson.h" – KABOOM, header not found, WTF.
  4. Search the docs, pull your hairs out ??
  5. ArduinoJson/library.json at 5.x · bblanchon/ArduinoJson · GitHub – requires Arduino framework – I’m trying to use it on native platform, without Arduino framework
  6. Now the 2 choices:
  • a.) lib_compat_mode: off – will allow for ArduinoJson.h to be included
  • b.) it would not work anyway, as it really requires Arduino fw, so my time was just wasted

How it should be (IMHO):

  1. lib_deps: https://github.com/bblanchon/ArduinoJson.git#5.x
  2. KABOOM → the lib is not compatible with my platform/framework settings
  3. No time wasted, thank you very much :wink:

What would be the use case to include an incompatible lib anyway o.O

Should I make an issue on GH or am I wrong in here?