-
Notifications
You must be signed in to change notification settings - Fork 301
Open
Description
Problem / Motivation
The DBpedia Extraction Framework currently relies on:
- Scala 2.11 (end-of-life)
- Java 8
This makes the project increasingly difficult to:
- build on modern systems
- onboard new contributors
- integrate with newer libraries and tools
Many modern development environments default to Java 17+ and Scala 2.13+, which leads to build failures or requires manual downgrades.
Proposed Solution
Introduce a modern compatibility layer that allows the framework to be built and run in both legacy and modern environments, without breaking existing behavior.
Key idea:
- No big-bang migration
- Maintain backward compatibility
- Enable gradual modernization
Scope of the Proposal
-
Dual Build Profiles
legacy: Scala 2.11 + Java 8 (current behavior)modern: Scala 2.13 + Java 17+
-
Compatibility Utilities
- Introduce small abstraction helpers (e.g. for collection conversions)
- Isolate Scala 2.11 vs 2.13 differences instead of scattering fixes
-
Minimal Code Adjustments
- Replace deprecated Scala APIs (e.g.
JavaConversions) - Fix compilation issues caused by newer JDK module restrictions
- No changes to extraction logic or RDF semantics
- Replace deprecated Scala APIs (e.g.
-
CI Support
- Test both
legacyandmodernprofiles in CI - Ensure no regressions in existing behavior
- Test both
coderabbitai
Metadata
Metadata
Assignees
Labels
No labels