Consider introducing OpenRewrite recipes for Docling Java
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- java
- Domain
- build-system, tooling
Research direction
Review the issue's linked UpgradeDocling_0_2 and UpgradeDocling_0_3 recipe files, then inspect the rewrite-docling module and its Maven execution example. Clarify whether Docling Java should adopt these recipes, where they should live, and how their release lifecycle would work; the work is done when that scope and acceptance criteria are agreed and implemented.
Written by the indexing model from the issue text.
Description
Even though the project is not GA yet, it would be nice to provide OpenRewrite recipes to automate refactoring when updating to newer versions, taking care of breaking changes without any manual intervention.
For example, we changed some packages in version 0.2 and 0.3.
For now, I publish OpenRewrite recipes as part of my Arconia Migrations project, which is a catalog of open-source recipes for JUnit, Testcontainers, Spring, Arconia, and other Java-related libraries.
They can be run from the rewrite-docling module (fully dedicated to Docling) using any of the OpenRewrite approaches, including the Maven plugin:
./mvnw -U org.openrewrite.maven:rewrite-maven-plugin:run \
-Drewrite.recipeArtifactCoordinates=io.arconia.migrations:rewrite-docling:LATEST \
-Drewrite.activeRecipes=io.arconia.rewrite.docling.UpgradeDocling_0_3
I'd be happy to contribute those recipes upstream, if we decide to adopt OpenRewrite. If we do, my suggestion would be to keep the recipes separate from the main packages, and with a separate release lifecycle. It's likely we need to make changes to recipes outside the main release lifecycle. Also, some recipes need the new version already published in order to be tested, so we can't keep the recipes in the same place. If not, I'd be happy to continue maintaining them in my project :)
- Dominant language
- Java
- Stars
- 136
- Forks
- 26
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 47
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from docling-project/docling-java
-
Difficulty 4/5 3-5 days Newbie friendliness 55/100
docling-project/docling-java#664 · 2 comments ·
-
docling-project/docling-java#598 · 9 comments · 1 reaction · 2 assignees ·
-
Difficulty 4/5 3-5 days Newbie friendliness 55/100
docling-project/docling-java#557 · 3 comments ·
-
area:docling-serve documentation good first issue help wanted module:docling-core module:docling-serve-api module:docling-serve-client module:docling-testcontainers
Difficulty 4/5 3-5 days Newbie friendliness 35/100
docling-project/docling-java#350 · 5 comments ·
-
automation enhancement module:version-tester
docling-project/docling-java#134 · 2 comments · 1 assignee ·
All issues in docling-project/docling-java
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
elastic/gradle-plugins#157 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
cryptomator/hub#497 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
johanhaleby/occurrent#1120 ·