The GitHub Actions job "npm_and_yarn in /javascript for minimatch - Update 
#1258367631" on fory.git/main has failed.
Run started by GitHub user dependabot[bot] (triggered by dependabot[bot]).

Head commit for run:
037cd7b0ebc045f24a43f65ba91d61640bcd5868 / Shawn Yang <[email protected]>
feat(compiler): add csharp target and idl integration tests (#3406)

## Why?

Add full C# schema IDL support end-to-end in Apache Fory: compiler
target, documentation, runtime compatibility fixes, and integration
coverage (including root/package cross-reference and file-based
roundtrip scenarios).


## What does this PR do?

- Adds C# as a first-class compiler target:
  - `foryc --lang ... ,csharp`
  - `foryc --csharp_out=<dir>`
  - `option csharp_namespace = "..."`
- Implements C# schema generator
(`compiler/fory_compiler/generators/csharp.py`) for
messages/enums/unions, registration helpers, and generated
`ToBytes`/`FromBytes` helpers.
- Wires C# into compiler generator registration and generated-code test
matrix.
- Adds C# generator unit tests
(`compiler/fory_compiler/tests/test_csharp_generator.py`) covering
namespace resolution, registration behavior, field encoding attributes,
imported registration calls, and parser option support.
- Adds full C# IDL integration test harness under
`integration_tests/idl_tests/csharp/IdlTests` and runner
`integration_tests/idl_tests/run_csharp_tests.sh`, including
schema-consistent and compatible roundtrips across:
  - `addressbook`, `auto_id`, `complex_pb` primitives
  - collection union/array variants
  - `optional_types`
  - `any_example` (`.fdl`) and `any_example` (`.proto`)
  - flatbuffers (`monster`, `complex_fbs`)
  - reference-tracking models (`tree`, `graph`)
  - evolving compatibility cases
- root/package cross-reference (`root.idl`) and generated bytes helper
paths
- Adds C# IDL output target to
`integration_tests/idl_tests/generate_idl.py`.
- Improves C# runtime compatibility behavior for generated IDL shapes:
- collection/dictionary serializers now handle declared-type metadata
correctly in compatible mode.
- union serializer now supports typed case handling while preserving
xlang-compatible dynamic framing and case value normalization.
- Updates compiler documentation (`compiler/README.md`,
`docs/compiler/*`) and C# README to document C# codegen, options,
generated output, and test workflow.


## Related issues

N/A


## Does this PR introduce any user-facing change?

Yes. `foryc` now supports C# generation (`--lang csharp`,
`--csharp_out`) and C# namespace override (`csharp_namespace`), with
updated compiler docs and C# IDL test workflow.


- [x] Does this PR introduce any public API change?
- [ ] Does this PR introduce any binary protocol compatibility change?

## Benchmark

N/A (feature + compatibility work; no benchmark updates in this PR)

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

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to