Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Don't error maintenance commands on missing library clone folder
The maintenance commands `libraries-repository-engine modify` and `libraries-repository-engine remove` are designed in a conservative manner where the operation is to be immediately halted and all affected data restored if any unexpected conditions are encountered. Previously, the absence of a library's "Git clone folder" targeted for deletion was considered such an unexpected condition. Investigation of some failures during the course of maintenance operations revealed that this folder may be absent under certain expected conditions. The reason is that the "sync" operation deletes the folder after a failed `git fetch` operation before trying a `git clone` of a fresh copy of the repository. If that retry fails, the result is that there is no longer a "Git clone folder" for that library on Arduino's server. So the absence of this folder should not be treated as cause for the maintenance command to fail. Instead, the command should warn the user of the situation and then carry on with the operation.
- Loading branch information