Skip to content

fix(patchmatch): point build-failure guidance at current docs - #10235

Open
Shanmukh-l33t wants to merge 1 commit into
invoke-ai:mainfrom
Shanmukh-l33t:fix/patchmatch-stale-docs-url
Open

Shanmukh-l33t wants to merge 1 commit into
invoke-ai:mainfrom
Shanmukh-l33t:fix/patchmatch-stale-docs-url

Conversation

@Shanmukh-l33t

@Shanmukh-l33t Shanmukh-l33t commented Nov 11, 2026 •

Copy link
Copy Markdown

Summary

When pypatchmatch's C extension fails to build, patchmatch.patch_match logs an installation-help URL that is hard-coded in pypatchmatch 1.0.2 and now resolves to a 404 (the docs page moved). Failed builds therefore pointed users at a dead link.

PatchMatch now drops only that stale guidance record at pypatchmatch's source logger (before the import that emits it) and logs the current installation help location instead. The compile error detail pypatchmatch reports is kept, and the success path is unchanged. A follow-up URL fix in PyPatchMatch would let the filter be removed.

Related Issues / Discussions

Fixes #9775

QA Instructions

Reproduction of the issue's message on unmodified main (pypatchmatch 1.0.2, forced make failure):

>> patchmatch.patch_match: ERROR - patchmatch failed to load or compile (Command 'make clean && make' returned non-zero exit status 2.).
>> patchmatch.patch_match: INFO - Refer to https://invoke-ai.github.io/InvokeAI/installation/060_INSTALL_PATCHMATCH/ for installation instructions.

Same command on this branch:

>> patchmatch.patch_match: ERROR - patchmatch failed to load or compile (Command 'make clean && make' returned non-zero exit status 2.).
[InvokeAI]::INFO --> Patchmatch not loaded (nonfatal)
[InvokeAI]::INFO --> Refer to https://invoke.ai/configuration/patchmatch/#installation for installation instructions.

The stale URL is gone from the output and the compile error detail survives.

  • Regression test, unmodified main (RED): uv run --no-sync pytest tests/backend/image_util/test_patchmatch.py fails asserting the stale URL is not emitted — captured output contains Refer to https://invoke-ai.github.io/InvokeAI/installation/060_INSTALL_PATCHMATCH/ for installation instructions.
  • Same command on this branch (GREEN): 2 passed.
  • uv tool run ruff@0.11.2 check and format --check on both changed paths: passed.
  • Family E2E not run: the change only adjusts load-failure log output; no model computation or loading behavior is touched.

Review

No material findings in self-review. The filter matches on the exact stale URL only, so any other pypatchmatch log record (including the compile error) passes through unchanged.

Checklist

  • The PR has a short but descriptive title, suitable for a changelog
  • Meaningful regression coverage added / updated where needed; obsolete tests/code removed
  • Persisted-state and API changes include required migrations / compatibility validation
  • Relevant performance/efficiency opportunities considered; material claims have evidence
  • Material review findings resolved and relevant checks rerun
  • Documentation added / updated (if applicable)
  • Updated What's New copy (if doing a release after this PR)

Autofix with [code]smith
Open in [code]smith · Need help on this PR? Tag @codesmith-bot with what you need.

Drop pypatchmatch's stale installation-help record at its source logger and log
the current documentation URL instead, keeping the compile error detail. The
hard-coded URL in pypatchmatch 1.0.2 resolves to a 404 since the docs moved.
@github-actions github-actions Bot added python PRs that change python files backend PRs that change backend files python-tests PRs that change python tests labels Nov 11, 2026

This branch has not been deployed

No deployments
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 python PRs that change python files python-tests PRs that change python tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[bug]: Stale URL for PatchMatch documentation on build fail

1 participant