@@ -102,7 +102,6 @@ impl OptVersionReq {
102
102
pub fn is_locked ( & self ) -> bool {
103
103
matches ! ( self , OptVersionReq :: Locked ( ..) )
104
104
}
105
-
106
105
/// Gets the version to which this req is locked, if any.
107
106
pub fn locked_version ( & self ) -> Option < & Version > {
108
107
match self {
@@ -116,7 +115,7 @@ impl OptVersionReq {
116
115
/// The logic here is temporary, we'll have to consider more boundary conditions later,
117
116
/// and we're not sure if this part of the functionality should be implemented in semver or cargo.
118
117
pub fn matches_prerelease ( & self , version : & Version ) -> bool {
119
- if version. is_prerelease ( ) {
118
+ if version. is_prerelease ( ) && matches ! ( self , OptVersionReq :: Req ( _ ) ) {
120
119
let mut version = version. clone ( ) ;
121
120
version. pre = semver:: Prerelease :: EMPTY ;
122
121
return self . matches ( & version) ;
@@ -251,9 +250,9 @@ mod matches_prerelease {
251
250
assert ! ( req. matches_prerelease( & to_ver) ) ;
252
251
253
252
let req = OptVersionReq :: Locked ( to_ver. clone ( ) , req_ver. clone ( ) ) ;
254
- assert ! ( ! req. matches_prerelease( & to_ver) ) ;
253
+ assert ! ( req. matches_prerelease( & to_ver) ) ;
255
254
256
255
let req = OptVersionReq :: Locked ( to_ver. clone ( ) , req_ver. clone ( ) ) ;
257
- assert ! ( ! req. matches_prerelease( & to_ver) ) ;
256
+ assert ! ( req. matches_prerelease( & to_ver) ) ;
258
257
}
259
258
}
0 commit comments