[MNG-8485] Finalize Maven 4 API
- Dominant language
- Java
- Stars
- 5.3k
- Forks
- 3.1k
- Avg merge
- 20h 42m
- Merged PRs (30d)
- 297
Description
**[Elliotte Rusty Harold](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=elharo)** opened **[MNG-8485](https://issues.apache.org/jira/browse/MNG-8485?redirect=false)** and commented
Roughly 200 classes and interfaces in Maven core are annotated `@Experimental` . There might be a reason to ship a few things in 4.0 that might still change but 200 is far too many. Commit to these APIs (i.e. remove the annotation) or fix and/or remove those types.
Ar least some of them such as org.apache.maven.api.services.BaseRequest are already package protected, in which case we don't need the annotation at all.
Things to fix:
There are two ProblemCollector interfaces. Rename one or combine them.
---
**Affects:** 4.0.0-rc-2
**Issue Links:**
- [MNG-8488](https://issues.apache.org/jira/browse/MNG-8488) Finish javadoc for Maven 4 API
**Remote Links:**
- [GitHub Pull Request #2036
](https://github.com/apache/maven/pull/2036)
- [GitHub Pull Request #2039
](https://github.com/apache/maven/pull/2039)
Contributor guide
Research direction
Start by reviewing the Maven core types annotated @Experimental, then inspect the two ProblemCollector interfaces and the package visibility of org.apache.maven.api.services.BaseRequest. Compare the requested API decisions with pull requests #2036 and #2039; done requires resolving or removing the experimental APIs and addressing the duplicate interfaces.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 15/100