1
0
mirror of https://github.com/arduino/library-registry.git synced 2025-11-23 03:22:23 +03:00
per1234 6cc8b40534 Only fail "Manage PRs" workflow on unexpected error
The "Manage PRs" GitHub Actions workflow processes pull requests submitted to the repository. It is intended to allow
completely automated submissions of libraries. The feedback mechanism used by the system is comments on the pull request
thread. These comments should provide all the necessary feedback about the process, including whatever is needed to
bring a submission into compliance in the event the automated checks find it to not meet the requirements.

From feedback provided by testers, we learned that they navigated to the workflow run logs provided by GitHub Actions
while trying to learn what the problem was with their submission.

The workflow run logs provide output from the internal workings of the system that is only of interest for developers
troubleshooting a malfunction of the system itself. We never intended to use them as a channel for communicating to the
regular users of the system. Users of the system may find them quite cryptic. Since this is an interface generated by
GitHub Actions, without much capability for customization, it would be quite difficult for us to improve their
readability for the normal user. Those efforts would also require an increase in the complexity of the workflow and make
it more difficult to maintain.

I think there are two possible paths a normal user would be likely to follow to the workflow logs while trying to
understand why their submission was not accepted:

- The check status UI shown at the bottom of the PR comment thread ("Some checks were not successful")
- Workflow run failure email notification ("Manage PRs: Some jobs were not successful: View workflow run")

These pathways are either less enticing or absent when a workflow run is successful.

Previously, there were two possible causes for a run of the "Manage PRs" workflow to fail:

- Submitted library did not meet the Library Manager requirements
- An unexpected error from one of the workflow steps

Since we already are using comments from the bot to communicate about the former, the workflow run failure status
indicators provided by GitHub Actions are superfluous. The latter only occurs under extraordinary and circumstances so
its effect on the user experience is not of concern.

So the way to improve the user experience is to configure the workflow to only fail on unexpected errors, only commenting
and blocking merge in the event of expected errors.
2021-07-18 03:55:17 -07:00

Arduino Library Manager list

This repository contains the list of libraries in the Arduino Library Manager index.

Table of Contents

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

  1. 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.
  2. 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
  3. Click the Fork this repository button.
  4. 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
  5. Click the Propose changes button.
  6. In the "Comparing changes" window that opens, click the Create pull request button.
  7. 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:

  1. Make the necessary fix in the library repository.
  2. Increment the version value in the library's library.properties file.
  3. 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.
  4. 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 make an issue report here: https://github.com/arduino/library-registry/issues?q=is%3Aissue

Description
No description provided
Readme 211 MiB
Languages
Markdown 100%