1.28.3

(fix): Fix wire test generation crash for endpoints with bytes request bodies. The wire test generator now skips bytes endpoints, consistent with the wiremock mapping generation which also excludes them. Previously, the generator would throw “No wiremock mapping found” when an API contained file upload endpoints using application/octet-stream.

1.28.1

(fix): Resolve datetime aliases in marshal/unmarshal code generation. Fields typed as aliases of datetime or date (e.g. DatetimeAlias: type: datetime) now correctly use the custom internal.DateTime / internal.Date serialization helpers instead of falling back to default time.Time JSON handling. Also relaxes DateTime.UnmarshalJSON to accept ISO 8601 timestamps without a timezone suffix (e.g. 2024-01-15T09:30:00), falling back from RFC 3339 when the timezone is absent.

1.28.0

(feat): Improve DateTime deserialization to handle multiple timestamp formats instead of only strict RFC3339. The UnmarshalJSON method now tries RFC3339Nano first (which is a superset of RFC3339 and supports fractional seconds), then falls back to ISO 8601 without timezone (assuming UTC), then date-only format, and finally Unix epoch seconds (integer). This matches the flexibility of other Fern SDK generators (Java, Python, TypeScript, C#) and prevents deserialization failures when APIs return timestamps in slightly different ISO 8601 variants.

1.27.0

(feat): Add golangci-lint to seed tests for generated Go SDK code; adjust various internal files to comply with golangci-lint. (The upshot of this is that golangci-lint run should now pass for any Fern-generated Go SDKs.)