Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Remove the deprecated DoclingServeApiBuilderFactory SPI and related types

Open
#697 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
45/100
Issue type
Refactor
Clarity
Clearly specified
Activity status
Active
Tech stack
java

Research direction

The work is in the docling-serve-api and docling-serve-client modules. Start by reviewing the deprecation in issue #696 and the serve-api-provider-migration.md guide. The checklist names specific files to delete (e.g., DoclingServeApiBuilderFactory, LegacyProviderAdapter) and tests to update. 'Done' means all deprecated types are removed, tests pass, and documentation is updated.

Written by the indexing model from the issue text.

Description

area:docling-serve module:docling-serve-api module:docling-serve-client

#696 replaced the DoclingServeApiBuilderFactory SPI with DoclingServeApiProvider and deprecated the old types for removal in 0.7.0, keeping a fallback so existing implementations keep working. This issue tracks removing them.

Before removing

  • At least one minor release has shipped with the deprecation, so no earlier than 0.8.0.
  • Known third-party implementations, such as the Quarkus integration, have moved to DoclingServeApiProvider.

docling-serve-api

  • Delete ai.docling.serve.api.spi.DoclingServeApiBuilderFactory, and its uses clause in module-info.java.
  • Delete DoclingServeApi.DoclingApiBuilder and DoclingServeApi.toBuilder().
  • Delete LegacyProviderAdapter and LegacyProviderAdapterTests.
  • DoclingServeApiProviders: remove the legacy fallback, the warning logged when both SPIs are present, and the "(or of the deprecated …)" part of the no-provider message. Update DoclingServeApiProvidersTests and DoclingServeApiTests.
  • Update the Javadoc of DoclingServeApi.builder(), which describes the fallback.
  • TestApis.StubDoclingServeApi: remove its toBuilder() override.

docling-serve-client

  • Delete DoclingServeClientBuilderFactory and DoclingServeClientBuilderFactoryTests. The Jackson detection lives in DoclingServeClient.builder().
  • DoclingServeClientBuilder: drop implements DoclingApiBuilder<C, B> and the @Override annotations of its setters. The setters themselves stay.
  • Keep DoclingServeJackson2Client.toBuilder() and DoclingServeJackson3Client.toBuilder(), which return the concrete builder and aren't deprecated, but drop their @Override.
  • Tests calling DoclingServeApi.toBuilder() (DoclingServeJackson2ClientTests, DoclingServeJackson3ClientTests, AbstractDoclingServeClientAsyncExecutorTests, which show [removal] warnings today) should use config().toBuilder() or the concrete client type.
  • AbstractDoclingServeClientConfigTests.toBuilderKeepsEverySetting and toBuilderKeepsFollowingRedirects call toBuilder() on a DoclingServeClient, which resolves to the deprecated DoclingServeApi.toBuilder() (warnings suppressed). They test the copy constructor, so they must call toBuilder() on the concrete client type, not config().toBuilder().

Both modules

  • Remove every @SuppressWarnings("removal") that only existed for these types, in main and test code.

Docs

  • serve-api-provider-migration.md: remove the Compatibility section on the fallback, or retire the page if it's no longer useful.
  • serve-api.md: remove the "Migrating from DoclingServeApiBuilderFactory" subsection.
  • CLAUDE.md: remove the mention of the fallback.
  • whats-new.md: add a "Breaking" entry for the removal.
Dominant language
Java
Stars
136
Forks
26
Avg merge
12h 20m
Merged PRs (30d)
49

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from docling-project/docling-java

All issues in docling-project/docling-java

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.