Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Opposite override order for osdeps vs autobuild packages? #373

Open
moooeeeep opened this issue Mar 14, 2022 · 2 comments
Open

Opposite override order for osdeps vs autobuild packages? #373

moooeeeep opened this issue Mar 14, 2022 · 2 comments

Comments

@moooeeeep
Copy link
Contributor

In order to check out the overriding/precendence behavior of autoproj, I designed a simple buildconf configuration with two package sets that each define a package and an osdep with the same name.

I noticed output during aup that indicates overriding behavior, which seems counterintuitive to me:

WARN: osdeps definition for setuptools, previously defined in /opt/workspace/autoproj/p1/pkgs.osdeps overridden by /opt/workspace/autoproj/p2/pkgs.osdeps:
WARN:   resp. pip: setuptools==40.0.0
WARN:   and   pip: setuptools==41.0.0
WARN: my_package from /opt/workspace/autoproj/p2/packages.autobuild is overridden by the definition in /opt/workspace/autoproj/p1/packages.autobuild

In essence:

  • The osdep definition is taken from packge set p2, which is defined second in the buildconf manifest.
  • The autobuild package definition is taken from package set p1, which is defined first in the buildconf manifest.

As far as I am aware, this didn't cause any obvious errors for us. But just to be sure: is this the intended behavior?

@doudou
Copy link
Member

doudou commented Mar 14, 2022

It is the intended behavior, but I have to admit I never realized it was indeed very confusing.

Fixing it would require breaking backward compatibility.... Not sure what would be the best way forward.

@moooeeeep
Copy link
Contributor Author

moooeeeep commented Mar 23, 2022

Doesn't this break things if the packages actually require different versions of a dependency?

The package version selected from p1 would be incompatible to the osdep version selected from p2.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants