Files
zeekay 728f97bdb1 dart is a row: the container decode the generator gets wrong, corrected once
The Dart generator decides a property holds a generated class by asking whether
it has a complexType, and Object, Map and List all answer yes — so it calls
listFromJson, mapFromJson and mapListFromJson on them, statics only a generated
class carries. An `items: {}` on an array is enough. 52 compile errors on this
document that no property, flag or type mapping reaches, and 15 of them survive
on generator 7.24.0. templates/dart asks one level lower, where the answer is
right, and decodes containers by cast — the semantics mapCastOfType already
gives every map in the client. api_client.mustache awaits Response.fromStream,
which was returned unawaited from inside the try block that turns transport
failures into ApiException.

The row's mappings, each measured against the document: `override` shadows
Dart's own @override in the class that declares it; the four parameters named
`path` are shadowed by the URL local the generator opens every method with, so
the route travelled as the caller's argument; `Exception` binds ApiException to
the model rather than dart:core; and File, Record, Stream and Symbol silently
win over dart:core and dart:io for anyone who imports this client, because Dart
resolves a non-platform import first.

2479 operations over 1814 paths, and `dart analyze` — warnings fatal — is clean.

The swift row and templates/swift travel with this: sdks.yaml names that
directory, and the two are one statement.
2026-08-14 20:10:38 -07:00
..