Skip to content

Conversation

@kynan
Copy link
Contributor

@kynan kynan commented Dec 10, 2024

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-admin
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/meta.yaml) and found it was in an excellent condition.

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

For recipe/meta.yaml:

  • ℹ️ PyPI default URL is now pypi.org, and not pypi.io. You may want to update the default source url.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/12263830459. Examine the logs at this URL for more detail.

@kynan
Copy link
Contributor Author

kynan commented Dec 10, 2024

@dopplershift Here's a repro of the failure. The culprit is the pydub dependency which is incompatible with Python 3.13.

@kynan
Copy link
Contributor Author

kynan commented Dec 10, 2024

See also jiaaro/pydub#815, jiaaro/pydub#816

@dopplershift
Copy link
Member

The upstream repository for audiogrep was archived in favor of videogrep itself, so I'm not sure this update even makes much sense any more. I'll comment over on the videogrep PR on a path forward for that recipe.

@kynan
Copy link
Contributor Author

kynan commented Dec 12, 2024

This will be unblocked by conda-forge/staged-recipes#28515

@conda-forge-admin
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/meta.yaml) and found it was in an excellent condition.

@conda-forge-admin
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/meta.yaml) and found some lint.

Here's what I've got...

For recipe/meta.yaml:

  • ❌ Old-style Python selectors (py27, py35, etc) are only available for Python 2.7, 3.4, 3.5, and 3.6. Please use explicit comparisons with the integer py, e.g. # [py==37] or # [py>=37]. See lines [23]

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/14006643895. Examine the logs at this URL for more detail.

@kynan
Copy link
Contributor Author

kynan commented Mar 22, 2025

@conda-forge/help-python Any idea why CI runs for OSX are cancelled before even starting? Errors are

  • No config name or imagelabel provided in request
  • The remote provider was unable to process the request

@kynan
Copy link
Contributor Author

kynan commented Mar 22, 2025

@conda-forge-admin, please rerender

@conda-forge-admin
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/meta.yaml) and found it was in an excellent condition.

@kynan
Copy link
Contributor Author

kynan commented Mar 22, 2025

audioop-lts seems to be broken on Mac OSX. Filed conda-forge/audioop-lts-feedstock#1 for @bmcfee.

@bmcfee
Copy link

bmcfee commented Mar 24, 2025

audioop-lts seems to be broken on Mac OSX. Filed conda-forge/audioop-lts-feedstock#1 for @bmcfee.

I'm afraid I have no idea how to debug this - I don't have access to an OSX machine, or any particular familiarity with compilation on that platform. Maybe someone else can step in to assist on this? Maybe @ocefpaf has some thoughts, having already been involved in the feedstock merge for this package a few weeks back.

As an aside, since audiogrep is now deprecated in favor of videogrep, does it make sense to try shipping the package on 3.13 anyway?

@ocefpaf
Copy link
Member

ocefpaf commented Mar 24, 2025

Maybe @ocefpaf has some thoughts, having already been involved in the feedstock merge for this package a few weeks back.

I'm not sure what is the problem with audiogrep, but the failure here is:

import: 'audiogrep'
Traceback (most recent call last):
  File "/Users/runner/miniforge3/conda-bld/audiogrep_1742630915555/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib/python3.13/site-packages/pydub/utils.py", line 14, in <module>
    import audioop
  File "/Users/runner/miniforge3/conda-bld/audiogrep_1742630915555/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib/python3.13/site-packages/audioop/__init__.py", line 1, in <module>
    from ._audioop import (
    ...<27 lines>...
    )
ImportError: dlopen(/Users/runner/miniforge3/conda-bld/audiogrep_1742630915555/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib/python3.13/site-packages/audioop/_audioop.abi3.so, 0x0002): tried: '/Users/runner/miniforge3/conda-bld/audiogrep_1742630915555/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib/python3.13/site-packages/audioop/_audioop.abi3.so' (not a mach-o file), '/System/Volumes/Preboot/Cryptexes/OS/Users/runner/miniforge3/conda-bld/audiogrep_1742630915555/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib/python3.13/site-packages/audioop/_audioop.abi3.so' (no such file), '/Users/runner/miniforge3/conda-bld/audiogrep_1742630915555/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_plac/lib/python3.13/site-packages/audioop/_audioop.abi3.so' (not a mach-o file)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/runner/miniforge3/conda-bld/audiogrep_1742630915555/test_tmp/run_test.py", line 2, in <module>

Looks like it cannot imort audioop.

@kynan
Copy link
Contributor Author

kynan commented Mar 25, 2025

Looks like it cannot imort audioop.

Yes, I know 😀 I got that far, should have clarified. FWIW, this is from the audioop-feedstock as this package was removed from the standard library in 3.13.

@bmcfee
Copy link

bmcfee commented Mar 25, 2025

FWIW, this is from the audioop-feedstock as this package was removed from the standard library in 3.13.

I suspect the problem here is that it should not have been a noarch package, and we need different binaries on osx and linux. Probably if windows was included in this test build, it would have failed as well. I'll get on that and see if we can fix it up.

@bmcfee
Copy link

bmcfee commented Mar 26, 2025

Right now I remember. Audioop is currently noarch because we did not want to allow it to be installed on python <=3.12, and removing noarch forces us to drop python version constraints.

I have a side conversation with the dead-batteries maintainer about getting some more explicit guarantees on what happens with these packages if they are installed on older pythons, and I'd like to get that resolved before dropping noarch on audioop. (TLDR: it should be harmless, but it could be more clear how and why that's the case.)

@dopplershift
Copy link
Member

You could skip the package build on Python <= 3.12:

build:
  skip: true  # [py < 313]

and re-render.

@bmcfee
Copy link

bmcfee commented Mar 26, 2025

You could skip the package build on Python <= 3.12:

🤦 of course. Thanks! Amendment: this doesn't work because it breaks downstream dependencies (or forces them onto 3.13 even when it's not necessary.)

@kynan
Copy link
Contributor Author

kynan commented Mar 28, 2025

@bmcfee Thanks for investigating further! Sounds like we have no viable solution at this point then, do we?

@bmcfee
Copy link

bmcfee commented Mar 28, 2025

There is one other option to try, mentioned in the org pr thread on the audioop feedstock. I haven't had time to try it though.

@kynan
Copy link
Contributor Author

kynan commented Apr 18, 2025

@bmcfee Did you have a chance to investigate this further? :)

@bmcfee
Copy link

bmcfee commented Apr 22, 2025

Sorry for falling off there - I did try the aforementioned thing here conda-forge/audioop-lts-feedstock#2 but couldn't get it working on all platforms. I haven't had time to come back to this yet, but any assistance would be appreciated.

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.

5 participants