Problem
When using --sentry-define arguments alongside pubspec.yaml configuration, the current logging only shows:
info: Found config from pubspec.yaml
This is misleading because it doesn't indicate that --sentry-define values are also being used and taking precedence over the pubspec values.
Expected Behavior
The plugin should clearly log:
-
Override notifications - When a --sentry-define argument overrides a value from pubspec.yaml or sentry.properties:
info: 'release' overridden by --sentry-define: "1.0.0" (was: "0.9.0" from pubspec.yaml)
-
Final resolved configuration - At debug level, show what values are actually being used:
debug: Resolved configuration:
- release: 1.0.0 (from --sentry-define)
- project: my-project (from pubspec.yaml)
- org: my-org (from environment variable)
...
Current Behavior
The merge logic in ConfigurationValues.merged() silently picks the highest-precedence value without any logging:
version: args.version ?? file.version,
Benefits
- Easier debugging when configuration isn't working as expected
- Clear visibility into which configuration sources are being used
- Helps users understand the precedence order (env vars > args > file)
Implementation Notes
- Override warnings could be logged at
info level
- Full resolved config could be logged at
debug level to avoid noise
- Should indicate the source of each value (--sentry-define, pubspec.yaml, sentry.properties, environment variable, default)
Problem
When using
--sentry-definearguments alongsidepubspec.yamlconfiguration, the current logging only shows:This is misleading because it doesn't indicate that
--sentry-definevalues are also being used and taking precedence over the pubspec values.Expected Behavior
The plugin should clearly log:
Override notifications - When a
--sentry-defineargument overrides a value from pubspec.yaml or sentry.properties:Final resolved configuration - At debug level, show what values are actually being used:
Current Behavior
The merge logic in
ConfigurationValues.merged()silently picks the highest-precedence value without any logging:Benefits
Implementation Notes
infoleveldebuglevel to avoid noise