Skip to content

Commit d50ec30

Browse files
committed
chore: improve dcm, create baseline
1 parent 457b067 commit d50ec30

File tree

13 files changed

+177
-26
lines changed

13 files changed

+177
-26
lines changed

packages/auto_mappr/analysis_options.yaml

+2-5
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,7 @@ dart_code_metrics:
1616
avoid-top-level-members-in-tests:
1717
exclude:
1818
- test/integration/fixture/**
19-
avoid-non-null-assertion: false # TODO
20-
avoid-nullable-interpolation: false # TODO
21-
prefer-boolean-prefixes: false # TODO
22-
avoid-passing-default-values: false # TODO
19+
prefer-boolean-prefixes: false # TODO: release new major version (breaking change)
2320
avoid-commented-out-code: false # code examples in comments
2421
prefer-single-declaration-per-file: false # TODO
25-
prefer-named-parameters: false # TODO
22+
prefer-named-parameters: false # TODO: release new major version (breaking change)

packages/auto_mappr/dcm_baseline.json

+130
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
{
2+
"date": "2025-01-20 12:55:26.396096Z",
3+
"version": "1.26.2",
4+
"paths": {
5+
"lib/src/models/type_converter.dart": {
6+
"avoid-non-null-assertion": [
7+
"49d6910256d6a9925f1f305647170175",
8+
"3e2fb62702f0d6d976c0ef4838e256f3",
9+
"37d7521d3b9436994de3d46bfec19156",
10+
"37d560854197d3d451fa40ebda978adf",
11+
"6002ec186df142e2eeabc594fb05b0cd",
12+
"32d05f2391dfd5a054110f0cf5b00edb",
13+
"2bde3d2541dbd52f427522d8859dddbc",
14+
"4901e165d9d77551c2b961387d8f709b"
15+
]
16+
},
17+
"lib/src/models/field_mapping.dart": {
18+
"avoid-non-null-assertion": [
19+
"4e22d2815561f01ac60242562eb3d477"
20+
]
21+
},
22+
"lib/src/models/source_assignment.dart": {
23+
"avoid-non-null-assertion": [
24+
"8f0912f968e86ab46d0dd647c5d322e9",
25+
"8f0912f968e86ab46d0dd647c5d322e9",
26+
"412aa7c321ce0580e16e5586de44ae45",
27+
"412aa7c321ce0580e16e5586de44ae45"
28+
],
29+
"avoid-nullable-interpolation": [
30+
"165ee04eb4d55330435a841f09c3c6b1"
31+
]
32+
},
33+
"lib/src/extensions/dart_object_extension.dart": {
34+
"avoid-non-null-assertion": [
35+
"0839d20a589c74eb461adbed71774c0c",
36+
"18cabcff3de662dfb212c548a5a39c24"
37+
],
38+
"avoid-nullable-interpolation": [
39+
"cf7dba3d85f84df468ec72f8b3744601"
40+
]
41+
},
42+
"lib/src/generator/auto_mappr_generator.dart": {
43+
"avoid-non-null-assertion": [
44+
"7a50c2efb20fe138dc37e6550e009160",
45+
"b877c976f457e163c51a7c84f5777069",
46+
"695248e6e85f1fecba6bf6c344ea8187",
47+
"9825f25ed373f63c6d3efc8caffaaef1",
48+
"25851cd74f03edbac9719dacc76c4bcc",
49+
"acd1213c9abd408fac46b00b6631d6a2",
50+
"43019f988cd8e5f2b155f1375dc99da2",
51+
"05fe4fffcb9159fd5c0dd62f0e6fb7c5",
52+
"bc359bcc3ec98cd8aada89ff9b0046e9",
53+
"f3c3ceea53e478439edd662d2793cf00",
54+
"ac37c4c51b2a4b1187b271e1f71cde2e",
55+
"48e33839a8de547d03f16d3b4f023b1e"
56+
]
57+
},
58+
"lib/src/builder/methods/private_convert_method_builder.dart": {
59+
"avoid-non-null-assertion": [
60+
"a8022779055b7c4c7bf23042d14e613a"
61+
]
62+
},
63+
"lib/src/builder/assignments/record_assignment_builder.dart": {
64+
"avoid-non-null-assertion": [
65+
"0bd202edba38880d347468eaa934da83",
66+
"3cb7b9402c27519c759bb527c0bf7693",
67+
"3cb7b9402c27519c759bb527c0bf7693"
68+
]
69+
},
70+
"lib/src/builder/assignments/map_assignment_builder.dart": {
71+
"avoid-non-null-assertion": [
72+
"0bd202edba38880d347468eaa934da83",
73+
"3cb7b9402c27519c759bb527c0bf7693",
74+
"0bd202edba38880d347468eaa934da83",
75+
"0bd202edba38880d347468eaa934da83"
76+
]
77+
},
78+
"lib/src/builder/assignments/iterable_assignment_builder.dart": {
79+
"avoid-non-null-assertion": [
80+
"0bd202edba38880d347468eaa934da83",
81+
"3cb7b9402c27519c759bb527c0bf7693",
82+
"0bd202edba38880d347468eaa934da83"
83+
]
84+
},
85+
"lib/src/builder/assignments/nested_object_mixin.dart": {
86+
"avoid-non-null-assertion": [
87+
"3cb7b9402c27519c759bb527c0bf7693",
88+
"02b8861952b1d31c7e3fc701a1196ef3",
89+
"1e8062cd91c977990ce8a7e9808b7a30"
90+
],
91+
"avoid-nullable-interpolation": [
92+
"48d7effa328cb38d0a736b2496a897b0",
93+
"20d7c588ba9f39a442116c71149ea3b8"
94+
]
95+
},
96+
"lib/src/builder/map_model_body_method_builder.dart": {
97+
"avoid-non-null-assertion": [
98+
"a8022779055b7c4c7bf23042d14e613a",
99+
"a8022779055b7c4c7bf23042d14e613a"
100+
]
101+
},
102+
"lib/src/builder/value_assignment_builder.dart": {
103+
"avoid-non-null-assertion": [
104+
"da5b0598f70c2b82fb9db2510920be2c",
105+
"0bd202edba38880d347468eaa934da83",
106+
"0bd202edba38880d347468eaa934da83",
107+
"02b8861952b1d31c7e3fc701a1196ef3",
108+
"1e8062cd91c977990ce8a7e9808b7a30",
109+
"0bd202edba38880d347468eaa934da83"
110+
],
111+
"avoid-nullable-interpolation": [
112+
"019cf3c46b0e37f0339187e7f06d9984",
113+
"019cf3c46b0e37f0339187e7f06d9984"
114+
]
115+
},
116+
"lib/src/builder/map_bodies/class_body_builder.dart": {
117+
"avoid-non-null-assertion": [
118+
"374cdacb7c32728a88ad32f9ec5821ff",
119+
"dfda47d1f6044e6fcb565ff03e9721e3",
120+
"927919a5768cf07ec40df0aca3c14e73",
121+
"24f4441455b612dc6d0d29bf53d82f03"
122+
]
123+
},
124+
"lib/src/builder/map_bodies/enum_body_builder.dart": {
125+
"avoid-non-null-assertion": [
126+
"a8022779055b7c4c7bf23042d14e613a"
127+
]
128+
}
129+
}
130+
}

packages/auto_mappr/lib/src/builder/map_bodies/class_body_builder.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ class ClassBodyBuilder extends MapBodyBuilderBase {
196196
}
197197

198198
void _assertParamFieldCanBeIgnored(ParameterElement param, PropertyAccessorElement sourceField) {
199-
final sourceFieldName = sourceField.getDisplayString(withNullability: true);
199+
final sourceFieldName = sourceField.getDisplayString();
200200
if (param.isPositional && param.type.isNotNullable) {
201201
throw InvalidGenerationSourceError(
202202
"Can't ignore field '$sourceFieldName' as it is positional not-nullable parameter. ($mapping)",

packages/auto_mappr/lib/src/builder/map_bodies/enum_body_builder.dart

+4-4
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ class EnumBodyBuilder extends MapBodyBuilderBase {
1818

1919
// Check that both source and target enums are enums.
2020
if (!isSourceEnum || !isTargetEnum) {
21-
final sourceDisplay = mapping.source.getDisplayString(withNullability: true);
22-
final targetDisplay = mapping.target.getDisplayString(withNullability: true);
21+
final sourceDisplay = mapping.source.getDisplayString();
22+
final targetDisplay = mapping.target.getDisplayString();
2323

2424
throw InvalidGenerationSourceError(
2525
'Failed to map $mapping because ${isSourceEnum ? 'target $targetDisplay' : 'source $sourceDisplay'} is not an enum.',
@@ -35,8 +35,8 @@ class EnumBodyBuilder extends MapBodyBuilderBase {
3535
final sourceIsSubset = targetValues.containsAll(sourceValues);
3636

3737
if (!sourceIsSubset && !mapping.hasWhenNullDefault()) {
38-
final sourceDisplay = mapping.source.getDisplayString(withNullability: true);
39-
final targetDisplay = mapping.target.getDisplayString(withNullability: true);
38+
final sourceDisplay = mapping.source.getDisplayString();
39+
final targetDisplay = mapping.target.getDisplayString();
4040
throw InvalidGenerationSourceError(
4141
"Can't map enum $sourceDisplay into $targetDisplay. Target enum is not superset of source enum. ($mapping)",
4242
);

packages/auto_mappr/lib/src/generator/auto_mappr_generator.dart

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
//ignore_for_file: avoid-dynamic
2-
32
import 'package:analyzer/dart/constant/value.dart';
43
import 'package:analyzer/dart/element/element.dart';
54
import 'package:analyzer/dart/element/type.dart';
@@ -193,7 +192,7 @@ class AutoMapprGenerator extends GeneratorForAnnotation<annotation.AutoMappr> {
193192
),
194193
];
195194
})
196-
// ignore: avoid-slow-collection-methods, fix dcm without refactoring
195+
// ignore: avoid-slow-collection-methods, it's ok to use here
197196
.flattened
198197
.toList();
199198
}

packages/auto_mappr/lib/src/models/auto_mappr_config.dart

+2-2
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@ class AutoMapprConfig {
8080
String _getTypeMappingDocs(TypeMapping typeMapping) {
8181
final trailingPart = typeMapping.hasWhenNullDefault() ? ' -- With default value.' : '.';
8282
// Display without import aliases.
83-
final emittedSource = typeMapping.source.getDisplayString(withNullability: true);
84-
final emittedTarget = typeMapping.target.getDisplayString(withNullability: true);
83+
final emittedSource = typeMapping.source.getDisplayString();
84+
final emittedTarget = typeMapping.target.getDisplayString();
8585

8686
// ignore: avoid-non-ascii-symbols, it is ok
8787
return '/// - `$emittedSource` → `$emittedTarget`$trailingPart';

packages/auto_mappr/lib/src/models/type_converter.dart

+2-2
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ class TypeConverter extends Equatable {
1919

2020
@override
2121
String toString() {
22-
final sourceX = source.getDisplayString(withNullability: true);
23-
final targetX = target.getDisplayString(withNullability: true);
22+
final sourceX = source.getDisplayString();
23+
final targetX = target.getDisplayString();
2424

2525
return 'typeConverter $sourceX -> $targetX';
2626
}

packages/auto_mappr/lib/src/models/type_mapping.dart

+2-2
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,8 @@ class TypeMapping extends Equatable {
7575
@override
7676
String toString() {
7777
// Without import aliases, used to display errors to user.
78-
final sourceAsString = source.getDisplayString(withNullability: true);
79-
final targetAsString = target.getDisplayString(withNullability: true);
78+
final sourceAsString = source.getDisplayString();
79+
final targetAsString = target.getDisplayString();
8080

8181
// ignore: avoid-non-ascii-symbols, it is ok
8282
return '$sourceAsString → $targetAsString';

packages/auto_mappr/test/integration/fixture/custom_mapping.dart

+2-2
Original file line numberDiff line numberDiff line change
@@ -105,9 +105,9 @@ class Mappr extends $Mappr {
105105

106106
static Map<String, int> emptyToMapValue(CustomFunctionFromEmptyDto? _) => {'one': 11, 'two': 22, 'three': 33};
107107

108-
static String convertToNameAndIdPositional(CustomFunctionPositionalDto? dto) => '${dto?.name} #${dto?.id}';
108+
static String convertToNameAndIdPositional(CustomFunctionPositionalDto dto) => '${dto.name} #${dto.id}';
109109

110-
static String convertToNameAndIdNamed(CustomFunctionNamedDto? dto) => '${dto?.name} #${dto?.id}';
110+
static String convertToNameAndIdNamed(CustomFunctionNamedDto dto) => '${dto.name} #${dto.id}';
111111

112112
static DateTime dateTimeFixed() => DateTime(2023);
113113
}

packages/auto_mappr/test/integration/fixture/rename.dart

+2-2
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,9 @@ import 'rename.auto_mappr.dart';
6666
),
6767
])
6868
class Mappr extends $Mappr {
69-
static String convertToNameAndIdPositional(CustomPositionalDto? dto) => '${dto?.name} #${dto?.id}';
69+
static String convertToNameAndIdPositional(CustomPositionalDto dto) => '${dto.name} #${dto.id}';
7070

71-
static String convertToNameAndIdNamed(CustomNamedDto? dto) => '${dto?.name} #${dto?.id}';
71+
static String convertToNameAndIdNamed(CustomNamedDto dto) => '${dto.name} #${dto.id}';
7272
}
7373

7474
// same

packages/auto_mappr_annotation/analysis_options.yaml

-3
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,3 @@ dart_code_metrics:
55
- package:netglade_analysis/dcm.yaml
66
pubspec-rules:
77
prefer-publish-to-none: false
8-
rules:
9-
prefer-boolean-prefixes: false # TODO
10-
prefer-named-parameters: false # TODO
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
{
2+
"date": "2025-01-20 11:07:26.586363Z",
3+
"version": "1.26.2",
4+
"paths": {
5+
"lib/src/auto_mappr_interface.dart": {
6+
"prefer-boolean-prefixes": [
7+
"f8e45531a3ea3d5c1247b004985175a4",
8+
"9696113cbf65a7d0a20c3b28984795f6"
9+
],
10+
"prefer-named-parameters": [
11+
"d2eb52ce2ae9079bc52e9a13a6a44c1e"
12+
]
13+
},
14+
"lib/src/map_type.dart": {
15+
"prefer-boolean-prefixes": [
16+
"2d42e74f6260722660851c540faa9b08",
17+
"4d9c2073afa3c2abb817dceb22c34de6",
18+
"cdf1cce8a80c3ed282b32d792e2d6a76"
19+
]
20+
},
21+
"lib/src/field.dart": {
22+
"prefer-boolean-prefixes": [
23+
"567bc1d268f135496de3d5b946b691f3",
24+
"1d93a811b1cf660fbae038a0f6ea19cb"
25+
]
26+
}
27+
}
28+
}

packages/auto_mappr_annotation/lib/src/map_type.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import 'package:auto_mappr_annotation/src/field.dart';
22
import 'package:auto_mappr_annotation/src/type_converter.dart';
33

44
/// Configured mapping from [SOURCE] to [TARGET].
5-
// ignore: avoid-unused-generics, dcm fix without refactoring
5+
// ignore: avoid-unused-generics, generic are used later in code
66
final class MapType<SOURCE, TARGET> {
77
/// Configuration for [TARGET]'s fields.
88
final List<Field> fields;

0 commit comments

Comments
 (0)