@@ -27,7 +27,7 @@ export class RetrieveDeltaStrategy {
27
27
'binary' : this . isBinaryEqual . bind ( this ) ,
28
28
'default' : this . isStringEqual . bind ( this ) ,
29
29
// Custom comparers
30
- 'InstalledPackage' : ( a , b ) => this . isPackageNewer ( a , b ) ,
30
+ 'InstalledPackage' : ( a , b ) => ! this . isPackageNewer ( a , b ) ,
31
31
}
32
32
33
33
constructor (
@@ -167,20 +167,19 @@ export class RetrieveDeltaStrategy {
167
167
const parsedB = XML . parse ( b , { arrayMode : options ?. arrayMode , ignoreAttributes : true } ) ;
168
168
169
169
// Compare parsed XML
170
- const diff = deepCompare ( parsedA , parsedB , {
171
- primitiveCompare : this . primitiveCompare ,
172
- ignoreArrayOrder : ! options ?. strictOrder ,
173
- ignoreExtraProperties : ! ! options ?. ignoreExtra
174
- } ) ;
175
- return ! ! diff ;
170
+ return deepCompare ( parsedA , parsedB , {
171
+ primitiveCompare : this . primitiveCompare ,
172
+ ignoreArrayOrder : ! options ?. strictOrder ,
173
+ ignoreExtraProperties : ! ! options ?. ignoreExtra
174
+ } ) ;
176
175
}
177
176
178
177
private isPackageNewer ( a : Buffer | string , b : Buffer | string ) : boolean {
179
178
const localMeta = XML . parse ( a , { arrayMode : false , ignoreAttributes : true } ) ;
180
179
const orgMeta = XML . parse ( b , { arrayMode : false , ignoreAttributes : true } ) ;
181
180
182
- const localVersion = parseFloat ( localMeta . versionNumber ) ;
183
- const orgVersion = parseFloat ( orgMeta . versionNumber ) ;
181
+ const localVersion = parseFloat ( localMeta . InstalledPackage ?. versionNumber ) ;
182
+ const orgVersion = parseFloat ( orgMeta . InstalledPackage ?. versionNumber ) ;
184
183
if ( isNaN ( localVersion ) || isNaN ( orgVersion ) ) {
185
184
return true ;
186
185
}
0 commit comments