-
-
Notifications
You must be signed in to change notification settings - Fork 7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Library reference pages may list incompatible boards in the compatibility list #11871
Comments
I suspect this list is autogenerated from the "architecture = avr" or so in the library.properties. I don't think libraries can explicitly state compatibility with some boars, but not others, so this should probably be fixed in the description instead (and looking at that page, the "compatibility note" even already does that, though it might be a bit more specific maybe). |
Hi @sterretjeToo. @matthijskooijman already answered while I was writing, but I'll post anyway in case there is a little bit of additional information: The library reference pages like https://www.arduino.cc/reference/en/libraries/keyboard/ are automatically generated for all the libraries in the Arduino Library Manager based on the information in their The "Compatibility" list on the reference pages is based on the As in this case, a library might require capabilities that are not provided by all boards of that architecture. There is no machine readable data that would allow the generator to understand this so boards that are incompatible with the library may be listed in the reference page. There has been some internal discussion about how the library metadata system might be expanded to indicate board compatibility, but for now we settled on warning the reader about the situation via the "Compatibility note" on the reference page:
|
Unfortunately that note does not reveal anything to the beginner that consults the page. Please explain how somebody is to know what that specific hardware is? |
The note has since been changed to one that is even more vague and cryptic, as well as being easier to overlook. It now says:
The note is inaccurate since the list can contain boards for which the library will not compile. For example, it claims that the Keyboard library can be compiled for the UNO R3, classic Nano, and Mega boards: |
https://www.arduino.cc/reference/en/libraries/keyboard/
Arduino Uno/Mega/Nano are included in the compatibility list even though they are not compatible with the Keyboard library.
Additional context
Additional reports
The text was updated successfully, but these errors were encountered: