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

gst-plugins-rs 0.9.3 #116170

Closed
wants to merge 2 commits into from
Closed

Conversation

mistydemeo
Copy link
Member

  • Have you followed the guidelines for contributing?
  • Have you ensured that your commits follow the commit style guide?
  • Have you checked that there aren't other open pull requests for the same formula update/change?
  • Have you built your formula locally with brew install --build-from-source <formula>, where <formula> is the name of the formula you're submitting?
  • Is your test running fine brew test <formula>, where <formula> is the name of the formula you're submitting?
  • Does your build pass brew audit --strict <formula> (after doing brew install --build-from-source <formula>)? If this is a new formula, does it pass brew audit --new <formula>?

This version introduces a hard dependency on the webrtc plugin, which means it needs another one of the gst-plugin packs as a dependency. It also requires Python 3.11 for its buildsystem.

Closes #115929.

@BrewTestBot BrewTestBot added the rust Rust use is a significant feature of the PR or issue label Nov 19, 2022
@mistydemeo
Copy link
Member Author

Linux-only build error is going to be hard for me to diagnose. :/

@cho-m
Copy link
Member

cho-m commented Dec 1, 2022

Script may be using Python 3.10 rather than Python 3.11. PATH has /home/linuxbrew/.linuxbrew/opt/python@3.10/bin before /home/linuxbrew/.linuxbrew/opt/python@3.11/libexec/bin so #!/usr/bin/env python3 would probably pick up Python 3.10 first.

Formula/gst-plugins-rs.rb Outdated Show resolved Hide resolved
@cho-m cho-m added the CI-no-fail-fast Continue CI tests despite failing GitHub Actions matrix builds. label Dec 5, 2022
@cho-m
Copy link
Member

cho-m commented Dec 18, 2022

The Intel failure is SSE4.1-related due to missing some source files when a Rust dependency builds a copy of webp manually https://github.com/qnighy/libwebp-sys2-rs/blob/v0.1.4/build.rs#L85-L86

Specifically, build has c_src/src/dsp/lossless.c and c_src/src/dsp/lossless_sse2.c but not c_src/src/dsp/lossless_sse41.c.

Currently doesn't support system webp on macOS, but we might be able to use it on Linux.


It does look like gst-plugins-rs was testing/using an older version of this library (v0.1.2) but dependency resolution allows newer version since they don't include a Cargo.lock and their Cargo.toml allows it. The other version had an older libwebp without the extra SSE4.1 file.


EDIT: fix for particular Rust package in qnighy/libwebp-sys2-rs#13. Trying to patch this in is a bit tricky as Cargo fetches crates at build-time. Can add a work around to pick up local copy.

@cho-m cho-m changed the title gst-plugins-rs 0.9.1 gst-plugins-rs 0.9.3 Dec 18, 2022
@cho-m cho-m added the livecheck Issues or PRs related to livecheck label Dec 18, 2022
depends_on "pkg-config" => :build
# TODO: Use `webp` dependency on macOS when supported.
# Issue ref: https://github.com/qnighy/libwebp-sys2-rs/issues/4
depends_on "webp"
Copy link
Member

Choose a reason for hiding this comment

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

Need to check if library is linked to make sure build picked up Homebrew's copy.

@sdroege
Copy link

sdroege commented Dec 19, 2022

It also requires Python 3.11 for its buildsystem.

I would recommend using cargo-c instead of the meson-based build system if you can. One layer of build systems less.

If you want to use the meson-based build system, then it also works with older Python versions if you can ensure that the tomli module is available.

It does look like gst-plugins-rs was testing/using an older version of this library (v0.1.2) but dependency resolution allows newer version since they don't include a Cargo.lock and their Cargo.toml allows it.

The release branches and tags include a Cargo.lock. That includes libwebp2-sys 0.1.4 though.

In GStreamer's macOS/Windows binaries the webp plugin is currently not included (someone would have to add it and libwebp), which is why this wasn't noticed there.

@github-actions
Copy link
Contributor

github-actions bot commented Jan 9, 2023

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

@github-actions github-actions bot added the stale No recent activity label Jan 9, 2023
@github-actions github-actions bot closed this Jan 16, 2023
@ZhongRuoyu ZhongRuoyu mentioned this pull request Jan 28, 2023
@github-actions github-actions bot added the outdated PR was locked due to age label Feb 16, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Feb 16, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
CI-no-fail-fast Continue CI tests despite failing GitHub Actions matrix builds. livecheck Issues or PRs related to livecheck outdated PR was locked due to age rust Rust use is a significant feature of the PR or issue stale No recent activity
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants