platformio/platformio-core

Silent failure when dependency path is incorrect in library.json

Open

#4,901 opened on Apr 19, 2024

View on GitHub
 (0 comments) (0 reactions) (0 assignees)Python (791 forks)batch import
help wantedpackage management

Repository metrics

Stars
 (7,329 stars)
PR merge metrics
 (Avg merge 109d 16h) (5 merged PRs in 30d)

Description

Configuration

Operating system: Windows

PlatformIO Version: 6.1.14

Description of problem

If you put this in a library.json file:

{
  "dependencies": {
    "nonexistent_lib_1": "symlink:../hfzehfzeiohize",
    "nonexistent_lib_2": "file:../hrfiohgeuibz"
  }
}

PlatformIO will happily tell you:

Library Manager: Installing symlink:../hfzehfzeiohize
Library Manager: Installing file:../hrfiohgeuibz

even though none of those paths exist. This makes tracking path issues painful.

Expected Results

I would expect:

Library Manager: Installing symlink:../hfzehfzeiohize
PackageException: Can not create a symbolic link for `../hfzehfzeiohize`, not a directory

or:

Library Manager: Installing symlink:../hfzehfzeiohize
VCSBaseException: VCS: Unknown repository type symlink:../hfzehfzeiohize

Contributor guide