Skip to content

Library Dependency Finder prefers library storage built into framework over local library #1363

@borisneubert

Description

@borisneubert

Configuration

Operating system: seen both on Windows 10 and Linux (Ubuntu 17.10)

PlatformIO Version (platformio --version): 3.5.2b2

Description of problem

We have a newer version of a library locally in our project but the include in .gcc-flags.json takes the source code from the library storage built into framework

Steps to Reproduce

Add Arduino to the lib_deps= directive in .platformio:

[common]
lib_deps =
  https://github.com/esp8266/Arduino

Rename $HOME/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/FunctionalInterrupt.h or use version 1.5.0 of the Espressif 8266 platform instead of 1.6.0.

Include FunctionalInterrupt.h

Actual Results

FunctionalInterrupt.h is not found because the sources in $HOME/.platformio/packages/framework-arduinoespressif8266 are preferred.

Expected Results

According to the docs, the local copy should take precedence.

Additional info

We observe this issue for other parts of the Arduino framework as well. We spent hours and hours scratching our heads why certain issues with WiFi were present in our code which were definitively resolved in the most up-to-date code at GitHub.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions