Skip to content

feat(generator): add support for iso_datetime logical type#97

Closed
xpepper wants to merge 1 commit intolerouxrgd:masterfrom
xpepper:feat/iso-datetime-logical-type
Closed

feat(generator): add support for iso_datetime logical type#97
xpepper wants to merge 1 commit intolerouxrgd:masterfrom
xpepper:feat/iso-datetime-logical-type

Conversation

@xpepper
Copy link
Copy Markdown

@xpepper xpepper commented Apr 9, 2026

Introduces detection and code generation for fields annotated with logicalType: "iso_datetime" in Avro schemas.

  • Scan raw JSON before apache-avro parsing (which drops unknown logical types) to collect (record name, field name) pairs tagged as iso_datetime
  • Pass the collected set through gen_in_order into GenState so the templater can emit the appropriate Rust type
  • Add iso_datetime.avsc / iso_datetime_plain.avsc test schemas and corresponding generation/serde tests

@xpepper xpepper changed the title feat(generator): add support for iso_datetime logical type feat(generator): add support for iso_datetime logical type Apr 9, 2026
@xpepper xpepper marked this pull request as draft April 9, 2026 13:47
Introduces detection and code generation for fields annotated with
`logicalType: "iso_datetime"` in Avro schemas.

- Scan raw JSON before apache-avro parsing (which drops unknown logical
  types) to collect (record name, field name) pairs tagged as
  iso_datetime
- Pass the collected set through gen_in_order into GenState so the
  templater can emit the appropriate Rust type
- Add iso_datetime.avsc / iso_datetime_plain.avsc test schemas and
  corresponding generation/serde tests
- Add order_created.avsc as a realistic multi-field example combining
  iso_datetime with uuid, nested records, enums, and optional fields
@xpepper xpepper force-pushed the feat/iso-datetime-logical-type branch from 6776924 to 7751b54 Compare April 9, 2026 13:52
@xpepper xpepper closed this Apr 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant