This is a breaking API change. Can you reopen this against the `code-gen branch for inclusion in v2.0?