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

[package] wayland/all: incompatible with latest (1.52.0) Conan version #12722

Closed
dornbirndevelops opened this issue Aug 31, 2022 · 7 comments · Fixed by #12771
Closed

[package] wayland/all: incompatible with latest (1.52.0) Conan version #12722

dornbirndevelops opened this issue Aug 31, 2022 · 7 comments · Fixed by #12771
Labels
bug Something isn't working

Comments

@dornbirndevelops
Copy link
Contributor

Package and Environment Details

  • Package Name/Version: wayland/1.20.0
  • Conan version: conan 1.52.0

Conan profile

No response

Steps to reproduce

conan export recipes/wayland/all wayland/1.20.0@

Logs

Click to expand log
File "recipes/wayland/all/conanfile.py", line 5, in <module>
    from conan.tools.gnu.pkgconfigdeps.pc_files_creator import get_pc_files_and_content
ModuleNotFoundError: No module named 'conan.tools.gnu.pkgconfigdeps.pc_files_creator'; 'conan.tools.gnu.pkgconfigdeps' is not a package
@dornbirndevelops dornbirndevelops added the bug Something isn't working label Aug 31, 2022
@dornbirndevelops
Copy link
Contributor Author

incompatibility caused most likely with this feature:
conan-io/conan#11955

@franramirez688 do you have ideas how one could support <1.52.0 and the latest?

@SpaceIm
Copy link
Contributor

SpaceIm commented Aug 31, 2022

It was not part of official conan API and shouldn't have been imported in the first place in wayland recipe. But yes, let's see how to find a robust workaround.

I think PkgConfigDeps can allow to generate .pc files for tool_requires since conan 1.52.0, and it comes from conan-io/conan#11710 which actually is an issue created due to this fragile workaround in wayland recipe.

@franramirez688
Copy link
Contributor

@dornbirndevelops is, as @SpaceIm was saying, a workaround using some PkgConfigDeps internal functions which were not part of the public API.
In the next Conan 1.52, it has to be feasible to make it run without using any private function from PkgConfigDeps. After all, I'll be aware of the issue/recipe to double-check that it works.

@AndreyMlashkin
Copy link
Contributor

How it could come to this state? Don't you make a minimal test with conan export for each recipe in conan-center-index before releasing a new version of conan client?...

@jcar87
Copy link
Contributor

jcar87 commented Sep 1, 2022

Hi @AndreyMlashkin - the guidelines for importing tools from conan.tools are in the documentation: https://docs.conan.io/en/latest/reference/conanfile/tools.html, and every publicly available yyy tool is explicitly made available as conan.tools.xxx.yyy, and is documented as such. Anything that is any further levels down or not documented is not considered public API. This was also flagged by @franramirez688 on a related PR here: #11636 (comment). When releasing Conan, we go to great lengths to retain backwards compatibility of the publicly documented APIs.

I apologise that during the review process for the changes in the wayland recipe this was not flagged. Reviewers in conan-center-index deal with a high level of requests, and we try to do our best.

@jwillikers
Copy link
Contributor

We should be able to patch this until Conan Center starts using Conan 1.52. I know the xkbcommon package has to do a similar workaround, but it was done differently there.

@jwillikers
Copy link
Contributor

@AndreyMlashkin @dornbirndevelops This one's on me. I apologize for the disruption caused by the incompatibility. I've submitted a fix: #12771.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants