idf-component-manager icon indicating copy to clipboard operation
idf-component-manager copied to clipboard

Sub components in managed lib cause errors (PACMAN-1066)

Open malachib opened this issue 10 months ago • 2 comments

The Component Manager version

2.1.1

ESP-IDF Version

v5.3.2

python Version

3.11.2

Operating System

Debian x64

Browser (for https://components.espressif.com Issues)

Chrome

Description

I have a use case, say 3 libraries:

  • shared
  • lib1
  • lib2

lib1 and lib2 both consume shared (as if shared were an sdk) I would like to consume all 3 of these under the banner of one managed component.

A crude comparison would be the usage of esp_lcd component as contained in esp-idf repository.

If done locally via a path specified in idf_component.yml, I am able to do so If done remotely (as we typically do with esp components) via git: I get this error:

ERROR: The "path" field in the manifest file
"/tmp/tmp8jpiou7b/src/PGESP-74/managed/components/lib1/idf_component.yml"
  does not point to a directory.  You can safely remove this field from the
  manifest if this project is an example copied from a component repository.

To Reproduce

Issue is reproducible and observable in my proof of concept area here:

PGESP-74

In particular, app_remote exhibits the issue while app_local does not.

If more exposition is required, please let me know.

Expected behaviour

I expect to consume a managed component and gain access to contained components also present in its repository.

Additional info

I am experimenting with the notion of a "meta" component which grabs everything. I am not married to that approach, it just felt the most viable.

The broader context for this is a graphics library with a core and then support drivers. I want to pull in the core and also the (optional) support drivers in one fell swoop using esp component manager.

I have checked existing issues and online Documentation

  • [x] I confirm I have checked existing issues and online Documentation.

malachib avatar Feb 10 '25 16:02 malachib

Hello @malachib I was able to reproduce your issue, however, the git dependency with local dependencies is the case we didn't cover well through the initial design. We will discuss possible solutions and I'll update this issue.

kumekay avatar Feb 18 '25 20:02 kumekay

Yes please share your thinking, and great work on the component system in general by the way!

malachib avatar Feb 21 '25 00:02 malachib