Skip to content

Use dedicated location for "built-in" libraries #1055

Closed
@per1234

Description

@per1234

Describe the request

Use a dedicated location for the "built-in" library installations, with a lower location priority than platform bundled libraries.

🙂 Library dependency resolution will match the behavior of Arduino IDE 1.x

Describe the current behavior

In order to allow users to get started with Arduino with the minimum amount of complexity, the Arduino IDE 1.x installation comes with a collection of fundamental Arduino libraries (e.g., Keyboard, Mouse, Servo) pre-installed. Even experienced users now expect these libraries to be available by default, and many tutorials (both official and 3rd party) have been written based on that assumption. So it is important that Arduino IDE 2.x also provide these libraries.

In order to simplify the Arduino IDE packaging process and ensure users are provided with the newest available, the Arduino Library Manager infrastructure is currently used to install the libraries the first time the Arduino IDE is started (#663).

Library Manager installs these libraries to the sketchbook folder. Libraries at this location have a higher "location priority" than they did when bundled with the Arduino IDE installation.

🙁 This priority increase can cause the "built-in" library to now be selected by the Arduino sketch build process in a case where a platform bundled library would have been selected when using Arduino IDE 1.x.

Arduino IDE version

2.0.0-rc7

Operating system

All

Operating system version

N/A

Additional context

This would also provide an alternative solution to #798

Issue checklist

  • I searched for previous requests in the issue tracker
  • I verified the feature was still missing when using the latest nightly build
  • My request contains all necessary details

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions