High quality feedback via GitHub issues is a very valuable contribution to the project. It is important to make the issue creation and management process as efficient as possible for the contributors, maintainers, and developers. Issue templates are helpful to the maintainers and developers because it establishes a standardized framework for the issues and encourages the contributors to provide the essential information. The contributor is now presented with a web form when creating an issue. In the case of the library registration maintenance requests, these are for the specific information the registry maintainers require. For more general bug reports or feature requests, they use multi-line input fields that have the same formatting, preview, and attachment capabilities as the standard GitHub Issue composer, in addition to other form components such as menus and checkboxes where appropriate. The use of this form-based system should provide a better experience for the contributors and library maintiners while also resulting in higher quality issues by establishing a standardized framework for the issues and encouraging contributors to provide the essential information. A template chooser allows the contributor to select the appropriate template type, redirects support requests to the appropriate communication channels via "Contact Links", and provides a prominent link to security policy to guide any vulnerability disclosures. The clear separation of the types of issues encourages the reporter to fit their report into a specific issue category, resulting in more clarity. Automatic labeling according to template choice allows the reporter to do the initial classification.
Arduino Library Manager list
This repository contains the list of libraries in the Arduino Library Manager index.
Table of Contents
- Frequently asked questions
- Adding a library to Library Manager
- Changing the URL of a library already in Library Manager
- Removing a library from Library Manager
- Report a problem with Library Manager
Frequently asked questions
For more information about Arduino Library Manager and how the index is maintained, please see the FAQ.
Adding a library to Library Manager
If you would like to make a library available for installation via Library Manager, just submit a pull request that adds the repository URL to the list. You are welcome to add multiple libraries at once.
See the instructions below for detailed instructions on how to do this via the GitHub web interface.
Instructions
- You may want to first take a look at the requirements for admission into the Arduino Library Manager index. Each submission will be checked for compliance before being accepted.
- Open this link to fork this repository and edit the list via the GitHub web interface: https://github.com/arduino/library-registry/edit/main/repositories.txt
- Click the Fork this repository button.
- Add the library repository's URL to the list (it doesn't matter where in the list). This should be the URL of the repository home page. For example:
https://github.com/arduino-libraries/Servo
- Click the Propose changes button.
- In the "Comparing changes" window that opens, click the Create pull request button.
- In the "Open a pull request" window that opens, click the Create pull request button.
The library will be automatically checked for compliance as soon as the pull request is submitted. If no problems were found, the pull request will be immediately merged and the library will be available for installation via Library Manager within a day's time.
If any problems are found, a bot will comment on the pull request to tell you what is wrong. The problem may be either with your pull request or with the library.
If the problem is with the pull request:
Edit the file in the
branch
you submitted the pull request from in your fork of the arduino/library-registry
repository, then commit.
Doing this will update the pull request and cause the automated checks to run again.
If the problem is with the library:
- Make the necessary fix in the library repository.
- Increment the
version
value in the library's library.properties file. - Create a release or tag. The Library Manager index always uses tagged versions of the libraries, so even if the development version of the library is compliant, it can't be accepted until the latest release or tag is compliant. Alternatively, you can redo the existing release/tag if you prefer.
- Comment on your pull request here in the
arduino/library-registry
repository, mentioning @ArduinoBot in the comment. Doing this will cause the automated check to run again.
Changing the URL of a library already in Library Manager
Submit a pull request that changes the URL as desired in repositories.txt. This can be done by following the instructions above.
Since this type of request must be reviewed by a human maintainer, please write an explanation in the pull request description, making it clear that the URL is intentionally being changed.
Removing a library from Library Manager
Submit a pull request that removes the URL from repositories.txt. This can be done by following the instructions above.
Since this type of request must be reviewed by a human maintainer, please write an explanation in the pull request description, making it clear that the URL is intentionally being removed.
Report a problem with Library Manager
First, please take a look at the FAQ. If a library release is missing from Library Manager, it is usually because it was not compliant with all the requirements listed in that document.
This repository is not an appropriate place to request support or report problems with a library. Check the library's own documentation for instructions or ask on the Arduino Forum.
If the problem is about something else, please submit an issue report here.