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

[bot-automerge] gz-msgs v10_10.0.0 #16

Merged

Conversation

regro-cf-autotick-bot
Copy link
Contributor

It is very likely that the current package version for this feedstock is out of date.

Checklist before merging this PR:

  • Dependencies have been updated if changed: see upstream
  • Tests have passed
  • Updated license if changed and license_file is packaged

Information about this PR:

  1. Feel free to push to the bot's branch to update this PR if needed.
  2. The bot will almost always only open one PR per version.
  3. The bot will stop issuing PRs if more than 3 version bump PRs generated by the bot are open. If you don't want to package a particular version please close the PR.
  4. If you want these PRs to be merged automatically, make an issue with @conda-forge-admin,please add bot automerge in the title and merge the resulting PR. This command will add our bot automerge feature to your feedstock.
  5. If this PR was opened in error or needs to be updated please add the bot-rerun label to this PR. The bot will close this PR and schedule another one. If you do not have permissions to add this label, you can use the phrase @conda-forge-admin, please rerun bot in a PR comment to have the conda-forge-admin add it for you.

Pending Dependency Version Updates

Here is a list of all the pending dependency version updates for this repo. Please double check all dependencies before merging.

Name Upstream Version Current Version
gz-msgs 10_10.0.0 Anaconda-Server Badge

Dependency Analysis

We couldn't run dependency analysis due to an internal error in the bot, depfinder, or grayskull. :/ Help is very welcome!

This PR was created by the regro-cf-autotick-bot. The regro-cf-autotick-bot is a service to automatically track the dependency graph, migrate packages, and propose package version updates for conda-forge. Feel free to drop us a line if there are any issues! This PR was generated by https://github.com/regro/cf-scripts/actions/runs/6359223655, please use this URL for debugging.

@traversaro
Copy link
Contributor

traversaro commented Sep 30, 2023

I did not consider the changes necessary to adapt gazebosim/gz-msgs#368 to support cross-compilation (required for osx-arm64 builds), this may take some time.

@github-actions
Copy link
Contributor

Hi! This is the friendly conda-forge automerge bot!

It appears that not all commits to this PR were made by the bot. Thus this PR is not being automatically merged. Please add the automerge label again (or ask a maintainer to do so) if you'd like to enable automerge again!

@traversaro
Copy link
Contributor

traversaro commented Sep 30, 2023

I did not consider the changes necessary to adapt gazebosim/gz-msgs#368 to support cross-compilation (required for osx-arm64 builds), this may take some time.

Now things are more complex as we need to:

  • Code generation is actually done via a Python script, so we need to make sure to have a Python script in the host, and that we override Python3::Interpreter to point to the host interpreter
  • Make sure that we override protobuf::protoc to point to the host interpreter
  • Make sure that we override the gz-msgs plugin to point to the host one

All of this does not need just to be done for gz-msgs10, but also for the downstream libraries that generate code via gz-msgs10's CMake macros. Probably the trick used in https://github.com/conda-forge/opencv-feedstock/blob/e9bbcf9e1e7ddf30d6a9d0df63852dcc84fdb95b/recipe/patches_opencv/0004-fix-detection-for-protobuf-23.x.patch#L4 could be useful also in this context.

@traversaro
Copy link
Contributor

Another thing to handle is the Python dependency on protobuf (that is different from the C++ dependency on libprotobuf), see protocolbuffers/protobuf#11123 .

@conda-forge-webservices
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@traversaro
Copy link
Contributor

traversaro commented Oct 3, 2023

Given the specific structure of the Python bindings of gz-msgs (that are basically a pure Python library) and the fact that also the CMake functions installed by the CMake C++ project require Python at runtime, in the end I decided to create the usual packages:

  • libgz-msgs10 : C++ library
  • gz-msgs10-python : Python library
  • gz-msgs10 : Generic meta-package that installs all gz-msgs10 packages

The main difference is that all the files (including Python libraries) are all stored in libgz-msgs10, that also run depends on python. The main difference of gz-msgs10-python is that also run depends on protobuf, and that does not have any run_exports.
The reason we can do that here is that we do not need to create a different version of gz-msgs10-python for each Python version, as the generated Python libraries are pure Python, not bindings to any compiled version of a library.

@traversaro
Copy link
Contributor

Given the specific structure of the Python bindings of gz-msgs (that are basically a pure Python library) and the fact that also the CMake functions installed by the CMake C++ project require Python at runtime, in the end I decided to create the usual packages:

* `libgz-msgs10` : C++ library

* `gz-msgs10-python` : Python library

* `gz-msgs10` : Generic meta-package that installs all gz-msgs10 packages

The main difference is that all the files (including Python libraries) are all stored in libgz-msgs10, that also run depends on python. The main difference of gz-msgs10-python is that also run depends on protobuf, and that does not have any run_exports. The reason we can do that here is that we do not need to create a different version of gz-msgs10-python for each Python version, as the generated Python libraries are pure Python, not bindings to any compiled version of a library.

This does not work: to install Python as part of a C++ package, we need to specify the install director that is <install_prefix>/lib/pythonMAJ.MIN. So to have a package that does not depend on the Python version we need to create it explicitly

@conda-forge-webservices
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.

Here's what I've got...

For recipe:

  • The outputs section contained an unexpected subsection name. noarch is not a valid subsection name.

@conda-forge-webservices
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@traversaro
Copy link
Contributor

This does not work: to install Python as part of a C++ package, we need to specify the install director that is <install_prefix>/lib/pythonMAJ.MIN. So to have a package that does not depend on the Python version we need to create it explicitly

Ok, I think I know reached a good point after a lot of iterations: creating Python and C++ packages distinctively, without trying to reuse the build directly as anyhow the build and host environment are re-created, and so the path of the compiler and other tools change.

@traversaro
Copy link
Contributor

@conda-forge-admin please rerender

1 similar comment
@traversaro
Copy link
Contributor

@conda-forge-admin please rerender

@github-actions
Copy link
Contributor

github-actions bot commented Oct 3, 2023

Hi! This is the friendly automated conda-forge-webservice.

I tried to rerender for you, but it looks like there was nothing to do.

This message was generated by GitHub actions workflow run https://github.com/conda-forge/gz-msgs-feedstock/actions/runs/6398726440.

@traversaro
Copy link
Contributor

@conda-forge-admin please rerender

@github-actions
Copy link
Contributor

github-actions bot commented Oct 4, 2023

Hi! This is the friendly automated conda-forge-webservice.

I tried to rerender for you, but it looks like there was nothing to do.

This message was generated by GitHub actions workflow run https://github.com/conda-forge/gz-msgs-feedstock/actions/runs/6402701658.

@traversaro
Copy link
Contributor

@conda-forge-admin please rerender

@github-actions
Copy link
Contributor

github-actions bot commented Oct 4, 2023

Hi! This is the friendly automated conda-forge-webservice.

I tried to rerender for you, but it looks like there was nothing to do.

This message was generated by GitHub actions workflow run https://github.com/conda-forge/gz-msgs-feedstock/actions/runs/6402753697.

@traversaro
Copy link
Contributor

@conda-forge-admin please rerender

@traversaro
Copy link
Contributor

@conda-forge-admin please rerender

@traversaro traversaro added the automerge Merge the PR when CI passes label Oct 4, 2023
@github-actions github-actions bot removed the automerge Merge the PR when CI passes label Oct 4, 2023
@github-actions
Copy link
Contributor

github-actions bot commented Oct 4, 2023

Hi! This is the friendly conda-forge automerge bot!

Commits were made to this PR after the automerge label was added. For security reasons, I have disabled automerge by removing the automerge label. Please add the automerge label again (or ask a maintainer to do so) if you'd like to enable automerge again!

@traversaro
Copy link
Contributor

Yesterday everything was working, now ppc64le and aarch64 builds fail with:

INFO:conda_build.build:Packaging libgz-msgs10
Reloading output folder: /home/conda/feedstock_root/build_artifacts
Traceback (most recent call last):
  File "/opt/conda/bin/conda-mambabuild", line 10, in <module>
    sys.exit(main())
  File "/opt/conda/lib/python3.10/site-packages/boa/cli/mambabuild.py", line 256, in main
    call_conda_build(action, config)
  File "/opt/conda/lib/python3.10/site-packages/boa/cli/mambabuild.py", line 228, in call_conda_build
    result = api.build(
  File "/opt/conda/lib/python3.10/site-packages/conda_build/api.py", line 180, in build
    return build_tree(
  File "/opt/conda/lib/python3.10/site-packages/conda_build/build.py", line 3078, in build_tree
    packages_from_this = build(metadata, stats,
  File "/opt/conda/lib/python3.10/site-packages/conda_build/build.py", line 2313, in build
    environ.create_env(m.config.host_prefix, host_actions, env='host',
  File "/opt/conda/lib/python3.10/site-packages/conda_build/environ.py", line 1052, in create_env
    display_actions(actions, index)
  File "/opt/conda/lib/python3.10/site-packages/conda/exports.py", line 225, in display_actions
    actions["LINK"] = [index[d] for d in actions["LINK"]]
  File "/opt/conda/lib/python3.10/site-packages/conda/exports.py", line 225, in <listcomp>
    actions["LINK"] = [index[d] for d in actions["LINK"]]
KeyError: Dist(channel='conda-forge', dist_name='ca-certificates-2023.7.22-hcefe29a_0', name='ca-certificates', fmt='.conda', version='2023.7.22', build_string='hcefe29a_0', build_number=0, base_url=None, platform=None)

@traversaro
Copy link
Contributor

traversaro commented Oct 5, 2023

Let's try to re-render.

@conda-forge-admin please rerender

conda-forge-webservices[bot] and others added 2 commits October 5, 2023 07:34
@traversaro
Copy link
Contributor

@conda-forge-admin please rerender

conda-forge-webservices[bot] and others added 2 commits October 5, 2023 07:38
@traversaro
Copy link
Contributor

Let's try going back to emulation.

@traversaro
Copy link
Contributor

@conda-forge-admin please rerender

@traversaro traversaro merged commit f4e6e7d into conda-forge:main Oct 5, 2023
7 checks passed
@regro-cf-autotick-bot regro-cf-autotick-bot deleted the 10_10.0.0_h60b3c7 branch October 5, 2023 16:14
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

Successfully merging this pull request may close these issues.

2 participants