Skip to content

[native_assets_cli][native_assets_builder] CLI input and output composability #853

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Tracked by #882
dcharkes opened this issue Dec 5, 2023 · 1 comment
Closed
Tracked by #882
Labels
P2 A bug or feature request we're likely to work on package:hooks_runner package:hooks

Comments

@dcharkes
Copy link
Collaborator

dcharkes commented Dec 5, 2023

The Dart API can be revved independently of the protocol, bumping this out of v1.0.

@mkustermann suggested that instead of having JSON/YAML -> Dart objects for BuildConfig and Dart objects -> JSON/YAML for BuildOutput to use extension methods (or extension types).

This would enable new launchers (non Dart-standalone, non Flutter) to define new asset types in a package.

JSON/YAML -> Dart objects for BuildConfig

This is already kind of composable with multiple packages, as multiple objects could be wrapped around JSON/YAML.

Dart objects -> JSON/YAML for BuildOutput

This is currently not composable (users would have to manually 'merge' the Maps/Lists).

Extension methods working only on the underlying data would modify the json on every edit, rather than serializing at the end.

We would use a different 'view' for Data assets, Native code assets, Wasm code assets, proguard rules assets.

@mosuem WDYT?

@dcharkes
Copy link
Collaborator Author

This is done. Thanks @mkustermann!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P2 A bug or feature request we're likely to work on package:hooks_runner package:hooks
Projects
Status: Done
Development

No branches or pull requests

1 participant