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
collection: Needed for equality checks, hashcodes etc. Unlikely to ever become 2.0.
meta: Unlikely to ever become 2.0.
pub_semver: Unlikely to ever become 2.0.
To argue:
logging: Love it or hate it, but standardizing a logger in a layered architecture makes things so much easier. (E.g. flutter_tools calls native_assets_builder, calls native_assets_cli, calls cli_config, which parses YAML, and at every level we can log errors. Which means we don't have to catch a gazillion different exceptions everywhere in the code.) We could come up with our own logging abstraction, but we'd need to share it across a layer of packages.
To remove:
crypto: We only use it for hashing the BuildConfig fields. I'm not aware of such functionality in dart:. We could probably move the code to native_assets_builder though. Or we could take an hashing function argument.
Comment on testing hooks: This might introduce more dependencies, such as package:test, but there is no real way around this. Extracting testing into a separate package doesn't help, as anyone using package:hook would also use package:hook_test.
To get the name of the current package, parsing the pubspec introduces a dependency on package:yaml, so we might not remove it after all.
#946 (comment)
(manually deleted dev dependencies)
To keep:
collection
: Needed for equality checks, hashcodes etc. Unlikely to ever become 2.0.meta
: Unlikely to ever become 2.0.pub_semver
: Unlikely to ever become 2.0.To argue:
logging
: Love it or hate it, but standardizing a logger in a layered architecture makes things so much easier. (E.g. flutter_tools calls native_assets_builder, calls native_assets_cli, calls cli_config, which parses YAML, and at every level we can log errors. Which means we don't have to catch a gazillion different exceptions everywhere in the code.) We could come up with our own logging abstraction, but we'd need to share it across a layer of packages.To remove:
crypto
: We only use it for hashing theBuildConfig
fields. I'm not aware of such functionality indart:
. We could probably move the code tonative_assets_builder
though. Or we could take an hashing function argument.yaml
&yaml_edit
: Eventually, we'll delete the dependency ([native_assets_builder] build input and output should be JSON instead of YAML #991).cli_config
as a dependency then.The text was updated successfully, but these errors were encountered: