Skip to content

[Dart] Row format support for Dart #3375

@chaokunyang

Description

@chaokunyang

Feature Request

Implement standard Fory row format support for Dart.

Is your feature request related to a problem? Please describe

Dart runtime currently lacks standard row format read/write support, so Dart cannot interoperate on row-format payloads with existing standard row format implementations and cannot leverage row-level random field access.

Describe the solution you'd like

Add standard row format support in Dart based on docs/specification/row_format_spec.md.

Scope:

  • Implement row encode/decode for standard format.
  • Implement standard array/map/nested-struct layout handling.
  • Support null bitmap semantics, fixed 8-byte field slots, and relative offset+size for variable-width fields.
  • Enforce 8-byte alignment and deterministic padding behavior.
  • Add cross-language compatibility tests with Java as reference endpoint.
  • Add CI coverage for Dart row format tests and interoperability tests.

Out of scope:

  • Compact row format.

Describe alternatives you've considered

Relying only on existing object serialization flows was considered, but that approach does not satisfy standard row format compatibility and random-access requirements.

Additional context

docs/specification/row_format_spec.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions