@@ -6,13 +6,16 @@ use anyhow::Context;
6
6
use futures:: StreamExt ;
7
7
8
8
use object:: FileKind ;
9
- use std:: process:: { Command , Stdio } ;
9
+ use std:: {
10
+ process:: { Command , Stdio } ,
11
+ str:: FromStr ,
12
+ } ;
10
13
use url:: Url ;
11
14
use {
12
15
crate :: json:: parse_python_json,
13
16
anyhow:: { anyhow, Result } ,
14
17
once_cell:: sync:: Lazy ,
15
- semver :: VersionReq ,
18
+ pep440_rs :: VersionSpecifier ,
16
19
std:: {
17
20
collections:: BTreeMap ,
18
21
io:: { BufRead , Read , Write } ,
@@ -27,7 +30,7 @@ pub struct TripleRelease {
27
30
/// Build suffix to use for the `install_only` artifact.
28
31
pub install_only_suffix : & ' static str ,
29
32
/// Minimum Python version this triple is released for.
30
- pub python_version_requirement : Option < VersionReq > ,
33
+ pub python_version_requirement : Option < VersionSpecifier > ,
31
34
}
32
35
33
36
pub static RELEASE_TRIPLES : Lazy < BTreeMap < & ' static str , TripleRelease > > = Lazy :: new ( || {
@@ -107,7 +110,7 @@ pub static RELEASE_TRIPLES: Lazy<BTreeMap<&'static str, TripleRelease>> = Lazy::
107
110
TripleRelease {
108
111
suffixes : linux_suffixes_nopgo. clone ( ) ,
109
112
install_only_suffix : "lto" ,
110
- python_version_requirement : Some ( VersionReq :: parse ( ">=3.9" ) . unwrap ( ) ) ,
113
+ python_version_requirement : Some ( VersionSpecifier :: from_str ( ">=3.9" ) . unwrap ( ) ) ,
111
114
} ,
112
115
) ;
113
116
@@ -116,7 +119,7 @@ pub static RELEASE_TRIPLES: Lazy<BTreeMap<&'static str, TripleRelease>> = Lazy::
116
119
TripleRelease {
117
120
suffixes : linux_suffixes_nopgo. clone ( ) ,
118
121
install_only_suffix : "lto" ,
119
- python_version_requirement : Some ( VersionReq :: parse ( ">=3.9" ) . unwrap ( ) ) ,
122
+ python_version_requirement : Some ( VersionSpecifier :: from_str ( ">=3.9" ) . unwrap ( ) ) ,
120
123
} ,
121
124
) ;
122
125
@@ -125,7 +128,7 @@ pub static RELEASE_TRIPLES: Lazy<BTreeMap<&'static str, TripleRelease>> = Lazy::
125
128
TripleRelease {
126
129
suffixes : linux_suffixes_nopgo. clone ( ) ,
127
130
install_only_suffix : "lto" ,
128
- python_version_requirement : Some ( VersionReq :: parse ( ">=3.9" ) . unwrap ( ) ) ,
131
+ python_version_requirement : Some ( VersionSpecifier :: from_str ( ">=3.9" ) . unwrap ( ) ) ,
129
132
} ,
130
133
) ;
131
134
@@ -134,7 +137,7 @@ pub static RELEASE_TRIPLES: Lazy<BTreeMap<&'static str, TripleRelease>> = Lazy::
134
137
TripleRelease {
135
138
suffixes : linux_suffixes_nopgo. clone ( ) ,
136
139
install_only_suffix : "lto" ,
137
- python_version_requirement : Some ( VersionReq :: parse ( ">=3.9" ) . unwrap ( ) ) ,
140
+ python_version_requirement : Some ( VersionSpecifier :: from_str ( ">=3.9" ) . unwrap ( ) ) ,
138
141
} ,
139
142
) ;
140
143
@@ -151,23 +154,23 @@ pub static RELEASE_TRIPLES: Lazy<BTreeMap<&'static str, TripleRelease>> = Lazy::
151
154
TripleRelease {
152
155
suffixes : linux_suffixes_pgo. clone ( ) ,
153
156
install_only_suffix : "pgo+lto" ,
154
- python_version_requirement : Some ( VersionReq :: parse ( ">=3.9" ) . unwrap ( ) ) ,
157
+ python_version_requirement : Some ( VersionSpecifier :: from_str ( ">=3.9" ) . unwrap ( ) ) ,
155
158
} ,
156
159
) ;
157
160
h. insert (
158
161
"x86_64_v3-unknown-linux-gnu" ,
159
162
TripleRelease {
160
163
suffixes : linux_suffixes_pgo. clone ( ) ,
161
164
install_only_suffix : "pgo+lto" ,
162
- python_version_requirement : Some ( VersionReq :: parse ( ">=3.9" ) . unwrap ( ) ) ,
165
+ python_version_requirement : Some ( VersionSpecifier :: from_str ( ">=3.9" ) . unwrap ( ) ) ,
163
166
} ,
164
167
) ;
165
168
h. insert (
166
169
"x86_64_v4-unknown-linux-gnu" ,
167
170
TripleRelease {
168
171
suffixes : linux_suffixes_nopgo. clone ( ) ,
169
172
install_only_suffix : "lto" ,
170
- python_version_requirement : Some ( VersionReq :: parse ( ">=3.9" ) . unwrap ( ) ) ,
173
+ python_version_requirement : Some ( VersionSpecifier :: from_str ( ">=3.9" ) . unwrap ( ) ) ,
171
174
} ,
172
175
) ;
173
176
h. insert (
@@ -183,23 +186,23 @@ pub static RELEASE_TRIPLES: Lazy<BTreeMap<&'static str, TripleRelease>> = Lazy::
183
186
TripleRelease {
184
187
suffixes : linux_suffixes_nopgo. clone ( ) ,
185
188
install_only_suffix : "lto" ,
186
- python_version_requirement : Some ( VersionReq :: parse ( ">=3.9" ) . unwrap ( ) ) ,
189
+ python_version_requirement : Some ( VersionSpecifier :: from_str ( ">=3.9" ) . unwrap ( ) ) ,
187
190
} ,
188
191
) ;
189
192
h. insert (
190
193
"x86_64_v3-unknown-linux-musl" ,
191
194
TripleRelease {
192
195
suffixes : linux_suffixes_nopgo. clone ( ) ,
193
196
install_only_suffix : "lto" ,
194
- python_version_requirement : Some ( VersionReq :: parse ( ">=3.9" ) . unwrap ( ) ) ,
197
+ python_version_requirement : Some ( VersionSpecifier :: from_str ( ">=3.9" ) . unwrap ( ) ) ,
195
198
} ,
196
199
) ;
197
200
h. insert (
198
201
"x86_64_v4-unknown-linux-musl" ,
199
202
TripleRelease {
200
203
suffixes : linux_suffixes_nopgo. clone ( ) ,
201
204
install_only_suffix : "lto" ,
202
- python_version_requirement : Some ( VersionReq :: parse ( ">=3.9" ) . unwrap ( ) ) ,
205
+ python_version_requirement : Some ( VersionSpecifier :: from_str ( ">=3.9" ) . unwrap ( ) ) ,
203
206
} ,
204
207
) ;
205
208
0 commit comments