You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@fory.apache.org by GitBox <gi...@apache.org> on 2026/08/30 19:58:54 UTC

[GH] (fory/fix-scala-json-nested-case-class): Workflow run "Lint PR" failed!

The GitHub Actions job "Lint PR" on fory.git/fix-scala-json-nested-case-class has failed.
Run started by GitHub user pjfanning (triggered by pjfanning).

Head commit for run:
637b5063faa75871698353e97ab7c2bbff059912 / PJ Fanning <pj...@users.noreply.github.com>
fix(scala): narrow the case-class claim and keep default fetches conditional

Addresses the second and third AI review rounds.

The receiver belongs only to the model shapes that can carry instance defaults.
The full constructor is now private and its public form keeps its previous
signature, so `fory-json-kotlin`, whose call site uses that shape, is untouched.
`JsonObjectModel` also rejects a receiver that no default is bound to, so the
invariant is total rather than checked per parameter.

The unreconstructible-case-class claim applies only when the companion is
unreachable. A reachable companion whose primary constructor this module does not
support, such as a varargs or non-public one, keeps its previous handling instead
of becoming a hard failure.

A companion that exists but cannot be linked is no longer reported as an
unreachable companion: only absence means the type has no companion, and a
`LinkageError` now surfaces with the companion it failed to load.

The workspace creator no longer hoists the defaults receiver into a local: that
local ran on every construction, while the value is needed only on a missing
argument. Both codegen paths now fetch it on the branch that uses it.

GraalVM registration is narrowed to the members the Scala module looks up, and
its helpers are named for the Scala companion they actually detect.

Both rejection tests now assert their message. An outer-bound case class also has
no reachable companion, so without that assertion either branch alone satisfied
both tests, and the method-local case must be declared inside an object to reach
the companion check at all.

Co-Authored-By: Claude Opus 5 (1M context) <no...@anthropic.com>

Report URL: https://github.com/apache/fory/actions/runs/33332337251

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@fory.apache.org
For additional commands, e-mail: commits-help@fory.apache.org