@@ -75,15 +75,15 @@ const isValidSemver = (val: unknown): val is string => {
75
75
/**
76
76
* Pick the higher semver version.
77
77
*/
78
- export const semverMax : StrategyFn = ( { ours, theirs } ) => {
78
+ export const semverMax : StrategyFn = ( { ours, theirs, logger, filePath, ...others } ) => {
79
+ logger . debug (
80
+ filePath ?? "semverMax" ,
81
+ JSON . stringify ( { ours, theirs, filePath, ...others } , null , 2 ) ,
82
+ ) ;
79
83
if ( isValidSemver ( ours ) && isValidSemver ( theirs ) ) {
80
84
const winner = compareVersions ( ours , theirs ) >= 0 ? ours : theirs ;
81
85
return { status : StrategyStatus_OK , value : winner } ;
82
86
}
83
- if ( pluginConfig . preferValid ) {
84
- if ( isValidSemver ( ours ) ) return { status : StrategyStatus_OK , value : ours } ;
85
- if ( isValidSemver ( theirs ) ) return { status : StrategyStatus_OK , value : theirs } ;
86
- }
87
87
return handleFallback ( { ours, theirs } ) ;
88
88
} ;
89
89
@@ -95,10 +95,6 @@ export const semverMin: StrategyFn = ({ ours, theirs }) => {
95
95
const winner = compareVersions ( ours , theirs ) <= 0 ? ours : theirs ;
96
96
return { status : StrategyStatus_OK , value : winner } ;
97
97
}
98
- if ( pluginConfig . preferValid ) {
99
- if ( isValidSemver ( ours ) ) return { status : StrategyStatus_OK , value : ours } ;
100
- if ( isValidSemver ( theirs ) ) return { status : StrategyStatus_OK , value : theirs } ;
101
- }
102
98
return handleFallback ( { ours, theirs } ) ;
103
99
} ;
104
100
@@ -107,9 +103,6 @@ export const semverMin: StrategyFn = ({ ours, theirs }) => {
107
103
*/
108
104
export const semverOurs : StrategyFn = ( { ours, theirs } ) => {
109
105
if ( isValidSemver ( ours ) ) return { status : StrategyStatus_OK , value : ours } ;
110
- if ( pluginConfig . preferValid && isValidSemver ( theirs ) ) {
111
- return { status : StrategyStatus_OK , value : theirs } ;
112
- }
113
106
return handleFallback ( { ours, theirs } ) ;
114
107
} ;
115
108
@@ -118,9 +111,6 @@ export const semverOurs: StrategyFn = ({ ours, theirs }) => {
118
111
*/
119
112
export const semverTheirs : StrategyFn = ( { ours, theirs } ) => {
120
113
if ( isValidSemver ( theirs ) ) return { status : StrategyStatus_OK , value : theirs } ;
121
- if ( pluginConfig . preferValid && isValidSemver ( ours ) ) {
122
- return { status : StrategyStatus_OK , value : ours } ;
123
- }
124
114
return handleFallback ( { ours, theirs } ) ;
125
115
} ;
126
116
@@ -134,6 +124,10 @@ const handleFallback = ({
134
124
ours : unknown ;
135
125
theirs : unknown ;
136
126
} ) : ReturnType < StrategyFn > => {
127
+ if ( pluginConfig . preferValid ) {
128
+ if ( isValidSemver ( ours ) ) return { status : StrategyStatus_OK , value : ours } ;
129
+ if ( isValidSemver ( theirs ) ) return { status : StrategyStatus_OK , value : theirs } ;
130
+ }
137
131
switch ( pluginConfig . fallback ) {
138
132
case "ours" :
139
133
return { status : StrategyStatus_OK , value : ours } ;
0 commit comments