@@ -52,7 +52,9 @@ func multiVersionDiff(infoDiff []MultiVersionInfo, packageName string, map1, map
52
52
diff1 = append (diff1 , packInfo1 )
53
53
continue
54
54
} else {
55
- if reflect .DeepEqual (packInfo1 , packInfo2 ) {
55
+ // If a package instance is installed in the same place in Image1 and Image2 with the same version,
56
+ // then they are the same package and should not be included in the diff
57
+ if packInfo1 .Version == packInfo2 .Version {
56
58
delete (map2 , path )
57
59
} else {
58
60
diff1 = append (diff1 , packInfo1 )
@@ -129,17 +131,21 @@ func diffMaps(map1, map2 interface{}) interface{} {
129
131
packageEntry2 := map2Value .MapIndex (pack )
130
132
if ! packageEntry2 .IsValid () {
131
133
diff1 .SetMapIndex (pack , packageEntry1 )
132
- } else if ! reflect . DeepEqual ( packageEntry2 . Interface (), packageEntry1 . Interface ()) {
134
+ } else {
133
135
if multiV {
134
- multiInfoDiff = multiVersionDiff (multiInfoDiff , pack .String (),
135
- packageEntry1 .Interface ().(map [string ]PackageInfo ), packageEntry2 .Interface ().(map [string ]PackageInfo ))
136
+ if ! reflect .DeepEqual (packageEntry2 .Interface (), packageEntry1 .Interface ()) {
137
+ multiInfoDiff = multiVersionDiff (multiInfoDiff , pack .String (),
138
+ packageEntry1 .Interface ().(map [string ]PackageInfo ),
139
+ packageEntry2 .Interface ().(map [string ]PackageInfo ))
140
+ }
136
141
} else {
137
- infoDiff = append (infoDiff , Info {pack .String (), packageEntry1 .Interface ().(PackageInfo ),
138
- packageEntry2 .Interface ().(PackageInfo )})
142
+ packageInfo1 := packageEntry1 .Interface ().(PackageInfo )
143
+ packageInfo2 := packageEntry2 .Interface ().(PackageInfo )
144
+ if packageInfo2 .Version != packageInfo2 .Version {
145
+ infoDiff = append (infoDiff , Info {pack .String (), packageInfo1 , packageInfo2 })
146
+ }
139
147
}
140
148
map2Value .SetMapIndex (pack , reflect.Value {})
141
- } else {
142
- map2Value .SetMapIndex (pack , reflect.Value {})
143
149
}
144
150
}
145
151
for _ , key2 := range map2Value .MapKeys () {
0 commit comments