github-actions[bot]
310a9d3426
Sync latest Python releases ( #14847 )
...
Automated update for Python releases.
Co-authored-by: zanieb <2586601+zanieb@users.noreply.github.com>
2025-07-23 11:01:09 -05:00
github-actions[bot]
4175e3eb4d
Sync latest Python releases ( #14581 )
...
Automated update for Python releases.
Co-authored-by: zanieb <2586601+zanieb@users.noreply.github.com>
2025-07-13 08:20:51 -05:00
github-actions[bot]
92716606e5
Sync latest Python releases ( #14531 )
...
Automated update for Python releases.
Co-authored-by: zanieb <2586601+zanieb@users.noreply.github.com>
2025-07-10 00:40:58 +00:00
github-actions[bot]
3bb8ac610c
Sync latest Python releases ( #14426 )
...
Automated update for Python releases.
Co-authored-by: zanieb <2586601+zanieb@users.noreply.github.com>
2025-07-02 14:51:17 -05:00
github-actions[bot]
a3db9a9ae4
Sync latest Python releases ( #14381 )
...
Automated update for Python releases.
Co-authored-by: zanieb <2586601+zanieb@users.noreply.github.com>
2025-07-01 03:44:18 +00:00
github-actions[bot]
db14cc3005
Sync latest Python releases ( #14339 )
...
Automated update for Python releases.
Co-authored-by: zanieb <2586601+zanieb@users.noreply.github.com>
2025-06-28 03:08:53 +00:00
github-actions[bot]
d9c34259b3
Sync latest Python releases ( #13996 )
...
Automated update for Python releases.
---------
Co-authored-by: zanieb <2586601+zanieb@users.noreply.github.com>
Co-authored-by: Zanie Blue <contact@zanie.dev>
2025-06-12 09:47:28 -05:00
github-actions[bot]
357fc91c3c
Sync latest Python releases ( #13956 )
...
Automated update for Python releases.
Co-authored-by: zanieb <2586601+zanieb@users.noreply.github.com>
2025-06-10 21:13:32 -05:00
github-actions[bot]
cd89a592ea
Update tag for Python sysconfig metadata ( #13851 )
...
Automated update for Python releases.
Co-authored-by: zanieb <2586601+zanieb@users.noreply.github.com>
2025-06-05 11:21:35 -05:00
samypr100
d65c146b21
feat: add dynamically generated sysconfig replacement mappings ( #13441 )
...
## Summary
Implementation referenced in
https://github.com/astral-sh/uv/pull/12239#issuecomment-2744880003
Closes #12919 #12901
This makes the sysconfig replacements mappings dynamically generated
from
https://github.com/astral-sh/python-build-standalone/blob/main/cpython-unix/targets.yml
## Test Plan
cargo dev tests, and tested scenario from
https://github.com/astral-sh/uv/issues/12901#issuecomment-2822107454
2025-06-02 10:58:30 -05:00
Charlie Marsh
c5032aee80
Bump MSRV to 1.85 and Edition 2024 ( #13516 )
...
## Summary
Builds on https://github.com/astral-sh/uv/pull/11724 .
Closes https://github.com/astral-sh/uv/issues/13476 .
2025-05-18 19:38:43 -04:00
Zanie Blue
a9ab39ad6f
Fix patching of `clang` in managed Python sysconfig ( #13237 )
...
Regressed in
https://github.com/astral-sh/uv/pull/12239/files#r2069106892 because
additional entries override the previous one in the mapping. Now, we can
apply multiple patches in-order.
Closes #13236
2025-04-30 12:23:22 -05:00
Zanie Blue
e58cc39238
Patch `CC` and `CCX` entries in sysconfig for cross-compiled `aarch64` Python distributions ( #12239 )
...
Closes https://github.com/astral-sh/uv/issues/12207
2025-04-16 08:34:05 -05:00
Charlie Marsh
42dcea0ee2
Bump MSRV to 1.84 ( #12670 )
...
## Summary
Closes https://github.com/astral-sh/uv/issues/12649 .
2025-04-04 11:49:26 -04:00
Geoffrey Thomas
25e7209a33
Patch pkg-config files to be relocatable ( #11291 )
...
Previously, we patched pkg-config .pc files to have the absolute path to
the directory where we unpack a python-build-standalone release. As
discussed in #11028 , we can use ${pcfiledir} in a .pc file to indicate
paths relative to the location of the file itself.
This change was implemented in astral-sh/python-build-standalone#507 , so
for newer python-build-standalone releases, we don't need to do any
patching. Optimize this case by only modifying the .pc file if an actual
change is needed (which might be helpful down the line with hard links
or something). For older releases, change uv's patch to match what
python-build-standalone now does.
2025-02-07 17:03:55 -06:00
Charlie Marsh
c306e46e1d
Remove trailing commas before brackets ( #10740 )
2025-01-18 19:56:46 +00:00
Charlie Marsh
0bc33e87b8
Patch pkgconfig files after Python install ( #10189 )
...
## Summary
Closes https://github.com/astral-sh/uv/issues/10185 .
## Test Plan
Ran `cargo run python install 3.10.15 --reinstall`; verified that
`python3.pc` contained:
```
# See: man pkg-config
prefix=/Users/crmarsh/.local/share/uv/python/cpython-3.10.15-macos-aarch64-none
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: Python
Description: Build a C extension for Python
Requires:
Version: 3.10
Libs.private: -ldl -framework CoreFoundation
Libs:
Cflags: -I${includedir}/python3.10
```
2024-12-27 00:50:41 +00:00
Charlie Marsh
f3c5b63095
Avoid duplicating backslashes in sysconfig parser ( #10063 )
...
## Summary
We had a bug in our handling of escape sequences that caused us to
duplicate backslashes. If you installed repeatedly, we'd keep doubling
them, leading to an exponential blowup.
Closes #10060 .
2024-12-20 13:52:42 -05:00
samypr100
e730ef19f1
Patch additional sysconfig values such as clang at install time ( #9916 )
...
## Summary
Minor follow up to https://github.com/astral-sh/uv/pull/9905 to patch
`clang` with `cc`.
Implements the replacements used in
[sysconfigpatcher](https://github.com/bluss/sysconfigpatcher/blob/main/src/sysconfigpatcher.py#L54 ),
namely
```python
DEFAULT_VARIABLE_UPDATES = {
"CC": WordReplace("clang", "cc"),
"CXX": WordReplace("clang++", "c++"),
"BLDSHARED": WordReplace("clang", "cc"),
"LDSHARED": WordReplace("clang", "cc"),
"LDCXXSHARED": WordReplace("clang++", "c++"),
"LINKCC": WordReplace("clang", "cc"),
"AR": "ar",
}
```
## Test Plan
Added an additional test. Tested local python installs.
Related traces
```
TRACE Updated `AR` from `/tools/clang-linux64/bin/llvm-ar` to `ar`
TRACE Updated `CC` from `clang -pthread` to `cc -pthread`
TRACE Updated `CXX` from `clang++ -pthread` to `c++ -pthread`
TRACE Updated `BLDSHARED` from `clang -pthread -shared -L/tools/deps/lib` to `cc -pthread -shared -L/tools/deps/lib`
TRACE Updated `LDSHARED` from `clang -pthread -shared -L/tools/deps/lib` to `cc -pthread -shared -L/tools/deps/lib`
TRACE Updated `LDCXXSHARED` from `clang++ -pthread -shared` to `c++ -pthread -shared`
TRACE Updated `LINKCC` from `clang -pthread` to `cc -pthread
```
## Pending Discussion Items
https://github.com/astral-sh/uv/pull/9905#issuecomment-2543879587
2024-12-17 15:09:45 -05:00
samypr100
06015de90e
Patch additional `sysconfig` values such as AR at install time ( #9905 )
...
## Summary
Minor follow up to https://github.com/astral-sh/uv/pull/9857 to patch
AR.
Implements the AR replacement used in
[sysconfigpatcher](https://github.com/bluss/sysconfigpatcher/blob/main/src/sysconfigpatcher.py#L54 ),
namely
```python
DEFAULT_VARIABLE_UPDATES = {
...
"AR": "ar",
}
```
## Test Plan
Added an additional test. Tested local python installs.
Related traces
```
TRACE Updated `AR` from `/tools/clang-linux64/bin/llvm-ar` to `ar`
```
2024-12-15 10:27:54 -05:00
Charlie Marsh
dc0525ddd0
Remove use of `.previous()` in sysconfig parser ( #9881 )
...
## Summary
Apparently this is only available in debug.
2024-12-13 20:21:37 +00:00
Charlie Marsh
53dfe0de52
Avoid lookaheads in `sysconfig` parser ( #9879 )
...
## Summary
Based on some review feedback from
https://github.com/astral-sh/uv/pull/9857 .
2024-12-13 20:02:52 +00:00
Charlie Marsh
08ea79cc33
Remove `-isysroot` when patching sysconfig ( #9860 )
...
## Summary
This is equivalent to
https://github.com/indygreg/python-build-standalone/pull/414 , but at
install-time, so that it affects older Python builds too.
2024-12-13 19:49:27 +00:00
Charlie Marsh
d2fb4c585d
Patch `sysconfig` data at install time ( #9857 )
...
## Summary
This PR reimplements
[`sysconfigpatcher`](https://github.com/bluss/sysconfigpatcher ) in Rust
and applies it to our Python installations at install-time, ensuring
that the `sysconfig` data is more likely to be correct.
For now, we only rewrite prefixes (i.e., any path that starts with
`/install` gets rewritten to the correct absolute path for the current
machine).
Unlike `sysconfigpatcher`, this PR does not yet do any of the following:
- Patch `pkginfo` files.
- Change `clang` references to `cc`.
A few things that we should do as follow-ups, in my opinion:
1. Rewrite
[`AR`](c1ebf8ab92/src/sysconfigpatcher.py (L61) ).
2. Remove `-isysroot`, which we already do for newer builds.
2024-12-13 14:36:22 -05:00