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

try qt6-main #320

Closed
wants to merge 42 commits into from
Closed

try qt6-main #320

wants to merge 42 commits into from

Conversation

looooo
Copy link
Contributor

@looooo looooo commented Dec 17, 2023

Checklist

  • Used a personal fork of the feedstock to propose changes
  • Bumped the build number (if the version is unchanged)
  • Reset the build number to 0 (if the version changed)
  • Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
  • Ensured the license file is being packaged.

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

@looooo
Copy link
Contributor Author

looooo commented Dec 24, 2023

for osx-arm64 add this to the build-script:

if [[ "${target_platform}" =~ osx-arm64 ]]; then
    rm -f "${PREFIX}/lib/qt6/moc"
    ln -s "${BUILD_PREFIX}/lib/qt6/moc" "${PREFIX}/lib/qt6/moc"
    
    # Additional debugging information
    echo "Adjusted Qt tools for osx-arm64 with build variant qt6"
    echo "Removed: ${PREFIX}/lib/qt6/moc"
    echo "Linked to: ${BUILD_PREFIX}/lib/qt6/moc"
else
    echo "Skipping Qt tools adjustment. Target platform: ${target_platform}, Build variant: $build_variant"
fi

osx-64:

ld: framework not found Metal

@looooo
Copy link
Contributor Author

looooo commented Dec 25, 2023

@conda-forge/core build: -skipis here for me not working. any ideas? I would like to keep the build matrix small and only build for py>311
additional the osmesa and egg variants are not needed as these builds are not qt dependent (TODO).

also I would like to know if we can upload with the label qt6 (currently it is set to vtk_qt6) but I guess having a qt6 label is more convenient as this can be used for more packages...

recipe/meta.yaml Outdated
@@ -16,7 +16,7 @@
# otherwise it won't be correct in the final build.

package:
name: vtk
name: vtk_qt6
Copy link
Contributor

Choose a reason for hiding this comment

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

Is it safe to install both vtk and vtk_qt6 at the same time? If not you will need to enforce that with a mutually exclusive package. Is uggest you leave the package name the samr

Copy link
Contributor

Choose a reason for hiding this comment

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

sorry for the noise on this one, this was the meta package name.

@hmaarrfk
Copy link
Contributor

@conda-forge-admin please rerender

@conda-forge-webservices
Copy link
Contributor

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

I was trying to look for recipes to lint for you, but it appears we have a merge conflict.
Please try to merge or rebase with the base branch to resolve this conflict.

Please ping the 'conda-forge/core' team (using the @ notation in a comment) if you believe this is a bug.

@hmaarrfk
Copy link
Contributor

can you rebase and remove the rerendering comits

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

@looooo
Copy link
Contributor Author

looooo commented Dec 26, 2023

@hmaarrfk what do you think about adding a qt6 label to the packages and use a new branch?

@hmaarrfk
Copy link
Contributor

why? just rip off the bandaid tbh, it is very confusing to constantly tell people that they need to use a specific label or branch.

If you want to tell people to use a specific label, then you might as well just build our own channel (essentially equivalent) and keep it as updated as you want. It works on a small scale.

I think a better solution would be to update to 9.3 and then users can pin to to 9.2 for "qt5" and "9.3" for qt6.

Qt6, with the exception of qt-webengine, has been doing quite well.

@looooo
Copy link
Contributor Author

looooo commented Dec 26, 2023

why? just rip off the bandaid tbh, it is very confusing to constantly tell people that they need to use a specific label or branch.

I just wanted to not introduce troubles for packages depending on qt5 and vtk. But I am happy to have it directly in conda-forge.

I think a better solution would be to update to 9.3 and then users can pin to to 9.2 for "qt5" and "9.3" for qt6.

sounds good to me.

@hmaarrfk
Copy link
Contributor

I don't really know a way to avoid the troubles.

My attempt is to make an easy version cutoff that people that need old can still use.

It is really hard to use build strings for this since build strings are somewhat adhoc

Copy link
Contributor

github-actions bot commented Jun 1, 2024

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

I tried to rerender for you but ran into some issues. Please check the output logs of the latest webservices GitHub actions workflow run for errors. You can also ping conda-forge/core for further assistance or you can try rerendeing locally.

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

@looooo
Copy link
Contributor Author

looooo commented Jun 1, 2024

@conda-forge/core is this rerendering issue known?

@@ -32,13 +32,15 @@ source:
build:
number: {{ build }}
string: {{ build_string }}
skip: true # [py<312]
Copy link
Contributor

Choose a reason for hiding this comment

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

You really want to skip all but python 3.12???

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This line should skip all python versions smaller than 3.12. Just to prevent building the whole build matrix.

Copy link
Contributor Author

@looooo looooo Jun 2, 2024

Choose a reason for hiding this comment

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

this rerendering issue also occurs if I use the conda-forge/main branch of the vtk-feedstock.

Copy link
Contributor

Choose a reason for hiding this comment

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

yeah i saw some other strange rendering things yesterday... i had to use the bot and not local.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

it happens to me on osx-arm, linux-aarch64 and with the bot.

Copy link
Contributor

Choose a reason for hiding this comment

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

Yeah. I noticed. I don't have a clear answer

Copy link
Contributor Author

Choose a reason for hiding this comment

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

conda-smithy 3.32.0 worked for me by not doing the version check. Version 3.33 and 3.34 have this issue.

@looooo
Copy link
Contributor Author

looooo commented Jun 2, 2024

@conda-forge-admin, please rerender

Copy link
Contributor

github-actions bot commented Jun 2, 2024

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

I tried to rerender for you but ran into some issues. Please check the output logs of the latest webservices GitHub actions workflow run for errors. You can also ping conda-forge/core for further assistance or you can try rerendeing locally.

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

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

I do have some suggestions for making it better though...

For recipe:

  • In your conda_build_config.yaml, please change the name of MACOSX_DEPLOYMENT_TARGET, to c_stdlib_version!

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

@looooo
Copy link
Contributor Author

looooo commented Jun 2, 2024

ppc64le fails with:

Encountered problems while solving:
  - nothing provides requested proj 9.4.0.*

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Jun 2, 2024

maybe you have to skip it:
conda-forge/proj.4-feedstock#143

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Jun 2, 2024

out of curiosity, why do you not want to build ffmpeg 6?

@@ -32,13 +32,16 @@ source:
build:
number: {{ build }}
string: {{ build_string }}
skip: true # [py<312]
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
skip: true # [py<312]
skip: true # [ffmpeg == 6]
skip: true # [py<312]

I think this should skip ffmpeg6 for you, but you should be able to build with both.

@looooo
Copy link
Contributor Author

looooo commented Jun 3, 2024

out of curiosity, why do you not want to build ffmpeg 6?

keep the build-matrix smaller. My goal is to provide freecad builds for qt6. I think it's best to do this first via the anaconda.org freecad organization. I have the fear that qt6 is making things a little bit messy. Or is there a proposal how to deal with qt6 without introducing too much issues for conda-forge?

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Jun 3, 2024

you can skip it if you want. but ffmpeg7 is quite new, and many projects don't always support it right off the bat.

you can add a skip: true # [ffmpeg == '6'] or something like that and rerender.

or just build the two and forget about it ;)

@looooo
Copy link
Contributor Author

looooo commented Jun 3, 2024

@hmaarrfk I just looked into setting up azure for my personal repo, but I am a bit lost (everything seems to have changed there). What do you think about setting up a qt6 branch for the vtk-feedstock and publish the builds to a qt6-label?

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Jun 3, 2024

I would not setup a branch unless it has a different version number for VTK.

It increases the chance of a clash.

I've been using qt6 for a while now, i think it is OK.

i would keep it simple for yourself.

Azure kinda broke my personal repo workflow, need time to get it back up and running.

@looooo
Copy link
Contributor Author

looooo commented Jun 3, 2024

@hmaarrfk so there is nothing special needed for qt6 (for example renaming the builds as we did here: https://github.com/conda-forge/soqt-feedstock/blob/main/recipe/meta.yaml#L1L8)?

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Jun 3, 2024

you added a constraint since the two packages clash:

https://github.com/conda-forge/soqt-feedstock/blob/main/recipe/meta.yaml#L40

OpenCV currently builds 3 variants:

  • qt5
  • qt6
  • noqt

I'm trying to get rid of qt5 given the new version bump (easier to communicate) conda-forge/opencv-feedstock#417

so given that you have a version bump here, might as well only build for qt6 and move on.

@looooo
Copy link
Contributor Author

looooo commented Jun 4, 2024

the osmesa build fails with:

_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/include/GL/osmesa.h:323:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OSMesaPostprocess'
/**
 * Enable/disable Gallium post-process filters.
 * This should be called after a context is created, but before it is
 * made current for the first time.  After a context has been made
 * current, this function has no effect.
 * If the enable_value param is zero, the filter is disabled.  Otherwise
 * the filter is enabled, and the value may control the filter's quality.
 * New in Mesa 10.0
 */
GLAPI void APIENTRY
OSMesaPostprocess(OSMesaContext osmesa, const char *filter,
                  unsigned enable_value);

is there something obvious?

@looooo
Copy link
Contributor Author

looooo commented Jun 4, 2024

@hmaarrfk is it ok to skip the osmesa builds for now?

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Jun 4, 2024

That's between you and the other maintainers.

Give them a week or two to respond or something?

@looooo
Copy link
Contributor Author

looooo commented Jun 7, 2024

continued in #328

@looooo looooo closed this Jun 7, 2024
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.

None yet

5 participants