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

Arch Migrator #92

Conversation

regro-cf-autotick-bot
Copy link
Contributor

This feedstock is being rebuilt as part of the aarch64/ppc64le migration.

Feel free to merge the PR if CI is all green, but please don't close it
without reaching out the the ARM migrators first at @conda-forge/arm-arch.

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.

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/autotick-bot/actions/runs/4015020698, please use this URL for debugging.

@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.

@h-vetinari
Copy link
Member

CC @mattip

@mattip
Copy link
Contributor

mattip commented Jan 26, 2023

whoohoo, thanks!

@mattip
Copy link
Contributor

mattip commented Jan 26, 2023

It seems there is some unsigned/signed inconsistency, the error is

home/conda/feedstock_root/build_artifacts/ray-packages_1674738710774/_build_env/bin/../\
     aarch64-conda-linux-gnu/sysroot/usr/include/bits/string3.h:51:33: warning: \
    'void* __builtin___memcpy_chk(void*, const void*, long unsigned int, long unsigned int)' 
    specified size between 18446744071562067968 and 18446744073709551615 exceeds maximum \
    object size 9223372036854775807 [-Wstringop-overflow=]

@mattip
Copy link
Contributor

mattip commented Jan 29, 2023

I think the upstream package builds with clang (llvm) CC=clang CXX=clang++-12.

@mattip
Copy link
Contributor

mattip commented Jan 29, 2023

I see that the rendered ci_support/*.yaml files have c_compiler: gcc. Is there a way to tell the recipe to use clang instead?

@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:

  • requirements: build: clang=12.01 must contain a space between the name and the pin, i.e. clang =12.01
  • requirements: build: clangxx=12.01 must contain a space between the name and the pin, i.e. clangxx =12.01

@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.

recipe/meta.yaml Outdated
Comment on lines 26 to 27
- {{ compiler('c') }}
- {{ compiler('cxx') }}
- clang =12.0.1
- clangxx =12.0.1
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AFAIU, we can't do it like that. We need the magic-jinja for the compiler to get the activation etc. right.

If you really need clang on linux (and I'm not sure we're ready for that, because we'd have to build against GCC's libstdcxx), then you should add something like to following to conda_build_config.yaml (and rerender)

c_compiler:                    # [linux]
  - clang                      # [linux]
c_compiler_version:            # [linux]
  - 14                         # [linux]
cxx_compiler:                  # [linux]
  - clangxx                    # [linux]
cxx_compiler_version:          # [linux]
  - 14                         # [linux]

CC @isuruf

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will back out the change. It did not help, the same error persists.

@mattip
Copy link
Contributor

mattip commented Feb 5, 2023

the failure has to do with cross-compilation. When I run the recipe on a native machine it creates the packages. For some reason it is creating 3 dashboard packages with different hashes, and ray-core also has a different hash:

ray-air-2.2.0-py39ha65689a_2.tar.bz2
ray-all-2.2.0-py39ha65689a_2.tar.bz2
ray-core-2.2.0-py39hadf7080_2.tar.bz2
ray-dashboard-2.2.0-py39h1e61b0b_2.tar.bz2
ray-dashboard-2.2.0-py39h3725854_2.tar.bz2
ray-dashboard-2.2.0-py39h3ae28c0_2.tar.bz2
ray-data-2.2.0-py39ha65689a_2.tar.bz2
ray-default-2.2.0-py39ha65689a_2.tar.bz2
ray-k8s-2.2.0-py39ha65689a_2.tar.bz2
ray-rllib-2.2.0-py39ha65689a_2.tar.bz2
ray-serve-2.2.0-py39ha65689a_2.tar.bz2
ray-train-2.2.0-py39ha65689a_2.tar.bz2
ray-tune-2.2.0-py39ha65689a_2.tar.bz2

@h-vetinari
Copy link
Member

For some reason it is creating 3 dashboard packages with different hashes

That's because it's building for 3 different nodejs versions.

@mattip
Copy link
Contributor

mattip commented Feb 5, 2023

the failure has to do with cross-compilation.

That is wrong, the build is running on an aarch64 machine. It seems to be inside a quay.io/condaforge/linux-anvil-aarch64 docker image running Ubuntu 20.04. The machine I built on is running openeuler (a centos clone).

@mattip
Copy link
Contributor

mattip commented Feb 7, 2023

Comparing the logs of the successful local build to the failed CI one, I see this notice in the failed one that does not appear in the local one:

    ############################
    # Package would be ignored #
    ############################
    Python recognizes 'ray.includes' as an importable package,
    but it is not listed in the `packages` configuration of setuptools.

    'ray.includes' has been automatically added to the distribution only
    because it may contain data files, but this behavior is likely to change
    in future versions of setuptools (and therefore is considered deprecated).

    Please make sure that 'ray.includes' is included as a package by using
    the `packages` configuration field or the proper discovery methods
    (for example by using `find_namespace_packages(...)`/`find_namespace:`
    instead of `find_packages(...)`/`find:`).

    You can read more about "package discovery" and "data files" on setuptools
    documentation page.

It seems the local build picked up setuptools 67 vs. setuptools 66 for the last run here. Maybe re-running CI will help?

@mattip
Copy link
Contributor

mattip commented Feb 7, 2023

@conda-forge-admin please rerender

@github-actions
Copy link
Contributor

github-actions bot commented Feb 7, 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/ray-packages-feedstock/actions/runs/4117970251.

@mattip
Copy link
Contributor

mattip commented Feb 7, 2023

@conda-forge-admin please restart ci

@mattip
Copy link
Contributor

mattip commented Feb 8, 2023

weird. Now the installed packages are identical, but that setuptools message still appears.

@mattip mattip mentioned this pull request Feb 9, 2023
@mattip
Copy link
Contributor

mattip commented Feb 9, 2023

My bazel-config foo is not strong enough to get the compilation of protobuf to ignore this warning. I tried adding this to bazelrc but it did not work.

# Ignore warning when building message_lite.cc (for aarch64)
build --per_file_copt="message_lite\.cc$@-Wno-error=stringop-overflow"

@mattip mattip mentioned this pull request Feb 26, 2023
3 tasks
@mattip mattip added the bot-rerun Instruct the bot to retry the PR label Feb 26, 2023
@regro-cf-autotick-bot
Copy link
Contributor Author

Due to the bot-rerun label I'm closing this PR. I will make another one as appropriate. This was generated by https://github.com/regro/cf-scripts/actions/runs/4273937255

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bot-rerun Instruct the bot to retry the PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants