Commit dce6885
committed
[ty] Support finding dependencies in system Pythons that ty is installed into
Fixes an issue where ty couldn't resolve imports from packages installed
in a system Python environment when ty itself was installed directly in
that system Python (rather than in a virtual environment).
Previously, `SysPrefixPathOrigin::SelfEnvironment` was treated as requiring
a virtual environment (with `pyvenv.cfg`), which caused discovery to fail
for system Python installations. This change allows ty to fall back to
treating its own environment as a `SystemEnvironment` when no `pyvenv.cfg`
is found.
Additionally, this change implements correct priority ordering:
- When ty is installed in a virtual environment (e.g., `uvx --with ...`),
ty's venv takes priority over other discovered environments
- When ty is installed in a system Python, discovered environments (like
`.venv`) take priority over the system Python's site-packages
Fixes astral-sh/ty#2068
https://claude.ai/code/session_01885t5j7zeT78vRZCtu8X9C1 parent 77a1740 commit dce6885
File tree
3 files changed
+128
-26
lines changed- crates
- ty_project/src/metadata
- ty_site_packages/src
- ty/tests/cli
3 files changed
+128
-26
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2181 | 2181 | | |
2182 | 2182 | | |
2183 | 2183 | | |
2184 | | - | |
| 2184 | + | |
2185 | 2185 | | |
2186 | 2186 | | |
2187 | 2187 | | |
| |||
2199 | 2199 | | |
2200 | 2200 | | |
2201 | 2201 | | |
2202 | | - | |
| 2202 | + | |
2203 | 2203 | | |
2204 | 2204 | | |
2205 | 2205 | | |
| |||
2211 | 2211 | | |
2212 | 2212 | | |
2213 | 2213 | | |
| 2214 | + | |
| 2215 | + | |
| 2216 | + | |
| 2217 | + | |
| 2218 | + | |
| 2219 | + | |
| 2220 | + | |
| 2221 | + | |
| 2222 | + | |
| 2223 | + | |
| 2224 | + | |
| 2225 | + | |
| 2226 | + | |
| 2227 | + | |
| 2228 | + | |
| 2229 | + | |
| 2230 | + | |
| 2231 | + | |
| 2232 | + | |
| 2233 | + | |
| 2234 | + | |
| 2235 | + | |
| 2236 | + | |
| 2237 | + | |
| 2238 | + | |
| 2239 | + | |
| 2240 | + | |
| 2241 | + | |
| 2242 | + | |
| 2243 | + | |
| 2244 | + | |
| 2245 | + | |
| 2246 | + | |
| 2247 | + | |
| 2248 | + | |
| 2249 | + | |
| 2250 | + | |
| 2251 | + | |
| 2252 | + | |
| 2253 | + | |
| 2254 | + | |
| 2255 | + | |
| 2256 | + | |
| 2257 | + | |
| 2258 | + | |
| 2259 | + | |
| 2260 | + | |
| 2261 | + | |
| 2262 | + | |
| 2263 | + | |
| 2264 | + | |
| 2265 | + | |
| 2266 | + | |
| 2267 | + | |
| 2268 | + | |
| 2269 | + | |
| 2270 | + | |
| 2271 | + | |
| 2272 | + | |
| 2273 | + | |
| 2274 | + | |
| 2275 | + | |
| 2276 | + | |
| 2277 | + | |
| 2278 | + | |
| 2279 | + | |
| 2280 | + | |
| 2281 | + | |
| 2282 | + | |
| 2283 | + | |
| 2284 | + | |
| 2285 | + | |
| 2286 | + | |
| 2287 | + | |
2214 | 2288 | | |
2215 | 2289 | | |
2216 | 2290 | | |
2217 | 2291 | | |
2218 | | - | |
2219 | | - | |
| 2292 | + | |
| 2293 | + | |
2220 | 2294 | | |
2221 | | - | |
2222 | | - | |
| 2295 | + | |
| 2296 | + | |
| 2297 | + | |
| 2298 | + | |
2223 | 2299 | | |
2224 | | - | |
2225 | | - | |
2226 | | - | |
2227 | | - | |
2228 | 2300 | | |
2229 | 2301 | | |
2230 | 2302 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
183 | 183 | | |
184 | 184 | | |
185 | 185 | | |
186 | | - | |
| 186 | + | |
187 | 187 | | |
188 | 188 | | |
189 | 189 | | |
190 | 190 | | |
191 | 191 | | |
192 | | - | |
193 | | - | |
| 192 | + | |
194 | 193 | | |
195 | 194 | | |
196 | 195 | | |
| |||
209 | 208 | | |
210 | 209 | | |
211 | 210 | | |
212 | | - | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
213 | 224 | | |
214 | 225 | | |
215 | | - | |
| 226 | + | |
216 | 227 | | |
217 | 228 | | |
218 | 229 | | |
| |||
521 | 532 | | |
522 | 533 | | |
523 | 534 | | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
524 | 539 | | |
525 | 540 | | |
526 | 541 | | |
527 | | - | |
| 542 | + | |
528 | 543 | | |
529 | 544 | | |
530 | 545 | | |
| |||
538 | 553 | | |
539 | 554 | | |
540 | 555 | | |
| 556 | + | |
| 557 | + | |
541 | 558 | | |
542 | 559 | | |
543 | 560 | | |
544 | 561 | | |
545 | 562 | | |
546 | | - | |
| 563 | + | |
547 | 564 | | |
548 | 565 | | |
549 | | - | |
| 566 | + | |
550 | 567 | | |
551 | 568 | | |
552 | 569 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
270 | 270 | | |
271 | 271 | | |
272 | 272 | | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
273 | 278 | | |
274 | 279 | | |
275 | 280 | | |
| |||
1618 | 1623 | | |
1619 | 1624 | | |
1620 | 1625 | | |
1621 | | - | |
1622 | | - | |
1623 | | - | |
1624 | | - | |
1625 | | - | |
1626 | | - | |
1627 | | - | |
1628 | | - | |
| 1626 | + | |
| 1627 | + | |
1629 | 1628 | | |
1630 | 1629 | | |
1631 | 1630 | | |
| |||
2095 | 2094 | | |
2096 | 2095 | | |
2097 | 2096 | | |
| 2097 | + | |
| 2098 | + | |
| 2099 | + | |
| 2100 | + | |
| 2101 | + | |
| 2102 | + | |
| 2103 | + | |
| 2104 | + | |
| 2105 | + | |
| 2106 | + | |
| 2107 | + | |
| 2108 | + | |
| 2109 | + | |
| 2110 | + | |
2098 | 2111 | | |
2099 | 2112 | | |
2100 | 2113 | | |
| |||
0 commit comments