You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Migrate the readme from yaml config to Dart API. In particular, make sure that everything in the large table of yaml options is mentioned in the Dart API docs. Then delete the table and replace it with an example, and links to the API docs. Also migrate all the examples to the Dart API. Then document that the YAML configs are deprecated.
I would kindly like to know... is there a specific reason the YAML configs are being deprecated? I always found them nice and simple enough to use. I see that there are a lot of benefits to having the configuration be in Dart code, but is there a reason both won't be supported?
There's a pretty big maintenance burden to supporting both, and the YAML parsing infra is waaaaay more complicated than the Dart API. Aside from the complexity, the limitations of YAML make it harder to add new features, because everything we add has to be implementable as YAML config. For example, filtering and renaming is implemented in the Dart API just using callbacks. But in YAML we have to have a complicated series of Map<RegExp, List<(RegExp, String)>> to implement something that's still not as powerful as a simple Dart function.
Activity
nikeokoronkwo commentedon Nov 27, 2025
I would kindly like to know... is there a specific reason the YAML configs are being deprecated? I always found them nice and simple enough to use. I see that there are a lot of benefits to having the configuration be in Dart code, but is there a reason both won't be supported?
liamappelbe commentedon Nov 27, 2025
There's a pretty big maintenance burden to supporting both, and the YAML parsing infra is waaaaay more complicated than the Dart API. Aside from the complexity, the limitations of YAML make it harder to add new features, because everything we add has to be implementable as YAML config. For example, filtering and renaming is implemented in the Dart API just using callbacks. But in YAML we have to have a complicated series of
Map<RegExp, List<(RegExp, String)>>to implement something that's still not as powerful as a simple Dart function.liamappelbe commentedon Sep 16, 2026
We should also log a warning in the ffigen CLI tool about the deprecation. When we're deleting the YAML parser we can also delete this tool.