diff --git a/CHANGELOG.md b/CHANGELOG.md index 55883abf6..53499a5f6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 _No unreleased changes_ +## [3.0.0-pre14] - 2024-11-21 + +### Added +- Unwrap EnvironmentAttributeKey for logging by @TimLariviere + ## [3.0.0-pre13] - 2024-11-21 ### Added @@ -182,8 +187,9 @@ _No unreleased changes_ ### Changed - Fabulous.XamarinForms & Fabulous.MauiControls have been moved been out of the Fabulous repository. Find them in their own repositories: [https://github.com/fabulous-dev/Fabulous.XamarinForms](https://github.com/fabulous-dev/Fabulous.XamarinForms) / [https://github.com/fabulous-dev/Fabulous.MauiControls](https://github.com/fabulous-dev/Fabulous.MauiControls) -[unreleased]: https://github.com/fabulous-dev/Fabulous/compare/3.0.0-pre13...HEAD -[3.0.0-pre12]: https://github.com/fabulous-dev/Fabulous/releases/tag/3.0.0-pre13 +[unreleased]: https://github.com/fabulous-dev/Fabulous/compare/3.0.0-pre14...HEAD +[3.0.0-pre14]: https://github.com/fabulous-dev/Fabulous/releases/tag/3.0.0-pre14 +[3.0.0-pre13]: https://github.com/fabulous-dev/Fabulous/releases/tag/3.0.0-pre13 [3.0.0-pre12]: https://github.com/fabulous-dev/Fabulous/releases/tag/3.0.0-pre12 [3.0.0-pre11]: https://github.com/fabulous-dev/Fabulous/releases/tag/3.0.0-pre11 [3.0.0-pre10]: https://github.com/fabulous-dev/Fabulous/releases/tag/3.0.0-pre10 diff --git a/src/Fabulous/Builders.fs b/src/Fabulous/Builders.fs index 2ddb16947..4260cdc19 100644 --- a/src/Fabulous/Builders.fs +++ b/src/Fabulous/Builders.fs @@ -138,7 +138,7 @@ type WidgetBuilder<'msg, 'marker when 'msg: equality> = let attr = { Key = key #if DEBUG - DebugName = $"Environment.{key}" + DebugName = let (EnvironmentAttributeKey key) = key in "Environment." + key #endif Value = value } diff --git a/src/Fabulous/EnvironmentContext.fs b/src/Fabulous/EnvironmentContext.fs index ebc54ee39..e96e08e3d 100644 --- a/src/Fabulous/EnvironmentContext.fs +++ b/src/Fabulous/EnvironmentContext.fs @@ -30,7 +30,7 @@ and [] EnvironmentContext(logger: Logger, inheritedContext: En null else inheritedContext.ValueChanged.Subscribe(fun args -> - logger.Log(LogLevel.Debug, $"Env '{id}': Propagating '{args.Key}' change from '{args.OriginEnvId}'") + logger.Log(LogLevel.Debug, let (EnvironmentAttributeKey key) = args.Key in $"Env '{id}': Propagating '{key}' change from '{args.OriginEnvId}'") valueChanged.Trigger(args)) new(logger: Logger) = new EnvironmentContext(logger, null) @@ -46,7 +46,7 @@ and [] EnvironmentContext(logger: Logger, inheritedContext: En ValueNone member internal this.SetInternal<'T>(key: EnvironmentAttributeKey, value: 'T, fromUserCode: bool) = - logger.Log(LogLevel.Debug, $"EnvironmentContext '{id}' set value '{key}' to '{value}'") + logger.Log(LogLevel.Debug, let (EnvironmentAttributeKey key) = key in $"EnvironmentContext '{id}' set value '{key}' to '{value}'") let boxedValue = box value values[key] <- boxedValue valueChanged.Trigger(EnvironmentValueChanged(id, fromUserCode, key, ValueSome boxedValue)) @@ -68,7 +68,7 @@ and [] EnvironmentContext(logger: Logger, inheritedContext: En let fromUserCode = defaultArg fromUserCode true if values.ContainsKey(key.Key) || inheritedContext = null then - logger.Log(LogLevel.Debug, $"EnvironmentContext '{id}' set value '{key.Key}' to '{value}'") + logger.Log(LogLevel.Debug, let (EnvironmentAttributeKey key) = key.Key in $"EnvironmentContext '{id}' set value '{key}' to '{value}'") let boxedValue = box value values[key.Key] <- boxedValue valueChanged.Trigger(EnvironmentValueChanged(id, fromUserCode, key.Key, ValueSome boxedValue))