dossett opened a new pull request, #3388:
URL: https://github.com/apache/parquet-java/pull/3388
After the Java 11 release, japicmp became uphappy with `IndexIterator` even
though that file hasn't changed in years. CI checks and push checks are now
failing. This change excludes the file from japicmp. An alternative would be
to explicitly implement the default behavior for new methods like `next()` but
that seems like a worse outcome.
That said, I don't fully understand japicmp so maybe excluding the file is
worse.
Error message from failing checks:
```
Error: Failed to execute goal
com.github.siom79.japicmp:japicmp-maven-plugin:0.23.1:cmp (default) on project
parquet-column: There is at least one incompatibility:
org.apache.parquet.internal.column.columnindex.IndexIterator:METHOD_ABSTRACT_ADDED_IN_IMPLEMENTED_INTERFACE
-> [Help 1]
```
I used codex to understand and fix this problem. I asked it for an
explanation suitable for a PR description and it gave me this:
> The japicmp check started failing after the Java 11 baseline because
PrimitiveIterator.OfInt exposes additional interface methods/bridges in the
Java 11 API surface. IndexIterator still
works at runtime (defaults cover those methods), but japicmp flags it as a
source‑incompatible change since the class implements that interface and
doesn’t declare those methods itself.
This is a tooling false positive driven by the JDK upgrade, not an actual
behavior regression.
> This change excludes
org.apache.parquet.internal.column.columnindex.IndexIterator from japicmp to
keep the compatibility check focused on real API changes. The exclusion aligns
with prior
japicmp exceptions for JDK‑related interface‑method noise and unblocks the
build without changing runtime behavior.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]