Skip to content

Conversation

@aleyan
Copy link
Contributor

@aleyan aleyan commented Jan 26, 2026

Summary

pypatchmatch has a dependency on OpenCV, which is tricky to install and/or compile on many platforms. This replaces it for another patchmatch implementation with cython wheels prebuilt for most common platforms.

Related Issues / Discussions

Closes #8781

QA Instructions

Saw "patchmatch" option appear in canvas Compositing/Infill. Generates infill.

Merge Plan

Checklist

  • The PR has a short but descriptive title, suitable for a changelog
  • Tests added / updated (if applicable)
  • ❗Changes to a redux slice have a corresponding migration
  • Documentation added / updated (if applicable)
  • Updated What's New copy (if doing a release after this PR)

@github-actions github-actions bot added python PRs that change python files Root backend PRs that change backend files python-deps PRs that change python dependencies labels Jan 26, 2026
@aleyan aleyan changed the title Switch to patchmatch-cython from py patchmatch due to default availability on more platforms Switch to patchmatch-cython from pypatchmatch due to default availability on more platforms Jan 26, 2026
@iwr-redmond
Copy link

The Dockerfiles for CUDA and ROCm will also need to be updated.

@aleyan
Copy link
Contributor Author

aleyan commented Jan 26, 2026

The Dockerfiles for CUDA and ROCm will also need to be updated.

Removed building of patchmatch in Dockerfiles. Kept the installing of libopencv-dev, but it is not clear to me if opencv bindings are needed anymore.

@iwr-redmond
Copy link

iwr-redmond commented Jan 26, 2026

OpenCV is still recommended for patchmatch-cython and is required for invisible-watermark.

See also: launcher#81

@aleyan
Copy link
Contributor Author

aleyan commented Jan 27, 2026

OpenCV is still recommended for patchmatch-cython and is required for invisible-watermark.

See also: launcher#81

Ok, based on that, I will keep the opencv bindings in the Dockerfiles.

Are any other changes required?

@lstein lstein added the v6.12.0 Intended for 6.12.0 release label Jan 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backend PRs that change backend files docker python PRs that change python files python-deps PRs that change python dependencies Root v6.12.0 Intended for 6.12.0 release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[enhancement]: Switch to patchmatch-cython

5 participants