Fix/ensured that we not load multiple times same datatypes in each context #15573
CodeScene PR Check
❌ Code Health Quality Gates: FAILED
- Declining Code Health: 9 findings(s) 🚩
- Improving Code Health: 4 findings(s) ✅
- Affected Hotspots: 1 files(s) 🔥
Recommended Review Level: Detailed -- Inspect the code that degrades in code health.
View detailed results in CodeScene
Details
🚩 Declining Code Health (highest to lowest):
- Overall Code Complexity BlockValuePropertyValueEditorBase.cs
- Code Duplication GridPropertyEditor.cs
- Complex Method NestedContentPropertyEditor.cs: ToEditor
- Primitive Obsession DataValueEditor.cs
- Complex Method BlockValuePropertyValueEditorBase.cs: MapBlockItemDataToEditor
- Missing Arguments Abstractions MultiUrlPickerValueEditor.cs
- Primitive Obsession NestedContentPropertyEditor.cs
- Complex Method NestedContentPropertyEditor.cs: FromEditor
- Bumpy Road Ahead NestedContentPropertyEditor.cs: ToEditor
✅ Improving Code Health:
- Overall Code Complexity DataValueEditor.cs
- Overall Code Complexity NestedContentPropertyEditor.cs
- Missing Arguments Abstractions GridPropertyEditor.cs
- Missing Arguments Abstractions RichTextPropertyEditor.cs 🔥
Annotations
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
❌ New issue: Complex Method
MapBlockItemDataToEditor has a cyclomatic complexity of 11, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
❌ New issue: Overall Code Complexity
This module has a mean cyclomatic complexity of 4.57 across 7 functions. The mean complexity threshold is 4. This file has many conditional statements (e.g. if, for, while) across its implementation, leading to lower code health. Avoid adding more conditionals.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
❌ Getting worse: Complex Method
ToEditor increases in cyclomatic complexity from 9 to 12, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
❌ Getting worse: Complex Method
FromEditor increases in cyclomatic complexity from 9 to 11, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
❌ New issue: Bumpy Road Ahead
ToEditor has 2 blocks with nested conditional logic. Any nesting of 2 or deeper is considered. Threshold is one single, nested block per function. The Bumpy Road code smell is a function that contains multiple chunks of nested conditional logic. The deeper the nesting and the more bumps, the lower the code health.
Check notice on line 1 in src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
✅ Getting better: Overall Code Complexity
The mean cyclomatic complexity decreases from 4.18 to 4.11, threshold = 4. This file has many conditional statements (e.g. if, for, while) across its implementation, leading to lower code health. Avoid adding more conditionals.
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
ℹ New issue: Deep, Nested Complexity
ToEditor has a nested complexity depth of 4, threshold = 4. This function contains deeply nested logic such as if statements and/or loops. The deeper the nesting, the lower the code health.
Check warning on line 1 in src/Umbraco.Infrastructure/PropertyEditors/NestedContentPropertyEditor.cs
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
❌ New issue: Primitive Obsession
In this module, 31.1% of all function arguments are primitive types, threshold = 30.0%. The functions in this file have too many primitive types (e.g. int, double, float) in their function argument lists. Using many primitive types lead to the code smell Primitive Obsession. Avoid adding more primitive arguments.
Check notice on line 1 in src/Umbraco.Infrastructure/PropertyEditors/RichTextPropertyEditor.cs
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
✅ Getting better: Missing Arguments Abstractions
The average number of function arguments decreases from 4.40 to 4.29, threshold = 4.00. The functions in this file have too many arguments, indicating a lack of encapsulation or too many responsibilities in the same functions. Avoid adding more.
Check notice on line 1 in src/Umbraco.Core/PropertyEditors/DataValueEditor.cs
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
✅ Getting better: Overall Code Complexity
The mean cyclomatic complexity decreases from 8.22 to 6.91, threshold = 4. This file has many conditional statements (e.g. if, for, while) across its implementation, leading to lower code health. Avoid adding more conditionals.
Check warning on line 1 in src/Umbraco.Core/PropertyEditors/DataValueEditor.cs
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
❌ New issue: Primitive Obsession
In this module, 43.3% of all function arguments are primitive types, threshold = 30.0%. The functions in this file have too many primitive types (e.g. int, double, float) in their function argument lists. Using many primitive types lead to the code smell Primitive Obsession. Avoid adding more primitive arguments.
Check warning on line 196 in src/Umbraco.Infrastructure/PropertyEditors/GridPropertyEditor.cs
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
❌ New issue: Code Duplication
The module contains 2 functions with similar structure: FromEditor,FromEditor. Avoid duplicated, aka copy-pasted, code inside the module. More duplication lowers the code health.
Check notice on line 1 in src/Umbraco.Infrastructure/PropertyEditors/GridPropertyEditor.cs
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
✅ Getting better: Missing Arguments Abstractions
The average number of function arguments decreases from 5.00 to 4.77, threshold = 4.00. The functions in this file have too many arguments, indicating a lack of encapsulation or too many responsibilities in the same functions. Avoid adding more.
Check warning on line 1 in src/Umbraco.Infrastructure/PropertyEditors/MultiUrlPickerValueEditor.cs
codescene-delta-analysis / CodeScene Cloud Delta Analysis (contrib)
❌ New issue: Missing Arguments Abstractions
The average number of function arguments in this module is 5.25 across 8 functions. The average arguments threshold is 4.00. The functions in this file have too many arguments, indicating a lack of encapsulation or too many responsibilities in the same functions. Avoid adding more.