@@ -63,14 +63,14 @@ public Artifact Artifact(Product product)
6363 /// </summary>
6464 public static ElasticVersion From ( string managedVersionString )
6565 {
66- ArtifactBuildState GetReleaseState ( string s )
67- {
68- return s . EndsWith ( "-SNAPSHOT" )
66+ ArtifactBuildState GetReleaseState ( string s ) => s . EndsWith ( "-SNAPSHOT" )
6967 ? ArtifactBuildState . Snapshot
7068 : ApiResolver . IsReleasedVersion ( s )
7169 ? ArtifactBuildState . Released
72- : ArtifactBuildState . BuildCandidate ;
73- }
70+ // When the version is not yet released but contains the alpha label, we treat it in the same way as snapshots so it is resolved correctly
71+ : s . IndexOf ( "-alpha" , StringComparison . OrdinalIgnoreCase ) >= 0
72+ ? ArtifactBuildState . Snapshot
73+ : ArtifactBuildState . BuildCandidate ;
7474
7575 if ( string . IsNullOrWhiteSpace ( managedVersionString ) )
7676 return null ;
@@ -88,10 +88,7 @@ ArtifactBuildState GetReleaseState(string s)
8888 if ( state == ArtifactBuildState . BuildCandidate )
8989 buildHash = ApiResolver . LatestBuildHash ( version ) ;
9090 break ;
91- // When the version is not yet released but contains the alpha label, we treat it in the same way as snapshots so it is resolved correctly
92- case { } _ when managedVersionString . EndsWith ( "-snapshot" , StringComparison . OrdinalIgnoreCase )
93- || state != ArtifactBuildState . Released &&
94- managedVersionString . IndexOf ( "-alpha" , StringComparison . OrdinalIgnoreCase ) >= 0 :
91+ case { } _ when managedVersionString . EndsWith ( "-snapshot" , StringComparison . OrdinalIgnoreCase ) :
9592 state = ArtifactBuildState . Snapshot ;
9693 break ;
9794 case { } _ when TryParseBuildCandidate ( managedVersionString , out var v , out buildHash ) :
0 commit comments