Skip to content

fix: skip invalid docling serve sources#3150

Closed
turkeshp wants to merge 5 commits into
deepset-ai:mainfrom
turkeshp:turkeshp/docling-serve-missing-file-fix
Closed

fix: skip invalid docling serve sources#3150
turkeshp wants to merge 5 commits into
deepset-ai:mainfrom
turkeshp:turkeshp/docling-serve-missing-file-fix

Conversation

@turkeshp

@turkeshp turkeshp commented Apr 13, 2026

Copy link
Copy Markdown
Contributor

Related Issues

Proposed Changes:

  • handle missing or invalid local sources in DoclingServeConverter.run()
  • handle the same case in run_async()
  • log a warning and continue processing remaining sources
  • add sync and async test coverage for this behavior

How did test it?

  • python -m py_compile src\haystack_integrations\components\converters\docling_serve\converter.py tests\test_converter.py
  • python -m pytest tests\test_converter.py -q -k missing_file_logged_and_skipped

Notes for the reviewer

This PR is intentionally small and builds on top of #3139.
It does not change the integration design; it only makes invalid local file inputs non-fatal in sync and async conversion.

Checklist

I have read the contributors guidelines and the code of conduct
I have updated the related issue with new insights and changes
I added unit tests and updated the docstrings
I've used one of the conventional commit types for my PR title

This is a follow-up on top of #3139, not a competing implementation.

The only intended change here is making invalid local sources non-fatal in run() and run_async(), with focused test coverage for that behavior.

Happy to work this PR and have the fix cherry-picked into #3139 if that is the preferred workflow.

cbrumm and others added 5 commits April 13, 2026 11:42
Add a new DoclingServeConverter component that converts documents via a
running docling-serve REST API instance, avoiding docling's heavy local
dependencies (PyTorch, etc.).

Relates to deepset-ai#2960

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The API reference build expects docling_serve.md (matching the
integration folder name), not docling-serve.md.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
pytest exits with code 5 when no tests are collected. The integration
test step selects only @pytest.mark.integration tests, which were
missing. Add a skipped integration test that runs when DOCLING_SERVE_URL
is set.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@turkeshp
turkeshp requested a review from a team as a code owner April 13, 2026 13:41
@turkeshp
turkeshp requested review from julian-risch and removed request for a team April 13, 2026 13:41
@github-actions github-actions Bot added topic:CI type:documentation Improvements or additions to documentation labels Apr 13, 2026
@CLAassistant

CLAassistant commented Apr 13, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@turkeshp
turkeshp marked this pull request as draft April 13, 2026 13:48
@turkeshp turkeshp changed the title Turkeshp/docling serve missing file fix fix: skip invalid docling serve sources Apr 13, 2026
@sjrl

sjrl commented May 12, 2026

Copy link
Copy Markdown
Contributor

Hey @turkeshp could you recheck if your changes are needed? We recently updated the docling serve integration.

@julian-risch
julian-risch marked this pull request as ready for review June 16, 2026 07:19
@julian-risch

Copy link
Copy Markdown
Member

I've ported the commit that contains the fix onto the current main in #3449 and credited you @turkeshp as co-author. The fix is still valuable. The current run()/run_async() don't catch local-file read failures, so a missing/unreadable file raises FileNotFoundError and aborts the whole batch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

topic:CI type:documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants