The GitHub Actions job "npm_and_yarn in /javascript for protobufjs - Update #1365988211" on fory.git/main has failed. Run started by GitHub user dependabot[bot] (triggered by dependabot[bot]).
Head commit for run: 74898f497c553f20ab1b5da6c7474c6c873dde5c / Shawn Yang <[email protected]> feat(xlang): simplify xlang field ordering (#3675) ## Why? The xlang field-ordering spec and several runtimes still treated non-primitive fields as separate type-specific groups. This PR simplifies the rule so non-primitive fields use one language-neutral identifier order, and makes invalid negative field ids fail early instead of being interpreted as name-based fields. ## What does this PR do? - Updates the xlang serialization spec so fields are ordered as non-null primitives, nullable primitives, then all non-primitives sorted by field identifier. - Applies the simplified ordering across C++, C#, Dart, Go, Java, JavaScript, Python, Rust, and Swift runtimes or generators. - Allows mixed explicit field ids and name-based identifiers, with explicit ids sorted before name identifiers inside a field group. - Rejects negative configured field ids in supported generators, parsers, and macros; name-based fields now omit an explicit id instead of using `-1`. - Updates language guides and cross-language fixtures to match the new field-id and ordering behavior. - Adds focused tests for non-primitive field ordering, mixed identifier ordering, and negative field-id diagnostics. ## Related issues #1017 ## AI Contribution Checklist - [ ] Substantial AI assistance was used in this PR: `yes` / `no` - [ ] If `yes`, I included a completed [AI Contribution Checklist](https://github.com/apache/fory/blob/main/AI_POLICY.md#9-contributor-checklist-for-ai-assisted-prs) in this PR description and the required `AI Usage Disclosure`. - [ ] If `yes`, my PR description includes the required `ai_review` summary and screenshot evidence of the final clean AI review results from both fresh reviewers on the current PR diff or current HEAD after the latest code changes. ## Does this PR introduce any user-facing change? Yes. Xlang non-primitive struct field ordering now follows field identifiers directly, and configured negative field ids are rejected. Fields without explicit ids continue to use name-based identifiers. - [ ] Does this PR introduce any public API change? - [x] Does this PR introduce any binary protocol compatibility change? ## Benchmark N/A Report URL: https://github.com/apache/fory/actions/runs/25809628468 With regards, GitHub Actions via GitBox --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
