Duplicate packages in Include library for Aruino SDK

Hi,

On my Mac (High Sierra) I see duplicate menu entries for some packages under Sketch > Include Library. After the first installation (1.8.5) and after updating all libraries I got 3 entries of Servo. I then cleared everything under ~/Library/Arduino15, but after updating libraries again, I now see doubled “SD”.

Anyone have any idea what is going on?

See attachment for screenshot.

Just reproduced it - I remove all SD packages in the Library folder. The IDE prompts me to Update available packages and UI shows SD package has pending update. I click update, 1.2.0 installs, but the package stays in the Update package UI.

kamenlitchev:
I now see doubled "SD".

The cause of this is that in the most recent version of the SD library the architectures value in the library metadata was changed (architectures in library.properties inaccurate · Issue #31 · arduino-libraries/SD · GitHub), which causes the Arduino IDE to consider them to be two different libraries. You'll notice you also have two different SD entries in the File > Examples menu.

My first impulse is to report this to the developers as a bug but now I'm wavering a little regarding whether this could be the intended behavior. The fact is that the library name is irrelevant from a programming standpoint since it's the filenames in the library and the library folder that matter and the library name may or may not be the same as either.

kamenlitchev:
UI shows SD package has pending update. I click update, 1.2.0 installs, but the package stays in the Update package UI.

That is definitely a bug, and one I've been trying to get the Arduino developers to take seriously for years:

I did comment about the change in the SD library triggering that long standing bug:

maybe it will finally get some attention on it but I'm not optimistic since the problem was reported with the Arduino SAMD Boards' USBHost library over a year ago:

by one of the Arduino team no less and there has been no action even though in that case I've explained a workaround that would take maybe 30 seconds to implement. But the important thing would be for them to actually fix the underlying bug in Library Manager.

Thank you very much! Reallly detailed and helpful expmanation.